OBD:ABNA: Difference between revisions

From OniGalore
Jump to navigation Jump to search
No edit summary
m (wiki code)
Line 1: Line 1:
{{OBD_File_Header | type=ABNA | prev=WPge | next=AGDB | name=BSP Tree Node Array | family=Level | align=center}}
{{OBD_File_Header | type=ABNA | prev=WPge | next=AGDB | name=BSP Tree Node Array | family=Level | align=center}}
:
 
----
 
:
[[image:abna_a.gif]]
{{OBD_File_Image | image=abna_a.gif}}
 
:
 
----
Wiki-markup alternative ([[Template:HexRow]])
:
{|cellspacing=0
{{HexRow|0x00|
|01|51|02|00|01|00|00|06|AD|DE|AD|DE|AD|DE|AD|DE|
|FF|FF|FF|FF|FF|FF|FF|FF|00|00|00|00|00|00|00|00|
|00|00|00|00|FF|FF|FF|FF|FF|FF|FF|FF|FF|FF|FF|FF|
|00|00|00|00|00|00|00|00|00|00|00|00|00|00|00|00|
|°NONSENSE°ASCII°}}
{{HexRow|0x10|
|AD|DE|AD|DE|AD|DE|AD|DE|AD|DE|AD|DE|E8|03|00|00|
|00|00|00|00|00|00|00|00|00|00|00|00|00|00|00|00|
|FF|FF|FF|FF|FF|FF|FF|FF|FF|FF|FF|FF|FF|FF|FF|FF|
|00|00|00|00|00|00|00|00|00|00|00|00|FF|FF|FF|FF|
}}
{{HexRow|0x20|
|'''68|'''89|'''00|'''00|'''73|'''00|'''00|'''00|'''01|'''00|'''00|'''00|'''DB|'''01|'''00|'''00|
|FF|FF|FF|FF|FF|FF|FF|FF|C8|C8|C8|C8|C8|C8|C8|C8|
|C8|C8|C8|C8|FF|FF|FF|FF|FF|FF|FF|FF|FF|FF|FF|FF|
|C8|C8|C8|C8|C8|C8|C8|C8|C8|C8|C8|C8|FF|FF|FF|FF|
}}
{{HexRow|0x30|
|46|4C|00|00|42|28|00|00|02|00|00|00|D7|00|00|00|
}}
|}
:
----
:
;Notes of the table format
*The ALIGN=CENTER VALIGN=TOP for every row is redundant : you can set that up in the table header.
*The non-breaking spaces could be avoided by disabling word wrap : the "Meaning" field should have rather short lines.
*If you need to expand on a field's meaning, you can always put extra documentation (sorta footnote) below the table
:(paragraphs, formulas, mini-tables, etc).
*Alternatively, the generic row can be a set template, with no-wrapping specified only for columns 3 and 4
*you'd call it with something like <nowiki>{{OBD Table Row| 0x00 | File ID | FF0000 | 01 '''51 02''' 00 | 593 | 00593-.ABNA }}</nowiki>
Yeah, I know, this should go in the talk page. We'll delete it later anyway. For now let's use ABNA as a sandbox/battlefield ^^
:[[User:Geyser|geyser]] 17:57, 17 November 2006 (CET)
:
{{Table}}
{{Table}}
{{OBD_Table_Header}}
{{OBDth}}
|- ALIGN=CENTER VALIGN=TOP
{{OBDtr | 0x00 | res_id  |FF0000| 01 51 02 00 | 593           | 00593-.ABNA }}
| 0x00 || file id || BGCOLOR="#FF0000" | 01 51 02 00 || 593 || ALIGN=LEFT | 00593-.ABNA
{{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| E8 03 00 00 | 1000         | array size }}
|- ALIGN=CENTER VALIGN=TOP
{{OBDtrBK}}
| 0x08 || unused&nbsp;(20) || BGCOLOR="#00FF00" | AD DE || dead || ALIGN=LEFT | not used
{{OBDtr | 0x00 | int32    |FFC8C8| 68 89 00 00 | 35176         | [[OBD:AGQG|AGQG]] element number }}
|- ALIGN=CENTER VALIGN=TOP
{{OBDtr | 0x04 | int32hb  |FFFFC8| 73 00 00 00 | 115, high bit | [[OBD:PLEA|PLEA]] element number; if high bit set the plane normal must be reversed }}
| 0x1C || long || BGCOLOR="#00FFFF" | E8 03 00 00 || 1000 || ALIGN=LEFT | 1000 packages follow (one package is edged in black)
{{OBDtr | 0x08 | int32    |C8FFC8| 01 00 00 00 | 1             | front ABNA child package index; -1 if there is none }}
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#000000"
{{OBDtr | 0x0C | int32    |C8FFFF| DB 01 00 00 | 475           | back ABNA child package index; -1 if there is none }}
| COLSPAN=5 | <FONT SIZE=2 COLOR="#FFFFFF">Below follows the first package.</FONT>
|- ALIGN=CENTER VALIGN=TOP
| 0x00 || long || BGCOLOR="#FFC8C8" | 68 89 00 00 || 35176 || ALIGN=LEFT | [[OBD:AGQG | AGQG]] package number
|- ALIGN=CENTER VALIGN=TOP
| 0x04 || long hb || BGCOLOR="#FFFFC8" | 73 00 00 00 || 115,&nbsp;high&nbsp;bit || ALIGN=LEFT | [[OBD:PLEA | PLEA]] package number, if high bit set the plane normal must be reversed
|- ALIGN=CENTER VALIGN=TOP
| 0x08 || long || BGCOLOR="#C8FFC8" | 01 00 00 00 || 1 || ALIGN=LEFT | front [[ABNA | ABNA]] child package index or -1 if there is none
|- ALIGN=CENTER VALIGN=TOP
| 0x0C || long || BGCOLOR="#C8FFFF" | DB&nbsp;01&nbsp;00&nbsp;00 || 475 || ALIGN=LEFT | back [[ABNA | ABNA]] child package index or -1 if there is none
|}
|}
:
 
;Unknown (last two)
 
:Hm, these are ''almost certainly'' links to other nodes (it's a tree, heh).
{{OBD_File_Footer | type=ABNA | prev=WPge | next=AGDB | name=BSP Tree Node Array | family=Level}}
:Extreme values of unknown fields (especially integers) are quite useful.
:Could you systematically provide them when they're available?
::[[User:Geyser|geyser]] 17:57, 17 November 2006 (CET)
;Plane equation link
:Beats me right now, but a look at the child nodes will surely help. Investigating ASAP...
:Should be something like a separating plane that makes the engine choose one child or the other.
:Probably axis-aligned.
::[[User:Geyser|geyser]] 17:57, 17 November 2006 (CET)
;Gunk quad link
:Ditto (beats me, investigating ASAP)
::[[User:Geyser|geyser]] 21:54, 18 November 2006 (CET)
;BSP
:What does BSP stand for, anyway?
::[[User:Geyser|geyser]] 00:51, 18 November 2006 (CET)
:
----
:
{{OBD_File_Footer | type=ABNA | prev=WPge | next=AGDB | name=BSP Tree Node Array}}
:

Revision as of 13:44, 19 September 2007

ONI BINARY DATA
WPge << Other file types >> AGDB
ABNA : BSP Tree Node Array
switch to XML:ABNA page
Overview @ Oni Stuff
OBD.png


Abna a.gif


Offset Type Raw Hex Value Description
0x00 res_id 01 51 02 00 593 00593-.ABNA
0x04 lev_id 01 00 00 06 3 level 3
0x08 char[20] AD DE dead unused
0x1C int32 E8 03 00 00 1000 array size
First element (black outline)
0x00 int32 68 89 00 00 35176 AGQG element number
0x04 int32hb 73 00 00 00 115, high bit PLEA element number; if high bit set the plane normal must be reversed
0x08 int32 01 00 00 00 1 front ABNA child package index; -1 if there is none
0x0C int32 DB 01 00 00 475 back ABNA child package index; -1 if there is none


ONI BINARY DATA
WPge << Other file types >> AGDB
ABNA : BSP Tree Node Array
Level file