]> de.git.xonotic.org Git - xonotic/darkplaces.git/blobdiff - model_sprite.c
fix memory alignment issue when saving odd-width screenshots (set GL_PACK_ALIGNMENT...
[xonotic/darkplaces.git] / model_sprite.c
index 367d9e9e849cc1920af28808953efc985de9fc88..e833271eabe821223ac228565f88200915031c7e 100644 (file)
@@ -25,7 +25,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
 #include "quakedef.h"
 #include "image.h"
 
-cvar_t r_mipsprites = {CVAR_SAVE, "r_mipsprites", "1"};
+cvar_t r_mipsprites = {CVAR_SAVE, "r_mipsprites", "1", "mipmaps skins (so they become blurrier in the distance), unlike skins the sprites do not have strange border colors"};
 
 /*
 ===============
@@ -146,8 +146,8 @@ static void Mod_Sprite_SharedSetup(const unsigned char *datapointer, int version
                        loadmodel->sprite.sprdata_frames[realframes].up = origin[1];
                        loadmodel->sprite.sprdata_frames[realframes].down = origin[1] - height;
 
-                       x = max(loadmodel->sprite.sprdata_frames[realframes].left * loadmodel->sprite.sprdata_frames[realframes].left, loadmodel->sprite.sprdata_frames[realframes].right * loadmodel->sprite.sprdata_frames[realframes].right);
-                       y = max(loadmodel->sprite.sprdata_frames[realframes].up * loadmodel->sprite.sprdata_frames[realframes].up, loadmodel->sprite.sprdata_frames[realframes].down * loadmodel->sprite.sprdata_frames[realframes].down);
+                       x = (int)max(loadmodel->sprite.sprdata_frames[realframes].left * loadmodel->sprite.sprdata_frames[realframes].left, loadmodel->sprite.sprdata_frames[realframes].right * loadmodel->sprite.sprdata_frames[realframes].right);
+                       y = (int)max(loadmodel->sprite.sprdata_frames[realframes].up * loadmodel->sprite.sprdata_frames[realframes].up, loadmodel->sprite.sprdata_frames[realframes].down * loadmodel->sprite.sprdata_frames[realframes].down);
                        if (modelradius < x + y)
                                modelradius = x + y;
 
@@ -374,8 +374,8 @@ void Mod_IDS2_Load(model_t *mod, void *buffer, void *bufferend)
                sprframe->up = origin[1];
                sprframe->down = origin[1] - height;
 
-               x = max(sprframe->left * sprframe->left, sprframe->right * sprframe->right);
-               y = max(sprframe->up * sprframe->up, sprframe->down * sprframe->down);
+               x = (int)max(sprframe->left * sprframe->left, sprframe->right * sprframe->right);
+               y = (int)max(sprframe->up * sprframe->up, sprframe->down * sprframe->down);
                if (modelradius < x + y)
                        modelradius = x + y;