wowlib 0.0.0
Read & write World of Warcraft client files — a C++26 core
Loading...
Searching...
No Matches
wowlib::formats::common Namespace Reference

Classes

struct  C2IVector
 A 2D integer vector. More...
struct  C2Vector
 A 2D float vector: texture coordinates, UV animation speeds. More...
struct  C33Matrix
 A 3x3 matrix as three column C3Vectors. More...
struct  C34Matrix
 A 3x4 matrix as four column C3Vectors. More...
struct  C3IVector
 A 3D integer vector. More...
struct  C3Vector
 A 3D float vector — the workhorse: positions, normals, rotations-as-Euler-degrees in placements. More...
struct  C44Matrix
 A 4x4 matrix as four column C4Vectors. More...
struct  C4Plane
 A plane as a normal and its signed distance from the origin. More...
struct  C4Quaternion
struct  C4Vector
 A 4D float vector. More...
struct  CAaBox
 An axis-aligned bounding box: minimum and maximum corners. More...
struct  CAaSphere
 An axis-aligned sphere: position and radius. More...
struct  CArgb
 A color stored as r, g, b, a bytes. More...
struct  CImVector
 A color stored as b, g, r, a bytes — the client's immediate-mode vertex color layout (WMO MOCV, doodad colors). More...
struct  CRange
 A float range: minimum and maximum. More...
struct  fixed16
 A signed 16-bit fixed-point value with an implicit 0x7FFF scale. More...
struct  SMDoodadDef
struct  SMMapObjDef

Enumerations

enum class  MapObjDefFlags : std::uint16_t {
  Destroyable = 0x1 , UseLod , HasScale = 0x4 , EntryIsFdid = 0x8 ,
  UseSetsFromMwds = 0x80
}
 WMO placement flag bits (SMMapObjDef.flags). More...
enum class  DoodadDefFlags : std::uint16_t {
  Biodome = 0x1 , Shrubbery = 0x2 , Unk4 = 0x4 , Unk8 = 0x8 ,
  Unk10 = 0x10 , LiquidKnown = 0x20 , EntryIsFdid = 0x40 , Unk100 = 0x100 ,
  AcceptProjTextures = 0x1000
}
 M2 placement flag bits (SMDoodadDef.flags). More...

Enumeration Type Documentation

◆ DoodadDefFlags

enum class wowlib::formats::common::DoodadDefFlags : std::uint16_t
strong

M2 placement flag bits (SMDoodadDef.flags).

Enumerator
Biodome 

Sets the internal WDOODADDEF 0x800 flag; meaning unknown (biodome).

Shrubbery 

Shrubbery; not checked by 6.0.1+ clients.

Unk4 

Unknown (Legion+).

Unk8 

Unknown (Legion+).

Unk10 

Unknown (Shadowlands+); sets flag 0x4 on the PVS doodad.

LiquidKnown 

SMDoodadDef::Flag_liquidKnown (Legion+).

EntryIsFdid 

name_id is a FileDataID to load directly, not an MMID index (Legion+).

Unk100 

Unknown (Legion+).

AcceptProjTextures 

Accepts projected textures (Legion+).

Definition at line 28 of file map_placements.hpp.

◆ MapObjDefFlags

enum class wowlib::formats::common::MapObjDefFlags : std::uint16_t
strong

WMO placement flag bits (SMMapObjDef.flags).

Enumerator
Destroyable 

A destroyable, server-controllable building (e.g.

the DeathknightStart tower).

UseLod 

Also load the _LOD1 WMO, selected by distance (WoD+).

HasScale 

The scale field is engaged: scale / 1024 applies (Legion+; otherwise 1.0).

EntryIsFdid 

name_id is a FileDataID to load directly, not a name-table index (Legion+).

UseSetsFromMwds 

Doodad set indices come from the ADT MWDS chunk (Shadowlands+).

Definition at line 18 of file map_placements.hpp.