Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
Mithran Denizen

'Invisible door effect' inconsistent across engines.

Recommended Posts

I've been trying to get the 'invisible door' effect working in a Boom format map, as described here.

I'm using the effect to block a window area that uses Boom's translucent lines, and ideally, I'd like the effect to work in as many engines as possible.

I might be doing something wrong, but I can only get the effect to reliably work every time in PrBoom(+) via software rendering. GLBoom(+) was rendering holes in both the ceiling and floor until I added some extra lines to split up the sectors but it seems to work fine now though. Here's a shot of how I want it:

The problem now is that it's not working right in ZDoom, and is displaying differently depending on the version:

-ZDoom 2.5.0 renders it the way I want, but latest SVN builds (at least back to r3152) render a hole in the ceiling, but not the floor:

-GZDoom (tested r828, r1203, and the latest stable version) renders a section the way I want it, but then renders the rest with a hole in both ceiling and floor. Since the thing is all one sector, I assume this has something to do with the subsectors, but I don't really know:

Since it partially works under GZDoom, I assume it's possible to have it work fully. I have no clue why it works in the older ZDoom versions, but not the SVN builds, either. I'd test it in Eternity, too, but it chokes at startup (probably on the way that I set up the custom CC4 resources). I've tried multiple nodebuilders, but the one that got the closest to the desired effect was ZenNode, so I'm not sure how much of the linked editing tutorial would apply to it. I'm going mostly by my own memory of how the trick is set up, but I've never used it more than once or twice before.

Are there any useful demo wads which show the proper effect in the same situation? Can anyone provide any other info?

[edit:] Here's the area, stripped of detailing and CC4 resources, in case anyone wants to take a look at what I've screwed up.

Share this post

Link to post

This is caused by the OpenGL rendering of broken sectors. You'll have to find another method, use a different format, painstakingly add a workaround, or just ignore it.

Let OpenGL users have their cake filled with nails. Maybe they'll see the charm in software rendering and convert!
* waits for graf... *

Edit: Is this window a door, or is it simply a stationary window that blocks sight/sound/shots? Cause if it's the latter, you can do this without breaking sectors... Try this: take a thin sector, leave it's lower sides untextured, and raise that sector's floor to 1 below the ceiling. It will create an invisible barrier (assuming you can't look above the floor of it). Does that do the trick for you?

Share this post

Link to post

Thanks, that did the trick. I guess I have to relearn all of this stuff if I want to get back into Boom mapping. :P

Raising a sector as a barrier is exactly what I was trying to do at first, but I kept getting HOM where it contacted the other wall and assumed that I needed the invisible door trick; I just realized now that the raised sector only needs to touch the walls at a single vertice, rather than two, so problem solved.

I'm still curious as to why the broken sectors rendered so differently in each case though, and why they failed to produce the full effect in ZDoom, while working with GLBoom+. I'd take a peek at the rendering code, but a) it would probably be a massive waste of time, and b) the last time I looked at ZDoom's software renderer I felt like I was lost in a dark forest, crying out for my mother, yet she never came.

Anyway, sorry to babble; thanks again.

Share this post

Link to post

This editing trick was meant for use in vanilla Doom and mostly made obsolete by the editing features of most ports. You said you were working with Boom, so why use this trick now?

For Boom (and supporting engines), just create a normal door or raised floor, and use the transfer property trigger (nr. 242) to set its floor/ceiling to that of the surrounding sectors: voila, instant invisible barrier. Use normal open/close-door or lower/raise-floor triggers to lower/raise your barrier. Use a middle transparant texture pegged to either top or bottom of your moving flat for presentation.

Share this post

Link to post

I never thought of using the transfer property action like that; thanks for pointing it out. Most of my Doom mapping background was focused on Vanilla back in the day, and then on ZDoom/Hexen when I started easing back into the commuinity a couple years ago, so I missed out on most of the stuff that can be done with Boom.

So again, thanks.

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