Posted: 16th Jun 2007 4:43
I've been trying to get some decent culling happening since my game is slow and draws most of its objects in the background, behind walls.

And lets face it, when you are facing a wall everything behind it shouldn't be rendered.


1. Exclude Object on - I already use this for screen objects and distance culling.



I hear all this talk about Portals 5.9 introduced them, and theres all this talk about update 6 supporting them.

People talk all about how good they are...


Is there a command that actually lets you do this?

Is there a command that allows a "portal" to be created?


I've searched the forums, the code base, the help files, the examples, the tutorials. --Nothing.

There's just a few references to "Load Static Object" automatically creating a portal. And the command is no longer supported.
Posted: 16th Jun 2007 9:07
Mage, if I understand you correctly, you are referring to the areaportals that bsp maps like Quake II/III use to divide maps, and also to make windows without rendering polys that are not visible, hide rooms, etc.

I get similarly confused by this. First of all, people state all the time that bsps are fully rendered each frame, even in Quake III. That is not true as I understand Quake II/III. There is a potential visibility list that is supposed to be used to cull first. It is the first cull in QuakeII/III; I got the source. I am going to do some experiments to test this in DBPro tonight. I already verified that, at least...the tris behind you are not ever rendered, so at least the z-axis makes some sense, although it might be culled elsewhere in that case.

The thing is that DBPro doesn't keep the entity list as far as I know, and areaportals are entities. I can make a window in a map, and it works fine; I just never tried to count polys before in that situation. The things work very fast, however. DBPro has a native QII/III bsp engine, they don't appear to be DBO conversions. In fact, I think they were there first, and DBO came later. I may be delusional about that, however.

There is talk of zones, but that doesn't appear to be the same thing at all.
Posted: 16th Jun 2007 12:05
This tutorial explains it all, and even shows you how to visually check if the portals are working:

http://www.thegamecreators.com/data/newsletter/newsletter_issue_37.html#6


I haven't used it since writing the tutorial, but it's something I need to look at again for my own project. So anything you find out, I'd love to know about

...and it's LOAD STATIC OBJECTS, I hope that fixes it.
Posted: 16th Jun 2007 16:37
Load Static Objects

Yeah tried to load an X File with that and the program did a hard crash.

Seems you need FPSC and the objects need some special format.


So I guess DB Pro doesn't support Portals despite all the fanfare.
Posted: 16th Jun 2007 18:23
Personally, I think a great addition to DBPro 7 would be something similiar to the SYNC command that would just do the Frustum Culling routines.

Maybe something like this:

DO

REM We could do our own pre-Frustum Culling here

CULL

REM Then we can do our own post-Frustum Culling Here

SYNC
REM The sync command would also need logic in it to
REM recognize that all culling has already been done
REM and it only needs to do the post-cull work

LOOP
Posted: 16th Jun 2007 18:59
Extending this discussion a little further...

I was able to run your tutorial, Steve, in dbpro 6.6 and it worked really well. Do you know if there's a way to accomplish portal-based occlusion culling using DBO levels created in 3D World Studio?

I tried rebuilding an identical level to the "universe.dbo" that's in the tutorial using 3DWS, but DBPro just crashed when I tried loading it with the LOAD STATIC OBJECTS command :/

I haven't been with DBPro for very long, could anyone inform me on the history of 3D World Studio, and FPSC, and their relation to TGC?

Why do these 2 tools export (supposedly) the same DBO file format and yet you have to use one command (LOAD OBJECT for 3DWS and LOAD STATIC OBJECTS for FPSC)? Why are some features available from one format and not in the other?

I'm currently using 3DWS for my level editor, but it doesn't look like I can take advantage of portal-based occlusion culling with 3DWS-exported DBO levels -- do I HAVE to have FPSC to do this? If so, can FPSC import and use any DBO object made in 3DWS?

Thanks!!!

(sorry for so many questions in 1 post)