ZDaemon Forum Index ZDaemon
Client/Server DOOM
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Render middle floor, possible?

 
Post new topic   Reply to topic    ZDaemon Forum Index -> ZDaemon Development
View previous topic :: View next topic  
Author Message
Body-Guard
Unstoppable!


Joined: 08 Jan 2006
Location: Hungary

PostPosted: Mon Aug 19, 2013 6:02 am    Post subject: Render middle floor, possible? Reply with quote

The idea of 3D floors was discussed numerous times already and they will not be supported by Zdaemon. I was thinking about an another way in which some 3D like structures can be built. I came up with the following:

When using textures, you have a lower texture, an upper texture and a middle texture. Right now, middle textures are used to build bridge-like things. The idea is to have a "middle floor" between the floor and ceiling, which is rendered with no thickness, but both of it's top and bottom is visible. One sector could have more middle floors, and one could set different textures for both the top and bottom of the middle floor.

Using the middle floor in conjunction with middle textures, 3D floor alike structures could be built. The middle textures could give thickness, and there would be a lower and an upper middle floor for the bottom and top of the 3D structure.

An appropriate ACS code for creating a middle floor could look like this:

Code:
//Sector_RenderMiddleFloor(sectortag,toptex,bottomtex,height);

Script 1 open
{
    Sector_RenderMiddleFloor(6,"FLOOR0_3","FLOOR0_1",48);
}


The above code would create a middle floor in all sectors with tag 6 using FLOOR0_3 as the top texture, FLOOR0_1 as the bottom texture and at 48 height.

What do you think, possible to implement?


EDIT: Picture showing a 3D structure built like this.

Back to top
View user's profile Send private message Visit poster's website MSN Messenger
TheCupboard
Generic Title


Joined: 25 Feb 2007
Location: USA

PostPosted: Mon Aug 19, 2013 6:09 pm    Post subject: Reply with quote

It might be possible to do this using bridge things placed at the appropriate Z Heights. Basically have two layers of them and a middle texture floating to separate them as you wrote. ZD used to have the "jackhammer effect" when players would walk across simple bridges like on Magical Ice Forts from zdctfmp. That fix was a real godsend when it was handed down to mere mortals. I haven't seen that bug in a long time, and I imagine it would be the only thing holding back the feasible implementation of this.

So are we building a multi-layer suspension bridge now or wot.
Back to top
View user's profile Send private message Send e-mail Visit poster's website
[n00b]Adereth
Spamming!


Joined: 16 Jul 2005
Location: Oh god, what year is this?!

PostPosted: Thu Dec 26, 2013 12:52 am    Post subject: Reply with quote

The reason why Doom doesn't support multiple ceiling/floor planes per sector is a fundamental design decision in how the drawing algorithm works—the game draws the real ceiling and floor on the screen as infinite planes (think like staring at a linedef tagged to be a horizon) after crawling over the map's BSP tree and determining where the sector bounds are on the screen.

The implementation of a full 3D floor hack requires modifying very complex code that no one's touched in almost twenty years; it's drastically easier to just switch to using OpenGL. Out of all the 2.5D games released in the 90s, I think Shadow Warrior is the only one that supports the necessary portals, and that was after Ken Silverman had been developing the BUILD engine for 4-5 years, a much longer cycle than Carmack had on Doom. (In that time he actually wrote a real Quake-like 3D engine, called Polymost, and probably back-ported code from it.)

It would be a much better idea to beg for floor sprites, instead, like Duke 3D had. These have an innately finite area, unlike middle ceilings/floors, and require little more clipping code than normal sprites.
Back to top
View user's profile Send private message Visit poster's website AIM Address
Display posts from previous:   
Post new topic   Reply to topic    ZDaemon Forum Index -> ZDaemon Development All times are GMT + 1 Hour
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group