About the "see through the sky" trick

The thread title probably sucks but I don't know how this trick is called. I found out about it while studying Gusta's maps in Doom Builder and noticed that it can really enhance the 3D feel of your level, so I started to use it often. Hovewer, sometimes I don't quite understand how it works, for example what is going on here?



I know it has something to do with the brightness levels but I'm not sure what exactly. Here is the map in question (sorry, the new textures are missing but it shouldn't matter).

Share this post


Link to post

I'm not even sure what I'm supposed to be seeing...

Share this post


Link to post

Wow that's weird, never noticed that before.

Share this post


Link to post

Yea, that looks like a thinner sector around the outside lower than the sky to give that horizon look, just like E1M1 and MAP01.

Share this post


Link to post

@Memfis: are you referring to the odd 45" cut into the brick building (top-left of center) or the fact that the outer walls of the whole area is lower than the building overall?

Share this post


Link to post

This happens if the brightness level also changes along with the sky height. I think you should be able to fix it by using a secondary sector for the brightness change.

Share this post


Link to post

Can you show me how you would do it on this map please? (it's the same wad but I added the missing textures just for your convenience). I tried adding some sectors but ended up getting even worse cuts and now I'm a bit confused.

traversd said:

@Memfis: are you referring to the odd 45" cut into the brick building (top-left of center)

This, of course.

Share this post


Link to post

Sky intrusions over nearby buildings are something that I work to remove. I just resubmitted FreeDoom Map19 with fixes to remove three of those caused by low covers over outdoor teleports. Any view of the far castle tower had missing chunks (like in your picture) when viewed over these teleports. The view over a low sector ceiling height (of F_SKY1) is considered to be sky by the renderer, no matter what is behind it.
The sky over the teleports had to be raised from 1012 to 2048 too to stop the effect.

If it is that 45 degree cutout in the roof line, that looks like there is a ceiling height on a sector with F_SKY1, that is lower than the farther building height.

View the missing chunk like it was a plane, and when you can see the plane orientation, you will find the linedef of the sector that is causing it. The bottom edge of the plane is always horizontal.

From your second picture the plane is along the wall right in front of the player, but it does not go all the way to the building like the wall does.
The sector with a low sky is atop the wall.

Share this post


Link to post
wesleyjohnson said:

The view over a low sector ceiling height (of F_SKY1) is considered to be sky by the renderer, no matter what is behind it.

That's not true. example

Share this post


Link to post

quick fix:



Change the sector's height to 272 and make a small sector against the wall with sector height 232.

imo, it's a good habit to keep the main height as the higher height, and then add small sectors for the smaller heights. The main height in your map is 232 and the smaller sectors are 272. Also a good habit to draw the smaller sectors as triangles against the wall. So, instead of having the smaller sectors around the wall like a border, you can make triangle sectors against the wall. Might help to avoid different adjacent brightnesses like in your map.

Share this post


Link to post

Thanks for the advice and I think I even understand why your solution works now.

Share this post


Link to post

What TimeOfDeath said is the direct result of what I said.
We are saying the same thing. I did the exact same thing in several places on FreeDoom Map13. It still could not cure all the line-of-sight problems (I only managed to move the transition to internal room sectors into hard to see corners).

The software renderer only will display a farther sector through the window between the max floor height and min ceiling height of closer sectors. It spends considerable code keeping track of this window for every drawseg. On sectors with sky ceilings there are some special rules, like the upper texture becomes F_SKY1. This is what blocks any view over the low ceiling sector and shows up as a floating plane of F_SKY1 obstructing the view of your building wall.

There is coverage of this subject in my document, Level Design patterns for Doom (http://doomlegacy.sourceforge.net/hosted/level_design_r3.txt). This is the result of extensive tests and examination of the code.

Several things can affect this. Boom deep-water effect, a OpenGL that does not cover the software renderer rules, and who knows what Zdoom might do. If any of these are part of this discussion then please inform us. Edit: transparent textures are drawn late, and will be drawn over any F_SKY1 upper texture plane.

I will look at your wjfail.zip (on another machine), but as I do not know what I am looking for, I probably only will see what I expect.

EDIT: looked at wjfail.zip. It is only two sectors. To see the effect I was describing requires three sectors, a high one, a low sky one, and then a higher sector. In wjfail, the player can see into the tall sector because the engine does not draw sky as a ceiling, but as a distant wall texture, and it does not draw the back-side of upper textures. If there was another tall sector, then you would see the front-side upper texture block the view of the distant tall sector.

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now