Jump to content

OBD:AGQG: Difference between revisions

754 bytes added ,  28 December 2009
no edit summary
No edit summary
No edit summary
Line 55: Line 55:
:Many quads are in fact triangles: the last two vertices have the same [[OBD:PNTA|PNTA]] and [[OBD:TXCA|TXCA]] entries, and the ARGB color is (255, 205, 205, 205) (80% gray, 100% opaque). There is also a flag specifying that.
:Many quads are in fact triangles: the last two vertices have the same [[OBD:PNTA|PNTA]] and [[OBD:TXCA|TXCA]] entries, and the ARGB color is (255, 205, 205, 205) (80% gray, 100% opaque). There is also a flag specifying that.


;Stairs up/down
;Ghost, Stairs up, Stairs down
These 2 flags are used instead of the ghost flag when the pathfinding separator is placed at the bottom/top of the stairs.
:These flags are used for BNV adjacencies, see [[AKAA]]. Stairs up/down are used instead of Ghost when the quad is placed at the bottom/top of the stairs. These quads are not visibile. The script variable env_show_ghostgqs is intended to control the visibility of such quads but it requires "debug" level files.
 
:There are a couple of ghost quads that aren't referenced from [[AKAA]]. It's likely that those quads are useless.
 
;Door frame
:This appears to be another type of "ghost" quad (its visibility is controlled by the same env_show_ghostgqs variable). Sometimes it is used together with the Ghost flag but not always. Only the door frames that also have the Ghost flag are used as adjacencies so it's unclear if the rest of the door frames serve any purpose. In fact it appears that this flag has no effect other than making the quad invisible.


;Stairs
;Stairs
This is applied to the invisible ramp quad that covers the stairs. In general this flag is also applied to the visible stairs geometry but there are some exceptions (errors? see level 19 stairs).
:This is applied to the invisible ramp quad that covers the stairs. In general this flag is also applied to the visible stairs geometry but there are some exceptions (errors? see level 19 stairs).


;No occlusion
;No occlusion
This flag tells the octtree raycaster to ignore the quad when doing ray/quad intersections. This is tipically used for small quads that are unlikely to affect the overall environment visibility.
:This flag tells the octtree raycaster to ignore the quad when doing ray/quad intersections. This is tipically used for small quads that are unlikely to affect the overall environment visibility.


;Projection plane flags
;Projection plane flags
These 2 flags can be 00, 01, 10 and 11. That means the values 0,1,2 and 3 which have the following meanings:
:These 2 flags can be 00, 01, 10 and 11. That means the values 0,1,2 and 3 which have the following meanings:
:*0 - No projection plane specified. One can be computed if needed. Never used in files, may slow down the game if used.
:*0 - No projection plane specified. One can be computed if needed. Never used in files, may slow down the game if used.
:*1 - Project quad on XY plane.
:*1 - Project quad on XY plane.
Line 73: Line 78:


;Grid ignore
;Grid ignore
Appears to be unused. It's likely purpose is to mark quads that don't count as obstacles in the pathfinding grid.
:Appears to be unused. It's likely purpose is to mark quads that don't count as obstacles in the pathfinding grid.


;Danger
;Danger
Appears to be unused. It's likely purpose is to create danger areas in the pathfinding grids. Usually there's a trigger volume nearby that hurts/kills the character. This quads are always invisible.
:Appears to be unused. It's likely purpose is to create danger areas in the pathfinding grids. Usually there's a trigger volume nearby that hurts/kills the character. This quads are always invisible.


;Invisible
;Invisible
Invisible quads have a couple of different uses:
:Invisible quads have a couple of different uses:
:* block player access to some parts of the environment
:* block player access to some parts of the environment
:* stairs ramp
:* stairs ramp
Line 87: Line 92:


;Furniture
;Furniture
Set for all quads that belong to a furniture object. It doesn't appear to be used. It is also redundant since all the furniture quads have an object id.
:Set for all quads that belong to a furniture object. It doesn't appear to be used. It is also redundant since all the furniture quads have an object id.


;No decal
;No decal
Prevents the creation of decals on the quad. Set for door quads because the decals would disappear when the door opens. That's why shooting a door doesn't leave a mark.
:Prevents the creation of decals on the quad. Set for door quads because the decals would disappear when the door opens. That's why shooting a door doesn't leave a mark.


;Runtime flags
;Runtime flags
708

edits