
Feature Request to improve FPS
Iarinu opened this issue ยท 8 comments
I've played around a little bit, to find out how to reduce the FPS lag which happens when you play with enormous LP networks and I found out 2 things witch causes most of the FPS lag:
-The sparkling pipes everywhere
-The rendering of items (even with the unrouted pipes)
So I thought, that 2 things would be really helpful to solve this:
-Opaque Upgrades which works for unrouted LP pipes too or just Opaque Unrouted LP Pipes (like the TE Conduits)
-A "No Sparkling" module for the normal LP pipes or a change, that the Opaque Upgrades disable the sparks too.
I mean, when I dont want to see the items going trough a pipe why should I want to see this pipe sparkling f.e. when an item get routed to/through it?
I thing this both changes/additions could prevent much of the FPS lag which happen, every time a player is nearby a huge LP network.
Hi,
In general, rendering Items inside the Pipes is quite a mess in terms of rendering.
You can set your Graphics option to Fast when you don't want Sparkles.
Though i must admit, I do think that the Sparkling is Redundant and should be made a Dev-only config option Anyways.
You might also want to shift-click with a Netwrok Tool and set pipes to opaque...i think that still works..if not it should be done so.
Sparkles can be turned off by using the Minecraft options and the distance of visible items in pipes can be limited with the Logistics Pipe Controller.
Also there is a configuration option for opaque mode, which completely turns off items in pipes.
@theZorro266 Opaque setting is client-side or server-side config option? I mean, if I set it to opaque in my client but server still runs with transparent setting, which one will win?
And a second thought: I don't think sparkles should be configured via Graphics type option, they should honor Particle config instead, as they are falling nearly same category where particles falling.
I don't completely agree with all of these opinions about opacity and such, but I definitely think that particles should be made either a config option, or per-player config option in the logistics controller GUI.
I don't think I could live without seeing my items flying around in pipes, but in a relatively large network, there can be MASSIVE numbers of sparkles, and I do know that my client does choke on large numbers of particles, so I'm guessing this contributes at least somewhat to my reduced FPS.
On the flip side, the sparkles are actually pretty useful while setting up certain bits of the network, so I would vote for making it an option in the logistics controller GUI.
I looks like all Sparkles are routed through just a couple central classes, so unless We're way off mark on the performance effects of them, it shouldn't be too hard to implement. (I'd be glad to look into try to do so if there isn't anything I'm missing)
Ok, I took a look at the config how many blocks away items get rendered (didnt even know that you can shift rightclick with the Logistic Controler) and its good enough to fix this part of the problem. I still think Opaque and Normale Pipes would be more elegant but this isnt a thing I would to be petty about.
About the sparkles: I think the best Idea so far was to make them an Logistic Controller option but I think maybe then there should be something like a "Sparkle Upgrade" in case you only want them at some points. I mean seeing the default route pipe sparkle just because someone like it is one thing but if you want to see what the system is actually crafting, the sparkles get crucial really fast (based on my experience). Again, I just think it would be a "nice to have" kind of thing. The option to turn it off via Logistic Controler for an entire network would be enough to solve the FPS problems.
@davboecki @theZorro266 I looked at the pipes model, and WOW is that a mesh-mess. Maybe you should concider a more...compacted Modell.
I think you saw the one wich I presented in #903 wich only contains about 8 meshes, instead of a million(hyperbole).
Having such a model would defenitly boost rendering Perf.