I am working on exactly that and was wondering if something exists already. I am thinking extremely cut down version of Blender’s 3d modeling. Cut, Loop Cut, subdivide, proportional editing and some more.
I am aware that pro builder has some runtime abilities but I think it would require a lot of effort to make it do what I want. Long time ago I found a paid asset that looked good but since they I lost track of it.
So does something already exist that I should take a look at?
Try
Probuilder
https://docs.unity3d.com/Packages/com.unity.probuilder@5.0/manual/index.html
Or
3D World Building
Also look into asset store.
Maybe there are other ones.
ProBuilder isn’t runtime, is it?
Anyhow, I’m currently working on GMesh, the basis for that which is a graph-based mesh format like Blender’s BMesh in order to enable all kinds of mesh editing features (with just vertices & triangles mesh editing is extremely limited and/or complex).
It supports Euler operators (or will, eventually - it’s been only two weeks so far) to enable splitting and merging edges and faces and all that. On top of that, you can build an editing tool. But I don’t know any that enable runtime editing. Unless you aim to make a standalone model editor that’s built on Unity as a renderer, I can’t think of a good use-case for a runtime model editor.
Perhaps you are looking for BMeshUnity which is also a graph mesh editing framework, but it won’t be threadable and I’ve encountered various issues with it so I began writing my own.
I think there used to be realtime CSG, but not realtime polygonal mesh modeling asset.
Probuilder does have a run time API. This page seems to indicate that all of Probuilder’s mesh creation and editing functionallity is available at runtime, but the two libraries specified have dead links, so I can’t find any further info.
Anyway, I imagine that you’d still need to write your own UI for any editing features that you want to have.
While not exactly what you described, if you want some ingame feature that allows the user to build things freely, take a look at Clayxels and MudBun:
Interesting - BMeshUnity looks slow - the more flexibility, the slower it gets.
I use simple code to add to lists of vertices and triangles to then apply to a Unity Mesh for runtime generation, but having a more useful intermediate definition to work with like this would be great.