19,992
edits
m (besser so?) |
m (oops, we should be representing BSL commands this way) |
||
| (7 intermediate revisions by 4 users not shown) | |||
| Line 2: | Line 2: | ||
[[ | [[Image:envp_a.gif]] | ||
| Line 9: | Line 9: | ||
{{OBDtr| 0x00 | res_id |FF0000| 01 9B 02 00 | 667 | 00667-.ENVP }} | {{OBDtr| 0x00 | res_id |FF0000| 01 9B 02 00 | 667 | 00667-.ENVP }} | ||
{{OBDtr| 0x04 | lev_id |FFFF00| 01 00 00 06 | 3 | level 3 }} | {{OBDtr| 0x04 | lev_id |FFFF00| 01 00 00 06 | 3 | level 3 }} | ||
{{OBDtr| 0x08 | char[22] |00FF00| AD DE | dead | | {{OBDtr| 0x08 | char[22] |00FF00| AD DE | dead | padding }} | ||
{{OBDtr| 0x1E | | {{OBDtr| 0x1E | uint16 |00FFFF| 42 00 | 66 | array size }} | ||
{{OBDtrBK}} | {{OBDtrBK}} | ||
{{OBDtr2|0x00 | char[64] |FFC8C8| locklight | particle | {{OBDtr2|0x00 | char[64] |FFC8C8| locklight | particle class name (reference to 06079-3RAPlocklight.[[OBD:BINA/PAR3|BINA]] in level 0) }} | ||
{{OBDtr2|0x40 | char[48] |FFFFC8| lock1_locklight01 | particle name; | {{OBDtr2|0x40 | char[48] |FFFFC8| lock1_locklight01 | particle tag name; lookup name for use in scripts via the [[particle]] command }} | ||
|- ALIGN=CENTER VALIGN=TOP | |- ALIGN=CENTER VALIGN=TOP | ||
| | |0x70||matrix|| | ||
{|border=1 cellspacing=0 style="white-space:nowrap" | {|border=1 cellspacing=0 style="white-space:nowrap" | ||
|-BGCOLOR="#C8FFC8" | |-BGCOLOR="#C8FFC8" | ||
| Line 39: | Line 39: | ||
|} | |} | ||
|ALIGN=LEFT|transform matrix for the particle (in world space) | |ALIGN=LEFT|transform matrix for the particle (in world space) | ||
{{OBDtr| 0xA0 | | {{OBDtr| 0xA0 | float |C800C8| 00 00 80 3F | 1.000000 | decal x scale }} | ||
{{OBDtr| 0xA4 | | {{OBDtr| 0xA4 | float |C87C64| 00 00 80 3F | 1.000000 | decal y scale }} | ||
{{OBDtr| 0xA8 | | {{OBDtr| 0xA8 | uint16 |B0C4D5| 00 00 | 0 | runtime: flags }} | ||
{{OBDtr| 0xAA | uint16 |B0C4D5| 00 00 | 0 | runtime: owner type }} | |||
{{OBDtr| 0xAC | uint32 |B0C4D5| 00 00 00 00 | 0 | runtime: pointer to owner particle }} | |||
{{OBDtr| 0xB0 | uint32 |B0C4D5| 00 00 00 00 | 0 | runtime: pointer to dynamic matrix }} | |||
{{OBDtr| 0xB4 | uint32 |B0C4D5| 00 00 00 00 | 0 | runtime: pointer to particle class }} | |||
{{OBDtr| 0xB8 | uint32 |B0C4D5| 00 00 00 00 | 0 | runtime: pointer to spawned particle }} | |||
{{OBDtr| 0xBC | uint32 |B0C4D5| 00 00 00 00 | 0 | runtime: pointer to spawned particle header }} | |||
{{OBDtr| 0xC0 | uint32 |B0C4D5| 00 00 00 00 | 0 | runtime: pointer to previous particle in global spawned particle list }} | |||
{{OBDtr| 0xC4 | uint32 |B0C4D5| 00 00 00 00 | 0 | runtime: pointer to next particle in global spawned particle list }} | |||
{{OBDtr| 0xC8 | uint32 |B0C4D5| 00 00 00 00 | 0 | runtime: pointer to position in hash list (hash table of all spawned particles with tag names) }} | |||
{{OBDtr| 0xCC | uint32 |B0C4D5| 00 00 00 00 | 0 | runtime: pointer to position in tag list (linked list of all spawned particles with the same tag name) }} | |||
|} | |} | ||
; | ;Environment particles | ||
: | :Door lock lights, lights, fire, smoke, steam, "electricity", etc. Loose particles are normally added to the [[OBD:BINA/OBJC/PART|level particle collection]]. ENVP is used by the level importer tool to store particles attached to [[OBD:OBOA|objects]] or [[OBD:BINA/OBJC/FURN|furniture]]. | ||
;Transformation matrix | ;Transformation matrix | ||
:Used to orient and stretch the particles (decals, | :Used to orient and stretch the particles (decals, lock lights, etc). | ||
:See | :See e.g. [[OBD:CRSA|CRSA]] for a detailed explanation. | ||
{{OBD_File_Footer | type=ENVP | prev=DPge | next=FILM | name=Env Particle Array | family=Level}} | {{OBD_File_Footer | type=ENVP | prev=DPge | next=FILM | name=Env Particle Array | family=Level}} | ||
{{OBD}} | |||