requires breaking the model up into many objects, manely separate objects for all 101 windows. The decision was made to redo most of the 2nd stage in python.
The application of materials in godot also definitely had to be done in a .gd script instead of in the editor. That allows changes in Blender to be imported without editing the .tscn files in a text editor. Godot stores materials as either .material or .tres files, with no logic distinguishing the two.
Godot has done much better importing .dae files than .gltf files. There's still a large gap between knowing how to bang out models in Blender & making them look good.
Booleans officially don't work with planes, but unofficially, they don't work with anything. Unofficially, they work better with planes than solids, but leave many artifact vertices. The key step is deleting the artifact vertices. This requires a function which deletes overlapping vertices in 2 objects.
Making that run in a reasonable time in python was the hardest thing since passing a kidney stone. In C, it would have been a 10 line british museum algorithm. In python, it was a 40 line localized british museum algorithm just to use tabs instead of {}, and instead of &&, # instead of //, & True instead of true. It's still ridiculously slow compared to commodore 64 BASIC.
Scripts have to delete everything they create so they can be rerun, but manual editing is always required on a scripted object. The easiest way to integrate the manual objects is limiting them to curves which the script uses as guides to carve out 3D objects.
Thus was born the most lacking Blender function, a cookie cutter which uses an arbitrary solid to carve a plane into 2 planes. The knife tools sorely lack, in this department. The mane requirement is no vertices required in the final objects can overlap vertices in the cookie cutter. The function still requires much tweeking for every object.
After 2 days of step by step troubleshooting of hundreds of boolean operations, godot was able to roughly render the output, at 1 frame every 5 seconds. Importing such a complicated model fell on its face. Coordinates were all off. Texture mapping doesn't work.


Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.