Torch
Loading...
Searching...
No Matches
BK64::SpriteProp Struct Reference

#include <MapFactory.h>

Public Attributes

uint32_t word0
int16_t unk4 [3]
uint16_t wordA

Detailed Description

SpriteProp: 2D billboard sprite (is_actor=0, is_3d=0) - 12 bytes Decomp: sprite_prop_s from props.h

Complete Structure Layout (12 bytes): Offset 0x00-0x03: word0 (32-bit packed) - sprite appearance/rendering parameters Offset 0x04-0x09: unk4[3] (s16[3]) - X, Y, Z world position Offset 0x0A-0x0B: wordA (16-bit packed) - animation frame + discriminator flags

Packed Field Layout (word0 - 32-bit big-endian at offset 0x00): Bits 31-20: spriteId (12 bits) → Asset ID = spriteId + SPRITE_ASSET_OFFSET (0x572) Bit 19: unk0_19 (1 bit) Bits 18-16: rgb_remove_red (3 bits, 0-7 color removal value) Bits 15-13: rgb_remove_green (3 bits, 0-7 color removal value) Bits 12-10: rgb_remove_blue (3 bits, 0-7 color removal value) Bits 9-2: scale (8 bits) Bit 1: isMirrored (1 bit, horizontal flip) Bit 0: pad0_0 (1 bit)

Packed Field Layout (wordA - 16-bit big-endian at offset 0x0A): Bits 15-11: frame (5 bits, animation frame index) Bits 10-6: unk8_10 (5 bits) Bit 5: unk8_5 (1 bit) Bit 4: isNotFeatherEggOrNote (1 bit) Bit 3: unk8_3 (1 bit) Bit 2: isCollisionResolved (1 bit) Bit 1: isModelProp (1 bit, always 0 for sprites) Bit 0: isActorProp (1 bit, always 0 for sprites)


The documentation for this struct was generated from the following file: