Object Entities

The following example shows the BGL file format of object entities.

;DATABASE HEADER ********************************************************
dw0001;00 world set number (not saved to file list)
.
.
ddOBJECT_DATA;58 OBJECT_DATA
OBJECT_DATA:
rel_base=OBJECT_DATA
LATBAND_REL8960,9216,OBJ_LIST_0001
EOL

OBJ_LIST_0001:
object_piermacro
localobject_end,skip0,skip1
LARGE_OBJECT_HEADER 4655147 , 3249680518 , object_end
SCALEobject_end,0,0, 4096 , 4655147 ,0, 3249680518 ,0,180,0
RESLIST0, 6
VERTEX-65 ,0, 199
VERTEX-50 ,0, 199
VERTEX66 ,0, 52
VERTEX 87 ,0, 24
VERTEX88 ,0,-56
VERTEX-65 ,0,-56
SCOLORC_WHITE
SET_BRIGHTNESS01000h
SURFACE
IFMSK#cont,ground_texture,0ffffh
TEXTURE0,0,0,0,'medrise .r8 '
HAZE0
#cont:
STRRES0
CNTRES1
CNTRES2
CNTRES3
CNTRES4
CNTRES5
CLOSURE
object_end:
endm

OBJECT_PIER
EOL

;OBJECT ENTITY OPCODE DEFINITIONS
;latitude=iiii M units
;longitude=32-bit pseudo
;range units=0-100= km view dist0001 to 0100 km in 1km steps
;101-200=100+(n-100)*10 km0110 to 1100 km in 5km steps
;OpFormatDefinition
;-----------------------------------------------------------------
;4db 4NEAR SMALL BYTE OBJ;00 opcode
;dd 0;01 latitude iiii M units
;dd 0;05 longitude 32-bit pseudo
;db 0;09 image power (range units)
;db 0;10 byte count
;db 0,0,0,0....;11 data (up to 246-bytes)
;5db 5NEAR LARGE BYTE OBJ;00 opcode
;dd 0;01 latitude iiii M units
;dd 0;05 longitude 32-bit pseudo
;db 0;09 image power (range units)
;dw 0;10 byte count
;db 0,0,0,0....;12 data (up to 65525-bytes)
;6db 6NEAR HUGE BYTE OBJ;00 opcode
;dd 0;01 latitude iiii M units
;dd 0;05 longitude 32-bit pseudo
;db 0;09 image power (range units)
;dd 0;10 byte count
;db 0,0,0,0....;14 data (up to 2^32-13 bytes)
;7db 7FAR SMALL BYTE OBJ;00 opcode
;dd 0;01 latitude iiii M units
;dd 0;05 longitude 32-bit pseudo
;db 0;09 image power (range units)
;db 0;10 byte count
;db 0,0,0,0....;11 data (up to 246-bytes)
;8db 8FAR LARGE BYTE OBJ;00 opcode
;dd 0;01 latitude iiii M units
;dd 0;05 longitude 32-bit pseudo
;db 0;09 image power (range units)
;dw 0;10 byte count
;db 0,0,0,0....;12 data (up to 65525-bytes)
;9db 9FAR HUGE BYTE OBJ;00 opcode
;dd 0;01 latitude iiii M units
;dd 0;05 longitude 32-bit pseudo
;db 0;09 image power (range units)
;dd 0;10 byte count
;db 0,0,0,0....;14 data (up to 2^32-13 bytes)
;10db 10NEAR/FAR SMALL BYTE OBJ;00 opcode
;dd 0;01 latitude iiii M units
;dd 0;05 longitude 32-bit pseudo
;db 0;09 image power (range units)
;db 0;10 byte count
;db 0,0,0,0....;11 data (up to 246-bytes)
;11db 11NEAR/FAR LARGE BYTE OBJ;00 opcode
;dd 0;01 latitude iiii M units
;dd 0;05 longitude 32-bit pseudo
;db 0;09 image power (range units)
;dw 0;10 byte count
;db 0,0,0,0....;12 data (up to 65525-bytes)
;12db 12NEAR/FAR HUGE BYTE OBJ;00 opcode
;dd 0;01 latitude iiii M units
;dd 0;05 longitude 32-bit pseudo
;db 0;09 image power (range units)
;dd 0;10 byte count
;db 0,0,0,0....;14 data (up to 2^32-13 bytes)
;FRONT-END EXTENSIONS

;13db 13LARGE RANGE OBJ;00 opcode
;dd 0;01 latitude iiii M units
;dd 0;05 longitude 32-bit pseudo
;db 0;09 range lower limit (range units inclusive)
;db 0;10 range upper limit (range units inclusive)
;dw 0;11 byte count
;db 0,0,0,0....;13 data (up to 65525 bytes)