WmoGroup

Struct WmoGroup 

Source
pub struct WmoGroup {
Show 40 fields pub version: u32, pub group_index: u32, pub group_name_index: u32, pub descriptive_name_index: u32, pub flags: u32, pub bounding_box: Vec<f32>, pub portal_start: u16, pub portal_count: u16, pub trans_batch_count: u16, pub int_batch_count: u16, pub ext_batch_count: u16, pub batch_type_d: u16, pub fog_ids: Vec<u8>, pub group_liquid: u32, pub area_table_id: u32, pub flags2: u32, pub parent_split_group: i16, pub next_split_child: i16, pub n_triangles: u32, pub n_vertices: u32, pub material_info: Vec<MopyEntry>, pub vertex_indices: Vec<u16>, pub vertex_positions: Vec<MovtEntry>, pub vertex_normals: Vec<MonrEntry>, pub texture_coords: Vec<MotvEntry>, pub render_batches: Vec<MobaEntry>, pub vertex_colors: Vec<MocvEntry>, pub light_refs: Vec<u16>, pub doodad_refs: Vec<u16>, pub bsp_nodes: Vec<MobnEntry>, pub bsp_face_indices: Vec<u16>, pub liquid_header: Option<MliqHeader>, pub query_face_start: Option<u32>, pub extended_materials: Vec<Mpy2Entry>, pub extended_vertex_indices: Vec<u32>, pub query_faces: Vec<u32>, pub triangle_strip_indices: Vec<u16>, pub additional_render_batches: Vec<MorbEntry>, pub tangent_arrays: Vec<MotaEntry>, pub shadow_batches: Vec<MobsEntry>,
}
Expand description

WMO Group file structure with extended chunk support

Fields§

§version: u32

Version (always 17 for supported versions)

§group_index: u32

Group index (calculated from MOGN)

§group_name_index: u32

Group name index (offset into MOGN)

§descriptive_name_index: u32

Descriptive group name index (offset into MOGN)

§flags: u32

Group flags

§bounding_box: Vec<f32>

Bounding box [min_x, min_y, min_z, max_x, max_y, max_z]

§portal_start: u16

Portal information

§portal_count: u16§trans_batch_count: u16

Batch counts (trans, int, ext)

§int_batch_count: u16§ext_batch_count: u16§batch_type_d: u16

Unknown batch type (padding or batch_type_d)

§fog_ids: Vec<u8>

Fog indices (up to 4)

§group_liquid: u32

Liquid group ID

§area_table_id: u32

WMOAreaTable ID

§flags2: u32

Additional flags (Cataclysm+)

§parent_split_group: i16

Parent or first child split group index

§next_split_child: i16

Next split child group index

§n_triangles: u32

Number of triangles in this group (calculated)

§n_vertices: u32

Number of vertices in this group (calculated)

§material_info: Vec<MopyEntry>

Material info per triangle (MOPY)

§vertex_indices: Vec<u16>

Vertex indices (MOVI)

§vertex_positions: Vec<MovtEntry>

Vertex positions (MOVT)

§vertex_normals: Vec<MonrEntry>

Vertex normals (MONR)

§texture_coords: Vec<MotvEntry>

Texture coordinates (MOTV)

§render_batches: Vec<MobaEntry>

Render batches (MOBA)

§vertex_colors: Vec<MocvEntry>

Vertex colors (MOCV)

§light_refs: Vec<u16>

Light references (MOLR)

§doodad_refs: Vec<u16>

Doodad references (MODR)

§bsp_nodes: Vec<MobnEntry>

BSP tree nodes (MOBN)

§bsp_face_indices: Vec<u16>

BSP face indices (MOBR)

§liquid_header: Option<MliqHeader>

Liquid data (MLIQ)

§query_face_start: Option<u32>

Query face start (MOGX - Dragonflight+)

§extended_materials: Vec<Mpy2Entry>

Extended material info (MPY2 - Dragonflight+)

§extended_vertex_indices: Vec<u32>

Extended vertex indices (MOVX - Shadowlands+)

§query_faces: Vec<u32>

Query faces (MOQG - Dragonflight+)

§triangle_strip_indices: Vec<u16>

Triangle strip indices (MORI)

§additional_render_batches: Vec<MorbEntry>

Additional render batches (MORB)

§tangent_arrays: Vec<MotaEntry>

Tangent arrays (MOTA)

§shadow_batches: Vec<MobsEntry>

Shadow batches (MOBS)

Trait Implementations§

Source§

impl Clone for WmoGroup

Source§

fn clone(&self) -> WmoGroup

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for WmoGroup

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more