devlog: I made an electric lock for the doors, it doesn't do anything yet. I mean you can't interact with it but it does react. I made a texture containing a bunch of "states" for the lock, and a shader for changing UV using an instance uniform
. then set the automatic doors (that open when something gets close like in a supermarket) to change the uniform. now when the door is closed it says closed and when it opens it changes the sign, and when it closes again it changes it back.
The game felt smooth to me, but looking at fps it was running at 20 fps.
the first thing I tried was setting meshes distance visibility
in geometry
. there were no changes.
then I tried occlusion
, I set up occlusion, changed all the meshes, baked occlusion meshes, added dynamic occluders for doors. again, no difference.
the only thing I was noticing was voxelGI
was taking the most resources. then I realized, all the doors were set to dynamic lighting. I changed them to disabled at got 40 fps.
the other problem seems to be "materials", but the new profiler is confusing and I can no longer sort the results. I get a lot of "material render" fields with no other information and 4000 errors in console when using it.
I'm guessing having meshes with multiple materials could be the problem. then reading the godot blog I'm surprised to learn that all those new optimizations that were promised for 4.3 are actually not here, and instead moved to 4.4. that is disappointing, I have to wait longer.
Well, back to modelling.