artifact classic

This commit is contained in:
anarh1st47 2023-03-15 20:25:55 +03:00
parent a066eb0f1d
commit 8ac8ff71b3
20 changed files with 12461 additions and 210636 deletions

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

10
sdk/host.hpp Normal file
View File

@ -0,0 +1,10 @@
#pragma once
#include <cstdint>
#include "!GlobalTypes.hpp"
///////////////////////////////////////////
// Binary: host.dll
// Class Count: 0
// Enum Count: 0
///////////////////////////////////////////

View File

@ -5,86 +5,39 @@
/////////////////////////////////////////// ///////////////////////////////////////////
// Binary: materialsystem2.dll // Binary: materialsystem2.dll
// Class Count: 13 // Class Count: 13
// Enum Count: 5 // Enum Count: 0
/////////////////////////////////////////// ///////////////////////////////////////////
// Aligment: 4 // Aligment: 1
// Size: 4 // Size: 4
enum class HorizJustification_e : uint32_t struct MaterialParam_t
{ {
HORIZ_JUSTIFICATION_LEFT = 0x0, public:
HORIZ_JUSTIFICATION_CENTER = 0x1, CResourceString m_name; // 0x0
HORIZ_JUSTIFICATION_RIGHT = 0x2,
HORIZ_JUSTIFICATION_NONE = 0x3,
};
// Aligment: 4
// Size: 4
enum class VertJustification_e : uint32_t
{
VERT_JUSTIFICATION_TOP = 0x0,
VERT_JUSTIFICATION_CENTER = 0x1,
VERT_JUSTIFICATION_BOTTOM = 0x2,
VERT_JUSTIFICATION_NONE = 0x3,
};
// Aligment: 4
// Size: 3
enum class LayoutPositionType_e : uint32_t
{
LAYOUTPOSITIONTYPE_VIEWPORT_RELATIVE = 0x0,
LAYOUTPOSITIONTYPE_FRACTIONAL = 0x1,
LAYOUTPOSITIONTYPE_NONE = 0x2,
};
// Aligment: 4
// Size: 3
enum class BloomBlendMode_t : uint32_t
{
BLOOM_BLEND_ADD = 0x0,
BLOOM_BLEND_SCREEN = 0x1,
BLOOM_BLEND_BLUR = 0x2,
};
// Aligment: 4
// Size: 3
enum class ViewFadeMode_t : uint32_t
{
VIEW_FADE_CONSTANT_COLOR = 0x0,
VIEW_FADE_MODULATE = 0x1,
VIEW_FADE_MOD2X = 0x2,
}; };
// Aligment: 1 // Aligment: 1
// Size: 8 // Size: 8
struct MaterialParam_t
{
public:
CUtlString m_name; // 0x0
};
// Aligment: 1
// Size: 16
struct MaterialParamInt_t : public MaterialParam_t struct MaterialParamInt_t : public MaterialParam_t
{ {
public: public:
int32_t m_nValue; // 0x8 int32_t m_nValue; // 0x4
}; };
// Aligment: 1 // Aligment: 1
// Size: 16 // Size: 8
struct MaterialParamFloat_t : public MaterialParam_t struct MaterialParamFloat_t : public MaterialParam_t
{ {
public: public:
float m_flValue; // 0x8 float m_flValue; // 0x4
}; };
// Aligment: 1 // Aligment: 1
// Size: 24 // Size: 20
struct MaterialParamVector_t : public MaterialParam_t struct MaterialParamVector_t : public MaterialParam_t
{ {
public: public:
Vector4D m_value; // 0x8 Vector4D m_value; // 0x4
}; };
// Aligment: 1 // Aligment: 1
@ -92,48 +45,57 @@ public:
struct MaterialParamTexture_t : public MaterialParam_t struct MaterialParamTexture_t : public MaterialParam_t
{ {
public: public:
CStrongHandle< InfoForResourceTypeCTextureBase > m_pValue; // 0x8 CResourceExtReference< CWeakHandle< InfoForResourceTypeCTextureBase > > m_pValue; // 0x8
}; };
// Aligment: 1 // Aligment: 1
// Size: 16 // Size: 8
struct MaterialParamString_t : public MaterialParam_t struct MaterialParamString_t : public MaterialParam_t
{ {
public: public:
CUtlString m_value; // 0x8 CResourceString m_value; // 0x4
}; };
// Aligment: 1 // Aligment: 1
// Size: 32 // Size: 12
struct MaterialParamBuffer_t : public MaterialParam_t struct MaterialParamBuffer_t : public MaterialParam_t
{ {
public: public:
CUtlBinaryBlock m_value; // 0x8 CResourceArray< uint8 > m_value; // 0x4
}; };
// Aligment: 14 // Aligment: 14
// Size: 304 // Size: 104
struct MaterialResourceData_t struct MaterialResourceData_t
{ {
public: public:
CUtlString m_materialName; // 0x0 CResourceString m_materialName; // 0x0
CUtlString m_shaderName; // 0x8 CResourceString m_shaderName; // 0x4
CUtlVector< MaterialParamInt_t > m_intParams; // 0x10 CResourceArray< MaterialParamInt_t > m_intParams; // 0x8
CUtlVector< MaterialParamFloat_t > m_floatParams; // 0x28 CResourceArray< MaterialParamFloat_t > m_floatParams; // 0x10
CUtlVector< MaterialParamVector_t > m_vectorParams; // 0x40 CResourceArray< MaterialParamVector_t > m_vectorParams; // 0x18
CUtlVector< MaterialParamTexture_t > m_textureParams; // 0x58 CResourceArray< MaterialParamTexture_t > m_textureParams; // 0x20
CUtlVector< MaterialParamBuffer_t > m_dynamicParams; // 0x70 CResourceArray< MaterialParamBuffer_t > m_dynamicParams; // 0x28
CUtlVector< MaterialParamBuffer_t > m_dynamicTextureParams; // 0x88 CResourceArray< MaterialParamBuffer_t > m_dynamicTextureParams; // 0x30
CUtlVector< MaterialParamInt_t > m_intAttributes; // 0xa0 CResourceArray< MaterialParamInt_t > m_intAttributes; // 0x38
CUtlVector< MaterialParamFloat_t > m_floatAttributes; // 0xb8 CResourceArray< MaterialParamFloat_t > m_floatAttributes; // 0x40
CUtlVector< MaterialParamVector_t > m_vectorAttributes; // 0xd0 CResourceArray< MaterialParamVector_t > m_vectorAttributes; // 0x48
CUtlVector< MaterialParamTexture_t > m_textureAttributes; // 0xe8 CResourceArray< MaterialParamTexture_t > m_textureAttributes; // 0x50
CUtlVector< MaterialParamString_t > m_stringAttributes; // 0x100 CResourceArray< MaterialParamString_t > m_stringAttributes; // 0x58
CUtlVector< CUtlString > m_renderAttributesUsed; // 0x118 CResourceArray< CResourceString > m_renderAttributesUsed; // 0x60
}; };
// Aligment: 15 // Aligment: 2
// Size: 60 // Size: 16
struct VBitmapFontDiskData_t
{
public:
CResourceExtReference< CWeakHandle< InfoForResourceTypeCTextureBase > > m_TextureSheet; // 0x0
CResourceArray< uint8 > m_Glyphs; // 0x8
};
// Aligment: 8
// Size: 32
struct PostProcessingTonemapParameters_t struct PostProcessingTonemapParameters_t
{ {
public: public:
@ -145,13 +107,6 @@ public:
float m_flToeNum; // 0x14 float m_flToeNum; // 0x14
float m_flToeDenom; // 0x18 float m_flToeDenom; // 0x18
float m_flWhitePoint; // 0x1c float m_flWhitePoint; // 0x1c
float m_flLuminanceSource; // 0x20
float m_flExposureBiasShadows; // 0x24
float m_flExposureBiasHighlights; // 0x28
float m_flMinShadowLum; // 0x2c
float m_flMaxShadowLum; // 0x30
float m_flMinHighlightLum; // 0x34
float m_flMaxHighlightLum; // 0x38
}; };
// Aligment: 10 // Aligment: 10
@ -184,33 +139,18 @@ public:
Vector m_vColorTint; // 0x18 Vector m_vColorTint; // 0x18
}; };
// Aligment: 5 // Aligment: 8
// Size: 20 // Size: 204
struct PostProcessingLocalContrastParameters_t
{
public:
float m_flLocalContrastStrength; // 0x0
float m_flLocalContrastEdgeStrength; // 0x4
float m_flLocalContrastVignetteStart; // 0x8
float m_flLocalContrastVignetteEnd; // 0xc
float m_flLocalContrastVignetteBlur; // 0x10
};
// Aligment: 11
// Size: 280
struct PostProcessingResource_t struct PostProcessingResource_t
{ {
public: public:
bool m_bHasTonemapParams; // 0x0 bool m_bHasTonemapParams; // 0x0
PostProcessingTonemapParameters_t m_toneMapParams; // 0x4 PostProcessingTonemapParameters_t m_toneMapParams; // 0x4
bool m_bHasBloomParams; // 0x40 bool m_bHasBloomParams; // 0x24
PostProcessingBloomParameters_t m_bloomParams; // 0x44 PostProcessingBloomParameters_t m_bloomParams; // 0x28
bool m_bHasVignetteParams; // 0xb4 bool m_bHasVignetteParams; // 0x98
PostProcessingVignetteParameters_t m_vignetteParams; // 0xb8 PostProcessingVignetteParameters_t m_vignetteParams; // 0x9c
bool m_bHasLocalContrastParams; // 0xdc int32_t m_nColorCorrectionVolumeDim; // 0xc0
PostProcessingLocalContrastParameters_t m_localConstrastParams; // 0xe0 CResourceArray< Color > m_colorCorrectionVolumeData; // 0xc4
int32_t m_nColorCorrectionVolumeDim; // 0xf4
CUtlBinaryBlock m_colorCorrectionVolumeData; // 0xf8
bool m_bHasColorCorrection; // 0x110
}; };

10
sdk/navsystem.hpp Normal file
View File

@ -0,0 +1,10 @@
#pragma once
#include <cstdint>
#include "!GlobalTypes.hpp"
///////////////////////////////////////////
// Binary: navsystem.dll
// Class Count: 0
// Enum Count: 0
///////////////////////////////////////////

View File

@ -4,15 +4,7 @@
/////////////////////////////////////////// ///////////////////////////////////////////
// Binary: networksystem.dll // Binary: networksystem.dll
// Class Count: 1 // Class Count: 0
// Enum Count: 0 // Enum Count: 0
/////////////////////////////////////////// ///////////////////////////////////////////
// Aligment: 1
// Size: 2
struct ChangeAccessorFieldPathIndex_t
{
public:
int16_t m_Value; // 0x0
};

View File

@ -1,50 +0,0 @@
#pragma once
#include <cstdint>
#include "!GlobalTypes.hpp"
///////////////////////////////////////////
// Binary: panorama.dll
// Class Count: 0
// Enum Count: 2
///////////////////////////////////////////
// Aligment: 4
// Size: 13
enum class ELayoutNodeType : uint32_t
{
ROOT = 0x0,
STYLES = 0x1,
SCRIPT_BODY = 0x2,
SCRIPTS = 0x3,
SNIPPETS = 0x4,
INCLUDE = 0x5,
SNIPPET = 0x6,
PANEL = 0x7,
PANEL_ATTRIBUTE = 0x8,
PANEL_ATTRIBUTE_VALUE = 0x9,
REFERENCE_CONTENT = 0xa,
REFERENCE_COMPILED = 0xb,
REFERENCE_PASSTHROUGH = 0xc,
};
// Aligment: 4
// Size: 15
enum class EStyleNodeType : uint32_t
{
ROOT = 0x0,
EXPRESSION = 0x1,
PROPERTY = 0x2,
DEFINE = 0x3,
IMPORT = 0x4,
KEYFRAMES = 0x5,
KEYFRAME_SELECTOR = 0x6,
STYLE_SELECTOR = 0x7,
WHITESPACE = 0x8,
EXPRESSION_TEXT = 0x9,
EXPRESSION_URL = 0xa,
EXPRESSION_CONCAT = 0xb,
REFERENCE_CONTENT = 0xc,
REFERENCE_COMPILED = 0xd,
REFERENCE_PASSTHROUGH = 0xe,
};

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,10 @@
#pragma once
#include <cstdint>
#include "!GlobalTypes.hpp"
///////////////////////////////////////////
// Binary: renderingpipelines.dll
// Class Count: 0
// Enum Count: 0
///////////////////////////////////////////

View File

@ -4,107 +4,86 @@
/////////////////////////////////////////// ///////////////////////////////////////////
// Binary: rendersystemdx11.dll // Binary: rendersystemdx11.dll
// Class Count: 3 // Class Count: 10
// Enum Count: 5 // Enum Count: 0
/////////////////////////////////////////// ///////////////////////////////////////////
// Aligment: 4 // Aligment: 6
// Size: 3 // Size: 12
enum class RenderSlotType_t : uint32_t struct TextureDesc_t
{ {
RENDER_SLOT_INVALID = 0xffffffffffffffff, public:
RENDER_SLOT_PER_VERTEX = 0x0, uint16_t m_nWidth; // 0x0
RENDER_SLOT_PER_INSTANCE = 0x1, uint16_t m_nHeight; // 0x2
uint16_t m_nDepth; // 0x4
int8_t m_nImageFormat; // 0x6
uint8_t m_nNumMipLevels; // 0x7
int32_t m_nPicmip0Res; // 0x8
}; };
// Aligment: 4 // Aligment: 7
// Size: 9 // Size: 1404
enum class RenderBufferFlags_t : uint32_t struct TextureHeader_t : public TextureDesc_t
{ {
RENDER_BUFFER_USAGE_VERTEX_BUFFER = 0x1, public:
RENDER_BUFFER_USAGE_INDEX_BUFFER = 0x2, uint16_t m_nMultisampleType; // 0xc
RENDER_BUFFER_USAGE_SHADER_RESOURCE = 0x4, uint16_t m_nFlags; // 0xe
RENDER_BUFFER_USAGE_UNORDERED_ACCESS = 0x8, Vector4D m_Reflectivity; // 0x10
RENDER_BUFFER_BYTEADDRESS_BUFFER = 0x10, CResourcePointer< Sheet_t > m_pSheet; // 0x20
RENDER_BUFFER_STRUCTURED_BUFFER = 0x20, int32_t m_nSheetSize; // 0x24
RENDER_BUFFER_APPEND_CONSUME_BUFFER = 0x40, uint8[1360] m_fallbackTextureBits; // 0x28
RENDER_BUFFER_UAV_COUNTER = 0x80, int32_t m_nPicmip0Res; // 0x578
RENDER_BUFFER_UAV_DRAW_INDIRECT_ARGS = 0x100,
}; };
// Aligment: 4 // Aligment: 2
// Size: 45
enum class RenderPrimitiveType_t : uint32_t
{
RENDER_PRIM_POINTS = 0x0,
RENDER_PRIM_LINES = 0x1,
RENDER_PRIM_LINES_WITH_ADJACENCY = 0x2,
RENDER_PRIM_LINE_STRIP = 0x3,
RENDER_PRIM_LINE_STRIP_WITH_ADJACENCY = 0x4,
RENDER_PRIM_TRIANGLES = 0x5,
RENDER_PRIM_TRIANGLES_WITH_ADJACENCY = 0x6,
RENDER_PRIM_TRIANGLE_STRIP = 0x7,
RENDER_PRIM_TRIANGLE_STRIP_WITH_ADJACENCY = 0x8,
RENDER_PRIM_INSTANCED_QUADS = 0x9,
RENDER_PRIM_HETEROGENOUS = 0xa,
RENDER_PRIM_1_CONTROL_POINT_PATCHLIST = 0xb,
RENDER_PRIM_2_CONTROL_POINT_PATCHLIST = 0xc,
RENDER_PRIM_3_CONTROL_POINT_PATCHLIST = 0xd,
RENDER_PRIM_4_CONTROL_POINT_PATCHLIST = 0xe,
RENDER_PRIM_5_CONTROL_POINT_PATCHLIST = 0xf,
RENDER_PRIM_6_CONTROL_POINT_PATCHLIST = 0x10,
RENDER_PRIM_7_CONTROL_POINT_PATCHLIST = 0x11,
RENDER_PRIM_8_CONTROL_POINT_PATCHLIST = 0x12,
RENDER_PRIM_9_CONTROL_POINT_PATCHLIST = 0x13,
RENDER_PRIM_10_CONTROL_POINT_PATCHLIST = 0x14,
RENDER_PRIM_11_CONTROL_POINT_PATCHLIST = 0x15,
RENDER_PRIM_12_CONTROL_POINT_PATCHLIST = 0x16,
RENDER_PRIM_13_CONTROL_POINT_PATCHLIST = 0x17,
RENDER_PRIM_14_CONTROL_POINT_PATCHLIST = 0x18,
RENDER_PRIM_15_CONTROL_POINT_PATCHLIST = 0x19,
RENDER_PRIM_16_CONTROL_POINT_PATCHLIST = 0x1a,
RENDER_PRIM_17_CONTROL_POINT_PATCHLIST = 0x1b,
RENDER_PRIM_18_CONTROL_POINT_PATCHLIST = 0x1c,
RENDER_PRIM_19_CONTROL_POINT_PATCHLIST = 0x1d,
RENDER_PRIM_20_CONTROL_POINT_PATCHLIST = 0x1e,
RENDER_PRIM_21_CONTROL_POINT_PATCHLIST = 0x1f,
RENDER_PRIM_22_CONTROL_POINT_PATCHLIST = 0x20,
RENDER_PRIM_23_CONTROL_POINT_PATCHLIST = 0x21,
RENDER_PRIM_24_CONTROL_POINT_PATCHLIST = 0x22,
RENDER_PRIM_25_CONTROL_POINT_PATCHLIST = 0x23,
RENDER_PRIM_26_CONTROL_POINT_PATCHLIST = 0x24,
RENDER_PRIM_27_CONTROL_POINT_PATCHLIST = 0x25,
RENDER_PRIM_28_CONTROL_POINT_PATCHLIST = 0x26,
RENDER_PRIM_29_CONTROL_POINT_PATCHLIST = 0x27,
RENDER_PRIM_30_CONTROL_POINT_PATCHLIST = 0x28,
RENDER_PRIM_31_CONTROL_POINT_PATCHLIST = 0x29,
RENDER_PRIM_32_CONTROL_POINT_PATCHLIST = 0x2a,
RENDER_PRIM_COMPUTE_SHADER = 0x2b,
RENDER_PRIM_TYPE_COUNT = 0x2c,
};
// Aligment: 4
// Size: 4
enum class InputLayoutVariation_t : uint32_t
{
INPUT_LAYOUT_VARIATION_DEFAULT = 0x0,
INPUT_LAYOUT_VARIATION_STREAM1_INSTANCEID = 0x1,
INPUT_LAYOUT_VARIATION_STREAM1_INSTANCEID_MORPH_VERT_ID = 0x2,
INPUT_LAYOUT_VARIATION_MAX = 0x3,
};
// Aligment: 4
// Size: 8 // Size: 8
enum class RenderMultisampleType_t : uint32_t struct SequenceFloatParam_t
{ {
RENDER_MULTISAMPLE_INVALID = 0xffffffffffffffff, public:
RENDER_MULTISAMPLE_NONE = 0x0, CResourceString m_name; // 0x0
RENDER_MULTISAMPLE_2X = 0x1, float m_value; // 0x4
RENDER_MULTISAMPLE_4X = 0x2, };
RENDER_MULTISAMPLE_6X = 0x3,
RENDER_MULTISAMPLE_8X = 0x4, // Aligment: 9
RENDER_MULTISAMPLE_16X = 0x5, // Size: 32
RENDER_MULTISAMPLE_TYPE_COUNT = 0x6, struct SheetSequence_t
{
public:
uint32_t m_nId; // 0x0
bool m_bClamp; // 0x4
bool m_bAlphaCrop; // 0x5
bool m_bNoColor; // 0x6
bool m_bNoAlpha; // 0x7
CResourceArray< SheetSequenceFrame_t > m_Frames; // 0x8
float m_flTotalTime; // 0x10
CResourceString m_name; // 0x14
CResourceArray< SequenceFloatParam_t > m_floatParams; // 0x18
};
// Aligment: 2
// Size: 12
struct SheetSequenceFrame_t
{
public:
float m_flDisplayTime; // 0x0
CResourceArray< SheetFrameImage_t > m_Images; // 0x4
};
// Aligment: 2
// Size: 32
struct SheetFrameImage_t
{
public:
Vector2D[2] uvCropped; // 0x0
Vector2D[2] uvUncropped; // 0x10
};
// Aligment: 1
// Size: 8
struct Sheet_t
{
public:
CResourceArray< SheetSequence_t > m_Sequences; // 0x0
}; };
// Aligment: 7 // Aligment: 7

10
sdk/rendersystemdx9.hpp Normal file
View File

@ -0,0 +1,10 @@
#pragma once
#include <cstdint>
#include "!GlobalTypes.hpp"
///////////////////////////////////////////
// Binary: rendersystemdx9.dll
// Class Count: 0
// Enum Count: 0
///////////////////////////////////////////

File diff suppressed because it is too large Load Diff

View File

@ -4,18 +4,84 @@
/////////////////////////////////////////// ///////////////////////////////////////////
// Binary: scenesystem.dll // Binary: scenesystem.dll
// Class Count: 9 // Class Count: 14
// Enum Count: 1 // Enum Count: 0
/////////////////////////////////////////// ///////////////////////////////////////////
// Aligment: 1 // Aligment: 4
// Size: 4 // Size: 48
enum class DisableShadows_t : uint8_t struct CSceneObjectReference_t
{ {
kDisableShadows_None = 0, public:
kDisableShadows_All = 1, VectorAligned m_vecAABBMins; // 0x0
kDisableShadows_Baked = 2, VectorAligned m_vecAABBMaxes; // 0x10
kDisableShadows_Realtime = 3, uint64_t m_nRenderableFlags; // 0x20
CSceneObject* m_pObject; // 0x28
};
// Aligment: 2
// Size: 8
struct CPVSData::pvsmask_t
{
public:
uint32_t m_nOffset; // 0x0
uint32_t m_nMask; // 0x4
};
// Aligment: 4
// Size: 72
class CPVSData
{
public:
CPVSData* m_pNext; // 0x0
uint16_t m_nPVSMasks; // 0x8
uint16_t m_nPVSFlags; // 0xa
CPVSData::pvsmask_t[7] m_masks; // 0xc
};
// Aligment: 11
// Size: 1088
struct CSceneObjectExtraData_t
{
public:
CUtlVector< float32 > m_flExtraShaderData; // 0x378
uint64_t m_nCurrentMeshGroupMask; // 0x408
CUtlStringToken m_nLayerForceID; // 0x418
Vector m_vLightingOrigin; // 0x41c
float m_flDepthSortBias; // 0x428
uint8[4] m_nVisibleToPlayer; // 0x42c
uint16_t m_nAlphaFade; // 0x430
int16_t m_nViewProducerIndex; // 0x432
int8_t m_nCurrentLOD; // 0x434
int32_t m_nCubeMapPrecomputedHandshake; // 0x438
int32_t m_nLightProbeVolumePrecomputedHandshake; // 0x43c
};
// Aligment: 18
// Size: 160
class CSceneObject
{
public:
ISceneObjectDesc* m_pDesc; // 0x10
CSceneObjectReference_t* m_pRefData; // 0x18
float m_flStartFadeDistanceSquared; // 0x20
float m_flFarCullDistanceSquared; // 0x24
uint16_t m_nObjectTypeFlags; // 0x28
uint16_t m_nGameRenderCounter; // 0x2a
uint8_t m_nMeshGroupMaskSmall; // 0x2f
bitfield:2 m_nDebugLevel; // 0x0
bitfield:2 m_nSizeCullBloat; // 0x0
bitfield:1 m_nBoundsType; // 0x0
uint8_t m_nID; // 0x31
uint8_t m_nNumTransformBlocks; // 0x32
uint8_t m_nObjectClass; // 0x33
matrix3x4a_t m_transform; // 0x40
CPVSData* m_pPVSData; // 0x70
uint64_t m_nOriginalRenderableFlags; // 0x80
uint64_t m_nRenderableFlags; // 0x88
CUtlStringToken m_nLayerMatchID; // 0x9c
public:
static float32[4] &Get_s_flSizeCullBloatScale() { return *reinterpret_cast<float32[4]*>(interfaces::g_schema->FindTypeScopeForModule("scenesystem.dll")->FindDeclaredClass("CSceneObject")->m_static_fiels[0]->m_instance); }
}; };
// Aligment: 2 // Aligment: 2

View File

@ -4,132 +4,33 @@
/////////////////////////////////////////// ///////////////////////////////////////////
// Binary: schemasystem.dll // Binary: schemasystem.dll
// Class Count: 7 // Class Count: 2
// Enum Count: 2 // Enum Count: 0
/////////////////////////////////////////// ///////////////////////////////////////////
// Aligment: 4 // Aligment: 18
// Size: 3 // Size: 336
enum class ThreeState_t : uint32_t
{
TRS_FALSE = 0x0,
TRS_TRUE = 0x1,
TRS_NONE = 0x2,
};
// Aligment: 1
// Size: 80
enum class fieldtype_t : uint8_t
{
FIELD_VOID = 0,
FIELD_FLOAT32 = 1,
FIELD_STRING = 2,
FIELD_VECTOR = 3,
FIELD_QUATERNION = 4,
FIELD_INT32 = 5,
FIELD_BOOLEAN = 6,
FIELD_INT16 = 7,
FIELD_CHARACTER = 8,
FIELD_COLOR32 = 9,
FIELD_EMBEDDED = 10,
FIELD_CUSTOM = 11,
FIELD_CLASSPTR = 12,
FIELD_EHANDLE = 13,
FIELD_POSITION_VECTOR = 14,
FIELD_TIME = 15,
FIELD_TICK = 16,
FIELD_SOUNDNAME = 17,
FIELD_INPUT = 18,
FIELD_FUNCTION = 19,
FIELD_VMATRIX = 20,
FIELD_VMATRIX_WORLDSPACE = 21,
FIELD_MATRIX3X4_WORLDSPACE = 22,
FIELD_INTERVAL = 23,
FIELD_UNUSED = 24,
FIELD_VECTOR2D = 25,
FIELD_INT64 = 26,
FIELD_VECTOR4D = 27,
FIELD_RESOURCE = 28,
FIELD_TYPEUNKNOWN = 29,
FIELD_CSTRING = 30,
FIELD_HSCRIPT = 31,
FIELD_VARIANT = 32,
FIELD_UINT64 = 33,
FIELD_FLOAT64 = 34,
FIELD_POSITIVEINTEGER_OR_NULL = 35,
FIELD_HSCRIPT_NEW_INSTANCE = 36,
FIELD_UINT32 = 37,
FIELD_UTLSTRINGTOKEN = 38,
FIELD_QANGLE = 39,
FIELD_NETWORK_ORIGIN_CELL_QUANTIZED_VECTOR = 40,
FIELD_HMATERIAL = 41,
FIELD_HMODEL = 42,
FIELD_NETWORK_QUANTIZED_VECTOR = 43,
FIELD_NETWORK_QUANTIZED_FLOAT = 44,
FIELD_DIRECTION_VECTOR_WORLDSPACE = 45,
FIELD_QANGLE_WORLDSPACE = 46,
FIELD_QUATERNION_WORLDSPACE = 47,
FIELD_HSCRIPT_LIGHTBINDING = 48,
FIELD_V8_VALUE = 49,
FIELD_V8_OBJECT = 50,
FIELD_V8_ARRAY = 51,
FIELD_V8_CALLBACK_INFO = 52,
FIELD_UTLSTRING = 53,
FIELD_NETWORK_ORIGIN_CELL_QUANTIZED_POSITION_VECTOR = 54,
FIELD_HRENDERTEXTURE = 55,
FIELD_HPARTICLESYSTEMDEFINITION = 56,
FIELD_UINT8 = 57,
FIELD_UINT16 = 58,
FIELD_CTRANSFORM = 59,
FIELD_CTRANSFORM_WORLDSPACE = 60,
FIELD_HPOSTPROCESSING = 61,
FIELD_MATRIX3X4 = 62,
FIELD_SHIM = 63,
FIELD_CMOTIONTRANSFORM = 64,
FIELD_CMOTIONTRANSFORM_WORLDSPACE = 65,
FIELD_ATTACHMENT_HANDLE = 66,
FIELD_AMMO_INDEX = 67,
FIELD_CONDITION_ID = 68,
FIELD_AI_SCHEDULE_BITS = 69,
FIELD_MODIFIER_HANDLE = 70,
FIELD_ROTATION_VECTOR = 71,
FIELD_ROTATION_VECTOR_WORLDSPACE = 72,
FIELD_HVDATA = 73,
FIELD_SCALE32 = 74,
FIELD_STRING_AND_TOKEN = 75,
FIELD_ENGINE_TIME = 76,
FIELD_ENGINE_TICK = 77,
FIELD_WORLD_GROUP_ID = 78,
FIELD_TYPECOUNT = 79,
};
// Aligment: 22
// Size: 384
class CSchemaSystemInternalRegistration class CSchemaSystemInternalRegistration
{ {
public: public:
Vector2D m_Vector2D; // 0x0 Vector2D m_Vector2D; // 0x0
Vector m_Vector; // 0x8 Vector m_Vector; // 0x8
VectorAligned m_VectorAligned; // 0x20 VectorAligned m_VectorAligned; // 0x20
Quaternion m_Quaternion; // 0x30 QAngle m_QAngle; // 0x30
QAngle m_QAngle; // 0x40 RadianEuler m_RadianEuler; // 0x3c
RotationVector m_RotationVector; // 0x4c DegreeEuler m_DegreeEuler; // 0x48
RadianEuler m_RadianEuler; // 0x58 Quaternion m_Quaternion; // 0x54
DegreeEuler m_DegreeEuler; // 0x64 matrix3x4_t m_matrix3x4_t; // 0x64
QuaternionStorage m_QuaternionStorage; // 0x70 matrix3x4a_t m_matrix3x4a_t; // 0xa0
matrix3x4_t m_matrix3x4_t; // 0x80 Color m_Color; // 0xd0
matrix3x4a_t m_matrix3x4a_t; // 0xb0 Vector4D m_Vector4D; // 0xd4
Color m_Color; // 0xe0 CTransform m_CTransform; // 0xf0
Vector4D m_Vector4D; // 0xe4 KeyValues* m_pKeyValues; // 0x110
CTransform m_CTransform; // 0x100 CUtlBinaryBlock m_CUtlBinaryBlock; // 0x118
KeyValues* m_pKeyValues; // 0x120 CUtlString m_CUtlString; // 0x130
CUtlBinaryBlock m_CUtlBinaryBlock; // 0x128 CUtlSymbol m_CUtlSymbol; // 0x138
CUtlString m_CUtlString; // 0x140 CUtlStringToken m_stringToken; // 0x13c
CUtlSymbol m_CUtlSymbol; // 0x148 CResourceArray< CResourcePointer< CResourceString > > m_ResourceTypes; // 0x140
CUtlStringToken m_stringToken; // 0x14c
CUtlStringTokenWithStorage m_stringTokenWithStorage; // 0x150
CResourceArray< CResourcePointer< CResourceString > > m_ResourceTypes; // 0x168
KeyValues3 m_KV3; // 0x170
}; };
// Aligment: 0 // Aligment: 0
@ -140,44 +41,3 @@ public:
// <no members described> // <no members described>
}; };
// Aligment: 1
// Size: 8
struct ResourceId_t
{
public:
uint64_t m_Value; // 0x0
};
// Aligment: 2
// Size: 8
class CExampleSchemaVData_Monomorphic
{
public:
int32_t m_nExample1; // 0x0
int32_t m_nExample2; // 0x4
};
// Aligment: 1
// Size: 16
class CExampleSchemaVData_PolymorphicBase
{
public:
int32_t m_nBase; // 0x8
};
// Aligment: 1
// Size: 24
class CExampleSchemaVData_PolymorphicDerivedA : public CExampleSchemaVData_PolymorphicBase
{
public:
int32_t m_nDerivedA; // 0x10
};
// Aligment: 1
// Size: 24
class CExampleSchemaVData_PolymorphicDerivedB : public CExampleSchemaVData_PolymorphicBase
{
public:
int32_t m_nDerivedB; // 0x10
};

File diff suppressed because it is too large Load Diff

View File

@ -4,199 +4,10 @@
/////////////////////////////////////////// ///////////////////////////////////////////
// Binary: soundsystem.dll // Binary: soundsystem.dll
// Class Count: 36 // Class Count: 12
// Enum Count: 13 // Enum Count: 0
/////////////////////////////////////////// ///////////////////////////////////////////
// Aligment: 4
// Size: 30
enum class soundlevel_t : uint32_t
{
SNDLVL_NONE = 0x0,
SNDLVL_20dB = 0x14,
SNDLVL_25dB = 0x19,
SNDLVL_30dB = 0x1e,
SNDLVL_35dB = 0x23,
SNDLVL_40dB = 0x28,
SNDLVL_45dB = 0x2d,
SNDLVL_50dB = 0x32,
SNDLVL_55dB = 0x37,
SNDLVL_IDLE = 0x3c,
SNDLVL_60dB = 0x3c,
SNDLVL_65dB = 0x41,
SNDLVL_STATIC = 0x42,
SNDLVL_70dB = 0x46,
SNDLVL_NORM = 0x4b,
SNDLVL_75dB = 0x4b,
SNDLVL_80dB = 0x50,
SNDLVL_TALKING = 0x50,
SNDLVL_85dB = 0x55,
SNDLVL_90dB = 0x5a,
SNDLVL_95dB = 0x5f,
SNDLVL_100dB = 0x64,
SNDLVL_105dB = 0x69,
SNDLVL_110dB = 0x6e,
SNDLVL_120dB = 0x78,
SNDLVL_130dB = 0x82,
SNDLVL_GUNFIRE = 0x8c,
SNDLVL_140dB = 0x8c,
SNDLVL_150dB = 0x96,
SNDLVL_180dB = 0xb4,
};
// Aligment: 4
// Size: 3
enum class ActionType_t : uint32_t
{
SOS_ACTION_NONE = 0x0,
SOS_ACTION_LIMITER = 0x1,
SOS_ACTION_TIME_LIMIT = 0x2,
};
// Aligment: 4
// Size: 3
enum class SosActionStopType_t : uint32_t
{
SOS_STOPTYPE_NONE = 0x0,
SOS_STOPTYPE_TIME = 0x1,
SOS_STOPTYPE_OPVAR = 0x2,
};
// Aligment: 4
// Size: 2
enum class SosActionSortType_t : uint32_t
{
SOS_SORTTYPE_HIGHEST = 0x0,
SOS_SORTTYPE_LOWEST = 0x1,
};
// Aligment: 4
// Size: 2
enum class SosGroupType_t : uint32_t
{
SOS_GROUPTYPE_DYNAMIC = 0x0,
SOS_GROUPTYPE_STATIC = 0x1,
};
// Aligment: 4
// Size: 6
enum class SosEditItemType_t : uint32_t
{
SOS_EDIT_ITEM_TYPE_SOUNDEVENTS = 0x0,
SOS_EDIT_ITEM_TYPE_SOUNDEVENT = 0x1,
SOS_EDIT_ITEM_TYPE_LIBRARYSTACKS = 0x2,
SOS_EDIT_ITEM_TYPE_STACK = 0x3,
SOS_EDIT_ITEM_TYPE_OPERATOR = 0x4,
SOS_EDIT_ITEM_TYPE_FIELD = 0x5,
};
// Aligment: 2
// Size: 10
enum class VMixFilterType_t : uint16_t
{
FILTER_UNKNOWN = 18446744073709551615,
FILTER_LOWPASS = 0,
FILTER_HIGHPASS = 1,
FILTER_BANDPASS = 2,
FILTER_NOTCH = 3,
FILTER_PEAKING_EQ = 4,
FILTER_LOW_SHELF = 5,
FILTER_HIGH_SHELF = 6,
FILTER_ALLPASS = 7,
FILTER_PASSTHROUGH = 8,
};
// Aligment: 1
// Size: 9
enum class VMixFilterSlope_t : uint8_t
{
FILTER_SLOPE_1POLE_6dB = 0,
FILTER_SLOPE_1POLE_12dB = 1,
FILTER_SLOPE_1POLE_18dB = 2,
FILTER_SLOPE_1POLE_24dB = 3,
FILTER_SLOPE_12dB = 4,
FILTER_SLOPE_24dB = 5,
FILTER_SLOPE_36dB = 6,
FILTER_SLOPE_48dB = 7,
FILTER_SLOPE_MAX = 7,
};
// Aligment: 2
// Size: 30
enum class VMixProcessorType_t : uint16_t
{
VPROCESSOR_UNKNOWN = 0,
VPROCESSOR_STEAMAUDIO_REVERB = 1,
VPROCESSOR_RT_PITCH = 2,
VPROCESSOR_STEAMAUDIO_HRTF = 3,
VPROCESSOR_DYNAMICS = 4,
VPROCESSOR_PRESETDSP = 5,
VPROCESSOR_DELAY = 6,
VPROCESSOR_MOD_DELAY = 7,
VPROCESSOR_DIFFUSOR = 8,
VPROCESSOR_BOXVERB = 9,
VPROCESSOR_FREEVERB = 10,
VPROCESSOR_PLATEVERB = 11,
VPROCESSOR_FULLWAVE_INTEGRATOR = 12,
VPROCESSOR_FILTER = 13,
VPROCESSOR_STEAMAUDIO_PATHING = 14,
VPROCESSOR_EQ8 = 15,
VPROCESSOR_ENVELOPE = 16,
VPROCESSOR_VOCODER = 17,
VPROCESSOR_CONVOLUTION = 18,
VPROCESSOR_DYNAMICS_3BAND = 19,
VPROCESSOR_DYNAMICS_COMPRESSOR = 20,
VPROCESSOR_SHAPER = 21,
VPROCESSOR_PANNER = 22,
VPROCESSOR_UTILITY = 23,
VPROCESSOR_AUTOFILTER = 24,
VPROCESSOR_OSC = 25,
VPROCESSOR_STEREODELAY = 26,
VPROCESSOR_EFFECT_CHAIN = 27,
VPROCESSOR_SUBGRAPH_SWITCH = 28,
VPROCESSOR_STEAMAUDIO_DIRECT = 29,
};
// Aligment: 4
// Size: 5
enum class VMixLFOShape_t : uint32_t
{
LFO_SHAPE_SINE = 0x0,
LFO_SHAPE_SQUARE = 0x1,
LFO_SHAPE_TRI = 0x2,
LFO_SHAPE_SAW = 0x3,
LFO_SHAPE_NOISE = 0x4,
};
// Aligment: 4
// Size: 2
enum class VMixPannerType_t : uint32_t
{
PANNER_TYPE_LINEAR = 0x0,
PANNER_TYPE_EQUAL_POWER = 0x1,
};
// Aligment: 4
// Size: 3
enum class VMixSubgraphSwitchInterpolationType_t : uint32_t
{
SUBGRAPH_INTERPOLATION_TEMPORAL_CROSSFADE = 0x0,
SUBGRAPH_INTERPOLATION_TEMPORAL_FADE_OUT = 0x1,
SUBGRAPH_INTERPOLATION_KEEP_LAST_SUBGRAPH_RUNNING = 0x2,
};
// Aligment: 4
// Size: 6
enum class VMixChannelOperation_t : uint32_t
{
VMIX_CHAN_STEREO = 0x0,
VMIX_CHAN_LEFT = 0x1,
VMIX_CHAN_RIGHT = 0x2,
VMIX_CHAN_SWAP = 0x3,
VMIX_CHAN_MONO = 0x4,
VMIX_CHAN_MID_SIDE = 0x5,
};
// Aligment: 3 // Aligment: 3
// Size: 24 // Size: 24
class CSosGroupActionSchema class CSosGroupActionSchema
@ -225,15 +36,6 @@ public:
SosActionSortType_t m_nSortType; // 0x20 SosActionSortType_t m_nSortType; // 0x20
}; };
// Aligment: 1
// Size: 32
class CSosGroupActionTimeLimitSchema : public CSosGroupActionSchema
{
public:
// MPropertyFriendlyName "Max Time"
float m_flMaxDuration; // 0x18
};
// Aligment: 4 // Aligment: 4
// Size: 16 // Size: 16
class CSosGroupBranchPattern class CSosGroupBranchPattern
@ -293,7 +95,7 @@ public:
class CSosSoundEventGroupListSchema class CSosSoundEventGroupListSchema
{ {
public: public:
// MPropertyAutoExpandSelf // MPropertyAutoExpandGroup
// MPropertyFriendlyName "Groups" // MPropertyFriendlyName "Groups"
CUtlVector< CSosSoundEventGroupSchema > m_groupList; // 0x0 CUtlVector< CSosSoundEventGroupSchema > m_groupList; // 0x0
}; };
@ -318,422 +120,38 @@ public:
CUtlVector< SosEditItemInfo_t > m_EditItems; // 0x0 CUtlVector< SosEditItemInfo_t > m_EditItems; // 0x0
}; };
// Aligment: 1
// Size: 8
class CSoundEventMetaData
{
public:
CStrongHandle< InfoForResourceTypeCVMixListResource > m_soundEventVMix; // 0x0
};
// Aligment: 6
// Size: 32
class CDSPMixgroupModifier
{
public:
// MPropertyDescription "Name of the mixgroup. TODO: needs to be autopopulated with mixgroups."
// MPropertyFriendlyName "Mixgroup Name"
CUtlString m_mixgroup; // 0x0
// MPropertyDescription "The amount to multiply the volume of the non-spatialized reverb/dsp by when at the max reverb blend distance. 1.0 leaves the volume unchanged."
// MPropertyFriendlyName "Max reverb gain amount for listener DSP."
float m_flModifier; // 0x8
// MPropertyDescription "The amount to multiply the volume of the non-spatialized reverb/dsp by when at the min reverb blend distance. 1.0 leaves the volume unchanged."
// MPropertyFriendlyName "Min reverb gain amount amount for listener DSP."
float m_flModifierMin; // 0xc
// MPropertyDescription "If set to >= 0, we will use this mix modifier for source-specific DSP effects. Otherwise we will use the listener DSP value."
// MPropertyFriendlyName "Max reverb gain amount for source-specific DSP."
float m_flSourceModifier; // 0x10
// MPropertyDescription "If set to >= 0, we will use this mix modifier for source-specific DSP effects. Otherwise we will use the listener DSP value."
// MPropertyFriendlyName "Min reverb gain amount for source-specific DSP."
float m_flSourceModifierMin; // 0x14
// MPropertyDescription "When a source has source-specific DSP, this can be used as an additional mix stage for the listener reverb amount."
// MPropertyFriendlyName "Modification amount for listener DSP when source DSP is used."
float m_flListenerReverbModifierWhenSourceReverbIsActive; // 0x18
};
// Aligment: 2
// Size: 32
class CDspPresetModifierList
{
public:
// MPropertyDescription "Name of the DSP effect / subgraph used."
// MPropertyFriendlyName "DSP Effect Name"
CUtlString m_dspName; // 0x0
// MPropertyDescription "Set of modifiers for individual mix groups"
// MPropertyFriendlyName "Mixgroup Modifiers"
CUtlVector< CDSPMixgroupModifier > m_modifiers; // 0x8
};
// Aligment: 1
// Size: 24
class CDSPPresetMixgroupModifierTable
{
public:
// MPropertyDescription "Table of mixgroup modifiers for effect names."
// MPropertyFriendlyName "Modifier Table"
CUtlVector< CDspPresetModifierList > m_table; // 0x0
};
// Aligment: 6
// Size: 16
struct VMixFilterDesc_t
{
public:
VMixFilterType_t m_nFilterType; // 0x0
VMixFilterSlope_t m_nFilterSlope; // 0x2
bool m_bEnabled; // 0x3
float m_fldbGain; // 0x4
float m_flCutoffFreq; // 0x8
float m_flQ; // 0xc
};
// Aligment: 1
// Size: 128
struct VMixEQ8Desc_t
{
public:
VMixFilterDesc_t[8] m_stages; // 0x0
};
// Aligment: 7
// Size: 40
struct VMixDelayDesc_t
{
public:
VMixFilterDesc_t m_feedbackFilter; // 0x0
bool m_bEnableFilter; // 0x10
float m_flDelay; // 0x14
float m_flDirectGain; // 0x18
float m_flDelayGain; // 0x1c
float m_flFeedbackGain; // 0x20
float m_flWidth; // 0x24
};
// Aligment: 2 // Aligment: 2
// Size: 8 // Size: 8
struct VMixPannerDesc_t struct VSoundStack_t
{ {
public: public:
VMixPannerType_t m_type; // 0x0 CResourceString m_StackName; // 0x0
float m_flStrength; // 0x4 CResourceString m_StackKV; // 0x4
};
// Aligment: 9
// Size: 48
struct VMixModDelayDesc_t
{
public:
VMixFilterDesc_t m_feedbackFilter; // 0x0
bool m_bPhaseInvert; // 0x10
float m_flGlideTime; // 0x14
float m_flDelay; // 0x18
float m_flOutputGain; // 0x1c
float m_flFeedbackGain; // 0x20
float m_flModRate; // 0x24
float m_flModDepth; // 0x28
bool m_bApplyAntialiasing; // 0x2c
};
// Aligment: 4
// Size: 16
struct VMixDiffusorDesc_t
{
public:
float m_flSize; // 0x0
float m_flComplexity; // 0x4
float m_flFeedback; // 0x8
float m_flOutputGain; // 0xc
};
// Aligment: 17
// Size: 80
struct VMixBoxverbDesc_t
{
public:
float m_flSizeMax; // 0x0
float m_flSizeMin; // 0x4
float m_flComplexity; // 0x8
float m_flDiffusion; // 0xc
float m_flModDepth; // 0x10
float m_flModRate; // 0x14
bool m_bParallel; // 0x18
VMixFilterDesc_t m_filterType; // 0x1c
float m_flWidth; // 0x2c
float m_flHeight; // 0x30
float m_flDepth; // 0x34
float m_flFeedbackScale; // 0x38
float m_flFeedbackWidth; // 0x3c
float m_flFeedbackHeight; // 0x40
float m_flFeedbackDepth; // 0x44
float m_flOutputGain; // 0x48
float m_flTaps; // 0x4c
};
// Aligment: 4
// Size: 16
struct VMixFreeverbDesc_t
{
public:
float m_flRoomSize; // 0x0
float m_flDamp; // 0x4
float m_flWidth; // 0x8
float m_flLateReflections; // 0xc
};
// Aligment: 7
// Size: 28
struct VMixPlateverbDesc_t
{
public:
float m_flPrefilter; // 0x0
float m_flInputDiffusion1; // 0x4
float m_flInputDiffusion2; // 0x8
float m_flDecay; // 0xc
float m_flDamp; // 0x10
float m_flFeedbackDiffusion1; // 0x14
float m_flFeedbackDiffusion2; // 0x18
};
// Aligment: 12
// Size: 48
struct VMixDynamicsDesc_t
{
public:
float m_fldbGain; // 0x0
float m_fldbNoiseGateThreshold; // 0x4
float m_fldbCompressionThreshold; // 0x8
float m_fldbLimiterThreshold; // 0xc
float m_fldbKneeWidth; // 0x10
float m_flRatio; // 0x14
float m_flLimiterRatio; // 0x18
float m_flAttackTimeMS; // 0x1c
float m_flReleaseTimeMS; // 0x20
float m_flRMSTimeMS; // 0x24
float m_flWetMix; // 0x28
bool m_bPeakMode; // 0x2c
};
// Aligment: 9
// Size: 36
struct VMixDynamicsCompressorDesc_t
{
public:
// MPropertyFriendlyName "Output Gain (dB)"
float m_fldbOutputGain; // 0x0
// MPropertyFriendlyName "Threshold (dB)"
float m_fldbCompressionThreshold; // 0x4
// MPropertyFriendlyName "Knee Width (dB)"
float m_fldbKneeWidth; // 0x8
// MPropertyFriendlyName "Compression Ratio"
float m_flCompressionRatio; // 0xc
// MPropertyFriendlyName "Attack time (ms)"
float m_flAttackTimeMS; // 0x10
// MPropertyFriendlyName "Release time (ms)"
float m_flReleaseTimeMS; // 0x14
// MPropertyFriendlyName "Threshold detection time (ms)"
float m_flRMSTimeMS; // 0x18
// MPropertyFriendlyName "Dry/Wet"
float m_flWetMix; // 0x1c
// MPropertyFriendlyName "Peak mode"
bool m_bPeakMode; // 0x20
};
// Aligment: 10
// Size: 36
struct VMixDynamicsBand_t
{
public:
// MPropertyFriendlyName "Input Gain (dB)"
float m_fldbGainInput; // 0x0
// MPropertyFriendlyName "Output Gain (dB)"
float m_fldbGainOutput; // 0x4
// MPropertyFriendlyName "Below Threshold(dB)"
float m_fldbThresholdBelow; // 0x8
// MPropertyFriendlyName "Above Threshold(dB)"
float m_fldbThresholdAbove; // 0xc
// MPropertyFriendlyName "Upward Ratio"
float m_flRatioBelow; // 0x10
// MPropertyFriendlyName "Downward Ratio"
float m_flRatioAbove; // 0x14
// MPropertyFriendlyName "Attack time (ms)"
float m_flAttackTimeMS; // 0x18
// MPropertyFriendlyName "Release time (ms)"
float m_flReleaseTimeMS; // 0x1c
// MPropertyFriendlyName "Enabled"
bool m_bEnable; // 0x20
// MPropertyFriendlyName "Solo"
bool m_bSolo; // 0x21
};
// Aligment: 10
// Size: 144
struct VMixDynamics3BandDesc_t
{
public:
float m_fldbGainOutput; // 0x0
float m_flRMSTimeMS; // 0x4
float m_fldbKneeWidth; // 0x8
float m_flDepth; // 0xc
float m_flWetMix; // 0x10
float m_flTimeScale; // 0x14
float m_flLowCutoffFreq; // 0x18
float m_flHighCutoffFreq; // 0x1c
bool m_bPeakMode; // 0x20
VMixDynamicsBand_t[3] m_bandDesc; // 0x24
};
// Aligment: 3
// Size: 12
struct VMixEnvelopeDesc_t
{
public:
float m_flAttackTimeMS; // 0x0
float m_flHoldTimeMS; // 0x4
float m_flReleaseTimeMS; // 0x8
};
// Aligment: 4
// Size: 16
struct VMixPitchShiftDesc_t
{
public:
int32_t m_nGrainSampleCount; // 0x0
float m_flPitchShift; // 0x4
int32_t m_nQuality; // 0x8
int32_t m_nProcType; // 0xc
};
// Aligment: 8
// Size: 32
struct VMixConvolutionDesc_t
{
public:
// MPropertyFriendlyName "gain of wet signal (dB)"
// MPropertyAttributeRange "-36 3"
float m_fldbGain; // 0x0
// MPropertyFriendlyName "Pre-delay (ms)"
float m_flPreDelayMS; // 0x4
// MPropertyFriendlyName "Dry/Wet"
float m_flWetMix; // 0x8
// MPropertyFriendlyName "Low EQ gain (dB)"
// MPropertyAttributeRange "-24 24"
float m_fldbLow; // 0xc
// MPropertyFriendlyName "Mid EQ gain (dB)"
// MPropertyAttributeRange "-24 24"
float m_fldbMid; // 0x10
// MPropertyFriendlyName "High EQ gain (dB)"
// MPropertyAttributeRange "-24 24"
float m_fldbHigh; // 0x14
// MPropertyFriendlyName "Low Cutoff Freq (Hz)"
float m_flLowCutoffFreq; // 0x18
// MPropertyFriendlyName "High Cutoff Freq (Hz)"
float m_flHighCutoffFreq; // 0x1c
};
// Aligment: 10
// Size: 40
struct VMixVocoderDesc_t
{
public:
int32_t m_nBandCount; // 0x0
float m_flBandwidth; // 0x4
float m_fldBModGain; // 0x8
float m_flFreqRangeStart; // 0xc
float m_flFreqRangeEnd; // 0x10
float m_fldBUnvoicedGain; // 0x14
float m_flAttackTimeMS; // 0x18
float m_flReleaseTimeMS; // 0x1c
int32_t m_nDebugBand; // 0x20
bool m_bPeakMode; // 0x24
};
// Aligment: 5
// Size: 20
struct VMixShaperDesc_t
{
public:
// MPropertyFriendlyName "Shape"
// MPropertyAttributeRange "0 14"
int32_t m_nShape; // 0x0
// MPropertyFriendlyName "Drive (dB)"
// MPropertyAttributeRange "0 36"
float m_fldbDrive; // 0x4
// MPropertyFriendlyName "Output Gain (dB)"
// MPropertyAttributeRange "-36 0"
float m_fldbOutputGain; // 0x8
// MPropertyFriendlyName "Dry/Wet"
float m_flWetMix; // 0xc
// MPropertyFriendlyName "Oversampling"
int32_t m_nOversampleFactor; // 0x10
};
// Aligment: 6
// Size: 24
struct VMixUtilityDesc_t
{
public:
// MPropertyFriendlyName "Channels"
VMixChannelOperation_t m_nOp; // 0x0
// MPropertyFriendlyName "Input Pan"
// MPropertyAttributeRange "-1 1"
float m_flInputPan; // 0x4
// MPropertyFriendlyName "Output Balance"
// MPropertyAttributeRange "-1 1"
float m_flOutputBalance; // 0x8
// MPropertyFriendlyName "Output Gain (dB)"
// MPropertyAttributeRange "-36 0"
float m_fldbOutputGain; // 0xc
bool m_bBassMono; // 0x10
float m_flBassFreq; // 0x14
};
// Aligment: 8
// Size: 44
struct VMixAutoFilterDesc_t
{
public:
float m_flEnvelopeAmount; // 0x0
float m_flAttackTimeMS; // 0x4
float m_flReleaseTimeMS; // 0x8
VMixFilterDesc_t m_filter; // 0xc
float m_flLFOAmount; // 0x1c
float m_flLFORate; // 0x20
float m_flPhase; // 0x24
VMixLFOShape_t m_nLFOShape; // 0x28
};
// Aligment: 3
// Size: 12
struct VMixOscDesc_t
{
public:
// MPropertyFriendlyName "Type"
VMixLFOShape_t oscType; // 0x0
// MPropertyFriendlyName "Frequency (Hz)"
// MPropertyAttributeRange "0.1 16000"
float m_freq; // 0x4
// MPropertyFriendlyName "Phase (degrees)"
// MPropertyAttributeRange "0 360"
float m_flPhase; // 0x8
}; };
// Aligment: 1 // Aligment: 1
// Size: 4 // Size: 8
struct VMixEffectChainDesc_t struct VSoundStackScript_t
{ {
public: public:
// MPropertyFriendlyName "Crossfade Time (s)" CResourceArray< VSoundStack_t > m_SoundStacks; // 0x0
// MPropertyAttributeRange "0.1 10"
float m_flCrossfadeTime; // 0x0
}; };
// Aligment: 3 // Aligment: 3
// Size: 12 // Size: 12
struct VMixSubgraphSwitchDesc_t struct VSoundEvent_t
{ {
public: public:
VMixSubgraphSwitchInterpolationType_t m_interpolationMode; // 0x0 CResourceString m_SoundName; // 0x0
bool m_bOnlyTailsOnFadeOut; // 0x4 CResourceString m_GameData; // 0x4
float m_flInterpolationTime; // 0x8 CResourceString m_OperatorsKV; // 0x8
};
// Aligment: 1
// Size: 8
struct VSoundEventScript_t
{
public:
CResourceArray< VSoundEvent_t > m_SoundEvents; // 0x0
}; };

File diff suppressed because it is too large Load Diff

View File

@ -4,85 +4,134 @@
/////////////////////////////////////////// ///////////////////////////////////////////
// Binary: worldrenderer.dll // Binary: worldrenderer.dll
// Class Count: 23 // Class Count: 28
// Enum Count: 1 // Enum Count: 0
/////////////////////////////////////////// ///////////////////////////////////////////
// Aligment: 4
// Size: 15
enum class ObjectTypeFlags_t : uint32_t
{
OBJECT_TYPE_NONE = 0x0,
OBJECT_TYPE_IMAGE_LOD = 0x1,
OBJECT_TYPE_GEOMETRY_LOD = 0x2,
OBJECT_TYPE_DECAL = 0x4,
OBJECT_TYPE_MODEL = 0x8,
OBJECT_TYPE_BLOCK_LIGHT = 0x10,
OBJECT_TYPE_NO_SHADOWS = 0x20,
OBJECT_TYPE_WORLDSPACE_TEXURE_BLEND = 0x40,
OBJECT_TYPE_DISABLED_IN_LOW_QUALITY = 0x80,
OBJECT_TYPE_NO_SUN_SHADOWS = 0x100,
OBJECT_TYPE_RENDER_WITH_DYNAMIC = 0x200,
OBJECT_TYPE_RENDER_TO_CUBEMAPS = 0x400,
OBJECT_TYPE_MODEL_HAS_LODS = 0x800,
OBJECT_TYPE_PRECOMPUTED_VISMEMBERS = 0x4000,
OBJECT_TYPE_STATIC_CUBE_MAP = 0x8000,
};
// Aligment: 7 // Aligment: 7
// Size: 48 // Size: 28
struct EntityIOConnectionData_t struct EntityIOConnectionData_t
{ {
public: public:
CUtlString m_outputName; // 0x0 CResourceString m_outputName; // 0x0
uint32_t m_targetType; // 0x8 uint32_t m_targetType; // 0x4
CUtlString m_targetName; // 0x10 CResourceString m_targetName; // 0x8
CUtlString m_inputName; // 0x18 CResourceString m_inputName; // 0xc
CUtlString m_overrideParam; // 0x20 CResourceString m_overrideParam; // 0x10
float m_flDelay; // 0x28 float m_flDelay; // 0x14
int32_t m_nTimesToFire; // 0x2c int32_t m_nTimesToFire; // 0x18
}; };
// Aligment: 2 // Aligment: 2
// Size: 48 // Size: 16
struct EntityKeyValueData_t struct EntityKeyValueData_t
{ {
public: public:
CUtlBinaryBlock m_keyValuesData; // 0x0 CResourceArray< uint8 > m_keyValuesData; // 0x0
CUtlVector< EntityIOConnectionData_t > m_connections; // 0x18 CResourceArray< EntityIOConnectionData_t > m_connections; // 0x8
}; };
// Aligment: 4 // Aligment: 5
// Size: 64 // Size: 28
struct PermEntityLumpData_t struct PermEntityLumpData_t
{ {
public: public:
CUtlString m_name; // 0x0 CResourceString m_name; // 0x0
CUtlString m_hammerUniqueId; // 0x8 EntityLumpFlags_t m_flags; // 0x4
CUtlVector< CStrongHandleCopyable< InfoForResourceTypeCEntityLump > > m_childLumps; // 0x10 CResourceString m_manifestName; // 0x8
CUtlVector< EntityKeyValueData_t > m_entityKeyValues; // 0x28 CResourceArray< CResourceExtReference< CWeakHandle< InfoForResourceTypeCEntityLump > > > m_childLumps; // 0xc
CResourceArray< EntityKeyValueData_t > m_entityKeyValues; // 0x14
};
// Aligment: 3
// Size: 24
struct LightTreeResourceData_t
{
public:
CResourceArray< uint8 > m_SerializedOctree; // 0x0
CResourceArray< uint16 > m_IrradValues; // 0x8
CResourceArray< uint16 > m_ImageVertices; // 0x10
};
// Aligment: 30
// Size: 224
struct PRTMatrixData_t
{
public:
int32_t m_nTransmitters; // 0x0
int32_t m_nReceivers; // 0x4
int32_t m_nTextureWidth; // 0x8
int32_t m_nTextureHeight; // 0xc
int32_t m_nTextureDepth; // 0x10
int64_t m_nPrimaryRelightDataOffset; // 0x18
int64_t m_nPrimaryRelightDataSize; // 0x20
int64_t m_nPrimaryRelightDataSizeUncompressed; // 0x28
int64_t m_nSecondaryRelightDataOffset; // 0x30
int64_t m_nSecondaryRelightDataSize; // 0x38
int64_t m_nSecondaryRelightDataSizeUncompressed; // 0x40
int64_t m_nPrimarySkyRelightDataOffset; // 0x48
int64_t m_nPrimarySkyRelightDataSize; // 0x50
int64_t m_nPrimarySkyRelightDataSizeUncompressed; // 0x58
int64_t m_nSecondarySkyRelightDataOffset; // 0x60
int64_t m_nSecondarySkyRelightDataSize; // 0x68
int64_t m_nSecondarySkyRelightDataSizeUncompressed; // 0x70
int64_t m_nTransmitterPositionsOffset; // 0x78
int64_t m_nTransmitterPositionsSize; // 0x80
int64_t m_nTransmitterPositionsSizeUncompressed; // 0x88
int64_t m_nReceiverPositionsOffset; // 0x90
int64_t m_nReceiverPositionsSize; // 0x98
int64_t m_nReceiverPositionsSizeUncompressed; // 0xa0
int64_t m_nTransmitterMaterialsOffset; // 0xa8
int64_t m_nTransmitterMaterialsSize; // 0xb0
int64_t m_nTransmitterMaterialsSizeUncompressed; // 0xb8
int64_t m_nReceiverIndicesOffset; // 0xc0
int64_t m_nReceiverIndicesSize; // 0xc8
int64_t m_nReceiverIndicesSizeUncompressed; // 0xd0
CResourceArray< CResourceExtReference< CWeakHandle< InfoForResourceTypeIMaterial2 > > > m_materials; // 0xd8
}; };
// Aligment: 15 // Aligment: 15
// Size: 144 // Size: 144
struct VirtualVolumeTexData_t
{
public:
Vector m_vBoundsMin; // 0x0
Vector m_vBoundsMax; // 0xc
Vector4D m_vPlaneX; // 0x18
Vector4D m_vPlaneY; // 0x28
Vector4D m_vPlaneZ; // 0x38
Vector m_vPlaneEndDistancesXYZ; // 0x48
int32_t m_nVirtualResX; // 0x54
int32_t m_nVirtualResY; // 0x58
int32_t m_nVirtualResZ; // 0x5c
CResourceArray< int32 > m_channelPageResX; // 0x60
CResourceArray< int32 > m_channelPageResY; // 0x68
CResourceArray< int32 > m_channelPageResZ; // 0x70
CResourceArray< int32 > m_imageFormats; // 0x78
CResourceArray< int64 > m_pageOffsets; // 0x80
int64_t m_nPageDataTotalSize; // 0x88
};
// Aligment: 15
// Size: 152
struct SceneObject_t struct SceneObject_t
{ {
public: public:
uint32_t m_nObjectID; // 0x0 uint32_t m_nObjectID; // 0x0
Vector4D[3] m_vTransform; // 0x4 Vector4D[4] m_vTransform; // 0x4
float m_flFadeStartDistance; // 0x34 float m_flFadeStartDistance; // 0x44
float m_flFadeEndDistance; // 0x38 float m_flFadeEndDistance; // 0x48
Vector4D m_vTintColor; // 0x3c Vector4D m_vTintColor; // 0x4c
CUtlString m_skin; // 0x50 CResourceString m_skin; // 0x5c
ObjectTypeFlags_t m_nObjectTypeFlags; // 0x58 ObjectTypeFlags_t m_nObjectTypeFlags; // 0x60
Vector m_vLightingOrigin; // 0x5c Vector m_vLightingOrigin; // 0x64
uint32_t m_nLightGroup; // 0x68 uint32_t m_nLightGroup; // 0x70
int16_t m_nOverlayRenderOrder; // 0x6c int32_t m_nOverlayRenderOrder; // 0x74
int16_t m_nLODOverride; // 0x6e int32_t m_nCubeMapPrecomputedHandshake; // 0x78
int32_t m_nCubeMapPrecomputedHandshake; // 0x70 int32_t m_nLightProbeVolumePrecomputedHandshake; // 0x7c
int32_t m_nLightProbeVolumePrecomputedHandshake; // 0x74 CResourceExtReference< CWeakHandle< InfoForResourceTypeCModel > > m_renderableModel; // 0x80
CStrongHandle< InfoForResourceTypeCModel > m_renderableModel; // 0x80 CResourceExtReference< CWeakHandle< InfoForResourceTypeCRenderMesh > > m_renderable; // 0x88
CStrongHandle< InfoForResourceTypeCRenderMesh > m_renderable; // 0x88 CResourceArray< CResourceExtReference< CWeakHandle< InfoForResourceTypeCTextureBase > > > m_externalTextures; // 0x90
}; };
// Aligment: 1 // Aligment: 1
@ -93,15 +142,24 @@ public:
uint32_t m_nSceneObjectIndex; // 0x0 uint32_t m_nSceneObjectIndex; // 0x0
}; };
// Aligment: 2
// Size: 20
struct BoneOverride_t : public BaseSceneObjectOverride_t
{
public:
CResourceArray< uint32 > m_boneHashes; // 0x4
CResourceArray< matrix3x4_t > m_boneTransforms; // 0xc
};
// Aligment: 4 // Aligment: 4
// Size: 40 // Size: 32
struct ExtraVertexStreamOverride_t : public BaseSceneObjectOverride_t struct ExtraVertexStreamOverride_t : public BaseSceneObjectOverride_t
{ {
public: public:
uint32_t m_nSubSceneObject; // 0x4 uint32_t m_nSubSceneObject; // 0x4
uint32_t m_nDrawCallIndex; // 0x8 uint32_t m_nDrawCallIndex; // 0x8
MeshDrawPrimitiveFlags_t m_nAdditionalMeshDrawPrimitiveFlags; // 0xc MeshDrawPrimitiveFlags_t m_nAdditionalMeshDrawPrimitiveFlags; // 0xc
CRenderBufferBinding m_extraBufferBinding; // 0x10 RenderBufferBinding_t m_extraBufferBinding; // 0x10
}; };
// Aligment: 3 // Aligment: 3
@ -111,7 +169,7 @@ struct MaterialOverride_t : public BaseSceneObjectOverride_t
public: public:
uint32_t m_nSubSceneObject; // 0x4 uint32_t m_nSubSceneObject; // 0x4
uint32_t m_nDrawCallIndex; // 0x8 uint32_t m_nDrawCallIndex; // 0x8
CStrongHandle< InfoForResourceTypeIMaterial2 > m_pMaterial; // 0x10 CResourceExtReference< CWeakHandle< InfoForResourceTypeIMaterial2 > > m_pMaterial; // 0x10
}; };
// Aligment: 10 // Aligment: 10
@ -125,111 +183,98 @@ public:
float m_flDepth; // 0x38 float m_flDepth; // 0x38
Vector2D m_vUVStart; // 0x3c Vector2D m_vUVStart; // 0x3c
Vector2D m_vUVEnd; // 0x44 Vector2D m_vUVEnd; // 0x44
CStrongHandle< InfoForResourceTypeIMaterial2 > m_pMaterial; // 0x50 CResourceExtReference< CWeakHandle< InfoForResourceTypeIMaterial2 > > m_pMaterial; // 0x50
int32_t m_nRenderOrder; // 0x58 int32_t m_nRenderOrder; // 0x58
Vector4D m_vTintColor; // 0x5c Vector4D m_vTintColor; // 0x5c
int32_t m_nSequenceOverride; // 0x6c int32_t m_nSequenceOverride; // 0x6c
}; };
// Aligment: 5 // Aligment: 7
// Size: 48 // Size: 20
struct PerInstanceBakedLightingParamsOverride_t : public BaseSceneObjectOverride_t
{
public:
uint32_t m_nSubSceneObject; // 0x4
uint32_t m_nDrawCallIndex; // 0x8
bool m_bHasBakedLightingFromVertexStream; // 0xc
bool m_bHasBakedLightingFromLightmap; // 0xd
bool m_bHasBakedLightingBasisInVertex; // 0xe
bool m_bHasPerInstanceBakedLightingData; // 0xf
uint32_t m_nPerVertexLightingOffsetInVertices; // 0x10
};
// Aligment: 7
// Size: 36
struct BakedLightingInfo_t struct BakedLightingInfo_t
{ {
public: public:
uint32_t m_nLightmapVersionNumber; // 0x0 CResourceArray< uint8 > m_PerVertexLightingDataPlainRGBM; // 0x0
uint32_t m_nLightmapGameVersionNumber; // 0x4 uint32_t m_nPerVertexLightingDataPlainRGBMWidth; // 0x8
Vector2D m_vLightmapUvScale; // 0x8 uint32_t m_nPerVertexLightingDataPlainRGBMHeight; // 0xc
bool m_bHasLightmaps; // 0x10 uint32_t m_nPerVertexLightingDataPlainRGBMDepth; // 0x10
CUtlVector< CStrongHandle< InfoForResourceTypeCTextureBase > > m_lightMaps; // 0x18 uint32_t m_nLightmapVersionNumber; // 0x14
}; bool m_bHasLightmaps; // 0x18
CResourceArray< CResourceExtReference< CWeakHandle< InfoForResourceTypeCTextureBase > > > m_lightMaps; // 0x1c
// Aligment: 4
// Size: 56
struct WorldNodeOnDiskBufferData_t
{
public:
int32_t m_nElementCount; // 0x0
int32_t m_nElementSizeInBytes; // 0x4
CUtlVector< RenderInputLayoutField_t > m_inputLayoutFields; // 0x8
CUtlVector< uint8 > m_pData; // 0x20
}; };
// Aligment: 12 // Aligment: 12
// Size: 48 // Size: 120
struct AggregateMeshInfo_t
{
public:
uint32_t m_nVisClusterMemberOffset; // 0x0
uint8_t m_nVisClusterMemberCount; // 0x4
bool m_bHasTransform; // 0x5
int16_t m_nDrawCallIndex; // 0x6
Color m_vTintColor; // 0x8
uint8_t m_nLODGroupMask; // 0xc
ObjectTypeFlags_t m_objectFlags; // 0x10
Vector m_vLODOrigin; // 0x14
float m_fLODStartDrawDistance; // 0x20
float m_fLODEndDrawDistance; // 0x24
float m_fMaxObjectScale; // 0x28
int32_t m_nLightProbeVolumePrecomputedHandshake; // 0x2c
};
// Aligment: 7
// Size: 96
struct AggregateSceneObject_t
{
public:
ObjectTypeFlags_t m_allFlags; // 0x0
ObjectTypeFlags_t m_anyFlags; // 0x4
int16_t m_nLayer; // 0x8
CUtlVector< AggregateMeshInfo_t > m_aggregateMeshes; // 0x10
CUtlVector< uint16 > m_visClusterMembership; // 0x28
CUtlVector< matrix3x4_t > m_fragmentTransforms; // 0x40
CStrongHandle< InfoForResourceTypeCModel > m_renderableModel; // 0x58
};
// Aligment: 12
// Size: 296
struct WorldNode_t struct WorldNode_t
{ {
public: public:
CUtlVector< SceneObject_t > m_sceneObjects; // 0x0 CResourceArray< SceneObject_t > m_sceneObjects; // 0x0
CUtlVector< InfoOverlayData_t > m_infoOverlays; // 0x18 CResourceArray< InfoOverlayData_t > m_infoOverlays; // 0x8
CUtlVector< uint16 > m_visClusterMembership; // 0x30 CResourceArray< BoneOverride_t > m_boneOverrides; // 0x10
CUtlVector< AggregateSceneObject_t > m_aggregateSceneObjects; // 0x48 CResourceArray< ExtraVertexStreamOverride_t > m_extraVertexStreamOverrides; // 0x18
CUtlVector< ExtraVertexStreamOverride_t > m_extraVertexStreamOverrides; // 0x60 CResourceArray< MaterialOverride_t > m_materialOverrides; // 0x20
CUtlVector< MaterialOverride_t > m_materialOverrides; // 0x78 CResourceArray< PerInstanceBakedLightingParamsOverride_t > m_lightmapInstanceDataOverrides; // 0x28
CUtlVector< WorldNodeOnDiskBufferData_t > m_extraVertexStreams; // 0x90 CResourceArray< OnDiskBufferData_t > m_extraVertexStreams; // 0x30
CUtlVector< CUtlString > m_layerNames; // 0xa8 CResourceArray< CResourceString > m_layerNames; // 0x38
CUtlVector< uint8 > m_sceneObjectLayerIndices; // 0xc0 CResourceArray< uint8 > m_sceneObjectLayerIndices; // 0x40
CUtlVector< uint8 > m_overlayLayerIndices; // 0xd8 CResourceArray< uint8 > m_overlayLayerIndices; // 0x48
CUtlString m_grassFileName; // 0xf0 CResourceString m_grassFileName; // 0x50
BakedLightingInfo_t m_nodeLightingInfo; // 0xf8 BakedLightingInfo_t m_nodeLightingInfo; // 0x54
}; };
// Aligment: 5 // Aligment: 19
// Size: 32 // Size: 76
struct WorldBuilderParams_t struct WorldBuilderParams_t
{ {
public: public:
float m_flMinDrawVolumeSize; // 0x0 int32_t m_nSizeBytesPerVoxel; // 0x0
bool m_bBuildBakedLighting; // 0x4 float m_flMinDrawVolumeSize; // 0x4
Vector2D m_vLightmapUvScale; // 0x8 float m_flMinDistToCamera; // 0x8
uint64_t m_nCompileTimestamp; // 0x10 float m_flMinAtlasDist; // 0xc
uint64_t m_nCompileFingerprint; // 0x18 float m_flMinSimplifiedDist; // 0x10
float m_flHorzFOV; // 0x14
float m_flHalfScreenWidth; // 0x18
int32_t m_nAtlasTextureSizeX; // 0x1c
int32_t m_nAtlasTextureSizeY; // 0x20
int32_t m_nUniqueTextureSizeX; // 0x24
int32_t m_nUniqueTextureSizeY; // 0x28
int32_t m_nCompressedAtlasSize; // 0x2c
float m_flGutterSize; // 0x30
float m_flUVMapThreshold; // 0x34
Vector m_vWorldUnitsPerTile; // 0x38
int32_t m_nMaxTexScaleSlots; // 0x44
bool m_bWrapInAtlas; // 0x48
bool m_bBuildBakedLighting; // 0x49
uint8[2] m_padding; // 0x4a
}; };
// Aligment: 7 // Aligment: 8
// Size: 80 // Size: 60
struct NodeData_t struct NodeData_t
{ {
public: public:
int32_t m_nParent; // 0x0 int32_t m_Flags; // 0x0
Vector m_vOrigin; // 0x4 int32_t m_nParent; // 0x4
Vector m_vMinBounds; // 0x10 Vector m_vOrigin; // 0x8
Vector m_vMaxBounds; // 0x1c Vector m_vMinBounds; // 0x14
float m_flMinimumDistance; // 0x28 Vector m_vMaxBounds; // 0x20
CUtlVector< int32 > m_ChildNodeIndices; // 0x30 float m_flMinimumDistance; // 0x2c
CUtlString m_worldNodePrefix; // 0x48 CResourceArray< int32 > m_ChildNodeIndices; // 0x30
CResourceString m_worldNodePrefix; // 0x38
}; };
// Aligment: 4 // Aligment: 4
@ -238,38 +283,83 @@ struct World_t
{ {
public: public:
WorldBuilderParams_t m_builderParams; // 0x0 WorldBuilderParams_t m_builderParams; // 0x0
CUtlVector< NodeData_t > m_worldNodes; // 0x20 CResourceArray< NodeData_t > m_worldNodes; // 0x4c
BakedLightingInfo_t m_worldLightingInfo; // 0x38 BakedLightingInfo_t m_worldLightingInfo; // 0x54
CUtlVector< CStrongHandleCopyable< InfoForResourceTypeCEntityLump > > m_entityLumps; // 0x68 CResourceArray< CResourceExtReference< CWeakHandle< InfoForResourceTypeCEntityLump > > > m_entityLumps; // 0x78
}; };
// Aligment: 2 // Aligment: 2
// Size: 8 // Size: 8
struct VoxelVisBlockOffset_t struct voxel_vis_cluster_t
{ {
public: public:
uint32_t m_nOffset; // 0x0 uint32_t m_nBlockIndex; // 0x0
uint32_t m_nElementCount; // 0x4 uint32_t m_nOffsetIntoBlock; // 0x4
}; };
// Aligment: 13 // Aligment: 10
// Size: 160 // Size: 144
class CVoxelVisibility class CVoxelVisibility
{ {
public: public:
uint32_t m_nBaseClusterCount; // 0x40 CUtlVector< uint32 > m_blockOffset; // 0x30
uint32_t m_nPVSBytesPerCluster; // 0x44 CUtlVector< voxel_vis_cluster_t > m_clusters; // 0x48
Vector m_vMinBounds; // 0x60
Vector m_vMaxBounds; // 0x6c
float m_flGridSize; // 0x78
int32_t m_nNodeCount; // 0x7c
int32_t m_nRegionCount; // 0x80
voxel_vis_compression_t m_nPVSCompression; // 0x84
uint32_t m_nTreeSize; // 0x88
uint32_t m_nPVSSizeCompressed; // 0x8c
};
// Aligment: 5
// Size: 88
struct WorldEnvironmentMap_t
{
public:
matrix3x4_t m_matLocalToWorld; // 0x0
CResourceExtReference< CWeakHandle< InfoForResourceTypeCTextureBase > > m_environmentMapTexture; // 0x30
bool m_bSkyRelight; // 0x38
float m_flInfluenceRadius; // 0x3c
AABB_t m_BoxProjection; // 0x40
};
// Aligment: 1
// Size: 8
struct WorldEnvironmentMaps_t
{
public:
CResourceArray< WorldEnvironmentMap_t > m_environmentMaps; // 0x0
};
// Aligment: 12
// Size: 392
struct IrradVolume_t
{
public:
VMatrix m_transform; // 0x0
float m_flFadeMinDist; // 0x40
float m_flFadeMaxDist; // 0x44
Vector m_vMinBounds; // 0x48 Vector m_vMinBounds; // 0x48
Vector m_vMaxBounds; // 0x54 Vector m_vMaxBounds; // 0x54
float m_flGridSize; // 0x60 IrradVolumeFlags_t m_nFlags; // 0x60
uint32_t m_nSkyVisibilityCluster; // 0x64 uint32_t m_nSortKey; // 0x64
uint32_t m_nSunVisibilityCluster; // 0x68 uint32_t m_nPlanes; // 0x68
VoxelVisBlockOffset_t m_NodeBlock; // 0x6c Vector4D[16] m_planes; // 0x6c
VoxelVisBlockOffset_t m_RegionBlock; // 0x74 CResourceExtReference< CWeakHandle< InfoForResourceTypeCTextureBase > > m_texture; // 0x170
VoxelVisBlockOffset_t m_EnclosedClusterListBlock; // 0x7c CResourceExtReference< CWeakHandle< InfoForResourceTypeCLightTree > > m_lightTree; // 0x178
VoxelVisBlockOffset_t m_EnclosedClustersBlock; // 0x84 CResourceExtReference< CWeakHandle< InfoForResourceTypePRTMatrixData_t > > m_prtMatrix; // 0x180
VoxelVisBlockOffset_t m_MasksBlock; // 0x8c };
VoxelVisBlockOffset_t m_nVisBlocks; // 0x94
// Aligment: 2
// Size: 12
struct WorldLighting_t
{
public:
GlobalIlluminationMethod_t m_globalIlluminationMethod; // 0x0
CResourceArray< IrradVolume_t > m_irradVolumes; // 0x4
}; };
// Aligment: 0 // Aligment: 0
@ -288,42 +378,21 @@ public:
// <no members described> // <no members described>
}; };
// Aligment: 11 // Aligment: 4
// Size: 120 // Size: 56
class CEntityIdentity
{
public:
// MNetworkEnable
// MNetworkChangeCallback "entityIdentityNameChanged"
int32_t m_nameStringableIndex; // 0x14
CUtlSymbolLarge m_name; // 0x18
CUtlSymbolLarge m_designerName; // 0x20
uint32_t m_flags; // 0x30
// MNetworkDisable
WorldGroupId_t m_worldGroupId; // 0x38
uint32_t m_fDataObjectTypes; // 0x3c
// MNetworkDisable
// MNetworkChangeAccessorFieldPathIndex
ChangeAccessorFieldPathIndex_t m_PathIndex; // 0x40
CEntityIdentity* m_pPrev; // 0x58
CEntityIdentity* m_pNext; // 0x60
CEntityIdentity* m_pPrevByClass; // 0x68
CEntityIdentity* m_pNextByClass; // 0x70
};
// Aligment: 3
// Size: 48
class CEntityInstance : public IHandleEntity class CEntityInstance : public IHandleEntity
{ {
public: public:
// MNetworkDisable // MNetworkDisable
CUtlSymbolLarge m_iszPrivateVScripts; // 0x8 CUtlSymbolLarge m_iszPrivateVScripts; // 0x8
// MNetworkEnable // MNetworkEnable
// MNetworkPriority "56" // MNetworkPriority "112"
CEntityIdentity* m_pEntity; // 0x10 CEntityIdentity* m_pEntity; // 0x10
// MNetworkDisable
CUtlStringToken m_worldGroupId; // 0x20
// MNetworkEnable // MNetworkEnable
// MNetworkDisable // MNetworkDisable
CScriptComponent* m_CScriptComponent; // 0x28 CScriptComponent* m_CScriptComponent; // 0x30
}; };
// Aligment: 1 // Aligment: 1