OBD:AGQG: Difference between revisions

818 bytes removed ,  19 September 2007
m
wiki code
m (slopes revisited)
m (wiki code)
Line 1: Line 1:
{{OBD_File_Header | type=AGQG | prev=AGQC | next=AGQR | name=Gunk Quad General Array | family=Level | align=center}}
{{OBD_File_Header | type=AGQG | prev=AGQC | next=AGQR | name=Gunk Quad General Array | family=Level | align=center}}
:
 
 
{{OBD_File_Image | image=agqg_a.gif}}
{{OBD_File_Image | image=agqg_a.gif}}
:
 
 
{{Table}}
{{Table}}
{{OBD_Table_Header}}
{{OBDth}}
|- ALIGN=CENTER VALIGN=TOP
{{OBDtr | 0x00 | res_id |FF0000| 01 49 02 00 | 585         | 00585-.AGQG }}
| 0x00 || file id || BGCOLOR="#FF0000" | 01 49 02 00 || 585 || ALIGN=LEFT | 00585-.AGQG
{{OBDtr | 0x04 | lev_id |FFFF00| 01 00 00 06 | 3           | level 3 }}
|- ALIGN=CENTER VALIGN=TOP
{{OBDtr | 0x08 |char[20]|00FF00| AD DE       | dead         | unused }}
| 0x04 || level id || BGCOLOR="#FFFF00" | 01 00 00 06 || 3 || ALIGN=LEFT | level 3
{{OBDtr | 0x1C | int32 |00FFFF| 15 A8 00 00 | 35349       | array size }}
|- ALIGN=CENTER VALIGN=TOP
{{OBDtrBK}}
| 0x08 || unused (20) || BGCOLOR="#00FF00" | AD DE || dead || ALIGN=LEFT | not used
{{OBDtr | 0x00 | int32 |FFC8C8| 00 00 00 00 | 0           | [[OBD:PNTA|PNTA]] element for 1st vertex }}
|- ALIGN=CENTER VALIGN=TOP
{{OBDtr | 0x04 | int32 |FFC8C8| 01 00 00 00 | 1           | [[OBD:PNTA|PNTA]] element for 2nd vertex }}
| 0x1C || int32 || BGCOLOR="#00FFFF" | 15 A8 00 00 || 35349 || ALIGN=LEFT | 35349 quads in array
{{OBDtr | 0x08 | int32 |FFC8C8| 02 00 00 00 | 2           | [[OBD:PNTA|PNTA]] element for 3rd vertex }}
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#000000"
{{OBDtr | 0x0C | int32 |FFC8C8| 03 00 00 00 | 3           | [[OBD:PNTA|PNTA]] element for 4th vertex }}
| COLSPAN=5 | <FONT SIZE=2 COLOR="#FFFFFF">First quad (outlined in black)</FONT>
{{OBDtr | 0x10 | int32 |FFFFC8| F5 0F 00 00 | 4085         | [[OBD:TXCA|TXCA]] element for 1st vertex }}
|- ALIGN=CENTER VALIGN=TOP
{{OBDtr | 0x14 | int32 |FFFFC8| F3 0F 00 00 | 4083         | [[OBD:TXCA|TXCA]] element for 2nd vertex }}
| 0x00 || int32 || BGCOLOR="#FFC8C8" | 00 00 00 00 || 0 || ALIGN=LEFT | [[OBD:PNTA | PNTA]] element for 1st vertex
{{OBDtr | 0x18 | int32 |FFFFC8| F4 0F 00 00 | 4084         | [[OBD:TXCA|TXCA]] element for 3rd vertex }}
|- ALIGN=CENTER VALIGN=TOP
{{OBDtr | 0x1C | int32 |FFFFC8| F6 0F 00 00 | 4086         | [[OBD:TXCA|TXCA]] element for 4th vertex }}
| 0x04 || int32 || BGCOLOR="#FFC8C8" | 01 00 00 00 || 1 || ALIGN=LEFT | [[OBD:PNTA | PNTA]] element for 2nd vertex
{{OBDtr | 0x20 | color |C8FFC8| 00 00 00 00 | 0, 0, 0, 0   | byte-swapped ARGB color for 1st vertex }}
|- ALIGN=CENTER VALIGN=TOP
{{OBDtr | 0x24 | color |C8FFC8| 00 00 00 00 | 0, 0, 0, 0   | byte-swapped ARGB color for 2nd vertex }}
| 0x08 || int32 || BGCOLOR="#FFC8C8" | 02 00 00 00 || 2 || ALIGN=LEFT | [[OBD:PNTA | PNTA]] element for 3rd vertex
{{OBDtr | 0x28 | color |C8FFC8| 02 07 09 00 | 2, 7, 9, 0   | byte-swapped ARGB color for 3rd vertex }}
|- ALIGN=CENTER VALIGN=TOP
{{OBDtr | 0x2C | color |C8FFC8| 06 15 1E 00 | 6, 21, 30, 0 | byte-swapped ARGB color for 4th vertex }}
| 0x0C || int32 || BGCOLOR="#FFC8C8" | 03 00 00 00 || 3 || ALIGN=LEFT | [[OBD:PNTA | PNTA]] element for 4th vertex
{{OBDtr | 0x30 |bitset32|C8FFFF| 00 00 08 02 | 0, 0, 8, 2   | flags (see below this table) }}
|- ALIGN=CENTER VALIGN=TOP
{{OBDtr | 0x34 | int16 |FFC8FF| FF FF       | -1           | object ID (obsolete?) }}
| 0x10 || int32 || BGCOLOR="#FFFFC8" | F5 0F 00 00 || 4085 || ALIGN=LEFT | [[OBD:TXCA | TXCA]] element for 1st vertex
{{OBDtr | 0x36 | int16 |FFC8FF| FF FF       | -1           | object type (obsolete?) }}
|- ALIGN=CENTER VALIGN=TOP
| 0x14 || int32 || BGCOLOR="#FFFFC8" | F3 0F 00 00 || 4083 || ALIGN=LEFT | [[OBD:TXCA | TXCA]] element for 2nd vertex
|- ALIGN=CENTER VALIGN=TOP
| 0x18 || int32 || BGCOLOR="#FFFFC8" | F4 0F 00 00 || 4084 || ALIGN=LEFT | [[OBD:TXCA | TXCA]] element for 3rd vertex
|- ALIGN=CENTER VALIGN=TOP
| 0x1C || int32 || BGCOLOR="#FFFFC8" | F6 0F 00 00 || 4086 || ALIGN=LEFT | [[OBD:TXCA | TXCA]] element for 4th vertex
|- ALIGN=CENTER VALIGN=TOP
| 0x20 || color || BGCOLOR="#C8FFC8" | 00 00 00 00 || 0, 0, 0, 0 || ALIGN=LEFT | byte-swapped ARGB color for 1st vertex
|- ALIGN=CENTER VALIGN=TOP
| 0x24 || color || BGCOLOR="#C8FFC8" | 00 00 00 00 || 0, 0, 0, 0 || ALIGN=LEFT | byte-swapped ARGB color for 2nd vertex
|- ALIGN=CENTER VALIGN=TOP
| 0x28 || color || BGCOLOR="#C8FFC8" | 02 07 09 00 || 2, 7, 9, 0 || ALIGN=LEFT | byte-swapped ARGB color for 3rd vertex
|- ALIGN=CENTER VALIGN=TOP
| 0x2C || color || BGCOLOR="#C8FFC8" | 06 15 1E 00 || 6, 21, 30, 0 || ALIGN=LEFT | byte-swapped ARGB color for 4th vertex
|- ALIGN=CENTER VALIGN=TOP
| 0x30 || bit32 || BGCOLOR="#C8FFFF" | 00 00 08 02 || 0, 0, 8, 2 || ALIGN=LEFT | flags (see below)
|- ALIGN=CENTER VALIGN=TOP
| 0x34 || int16 || BGCOLOR="#FFC8FF" | FF&nbsp;FF || -1 || ALIGN=LEFT | object ID (obsolete?)
|- ALIGN=CENTER VALIGN=TOP
| 0x36 || int16 || BGCOLOR="#FFC8FF" | FF&nbsp;FF || -1 || ALIGN=LEFT | object type (obsolete?)
|}
|}
;Objects
;Objects
:Those IDs and types also appear in [[ONOA]]. Types are:
:Those IDs and types also appear in [[OBD:ONOA|ONOA]]. Types are:
*0x00 03 - door
*0x00 03 - door
*0x00 05 - furniture
*0x00 05 - furniture
Line 55: Line 39:
:They seem obsolete (but may be useful for selective viewing/extracting of environment)
:They seem obsolete (but may be useful for selective viewing/extracting of environment)
;Triangles
;Triangles
:Many quads are in fact triangles: the last two vertices have the same PNTA and TXCA entries, and the ARGB color is (255, 205, 205, 205) (80% gray, 100% opaque). There is also a flag specifying that (see below).
: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 (see below).
;Flags
;Flags
:0x'''01''' 00 00 00 - '''unknown
:0x'''01''' 00 00 00 - unknown
:0x'''02''' 00 00 00 - ghost (pathfinding volume separator, see [[AKVA]] etc)
:0x'''02''' 00 00 00 - ghost (pathfinding volume separator, see [[OBD:AKVA|AKVA]] etc)
:0x'''04''' 00 00 00 - stairs up
:0x'''04''' 00 00 00 - stairs up
:0x'''08''' 00 00 00 - stairs down
:0x'''08''' 00 00 00 - stairs down
Line 75: Line 59:
:0x00 00 '''01''' 00 - no occlusion
:0x00 00 '''01''' 00 - no occlusion
:0x00 00 '''02''' 00 - danger
:0x00 00 '''02''' 00 - danger
:0x00 00 '''04''' 00 - set at runtime for quads hidden with [[env_show]], never used in files
:0x00 00 '''04''' 00 - set at runtime for quads hidden with *env_show*, never used in files
:0x00 00 '''08''' 00 - vertical collision: slope < 70°
:0x00 00 '''08''' 00 - vertical collision: slope < 70°
:0x00 00 '''10''' 00 - horizontal collision: slope > 70°
:0x00 00 '''10''' 00 - horizontal collision: slope > 70°
Line 97: Line 81:
:The projection plane is used to determine if a point is in a quad (this point is usually the result of an intersection between a ray and the quad plane).
:The projection plane is used to determine if a point is in a quad (this point is usually the result of an intersection between a ray and the quad plane).


----
 
:
{{OBD_File_Footer | type=AGQG | prev=AGQC | next=AGQR | name=Gunk Quad General Array | family=Level}}
{{OBD_File_Footer | type=AGQG | prev=AGQC | next=AGQR | name=Gunk Quad General Array}}
:
1,051

edits