Jump to content

  • Log In with Google      Sign In   
  • Create Account

Map compilation hidden surface removal


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
3 replies to this topic

#1 polyfrag   Crossbones+   -  Reputation: 1848

Like
0Likes
Like

Posted 30 June 2013 - 09:04 PM

I'm making a map editor that uses brushes like in BSP.

How do you determine which polygons are covered up by one or several brushes, either because of coplanar brushes or because they face a volume covered up from the entity-side of the map, forming an enclosure.



Sponsor:

#2 radioteeth   Prime Members   -  Reputation: 1064

Like
0Likes
Like

Posted 01 July 2013 - 04:14 PM

It's my understanding that brushes are defined as planes forming a convex hull, as opposed to polygons, and it is the intersection of these planes that produces polygons from the brush. It shouldn't be an issue eliminating polygons in an editor, because the BSP compiler itself will properly intersect all the planes and deduce which polygons form the visible surfaces on the inside of the map.

 

If the issue is rendering the brushes in the editor, you might have to perform some simple BSP-style intersection, maybe building a sort of crude BSP from in the editor that is used specifically for rendering, re-building (or updating) it when the user moves/changes/creates/deletes a brush.

 

EDIT: If you're talking about optimizing editor rendering, I would just do a screenspace occlusion query for each brush, sorting them front to back, and with each brush creating a minimum occluding rectangle on the screen, until there is no more space on the screen that any brushes intersect with their maximum bounding rectangle.


Edited by radioteeth, 01 July 2013 - 04:17 PM.


#3 de_mattT   Members   -  Reputation: 308

Like
0Likes
Like

Posted 01 July 2013 - 04:58 PM

Not sure if this is exactly what you're after but here's a link to a .pdf which describes how to perform constructive solid geometry on brushes to remove coplanar surfaces.

http://mattn.ufoai.org/files/MAPFiles.pdf

 

The start of the .pdf describes thw .map file format (Quake engine games). Further in it explains how to perform CSG.

 

Matt



#4 polyfrag   Crossbones+   -  Reputation: 1848

Like
0Likes
Like

Posted 02 July 2013 - 01:09 AM

This is exactly what I was looking for. Thanks.






Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS