Page 1 of 1

DistanceCheckVoxel

Posted: Fri Jun 24, 2016 7:18 pm
by Major Cooke
An alternative of DistanceCheck, but instead of disabling the rendering of the actor entirely, it only disables the voxel if it has one.

Turns out that having voxels en masse as pickup items can indeed bring my game to a slowdown, which was interesting. I didn't think voxels had that much of an impact. I'd like to make the voxels range quite short, but to still have a sprite drawn without making up a bunch of hacks to ensure it works properly.

Re: DistanceCheckVoxel

Posted: Sun Feb 26, 2017 1:16 pm
by Graf Zahl
What kind of system was this on? I have no problems with maps showing several hundreds of voxels simultaneously in the GL renderer.

Re: DistanceCheckVoxel

Posted: Sun Feb 26, 2017 5:33 pm
by Major Cooke
One that was 5+ years old. Yeah, on today's hardware it's not so much of an issue but back then, damn did it slow down. I mean, QUITE old. It could just barely run Doom 2016 at the lowest setting, but that old system is long gone now.

Re: DistanceCheckVoxel

Posted: Sun Feb 26, 2017 5:37 pm
by Graf Zahl
My current computer is nearing its 5th birthday in just two months and no slowdown at all.
What kind of graphics hardware did that thing have?

Re: DistanceCheckVoxel

Posted: Mon Feb 27, 2017 9:59 am
by Major Cooke
Found it.

I no longer have that though. I have something much more powerful, a Dell Inspiron 15 7000 series (third from the left) and with 16GB RAM that I added in myself.

Interestingly, I found a map that can slow the game to a crawl while playing D4D. New Gothic Movement 2's MAP16 turns FPS to SPF (seconds per frame)...

In D4D's newest alpha release, this lag can mostly be alleviated by 'summon AmmoRemover' which will destroy all ammo items in the map. Every one of those has voxels. The AmmoRemover class will log the number of actors it removed -- which is in the 40000+ range.

When you get to the arena where the spawn cubes are flying (behind the blue key door at the start), there's some more FPS drag thanks to the armor shards and the stimpacks. Switching off voxels will alleviate it even further.

Re: DistanceCheckVoxel

Posted: Mon Feb 27, 2017 10:19 am
by Graf Zahl
40000 voxels will indeed stall the vertex processors of the GPU to a virtual standstill. I was more thinking in the multiple 100's range than multiple 10000's.

Re: DistanceCheckVoxel

Posted: Mon Feb 27, 2017 10:26 am
by Rachael
Wouldn't it make more sense for a user-configurable CVAR for a hard-limit of how many voxels can be sent to the GPU? The worst part of that processing I think is iterating the list to see which ones are closest to the player and which ones to remove. For everything else, it'll render an alternate sprite or nothing at all.

(Who in the world needs 40000 ammo items?!?!?!)

Re: DistanceCheckVoxel

Posted: Mon Feb 27, 2017 11:14 am
by Graf Zahl
This is really one of those edge cases where there's no sensible solution.

Re: DistanceCheckVoxel

Posted: Mon Feb 27, 2017 3:39 pm
by Major Cooke
Graf Zahl wrote:40000 voxels will indeed stall the vertex processors of the GPU to a virtual standstill. I was more thinking in the multiple 100's range than multiple 10000's.
Okay. DUMP 2's Volcanic Oasis (MAP28), there is a region not far out from the starting point (go through the cave on start, then noclip2 out to the ring on the other end of the cave exit where a bunch of rockets are scattered throughout). I'd tell you what the coordinates were to warp to if only idmypos actually showed me the coordinates. :|

...That reminds me, time to open a bug report for that.
Rachael wrote:(Who in the world needs 40000 ammo items?!?!?!)
With the amount of cyberdemons, spider masterminds, etc + four boss cube spawners active at once... The whole place is separated into a bunch of rooms and while you're in those rooms, the ramparts in the main arena fill up with demons. Fast.

Re: DistanceCheckVoxel

Posted: Mon Feb 27, 2017 3:41 pm
by Rachael
Type "currentpos" in the console. :)

Re: DistanceCheckVoxel

Posted: Mon Feb 27, 2017 3:43 pm
by Major Cooke
Oh.

674, 3737, 185.