Procedural geometry

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.

7 Likes

It’s going to be magnificent, don’t you worry your head.

Oh so nice to hear that. Too bad you’re not garry :grinning_face_with_smiling_eyes:

1 Like

It’s too early to tell about it, but I’ll try to answer some questions from my point of view.

No, but technically I think it’s possible. But to implement this, developers need to figure it out.

For what? :thinking:

There’s AABB now, but you can create your own if you want to.

No problems to implement that.

Yes.

Modders can do it.

I really the questions being asked here! Procedural Geometry, specially in physics objects, is something that has gotten me very excited.

Although its pretty early for them to have answers to all of them, since FP is still getting familiarized with the engine, this is some low level engine stuff, so its best to iron out whats within scope/doable sooner rather than later.

Whats with people dismissing every question or speculation with “don’t worry, it’s gonna be perfect” all of a sudden :thinking:

The dream would be to be able to create any asset at runtime (although only if you need to, it’s always going to be better to compile assets with the tools) So it’s not a promised thing but definitely something I want to work towards.

10 Likes

Basically something that was kinda already achieved with Unreal, huh. That would be gorgeous…

1 Like

Procedural stuff is extremely useful for a Sandbox-style gamemode where you want to just throw quick shit together without needing to have 1000 variations of plates and bars.

Also useful for slapping shit together when you can’t afford to make models yourself but want to do a POC anyway.

1 Like