Demon
Register | User Profile | Member List | F.A.Q | Privacy Policy | New Blog | Search Forums | Forums Home
Doomworld Forums : Powered by vBulletin version 2.2.5 Doomworld Forums > Classic Doom > Doom Editing > How do you get an appearance of room over room in ZDoom?
Pages (2): [1] 2 »  
Author
All times are GMT. The time now is 07:52. Post New Thread    Post A Reply
Nixot
Nowits


Posts: 288
Registered: 06-09


In KDiZD, I saw this in the first level:

http://img20.imageshack.us/img20/4421/screenshotdoom200907171.png

Then this on the third level:

http://img38.imageshack.us/img38/4421/screenshotdoom200907171.png

How is this done? Additionally, how do I make an appearance of room-over-room with a wirey bridge like in congestion 1024 level 4?

Old Post 07-17-09 14:31 #
Nixot is offline Profile || Blog || PM || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
the iron hitman
Member


Posts: 486
Registered: 06-07


There's a few ways you can do this. Those screenshots are the rsult of using "stacked sectors". To achieve true 3D however, you should refer to GzDoom's 3D floors (linedef action 160).

If you like, I can whip up a practice wad that implements these features. Let me know if you want this, because its rather difficult to explain without using examples.

__________________
Still has no custom title.

Old Post 07-17-09 15:52 #
the iron hitman is offline Profile || Blog || PM || Email || Search || Add Buddy IP || Edit/Delete || Quote
Kyka
Loser


Posts: 1861
Registered: 06-08



the iron hitman said:
There's a few ways you can do this. Those screenshots are the rsult of using "stacked sectors". To achieve true 3D however, you should refer to GzDoom's 3D floors (linedef action 160).

If you like, I can whip up a practice wad that implements these features. Let me know if you want this, because its rather difficult to explain without using examples.




Yes please.

Old Post 07-17-09 16:07 #
Kyka is offline Profile || Blog || PM || Search || Add Buddy IP || Edit/Delete || Quote
kristus
Megablast!


Posts: 10604
Registered: 07-00


I'm probably gonna get hell from zomeone for this but here goes...

It's using portals in Zdoom to give the effect of a second level. I don't recommend you to use it though. It's a quite buggy feature and you'll more often than not end up with a glitchy implementation that gives off HOMs. (look for instance in UTNT Map03)

I also don't really recommend you to use 3d floors in ports such as GZdoom and EDGE etc. Well, if you're already making the wad for them, by all means go ahead and knock yourself out. But I wouldn't suggest you base your use any of those sources for that reason.

If you're actually interested in achieving 3d architecture. You should look in to the Eternity Engine and it's linked portals technology.
(Excuse my shameless self promotion by showing off a shot of one of my own maps)
http://www.tfuture.org/kristus/portals_FTW_2.gif

Old Post 07-17-09 16:34 #
kristus is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
Vermil
Senior Member


Posts: 1666
Registered: 03-04


That looks soooo ugly. I mean one of your railing isn't even equally spaced.

Old Post 07-17-09 16:40 #
Vermil is offline Profile || Blog || PM || Email || Search || Add Buddy IP || Edit/Delete || Quote
the iron hitman
Member


Posts: 486
Registered: 06-07



kristus said:
I'm probably gonna get hell from zomeone for this but here goes...

It's using portals in Zdoom to give the effect of a second level. I don't recommend you to use it though. It's a quite buggy feature and you'll more often than not end up with a glitchy implementation that gives off HOMs. (look for instance in UTNT Map03)

I also don't really recommend you to use 3d floors in ports such as GZdoom and EDGE etc. Well, if you're already making the wad for them, by all means go ahead and knock yourself out. But I wouldn't suggest you base your use any of those sources for that reason.

If you're actually interested in achieving 3d architecture. You should look in to the Eternity Engine and it's linked portals technology.
(Excuse my shameless self promotion by showing off a shot of one of my own maps)
http://www.tfuture.org/kristus/portals_FTW_2.gif



Uber promotion post! Nice screenshot though, I wonder if that's possible in GzDoom, Eternity sure does have promising features (wondering if its worth converting from GzDoom to Eternity at this present moment)

Anyway, this is what you're looking for I believe: http://www.filefront.com/14062003/3dbridgeillusions.wad

Hope this helps!

__________________
Still has no custom title.

Old Post 07-17-09 16:45 #
the iron hitman is offline Profile || Blog || PM || Email || Search || Add Buddy IP || Edit/Delete || Quote
Ixnatifual
Junior Member


Posts: 106
Registered: 09-04


You can do some crazy things with GZDoom 3d floors. Unfortunately it's a lot of work to make expansive 3d floors as you have to juggle around with lots of dummy sectors. I'm not familiar with how Eternity works but given the designs I've seen done with it I can imagine it's a lot less of a hassle to use its portals for the job.

Old Post 07-17-09 16:52 #
Ixnatifual is offline Profile || Blog || PM || Email || Search || Add Buddy IP || Edit/Delete || Quote
Nixot
Nowits


Posts: 288
Registered: 06-09



Kyka said:



Yes please.



Seconded

And WHOA KRISTUS!! HOW DID YOU DO THAT!!!!1111!11!11

Old Post 07-17-09 16:58 #
Nixot is offline Profile || Blog || PM || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
the iron hitman
Member


Posts: 486
Registered: 06-07



Nixot said:
Seconded


Link has been provided in my previous post :)

__________________
Still has no custom title.

Old Post 07-17-09 17:09 #
the iron hitman is offline Profile || Blog || PM || Email || Search || Add Buddy IP || Edit/Delete || Quote
kristus
Megablast!


Posts: 10604
Registered: 07-00



the iron hitman said:
Uber promotion post!

Yes. But I think it's warranted for Eternity. Since most people don't have the faintest idea of what EE can do. Usually people just promote Zdoom by default.


Nixot said:
Seconded

And WHOA KRISTUS!! HOW DID YOU DO THAT!!!!1111!11!11


It's done with portals.
In reality the scene is 4 layers of sectors stacked on top of each other by the engine.

Old Post 07-17-09 17:30 #
kristus is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
NiGHTMARE
Forum Legend


Posts: 5012
Registered: 05-00



kristus said:
It's using portals in Zdoom to give the effect of a second level. I don't recommend you to use it though. It's a quite buggy feature and you'll more often than not end up with a glitchy implementation that gives off HOMs. (look for instance in UTNT Map03)


There have been various stacked sector tricks discovered since UTNT map03, though. The most useful is using mid textures in place of lower and upper textures; if you do it right, some pretty complex architecture can be made with no HOMs whatsoever (esselfortium is a master of this ;)).

Also: http://forum.zdoom.org/viewtopic.php?f=4&t=18677

Old Post 07-17-09 17:54 #
NiGHTMARE is offline Profile || Blog || PM || Email || Search || Add Buddy IP || Edit/Delete || Quote
Graf Zahl
Why don't I have a custom title by now?!


Posts: 7687
Registered: 01-03


And BTW, if someone really wants to see how a level with well-constructed 3D floors looks, check out Hi-Tech Hell 2. It was made for Legacy so there's no slopes in there but the architecture is some of the best stuff I have seen in a Doom level.

Regarding Eternity's portals, sure it's impressive. However, I think the Doom renderer is ill-suited for any kind of portal implementation because one way or another the way the BSP is traversed gets in the way. This is the main reason I haven't pursued this in GZDoom so far. All ideas I get to work around these shortcomings have an unacceptable performance impact or require information that's only available with the software renderer. In other words: Useless for OpenGL.

Doing it with a Build-like algorithm will yield much better results I think (and also be much more efficient when using a hardware renderer.)

Old Post 07-17-09 18:27 #
Graf Zahl is offline Profile || Blog || PM || Email || Search || Add Buddy IP || Edit/Delete || Quote
esselfortium
A Major Doomworld Concern


Posts: 6482
Registered: 01-02



Graf Zahl said:
And BTW, if someone really wants to see how a level with well-constructed 3D floors looks, check out Hi-Tech Hell 2. It was made for Legacy so there's no slopes in there but the architecture is some of the best stuff I have seen in a Doom level.

Regarding Eternity's portals, sure it's impressive. However, I think the Doom renderer is ill-suited for any kind of portal implementation because one way or another the way the BSP is traversed gets in the way. This is the main reason I haven't pursued this in GZDoom so far. All ideas I get to work around these shortcomings have an unacceptable performance impact or require information that's only available with the software renderer. In other words: Useless for OpenGL.

Doing it with a Build-like algorithm will yield much better results I think (and also be much more efficient when using a hardware renderer.)


I'm having some difficulty understanding how being useless for an OpenGL renderer has anything to do with how well-suited Doom's own renderer is for portals.

__________________
essel.spork-chan.net - doom stuff, artwork, and music by esselfortium

Old Post 07-17-09 19:21 #
esselfortium is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
Gez
Why don't I have a custom title by now?!


Posts: 10987
Registered: 07-07


Ah, but Eternity doesn't use Doom's own renderer.

Old Post 07-17-09 19:32 #
Gez is offline Profile || Blog || PM || Search || Add Buddy IP || Edit/Delete || Quote
esselfortium
A Major Doomworld Concern


Posts: 6482
Registered: 01-02


Oh, but it used to, and it had portals then, too! :)

__________________
essel.spork-chan.net - doom stuff, artwork, and music by esselfortium

Old Post 07-17-09 19:33 #
esselfortium is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
SoM
azerty YAY!


Posts: 285
Registered: 03-02



Graf Zahl said:
And BTW, if someone really wants to see how a level with well-constructed 3D floors looks, check out Hi-Tech Hell 2. It was made for Legacy so there's no slopes in there but the architecture is some of the best stuff I have seen in a Doom level.


Also note-worthy is Kristus' (Ebola's) "Phobia" maps. Utterly fantastic!


Regarding Eternity's portals, sure it's impressive. However, I think the Doom renderer is ill-suited for any kind of portal implementation because one way or another the way the BSP is traversed gets in the way. This is the main reason I haven't pursued this in GZDoom so far. All ideas I get to work around these shortcomings have an unacceptable performance impact or require information that's only available with the software renderer. In other words: Useless for OpenGL.


Yes, in order for you to accomplish the same type of portal setup in hardware mode, you would basically need to create something analogous to a shadow volume from the camera that was fitted to the silhouette of the portal window and discard any geometry that didn't intersect that volume. Highly inefficient.


Doing it with a Build-like algorithm will yield much better results I think (and also be much more efficient when using a hardware renderer.)


A build-type system would work much better for your purposes. EE's compatibility demands prompted me to seek a BSP-friendly solution.

*Edit*
Also, on the subject of Zdoom's portals being "buggy": They aren't buggy, they render exactly what a doom map would look like from above/below in that any 1s line or blocking upper/lower walls will make hom beyond them. I've implemented portals in Legacy (beta feature that never went anywhere) and EE now, and I can tell you it requires workarounds. My original code for Legacy was HORRID trying to reject the correct architecture to not cause HOM/incorrect sprites from rendering and not cause a terrible speed loss.

EE's system is much cleaner and better designed (IMO) and requires only one function I would consider a "work-around" which does produce a slight performance hit, but I'm looking into a better designed solution to integrate this test so that it's a natural part of the seg rendering codepath rather than a separate work-around... But I digress.

Last edited by SoM on 07-17-09 at 19:52

Old Post 07-17-09 19:38 #
SoM is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
Graf Zahl
Why don't I have a custom title by now?!


Posts: 7687
Registered: 01-03



SoM said:


Yes, in order for you to accomplish the same type of portal setup in hardware mode, you would basically need to create something analogous to a shadow volume from the camera that was fitted to the silhouette of the portal window and discard any geometry that didn't intersect that volume. Highly inefficient.





What I am doing is using a stencil buffer to discard the stuff that must not be drawn. The performance hit is very noticable - especially if more than one portal is in view.

Another problem is this that there's some potential of too much geometry being processed - even though I am already narrowing down the viewable area in the clipper as much as possible. This can also cause slowdowns

There is one issue I have not solved yet:

There's horrible glitches if the portal view gets obstructed by some geometry in front of the visible part but in front of the camera. If I could solve this I'd be able to do a (rather inefficient) implementation of Eternity's portals in the GL renderer.

Old Post 07-17-09 21:28 #
Graf Zahl is offline Profile || Blog || PM || Email || Search || Add Buddy IP || Edit/Delete || Quote
SoM
azerty YAY!


Posts: 285
Registered: 03-02



Graf Zahl said:
What I am doing is using a stencil buffer to discard the stuff that must not be drawn. The performance hit is very noticable - especially if more than one portal is in view.

Another problem is this that there's some potential of too much geometry being processed - even though I am already narrowing down the viewable area in the clipper as much as possible. This can also cause slowdowns



I assume that the stencil buffer is probably the only way you can do portals in an OpenGL environment. I bet turning on the stencil test does damage your frame rates, especially on slower cards. Although you still haven't touched on the REAL problem implementing portals in Doom...


There is one issue I have not solved yet:

There's horrible glitches if the portal view gets obstructed by some geometry in front of the visible part but in front of the camera. If I could solve this I'd be able to do a (rather inefficient) implementation of Eternity's portals in the GL renderer.



There we go! This is what I was referring to with my "shadow volume" concept. Basically, in the software renderer I have the outline of the portal "window" and I can reject segs based on their screen position. For ceiling portals, any seg that would render entirely above the portal window gets rejected, for floors, any seg that would render entirely below the portal window (in screen space, that is) is rejected. This is all done with a quick pass through the projected silhouette coords for segs that could potentially cause HOM in the portal.

As you said before, hardware doesn't give you access to this information, so your best bet would be some sort of frustrum culling but that would be a nightmare. I totally agree with you that portals+bsp aren't a good solution for hardware renderers. A build type system wouldn't help you much with the stencil buffer, but would be quite useful for the other problems you're having.

Old Post 07-17-09 21:58 #
SoM is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
Graf Zahl
Why don't I have a custom title by now?!


Posts: 7687
Registered: 01-03



SoM said:


I assume that the stencil buffer is probably the only way you can do portals in an OpenGL environment. I bet turning on the stencil test does damage your frame rates, especially on slower cards. Although you still haven't touched on the REAL problem implementing portals in Doom...




Indeed. Depending on the portal's complexity I have seen framerates break down from above 100 to less than 30 fps.





A build type system wouldn't help you much with the stencil buffer.



That depends on what you allow. If you set a rule saying 'no overlaps' and you can assume that any part behind the portal won't show through in the regular part of the map it can be done without a stencil. It could all be rendered in one pass so there'd be no slowdowns or other ugly side effects.

Old Post 07-17-09 22:19 #
Graf Zahl is offline Profile || Blog || PM || Email || Search || Add Buddy IP || Edit/Delete || Quote
Creaphis
I will deliberately take a contrary position just for the sake of writing incredibly long arguments


Posts: 4177
Registered: 10-05


*crosses hardware rendering in Eternity off his wish list*

Old Post 07-17-09 22:35 #
Creaphis is offline Profile || Blog || PM || Email || Search || Add Buddy IP || Edit/Delete || Quote
SoM
azerty YAY!


Posts: 285
Registered: 03-02



Graf Zahl said:
That depends on what you allow. If you set a rule saying 'no overlaps' and you can assume that any part behind the portal won't show through in the regular part of the map it can be done without a stencil. It could all be rendered in one pass so there'd be no slowdowns or other ugly side effects.


Couldn't you say 'no overlaps' currently and rendering every in one pass?

Old Post 07-17-09 22:35 #
SoM is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
Graf Zahl
Why don't I have a custom title by now?!


Posts: 7687
Registered: 01-03


What difference would that make?

If there's no overlaps the result would be the same - but Build's way of traversing a level would make the one pass approach more natural.

Old Post 07-17-09 23:02 #
Graf Zahl is offline Profile || Blog || PM || Email || Search || Add Buddy IP || Edit/Delete || Quote
deathbringer
Post invalidated by first word being "uhhh"


Posts: 3506
Registered: 04-02


uhhhhhhhhhh

*leap in* I thought KDiZD's "room over room" was done with portals?

Or what about the bit in Genesis of Descent where you fight through a room, and then end up on top of the building and can see the room you fought in underneath you?

Old Post 07-18-09 12:31 #
deathbringer is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
andrewj
Senior Member


Posts: 1626
Registered: 04-02



SoM said:
I totally agree with you that portals+bsp aren't a good solution for hardware renderers.

I totally disagree.

BSP gives you subsectors in rendering order. That is just as useful for rendering a portal as it is for rendering the normal scene.

You can prevent the portal contents contaminating the normal scene with clipping planes. OpenGL only guarantees 6 which is only enough for say depth 2 (a portal in a portal), however by using software clipping planes you could support unlimited depth.

Old Post 07-18-09 13:08 #
andrewj is offline Profile || Blog || PM || Search || Add Buddy IP || Edit/Delete || Quote
Graf Zahl
Why don't I have a custom title by now?!


Posts: 7687
Registered: 01-03



andrewj said:

I totally disagree.

BSP gives you subsectors in rendering order. That is just as useful for rendering a portal as it is for rendering the normal scene.




That may be. But the problem lies elsewhere:

There is absolutely no correlation between the subsectors in the main scene and the ones in the portal - which makes the scene a lot harder to process because you can't rely on the main scene for processing the portal.

With Build you get a natural crossing from one side to the other which eliminates a lot of problems without ever having to work around some of the issues that a BSP-based renderer would have (e.g. obstructing geometry between the camera for the portal part and the actually visible part of the portal.)

OpenGL's clipping planes are more or less useless here if the portal gets more complex.

Old Post 07-18-09 14:58 #
Graf Zahl is offline Profile || Blog || PM || Email || Search || Add Buddy IP || Edit/Delete || Quote
andrewj
Senior Member


Posts: 1626
Registered: 04-02


You are not moving the camera to render a portal, right? That is the wrong approach.

I think BSP is nearly as natural as Build, when you hit a portal seg you just setup a new geometry translation and walk the BSP tree again, skipping nodes and subsectors that lie outside of the portal (like you do for the normal view frustum).

One issue I had was that I wasn't clipping blocking segs (manually) to the portal before updating the 1D occlusion buffer with them, leading to bad glitches.

Old Post 07-19-09 02:34 #
andrewj is offline Profile || Blog || PM || Search || Add Buddy IP || Edit/Delete || Quote
SoM
azerty YAY!


Posts: 285
Registered: 03-02



andrewj said:
I totally disagree.

BSP gives you subsectors in rendering order. That is just as useful for rendering a portal as it is for rendering the normal scene.

You can prevent the portal contents contaminating the normal scene with clipping planes. OpenGL only guarantees 6 which is only enough for say depth 2 (a portal in a portal), however by using software clipping planes you could support unlimited depth.



The problem isn't portal contents contaminating the regular scene. The problem is 1S and other clipping lines causing HOM in the portal windows themselves.

Old Post 07-19-09 07:19 #
SoM is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
Cybershark
Junior Member


Posts: 173
Registered: 09-07



Nixot said:
http://www.doomworld.com/vbmisc/qimg.gif

How is this done? Additionally, how do I make an appearance of room-over-room with a wirey bridge like in congestion 1024 level 4?


Seems everyone would rather debate portals than answer your actual questions...

That kinda fake glass-look floor is done by offseting translucent middle textures down into the floor.
The 'wirey bridges' are usually constructed of floating middle textures and Zdoom's bridge things.

In either case you should be able to see how the effect is achieved if you simply open up the maps in an editor.

Old Post 07-19-09 11:54 #
Cybershark is offline Profile || Blog || PM || Search || Add Buddy IP || Edit/Delete || Quote
the iron hitman
Member


Posts: 486
Registered: 06-07



Cybershark said:

Seems everyone would rather debate portals than answer your actual questions...



Thread has almost been hijacked. But on topic...

Incase no-one has bothered reading my posts higher up, I'll re-post the practice wad link.

Link: http://www.filefront.com/14062003/3dbridgeillusions.wad

If anyone wants a proper tutorial on it, I will "try" and make one when I get time.

__________________
Still has no custom title.

Old Post 07-19-09 11:58 #
the iron hitman is offline Profile || Blog || PM || Email || Search || Add Buddy IP || Edit/Delete || Quote
Graf Zahl
Why don't I have a custom title by now?!


Posts: 7687
Registered: 01-03



Cybershark said:

Seems everyone would rather debate portals than answer your actual questions...

That kinda fake glass-look floor is done by offseting translucent middle textures down into the floor.
The 'wirey bridges' are usually constructed of floating middle textures and Zdoom's bridge things.

In either case you should be able to see how the effect is achieved if you simply open up the maps in an editor.




No.

What you see here is an actual portal, not a cheap fake.

Old Post 07-19-09 13:00 #
Graf Zahl is offline Profile || Blog || PM || Email || Search || Add Buddy IP || Edit/Delete || Quote
All times are GMT. The time now is 07:52. Post New Thread    Post A Reply
Pages (2): [1] 2 »  
Doomworld Forums : Powered by vBulletin version 2.2.5 Doomworld Forums > Classic Doom > Doom Editing > How do you get an appearance of room over room in ZDoom?

Show Printable Version | Email this Page | Subscribe to this Thread

 

Forum Rules:
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is OFF
vB code is ON
Smilies are OFF
[IMG] code is ON
 

< Contact Us - Doomworld >

Powered by: vBulletin Version 2.2.5
Copyright ©2000, 2001, Jelsoft Enterprises Limited.