commonlibsse_ng\re\t/
TESModelTextSwap.rs

1use crate::re::BSFixedString::BSFixedString;
2use crate::re::TESModel::{TESModel, TESModelVtbl};
3use crate::re::b::BGSTextureSet::BGSTextureSet;
4use crate::re::offsets_rtti::RTTI_TESModelTextureSwap;
5use crate::re::offsets_vtable::VTABLE_TESModelTextureSwap;
6use crate::rel::id::VariantID;
7
8#[repr(C)]
9#[derive(Debug)]
10pub struct TESModelTextureSwap {
11    pub __base: TESModel,                         // 0x0
12    pub alternateTextures: *mut AlternateTexture, // 0x28
13    pub numAlternateTextures: u32,                // 0x30
14    pub pad34: u32,                               // 0x34
15}
16const _: () = assert!(std::mem::size_of::<TESModelTextureSwap>() == 0x38);
17
18#[repr(C)]
19#[derive(Debug)]
20pub struct AlternateTexture {
21    pub textureSet: *mut BGSTextureSet, // 0x00
22    pub index3d: u32,                   // 0x08
23    pub unk0C: u32,                     // 0x0C
24    pub name3d: BSFixedString,          // 0x10
25}
26const _: () = assert!(std::mem::size_of::<AlternateTexture>() == 0x18);
27
28impl TESModelTextureSwap {
29    pub const RTTI: VariantID = RTTI_TESModelTextureSwap;
30    pub const VTABLE: [VariantID; 1] = VTABLE_TESModelTextureSwap;
31}
32
33#[repr(C)]
34pub struct TESModelTextureSwapVtbl {
35    pub __base: TESModelVtbl,
36}