]> git.xonotic.org Git - xonotic/darkplaces.git/blobdiff - client.h
implemented zpass shadowing, not used yet
[xonotic/darkplaces.git] / client.h
index 4c52a6322cf95e89c5d97494bf9a3541035af18d..9c2030ff95e33dda575dad16fa255b0cfd69294c 100644 (file)
--- a/client.h
+++ b/client.h
@@ -38,7 +38,7 @@ typedef struct effect_s
 {
        int active;
        vec3_t origin;
-       float starttime;
+       double starttime;
        float framerate;
        int modelindex;
        int startframe;
@@ -122,7 +122,8 @@ typedef struct rtlight_s
        // true if this is a compiled world light, cleared if the light changes
        int compiled;
        // premade shadow volumes to render for world entity
-       shadowmesh_t *static_meshchain_shadow;
+       shadowmesh_t *static_meshchain_shadow_zpass;
+       shadowmesh_t *static_meshchain_shadow_zfail;
        // used for visibility testing (more exact than bbox)
        int static_numleafs;
        int static_numleafpvsbytes;
@@ -281,6 +282,8 @@ typedef struct entity_render_s
        double frame1time;
        // time frame2 began playing (for framegroup animations)
        double frame2time;
+       // time of last model change (for shader animations)
+       double shadertime;
 
        // calculated by the renderer (but not persistent)
 
@@ -1204,7 +1207,7 @@ void CL_Beam_CalculatePositions (const beam_t *b, vec3_t start, vec3_t end);
 void CL_ClientMovement_Replay(void);
 
 void CL_ClearTempEntities (void);
-entity_render_t *CL_NewTempEntity (void);
+entity_render_t *CL_NewTempEntity (double shadertime);
 
 void CL_Effect(vec3_t org, int modelindex, int startframe, int framecount, float framerate);