There was cool shit in Unreal, what about Source 2?
We were promised a lot of cool shit at the time when S&Box was developed for Unreal, so I’d like to know if some of these things are still actual under Source or not.
Renderable procedural geometry
What vertex format will be used?
We can specify various vertex data for various shaders positions aside (like normals for lit geometry, UVs for textures, colors, UV2, whatever else). I’m interested in how flexible the vertex format will be and if it’ll be possible to use custom vertex data for use in custom shaders
What about materials?
Are we sticking with the gmod way, where for each material that we want to use in our procedural model we’d need to handle a separate mesh, or will it be possible to handle material indices in vertex/index buffers?
Vertex/index buffers
What’s the planned API for interaction with procedural vertex/index buffers?
Lightmaps rendered in-game…?
I know that’s crazy, but there is a big issue in gmod when you try to make a piece of procedural geometry lit in a more or less realistic way (it’s hard to imagine how to run vrad on a piece of this mesh in-game to bake it’s lightmaps but who knows, asking just in case).
Deformable geometry
What about bones and vertex weighting, morph targets, enabling procedural deformable geometry?
Physics objects
Association with entity
In Source, all physics objects are tied to entities, created via entity functions and deleted with entities. Will we be able to create and handle physics objects on demand without tying them to an entity?
Physics object types
What types of physics primitives will we have to choose from? Spheres? Convexes? Thin geometry? AABBs/OBBs? What else?
Physics objects merging
was briefly covered in this thread.
A dead-solid weld constraint is something that was requested by gmod players and developers for years but never made its way into the game, will we be able to achieve this in S&Box? How the physics properties like material, friction, etc. of merged objects will be preserved?
Modifying existing physics objects
Will we have some utility functions for modifying existing physics objects like scaling, cutting them, etc.?
Ragdoll joints for procedural physics objects
Will we be able to create ragdoll systems using a set of arbitrary physics objects by defining joints connecting them?
This list is incomplete, just a few most worrying things from the top of my head, but you get the idea of what kind of things I’m worried about.