Author Topic: [DLL] Rendering Optimization Experiments  (Read 9181 times)

This reduced the performance hit on one of my maps, thanks dude.

I got occlusion culling to work. There's a bit of a performance hit for max shadows using a batch-by-location renderer, but without shadows enabled the performance improvements are pretty good. Illustrative recording: https://leopard.hosting.pecon.us/dl/onijn/occlusion.mp4

I got occlusion culling to work. There's a bit of a performance hit for max shadows using a batch-by-location renderer, but without shadows enabled the performance improvements are pretty good. Illustrative recording: https://leopard.hosting.pecon.us/dl/onijn/occlusion.mp4
This is absolutely amazing

Also, pardon my lack of understanding, but what you talk about in the OP basically means that bricks outside of the players field of view gets culled out, right?

This is absolutely amazing

Also, pardon my lack of understanding, but what you talk about in the OP basically means that bricks outside of the players field of view gets culled out, right?

This is frustum culling, yes. Occlusion culling is not rendering what you don't see, so as if the transparent brick was solid in that vid.

wait there wasn't any occlusion culling in the original pipeline? what the forget lol

Unfortunately, the new Blockland update and the fact I overused static offsets would make this a pain to update, though it's not impossible.

Fortunately... a lot of the things in the original post might be added to the game! Badspot said he would add these improvements, though it would take effort in a PM. I answered some more of his questions yesteday. Stuff like occlusion culling would need a pretty big update, though, so for now it's just the bugs I originally described. Excitement!!

aw frick yes

bless u val

Any chance you could mention this networking bug to him while you have his attention?
https://forum.blockland.us/index.php?topic=317828.msg9824158#msg9824158

I sent Badspot another PM to see if there was any progress for a new update. I think as a whole, discussing the future of Blockland as an idea and how to implement it in a newer game is a smarter idea than churning out improvements through DLLs. Hopefully we hear back!

« Last Edit: January 26, 2020, 04:13:51 PM by CompMix »

Bump for new version!! Enjoy!

Could this fix item rendering in the future? I remember some servers when looking in that direction has an insane FPS drop

Could this fix item rendering in the future? I remember some servers when looking in that direction has an insane FPS drop

The items themselves would need different LODs for that. There can probably be a solution that automatically reduces poly count of shapes far away, but that gets complicated and unpredictable.

Speaking of, there is work to do for brick LODs. Brickadia has shown that brick rendering is largely vertex limited, so reducing the amount of verts sent to the GPU would improve performance substantially.

Right now the custom renderer suffers with brick updates. Brickadia solves this by building new brick batches in a different thread and probably swapping VBOs when finished. I'll be giving that a shot soon. The only other improvement I can think of is utilizing texture arrays for the brick textures instead of rebinding multiple times for each chunk. That will require shader magic, though, and I'm not looking forward to it.

This will be great for my Battle for Snowy Hills TDM, as my frames would drop horribly because the map was so big.

Also, I feel dumb for not understanding, but a tutorial for installation would be nice.