]> git.xonotic.org Git - xonotic/darkplaces.git/blobdiff - clvm_cmds.c
CLVM: add cvar to support mods wanting low resolution 2D
[xonotic/darkplaces.git] / clvm_cmds.c
index 5ba1b3e53564fbb8fb40c52aa3bfde7351b5fa20..96551b920f5cdb98becf83af75bb26c89d2dda05 100644 (file)
@@ -976,9 +976,27 @@ static void VM_CL_R_SetView (prvm_prog_t *prog)
                        VM_Warning(prog, "VM_CL_R_GetView : unknown parm %i\n", c);
                        return;
                }
+               if (csqc_lowres.integer)
+               {
+                       switch(c)
+                       {
+                               case VF_MIN: case VF_MIN_X: case VF_MIN_Y: case VF_SIZE: case VF_SIZE_X: case VF_SIZE_Y: case VF_VIEWPORT:
+                                       VectorScale(PRVM_G_VECTOR(OFS_RETURN), vid_conwidth.value / vid.mode.width, PRVM_G_VECTOR(OFS_RETURN));
+                       }
+               }
                return;
        }
 
+       if (csqc_lowres.integer)
+       {
+               float scale = vid.mode.width / vid_conwidth.value;
+               switch(c)
+               {
+                       case VF_MIN: case VF_MIN_X: case VF_MIN_Y: case VF_SIZE: case VF_SIZE_X: case VF_SIZE_Y: case VF_VIEWPORT:
+                               VectorScale(PRVM_G_VECTOR(OFS_PARM1), scale, PRVM_G_VECTOR(OFS_PARM1));
+                               VectorScale(PRVM_G_VECTOR(OFS_PARM2), scale, PRVM_G_VECTOR(OFS_PARM2));
+               }
+       }
        f = PRVM_G_VECTOR(OFS_PARM1);
        k = PRVM_G_FLOAT(OFS_PARM1);
        switch(c)