aboutsummaryrefslogtreecommitdiff
path: root/primedev/materialsystem
diff options
context:
space:
mode:
authorF1F7Y <64418963+F1F7Y@users.noreply.github.com>2024-08-25 13:58:17 +0200
committerGitHub <noreply@github.com>2024-08-25 13:58:17 +0200
commit5aae42126a062f1d184aff1c8217ef50259ccc53 (patch)
tree7916afa1200f0df6d9e09057c6563b4b467dbef2 /primedev/materialsystem
parent2dce58a733f1ac275e611bd050c2482c5d7cf68b (diff)
downloadNorthstarLauncher-5aae42126a062f1d184aff1c8217ef50259ccc53.tar.gz
NorthstarLauncher-5aae42126a062f1d184aff1c8217ef50259ccc53.zip
engine: restore `mat_crosshair_printmaterial` concommand (#763)
Restores the `mat_crosshair_printmaterial` concommand by reimplementing it's callback. Adds `CMaterialGlue` and `CShaderGlue` classes.
Diffstat (limited to 'primedev/materialsystem')
-rw-r--r--primedev/materialsystem/cmaterialglue.h47
-rw-r--r--primedev/materialsystem/cshaderglue.h7
2 files changed, 54 insertions, 0 deletions
diff --git a/primedev/materialsystem/cmaterialglue.h b/primedev/materialsystem/cmaterialglue.h
new file mode 100644
index 00000000..1738a91a
--- /dev/null
+++ b/primedev/materialsystem/cmaterialglue.h
@@ -0,0 +1,47 @@
+#pragma once
+
+#include "materialsystem/cshaderglue.h"
+
+class CMaterialGlue
+{
+public:
+ void* m_pVFTable;
+ char m_unk[8];
+
+ uint64_t m_GUID;
+
+ const char* m_pszName;
+ const char* m_pszSurfaceProp;
+ const char* m_pszSurfaceProp2;
+
+ CMaterialGlue* m_pDepthShadow;
+ CMaterialGlue* m_pDepthPrepass;
+ CMaterialGlue* m_pDepthVSM;
+ CMaterialGlue* m_pColPass;
+
+ char gap_50[64];
+
+ CShaderGlue* m_pShaderGlue;
+ void** m_pTextureHandles;
+ void** m_pStreamingTextures;
+ int16_t m_iStreamingTextureCount;
+ uint8_t m_iSamplersIndices[4];
+ int16_t m_iUnknown0;
+ char gap_B0[12];
+
+ int16_t aword_BC[2];
+ int32_t flags2;
+ int32_t flags3;
+ int16_t m_iWidth;
+ int16_t m_iHeight;
+ int16_t m_iUnknown1;
+ int16_t m_iUnknown2;
+
+ void** m_pUnkD3D11Ptr;
+ void* m_pD3D11Buffer;
+ void* qword_E0;
+ void* pointer_E8;
+
+ int32_t dword_F0;
+ char gap_F4[12];
+};
diff --git a/primedev/materialsystem/cshaderglue.h b/primedev/materialsystem/cshaderglue.h
new file mode 100644
index 00000000..8194f1fb
--- /dev/null
+++ b/primedev/materialsystem/cshaderglue.h
@@ -0,0 +1,7 @@
+#pragma once
+
+class CShaderGlue
+{
+public:
+ void* vftable;
+};