Jump to content
The Dark Mod Forums

Optimizing maps / optimizing techniques (brushwork) questions


Recommended Posts

4 hours ago, stgatilov said:

As far as I remember, any entity is enough to make sealed area pass through compiler, not only player-start. So if you put at least one entity per room, it is quite expected that you will get many visleafs without visportals 😃

I know the flood fill can start with any entity, but does it actually do a separate flood fill for every entity and divide the map into visleafs if the map sections are disconnected?

If so, then I guess what HMart wants to do will work perfectly.

Link to post
Share on other sites
12 minutes ago, HMart said:

is just hiding and showing as I move slightly forward and back while clipping with a wall. 

Right, but my point is that the distant room appearing to disappear behind a wall doesn't prove that it is being culled by the engine. It might still be sent to the GPU and rendered, but hidden from the final output image because something else (the wall) is drawn in front. That's why you need r_showTris 2, which shows all triangles that are being rendered, even those which are behind other objects and not visible in the final image.

Link to post
Share on other sites
13 minutes ago, OrbWeaver said:

I know the flood fill can start with any entity, but does it actually do a separate flood fill for every entity and divide the map into visleafs if the map sections are disconnected?

Well, it does not make sense the other way.

I guess mappers know well that they can have "zones" which are open to void, but as soon as they put any entity there, they get a leak. So the flood fill obviously starts from every entity. As for visleafs, they are simply connected components of nonopaque BSP volumes, separated by visportals and opaque volumes.

UPDATE: I think it is easy to check by putting many copy/pasted sealed rooms, and checking various console messages. The number of visleaf areas is printed there, I guess.

Link to post
Share on other sites
24 minutes ago, OrbWeaver said:

Right, but my point is that the distant room appearing to disappear behind a wall doesn't prove that it is being culled by the engine. It might still be sent to the GPU and rendered, but hidden from the final output image because something else (the wall) is drawn in front. That's why you need r_showTris 2, which shows all triangles that are being rendered, even those which are behind other objects and not visible in the final image.

Here is a better video with r_tris you can clearly see that at the center of the room, even thou behind walls, other models/entities tris show up with r_tris 2 on, while the other peace in the void do not, two when clipping the wall the other "room" tris show up and while in clear view of the camera, it totally vanishes from view, including the tris visualization when I backup into the room. I don't know how else to read this but the engine culling it. 

https://drive.google.com/file/d/18yd3014cnRGnF4bF9DbR1ynLNZjObxLv/view?usp=sharing

Link to post
Share on other sites
2 hours ago, stgatilov said:

So the flood fill obviously starts from every entity. As for visleafs, they are simply connected components of nonopaque BSP volumes, separated by visportals and opaque volumes.

 

2 hours ago, HMart said:

I don't know how else to read this but the engine culling it. 

https://drive.google.com/file/d/18yd3014cnRGnF4bF9DbR1ynLNZjObxLv/view?usp=sharing

Yes, that looks pretty conclusive, and suggests that @stgatilov's theory is correct. The engine is indeed dividing the map into disconnected regions separated by opaque volumes, and culling everything not reachable from the current room, without any need for visportals.

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...