File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -780,24 +780,49 @@ namespace QOS
780780 const char * name;
781781 };
782782
783+ struct gcc_align32 (8 ) GfxDrawSurfFields
784+ {
785+ uint64_t objectId : 16 ;
786+ uint64_t reflectionProbeIndex : 8 ;
787+ uint64_t customIndex : 5 ;
788+ uint64_t materialSortedIndex : 11 ;
789+ uint64_t prepass : 2 ;
790+ uint64_t primaryLightIndex : 8 ;
791+ uint64_t surfType : 4 ;
792+ uint64_t primarySortKey : 6 ;
793+ uint64_t unused : 4 ;
794+ };
795+
796+ union GfxDrawSurf
797+ {
798+ gcc_align32 (8 ) GfxDrawSurfFields fields;
799+ gcc_align32 (8 ) uint64_t packed;
800+ };
801+
783802 struct MaterialInfo
784803 {
785804 const char * name;
805+ unsigned char gameFlags;
806+ unsigned char sortKey;
807+ unsigned char textureAtlasRowCount;
808+ unsigned char textureAtlasColumnCount;
809+ GfxDrawSurf drawSurf;
810+ unsigned int surfaceTypeBits;
811+ uint16_t hashIndex;
786812 };
787813
788814 struct Material
789815 {
790816 MaterialInfo info;
791- char unknown0[ 63 ];
817+ char stateBitsEntry[ 43 ];
792818 unsigned char textureCount;
793819 unsigned char constantCount;
794820 unsigned char stateBitsCount;
795- char unknown1 [14 ];
821+ char unknown0 [14 ];
796822 MaterialTechniqueSet* techniqueSet;
797823 MaterialTextureDef* textureTable;
798824 MaterialConstantDef* constantTable;
799825 GfxStateBits* stateBitsTable;
800- char unknown2[4 ];
801826 };
802827
803828 struct SndCurve
@@ -1467,11 +1492,6 @@ namespace QOS
14671492 float sunFxPosition[3 ];
14681493 };
14691494
1470- struct GfxDrawSurf
1471- {
1472- unsigned int packed[2 ];
1473- };
1474-
14751495 struct GfxSceneDynModel
14761496 {
14771497 char unknown[8 ];
You can’t perform that action at this time.
0 commit comments