Skip to content

Instantly share code, notes, and snippets.

@sofar
Created April 13, 2017 06:10
Show Gist options
  • Save sofar/b2e87a5b2da063594c3829c1ad06354b to your computer and use it in GitHub Desktop.
Save sofar/b2e87a5b2da063594c3829c1ad06354b to your computer and use it in GitHub Desktop.
struct TileSpec {
class ITexture * texture; /* 0 8 */
u32 texture_id; /* 8 4 */
class SColor color; /* 12 4 */
u8 material_type; /* 16 1 */
u8 material_flags; /* 17 1 */
u8 rotation; /* 18 1 */
u8 emissive_light; /* 19 1 */
u32 shader_id; /* 20 4 */
class ITexture * normal_texture; /* 24 8 */
class ITexture * flags_texture; /* 32 8 */
u16 animation_frame_length_ms; /* 40 2 */
u8 animation_frame_count; /* 42 1 */
bool has_color; /* 43 1 */
/* XXX 4 bytes hole, try to pack */
class vector<FrameSpec, std::allocator<FrameSpec> > frames; /* 48 24 */
void TileSpec(class TileSpec *);
bool operator==(const class TileSpec *, const class TileSpec &);
bool operator!=(const class TileSpec *, const class TileSpec &);
void applyMaterialOptions(const class TileSpec *, class SMaterial &);
void applyMaterialOptionsWithShaders(const class TileSpec *, class SMaterial &);
class TileSpec & operator=(class TileSpec *, );
void TileSpec(class TileSpec *, );
void TileSpec(class TileSpec *, const class TileSpec &);
class TileSpec & operator=(class TileSpec *, const class TileSpec &);
void ~TileSpec(class TileSpec *, int);
/* size: 72, cachelines: 2, members: 14 */
/* sum members: 68, holes: 1, sum holes: 4 */
/* last cacheline: 8 bytes */
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment