Performance drop with 3d texture packs
Delver26 opened this issue ยท 3 comments
Hi there,
Thanks for this mod, it's such a massive improvement to vanilla that it's essential at this point!
I'm not sure if this is actually a bug or just a performance limitation, but I've noticed a large FPS loss in certain situations while using a '3D' style texture pack (Default 3D in this case).
When close to any significant number of 3D blocks, like cobblestone, if you move while holding anything that emits light it causes large FPS drops until you stand still. Looking around while standing is fine, it's just whilst moving. I'm guessing this is due to the complexity increase in the 3D models compared to vanilla?
Machine specs:
Ryzen 3600
Nvidia GTX 1080ti
16GB ram
Installed mods:
Lithium
Phosphor
Sodium
LambDynamicLights
Steps to reproduce:
- Load any world
- Enable 3D texture pack
- Build a 6x6x6 box with cobblestone
- stand inside it while holding a torch
- move while holding torch
If you then disable the texture pack and repeat, there's no FPS drop.
Also this will happen with both Default 3D and Classic 3D, so I don't think it's texture pack specific.
Disabling the mod prevents the FPS drop too regardless of texture pack, so I don't think it's related to Lithium, Sodium or Phosphor.
It's mostly noticeable on the Fancy preset, I'm guessing due to the update rate of the lighting.
Once again, thanks for the awesome mod!
So that was very unexpected. I know that the mod provokes FPS drops, but didn't know it would be worse with 3D packs...
The problem with the dynamic lighting feature is that we are hold off by Vanilla limitations, and Vanilla lighting is really not great performance wise...
Rebuilding chunks seems to be have an even worse performance hit with lot of detailed models...
It's not really fixable sadly, at least with this mod. It's wayy out-of-scope and might need a lot of rewrite in the Minecraft renderer itself, which would be redundant with Sodium or Canvas.
I don't have actual solutions sadly, the only possible solution would be to wait for Canvas to implement its own dynamic lighting back-end which might use the shader method and avoid chunk rebuilding which would be a big gain in performances, when Canvas will implement its own dynamic lighting it will only handles some player hold items like torch but this mod will have a compatibility with Canvas so the ideal solution would be Canvas uses a shader-based method for dynamic lighting and this mod uses it instead of my own method.
But in the current state, I can't do anything. I have not the knowledge nor any idea on how to fix it directly in this mod.
Thanks for the explanation.
No worries about the ability to fix it, this was more of a heads up than expecting any fixes to be honest,
We'll see if Cnavas implements the shader based lighting which would be cool. But I love Sodium so much it'll be tough to switch to a different renderer ๐