Storage Drawers

Storage Drawers

151M Downloads

Severe FPS Drop with constantly changing Content

dredhorse opened this issue ยท 14 comments

commented

Hi, I created a cobbleworks based on this http://bit.ly/1mxj2NB but did use storage drawers and the storage controller.

From the cobblestone drawer I export also cobblestone to an RF Crafter or compressing drawers with ender Io

As long as I let the export running I have a 10 fps drop on my client, the server is running on a different machine.

Storage Drawers 1.7.5

commented

Can you take a picture of the setup? As for the FPS drop, what is it dropping from, and does the drop happen when you look in the opposite direction of the drawers? Or if you use the concealment key?

commented

Same here, game lags (5-10fps) when we go near drawers (we have a system with 10-20 drawers each one filled with ~300k blocks)

commented

1.7.10 or 10.0.2?

See also: #322

commented

10.0.2 using Refined Storage

commented

Do you have status indicator upgrades installed? Those can cause block re-rendering on item change. Likewise if the drawers are sharing a chunk with something else that is constantly triggering the chunk to re-render, it will have an impact.

commented

No, we just have 5 emerald upgrade each one.
image
As you can see using sampler the only blocks that trigger a rerender are the drawers.

commented

Well, this is next on my list to look at.

commented

Give 3.5.1 a try. There was quite a bit of needless block-render-updating being triggered that should be gone now.

commented

By the way, what mod are you using to show those client render statistics? Would be useful to have in my dev environment.

commented

Nope, the same as before with 3.5.0, btw the mod is called "Sampler" from fast craft author (http://forum.industrial-craft.net/index.php?page=Thread&threadID=10820)

commented

Sadly it doesn't run in my dev environment and there's no deobfuscated version available. But I did a little testing in curse client pack, with a basic ore processing system from EnderIO into AE2 into some drawers. The drawers aren't triggering any render updates unless a new item is being introduced.

Are you still seeing render updates with csampler? Are you sure there's no other source of render updates in the chunk (perhaps underground)? Do you get any relief if you invoke the concealment key on the controller to hide the TESR-rendered item labels?

Are you using a public pack? Is it possible to share your world, or a test world you've constructed to demonstrate the FPS hit in action?

commented

3.5.2 includes some more changes to help chunk render update performance, at least concerning drawers. But in the face of a vanilla lag machine (looped repeater circuit to trigger constant chunk updates), I haven't been able to squeeze too much out.

  • I found that the blocks were rendering all sides all the time, such as the sides of drawers when you build a wall out of them. This has been corrected, and has the biggest perceivable impact in performance.
  • Model quads get cached, avoiding a full rebuild of the quad geometry for every block that gets updated. I thought this would have a significant impact, but it didn't.

That second bullet point is worth underlining. I thought I was doing a huge amount of work, throwing out and rebuilding all that geometric information, but it appears to be vastly dwarfed by Minecraft's quad pipelining code -- the code that turns a list of quads into a rendered scene. Quad count, rather than how those quads are produced, looks like enemy no. 1 for performance. I'm really curious how mods like Chisel & Bits is able to hold up. Standard cube blocks have 6 quads, while drawers range from 18 - 34. Framed drawers are quite a bit worse at 61 - 88 (so no wonder there's anecdotes about framed drawers being so bad, if quad count is the killer). Framed drawers will see the biggest benefit from hidden sides not being rendered.

Based on your screenshot, I'm not sure there's enough drawers there to really hurt FPS, but there's probably other contributors in the chunk (like the RS drives).

Alright, that was a pretty huge tangent just to come back to agreeing that chunk updates are a problem and need to be minimized as much as possible. As above, please let me know if you're still finding evidence with sampler that the drawers are causing them, as I'm not seeing it in dev anymore.

commented

Ok, I will try the new version this afternoon, then I will send you the feedback! And of course thanks for all the support you are giving, you are one of the best dev!

P.S. If you need access to the server, I can send you an e-mail with the address and the modpack ;)

commented

Sorry for the delay, but I had a lot to study for school. Btw yep, now it's a lot better. Thanks!