Page 1 of 1

Curiosity Question.

Posted: Fri Dec 23, 2011 8:58
by Nero
:?: So, I haven't taken any time to do any research, I'm just asking. Doesn't the Doom engine render only what the player can see on the screen? So in the case of 3D floors, how does the engine handle that? Is the 3D floor kind of like a wall the engine sees right through?

I'm asking because some of my maps are very intense when it comes to how many 3D floors I'll pack into a space and it seems to cause GZDoom to lag a fair bit when you look at those areas.

Re: Curiosity Question.

Posted: Fri Dec 23, 2011 12:08
by Gez
Nero wrote::?: So, I haven't taken any time to do any research, I'm just asking. Doesn't the Doom engine render only what the player can see on the screen?
Yes, more or less. I'm not sure about 3D floors, but I know it discards any actor whose center is not in a sector present in the field of vision.

This can lead to a slight glitch as you can get the engine not to render something that is visible. Create a tiny sector (say, 2x2 square). Put right in its center a huge sprite (e.g., spider mastermind; make it dormant so that it won't move). Look around to put the monster on the border of your FOV, and you should see it vanish entirely as soon as a tiny bit over half of it gets hidden.

This has sometimes been a problem with models, which can project quite far from their actual position.

Re: Curiosity Question.

Posted: Fri Dec 23, 2011 12:39
by Nero
Huh. That glitch could actually be pretty useful. I could see using it to create an invisible wall out of a monster. Then maybe teleport x units to the left and, "Oh no!! That wall was a --(head blown off by rocket)"

I'd still like to know how 3D floors factor into what is rendered and what isn't. I'm not sure how I would test something like that.