Car Assembly Simulator
- 5 Devlogs
- 29 Total hours
yes, i’m going to use roblox
why? putting microtransactions in a menial game sounds really funny to me
no, i have absolutely zero clue about:
materials work now! the material type (steel, plastic, etc.) is automatically detected from the plasticity of each part because LS-DYNA doesn’t encode material names. also, i had to switch to manual gLTF generation to add the material properties and joint metadata.
however, when i was adding the joint detection, i found that inter-part constraints may constrain an arbitrary number of nodes in arbitrary locations, which makes it impossible to map the entire assembly of parts to specific screws in a way that makes sense for a game. instead, i think i’m going to use an absolute grid system for part placement, and just take the part positioning for granted
the LS-DYNA keyword convert is almost done after writing an algorithm to offset & thicken *ELEMENT_SHELL to the correct thickness! i just need to implement material and mate copying!
yay! all of the geometry exports cleanly now, and in one assembly file! to implement this, i first process each part by fixing broken geometry, triangulating quads/n-gons, and merging its 1000’s of finite elements/shells into one manifold. then, i insert the mesh into a glTF scene at the correct location, and it works!
i had this incredibly funny idea for a puzzle game: all of the parts for a car/computer/(other complex mechanical assembly) are dumped in front of the player, who must assemble [that thing] from scratch.
i searched online for high-fidelity full-assembly CAD of a car. i eventually found GMU CCSA’s public library of scanned cars (with internals!). unfortunately, all of the files use a weird ahh format called LS-DYNA that’s typically used for finite element analysis. obviously the only logical solution is to reverse engineer the file format because too bad it lacks basically any documentation :(.
so far i’ve figured out how to export individual parts, so long as the part consists exclusively of non-degenerate hexahedrons