LogicalError / realtime-CSG-for-unity

Realtime-CSG, CSG level editor for Unity
https://realtimecsg.com
MIT License
735 stars 77 forks source link

Duplicating non-prefab Model maintains links to original model. #316

Open radicaled opened 3 years ago

radicaled commented 3 years ago

Duplicating a Model in Realtime CSG via CTRL+D/CMD+D produces an object that links to the same geometry under the hood (same geometryHash, surfaceHash, etc). This means that you can't quickly duplicate a Model and modify it independently of the original.

Use-case: I'm using Realtime CSG to quickly mock together prefabricated hallway sections, so they can be placed at runtime. A lot of this work involves modify existing Models slightly, to iterate faster. To workaround this issue, I have to create a new Model, them duplicate and move all the brushes involved.

alexjhetherington commented 2 years ago

Replicating on 2019 LTS, 2021 LTS. Trivial to replicate. Recommend fixing if we want to support this workflow (I remember facing this issue too before, which just made me learn not to do this lol)

terrivellmann commented 11 months ago

A trick to get around this is to check "do not render" off and on on both models after duplicating. Seems to work so far in Unity 2020 and the latest RCSG version.

Appleguysnake commented 10 months ago

Trivial to replicate in Unity 2021.3 with RCSG 1.601 as well. Hitting Rebuild CSG Meshes correctly regenerates the models with separate information. Perhaps auto rebuilding meshes when a model is copied (or just meshes for that model, if possible) is a quick fix for this?