]> git.xonotic.org Git - xonotic/darkplaces.git/blobdiff - client.h
correct a typo (-lws_32 should be -lws2_32)
[xonotic/darkplaces.git] / client.h
index d44d2d034f7d2b2abdbbbd5a33fcab9210f202d5..cd92bc8dbe3c8ebe0103772a67573fff01da2f1b 100644 (file)
--- a/client.h
+++ b/client.h
@@ -243,8 +243,6 @@ typedef struct entity_render_s
 
        // NULL = no model
        model_t *model;
-       // current uninterpolated animation frame (for things which do not use interpolation)
-       int frame;
        // number of the entity represents, or 0 for non-network entities
        int entitynumber;
        // entity shirt and pants colors (-1 if not colormapped)
@@ -819,6 +817,11 @@ typedef struct client_state_s
        int viewentity;
        // the real player entity (normally same as viewentity,
        // different than viewentity if mod uses chasecam or other tricks)
+       int realplayerentity;
+       // this is updated to match cl.viewentity whenever it is in the clients
+       // range, basically this is used in preference to cl.realplayerentity for
+       // most purposes because when spectating another player it should show
+       // their information rather than yours
        int playerentity;
        // max players that can be in this game
        int maxclients;
@@ -943,7 +946,7 @@ typedef struct client_state_s
        int qw_teamplay;
 
        // unused: indicates whether the player is spectating
-       // use cl.scores[cl.playerentity].qw_spectator instead
+       // use cl.scores[cl.playerentity-1].qw_spectator instead
        //qboolean qw_spectator;
 
        // movement parameters for client prediction
@@ -1400,9 +1403,15 @@ typedef struct r_view_s
        vec3_t left;
        vec3_t right;
        vec3_t up;
-       mplane_t frustum[5];
+       int numfrustumplanes;
+       mplane_t frustum[6];
+       qboolean useclipplane;
+       mplane_t clipplane;
        float frustum_x, frustum_y;
        vec3_t frustumcorner[4];
+       // if turned off it renders an ortho view
+       int useperspective;
+       float ortho_x, ortho_y;
 
        // screen area to render in
        int x;
@@ -1417,6 +1426,15 @@ typedef struct r_view_s
 
        // global RGB color multiplier for rendering, this is required by HDR
        float colorscale;
+
+       // whether to draw r_showtris and such, this is only true for the main
+       // view render, all secondary renders (HDR, mirrors, portals, cameras,
+       // distortion effects, etc) omit such debugging information
+       qboolean showdebug;
+
+       // these define which values to use in GL_CullFace calls to request frontface or backface culling
+       int cullface_front;
+       int cullface_back;
 }
 r_view_t;