Relocating Instances With Base Mesh Edits
Just a short video this time. I rebuilt the system for tracking the instances association with faces, to handle splits and extrusions more easily. Previously instances were associated with one face, and when a mesh was split or extruded the name of the face will change, disassociating the instances. Now i am tracking groups of faces via vertex color and uvs. This way even if you split or extrude a face, it will retain its color and thus its association. Additionally the uvs allow tracking of the instances position of the face prior to being split, allowing them to both retain their position if the verts have not moved and to reposition instances that are no longer matching the face.
The new methods of tracking introduced some issues if the uvs were not setup properly up and down. This would result in the wrong instances being selected, and produce some odd results.
(Left) Debugging with colors. (Right top) incorrect orientation. (Right bottom) Fixed orientation
One other bit i added to rebuilding was i made sure it still obeyed whatever was set in Keep Faces Together. This means you could start blocking out the building and spacing the instances equally, and then update the building with Keep Faces Together to snap the instances back together. Then you can modify the building mesh again to fit the meshes without gaps or any measuring to do it.
Procedural Placement With Manual Control
Heres something ive been working on for the last 2 weeks. Its kinda inspired by my time as a Layout Designer – I always wanted something to speed up my asset placement and allow me to iterate on a larger scale quickly. This attempts to address that by allowing you to model primitive geometry and then use it to guide the placement of modular assets. Rather than being confined to a grid and snapping geometry together, users are free to layout their scene however they like and worry about the modularity later.
Working in Maya I can still leverage all of the modeling tools, which makes this a bit easier to make modeling changes that another engine might not support. Its still pretty small but i could see this becoming a lot more complex depending on your use case. I think porting this to a game engine would be the long term goal, since i think a layout designer is more likely to use a tool like this than anyone.
In the future id like to better support attachments, support rebuilding the guide mesh and updating placed instances, and experiment with more organic shapes. Attachments would allow balconies and windows that don’t have to be fused to a wall, or applying game markup to all the instances at once. Rebuilding the guide mesh would allow designers to continue to iterate and update the instances as needed. And in terms of procedural layout, modern buildings are somewhat more straightforward than something more fantasy inspired. Since the grid is now shaped by the edgeflow of the geometry, more complex organic structures and changes could be achieved without sacrificing modularity