1
0
mirror of https://github.com/alliedmodders/hl2sdk.git synced 2025-09-19 20:16:10 +08:00
Files
hl2sdk/public/materialsystem/shader_vcs_version.h

64 lines
1.3 KiB
C
Raw Normal View History

2008-09-15 01:33:59 -05:00
//========= Copyright <20> 1996-2005, Valve Corporation, All rights reserved. ============//
//
// Purpose:
//
//=============================================================================//
#ifndef SHADER_VCS_VERSION_H
#define SHADER_VCS_VERSION_H
#ifdef _WIN32
#pragma once
#endif
// 1=hl2 shipped. 2=compressed with diffs version (lostcoast)
#define SHADER_VCS_VERSION_NUMBER 2
#pragma pack(1)
struct ShaderHeader_t_V1
{
int m_nVersion;
int m_nTotalCombos;
int m_nDynamicCombos;
unsigned int m_nFlags;
unsigned int m_nCentroidMask;
};
struct ShaderHeader_t : ShaderHeader_t_V1
{
int m_ReferenceComboSizeForDiffs;
};
struct ShaderDictionaryEntry_t
{
int m_Offset;
int m_Size;
};
#pragma pack()
// 2=xbox shipped.
#define SHADER_XCS_VERSION_NUMBER 2
// xcs file format
#pragma pack(1)
struct XShaderDictionaryEntry_t
{
int m_Offset;
unsigned short m_PackedSize;
unsigned short m_Size;
};
struct XShaderHeader_t
{
int m_nVersion;
int m_nTotalCombos;
int m_nDynamicCombos;
unsigned int m_nFlags;
unsigned int m_nCentroidMask;
int m_nReferenceShader;
bool IsValid() { return m_nVersion == SHADER_XCS_VERSION_NUMBER; }
unsigned int BytesToPreload() { return sizeof( XShaderHeader_t ) + sizeof( XShaderDictionaryEntry_t ) * m_nTotalCombos; }
};
#pragma pack()
#endif // SHADER_VCS_VERSION_H