summaryrefslogtreecommitdiff
path: root/materialsystem/stdshaders/eye_refract_helper.h
diff options
context:
space:
mode:
Diffstat (limited to 'materialsystem/stdshaders/eye_refract_helper.h')
-rw-r--r--materialsystem/stdshaders/eye_refract_helper.h69
1 files changed, 69 insertions, 0 deletions
diff --git a/materialsystem/stdshaders/eye_refract_helper.h b/materialsystem/stdshaders/eye_refract_helper.h
new file mode 100644
index 0000000..ce62a33
--- /dev/null
+++ b/materialsystem/stdshaders/eye_refract_helper.h
@@ -0,0 +1,69 @@
+//========= Copyright Valve Corporation, All rights reserved. ============//
+
+#ifndef EYE_REFRACT_HELPER_H
+#define EYE_REFRACT_HELPER_H
+#ifdef _WIN32
+#pragma once
+#endif
+
+#include <string.h>
+
+//-----------------------------------------------------------------------------
+// Forward declarations
+//-----------------------------------------------------------------------------
+class CBaseVSShader;
+class IMaterialVar;
+class IShaderDynamicAPI;
+class IShaderShadow;
+
+//-----------------------------------------------------------------------------
+// Init params/ init/ draw methods
+//-----------------------------------------------------------------------------
+struct Eye_Refract_Vars_t
+{
+ Eye_Refract_Vars_t() { memset( this, 0xFF, sizeof(Eye_Refract_Vars_t) ); }
+
+ int m_nFrame;
+ int m_nIris;
+ int m_nIrisFrame;
+ int m_nEyeOrigin;
+ int m_nIrisU;
+ int m_nIrisV;
+ int m_nDilation;
+ int m_nGlossiness;
+ int m_nIntro;
+ int m_nEntityOrigin; // Needed for intro
+ int m_nWarpParam;
+ int m_nCorneaTexture;
+ int m_nAmbientOcclTexture;
+ int m_nEnvmap;
+ int m_nSphereTexKillCombo;
+ int m_nRaytraceSphere;
+ int m_nParallaxStrength;
+ int m_nCorneaBumpStrength;
+ int m_nAmbientOcclColor;
+ int m_nEyeballRadius;
+ int m_nDiffuseWarpTexture;
+};
+
+// Default values (Arrays should only be vec[4])
+static const int kDefaultIntro = 0;
+static const float kDefaultEyeOrigin[4] = { 0.0f, 0.0f, 0.0f, 0.0f };
+static const float kDefaultIrisU[4] = { 0.0f, 0.0f, 0.0f, 0.0f };
+static const float kDefaultIrisV[4] = { 0.0f, 0.0f, 0.0f, 0.0f };
+static const float kDefaultDilation = 0.5f;
+static const float kDefaultGlossiness = 1.0f;
+static const float kDefaultWarpParam = 0.0f;
+static const int kDefaultSphereTexKillCombo = 0;
+static const int kDefaultRaytraceSphere = 0;
+static const float kDefaultParallaxStrength = 0.25f;
+static const float kDefaultCorneaBumpStrength = 1.0f;
+static const float kDefaultAmbientOcclColor[4] = { 0.33f, 0.33f, 0.33f, 0.0f };
+static const float kDefaultEyeballRadius = 0.5f;
+
+void InitParams_Eyes_Refract( CBaseVSShader *pShader, IMaterialVar** params, const char *pMaterialName, Eye_Refract_Vars_t &info );
+void Init_Eyes_Refract( CBaseVSShader *pShader, IMaterialVar** params, Eye_Refract_Vars_t &info );
+void Draw_Eyes_Refract( CBaseVSShader *pShader, IMaterialVar** params, IShaderDynamicAPI *pShaderAPI,
+ IShaderShadow* pShaderShadow, Eye_Refract_Vars_t &info, VertexCompressionType_t vertexCompression );
+
+#endif // EYES_DX8_DX9_HELPER_H