OBD:AKBP: Difference between revisions

m
...
m (forgot to confirm the second field)
m (...)
 
(12 intermediate revisions by 5 users not shown)
Line 1: Line 1:
{{OBD_File_Header | type=AKBP | prev=AKBA | next=AKDA | name=BSP Node Array | family=Level | align=center}}
{{OBD_File_Header | type=AKBP | prev=AKBA | next=AKDA | name=BSP Node Array | family=Level | align=center}}
:
 
{{OBD_File_Image | image=akbp_a.gif}}
 
:
[[Image:akbp_a.gif]]
 
 
{{Table}}
{{Table}}
{{OBD_Table_Header}}
{{OBDth}}
|- ALIGN=CENTER VALIGN=TOP
{{OBDtr | 0x00 | res_id  |FF0000| 01 50 02 00 | 592       | 00592-.AKBP }}
| 0x00 || file id || BGCOLOR="#FF0000" | 01 50 02 00 || 592 || ALIGN=LEFT | 00592-.AKBP
{{OBDtr | 0x04 | lev_id  |FFFF00| 01 00 00 06 | 3         | level 3 }}
|- ALIGN=CENTER VALIGN=TOP
{{OBDtr | 0x08 | char[22] |00FF00| AD DE       | dead     | padding }}
| 0x04 || level id || BGCOLOR="#FFFF00" | 01 00 00 06 || 3 || ALIGN=LEFT | level 3
{{OBDtr | 0x1E | uint16    |00FFFF| C4 06       | 1732     | array size }}
|- ALIGN=CENTER VALIGN=TOP
{{OBDtrBK}}
| 0x08 || unused (22) || BGCOLOR="#00FF00" | AD DE || dead || ALIGN=LEFT | not used
{{OBDtr | 0x00 | uint32hb  |FFC8C8| 00 00 00 00 |0, high bit| plane index (in the environment [[PLEA|plane array]], see [[OBD:AKEV|AKEV]]), reverse plane normal if set }}
|- ALIGN=CENTER VALIGN=TOP
{{OBDtr | 0x04 | uint32    |FFFFC8| 01 00 00 00 | 1         | back AKBP package number, -1 if none }}
| 0x0C || short || BGCOLOR="#00FFFF" | C4 06 || 1732 || ALIGN=LEFT | 1732 packages follow (one package is edged in black)
{{OBDtr | 0x08 | uint32    |C8FFC8| FF FF FF FF | -1        | front AKBP package number, -1 if none }}
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#000000"
| COLSPAN=5 | <FONT SIZE=2 COLOR=“#FFFFFF�?>Below follows the first package.</FONT>
|- ALIGN=CENTER VALIGN=TOP
| 0x || long hb || BGCOLOR="#FFC8C8" | 00 00 00 00 || 0,&nbsp;high&nbsp;bit || ALIGN=LEFT | plane index (in the environment plane array, see [[AKEV|AKEV]]), reverse plane normal if set
|- ALIGN=CENTER VALIGN=TOP
| 0x || long || BGCOLOR="#FFFFC8" | 01 00 00 00 || 1 || ALIGN=LEFT | AKBP package number
|- ALIGN=CENTER VALIGN=TOP
| 0x || long || BGCOLOR="#C8FFC8" | FF&nbsp;FF&nbsp;FF&nbsp;FF || -1 || ALIGN=LEFT | unknown (only the values 1442 and 1450 are used)
|}
|}
:
 
----
 
:
 
{{OBD_File_Footer | type=AKBP | prev=AKBA | next=AKDA | name=BSP Node Array}}
AKBP contains one [[wikipedia:Binary_space_partitioning|BSP tree]] for each [[AKVA|BNV]] (the index of the root of the tree is stored in BNV). Such a tree is used to detect if a point is inside a BNV.
:
 
It should be noted that for convex BNVs the BSP tree degenerates to a list, only concave BNVs (and there aren't many of them) need a "real" tree.
 
 
{{OBD_File_Footer | type=AKBP | prev=AKBA | next=AKDA | name=BSP Node Array | family=Level}}
 
{{OBD}}
279

edits