]> de.git.xonotic.org Git - xonotic/darkplaces.git/blobdiff - dpsoftrast.h
Fix a bug with PRVM_64 where CSQC float stats were sent by aliasing to int64 and...
[xonotic/darkplaces.git] / dpsoftrast.h
index 69228ef86cdad0318ebdc5ce3987a46ecc66d7f5..3f107a352a95680c6ec30915d9128f9a9dfc38a2 100644 (file)
@@ -139,6 +139,14 @@ typedef enum glsl_attrib_e
 }
 glsl_attrib;
 
+typedef enum shaderlanguage_e
+{
+       SHADERLANGUAGE_GLSL,
+       SHADERLANGUAGE_HLSL,
+       SHADERLANGUAGE_COUNT
+}
+shaderlanguage_t;
+
 // this enum selects which of the glslshadermodeinfo entries should be used
 typedef enum shadermode_e
 {
@@ -157,7 +165,6 @@ typedef enum shadermode_e
        SHADERMODE_LIGHTSOURCE, ///< (lightsource) use directional pixel shading from light source (rtlight)
        SHADERMODE_REFRACTION, ///< refract background (the material is rendered normally after this pass)
        SHADERMODE_WATER, ///< refract background and reflection (the material is rendered normally after this pass)
-       SHADERMODE_SHOWDEPTH, ///< (debugging) renders depth as color
        SHADERMODE_DEFERREDGEOMETRY, ///< (deferred) render material properties to screenspace geometry buffers
        SHADERMODE_DEFERREDLIGHTSOURCE, ///< (deferred) use directional pixel shading from light source (rtlight) on screenspace geometry buffers
        SHADERMODE_COUNT
@@ -188,7 +195,7 @@ typedef enum shaderpermutation_e
        SHADERPERMUTATION_SHADOWMAPVSDCT = 1<<19, ///< (lightsource) use virtual shadow depth cube texture for shadowmap indexing
        SHADERPERMUTATION_SHADOWMAPORTHO = 1<<20, ///< (lightsource) use orthographic shadowmap projection
        SHADERPERMUTATION_DEFERREDLIGHTMAP = 1<<21, ///< (lightmap) read Texture_ScreenDiffuse/Specular textures and add them on top of lightmapping
-       SHADERPERMUTATION_ALPHAKILL = 1<<22, ///< (deferredgeometry) discard pixel if diffuse texture alpha below 0.5
+       SHADERPERMUTATION_ALPHAKILL = 1<<22, ///< (deferredgeometry) discard pixel if diffuse texture alpha below 0.5, (generic) apply global alpha
        SHADERPERMUTATION_REFLECTCUBE = 1<<23, ///< fake reflections using global cubemap (not HDRI light probe)
        SHADERPERMUTATION_NORMALMAPSCROLLBLEND = 1<<24, ///< (water) counter-direction normalmaps scrolling
        SHADERPERMUTATION_BOUNCEGRID = 1<<25, ///< (lightmap) use Texture_BounceGrid as an additional source of ambient light
@@ -196,7 +203,9 @@ typedef enum shaderpermutation_e
        SHADERPERMUTATION_TRIPPY = 1<<27, ///< use trippy vertex shader effect
        SHADERPERMUTATION_DEPTHRGB = 1<<28, ///< read/write depth values in RGB color coded format for older hardware without depth samplers
        SHADERPERMUTATION_ALPHAGEN_VERTEX = 1<<29, ///< alphaGen vertex
-       SHADERPERMUTATION_COUNT = 30 ///< size of shaderpermutationinfo array
+       SHADERPERMUTATION_SKELETAL = 1<<30, ///< (skeletal models) use skeletal matrices to deform vertices (gpu-skinning)
+       SHADERPERMUTATION_OCCLUDE = 1<<31, ///< use occlusion buffer for corona
+       SHADERPERMUTATION_COUNT = 32 ///< size of shaderpermutationinfo array
 }
 shaderpermutation_t;