]> de.git.xonotic.org Git - xonotic/darkplaces.git/blobdiff - model_brush.c
capturevideo refactoring, making AVI also "just a module" for it
[xonotic/darkplaces.git] / model_brush.c
index ab2be21d29a3ed5c5638958637f19126df571eaa..874892a93ddf07298a4c6c4d17f432c39e034453 100644 (file)
@@ -1358,7 +1358,6 @@ static void Mod_Q1BSP_LoadTextures(lump_t *l)
                        tx->skinframerate = 1;
                        tx->skinframes[0] = skinframe;
                        tx->currentskinframe = tx->skinframes[0];
-                       tx->basematerialflags = 0;
                }
                tx->basematerialflags = MATERIALFLAG_WALL;
                if (i == loadmodel->num_textures - 1)
@@ -1563,7 +1562,7 @@ static void Mod_Q1BSP_LoadTextures(lump_t *l)
                        else if (!strncmp(tx->name, "sky", 3))
                                tx->basematerialflags = MATERIALFLAG_SKY | MATERIALFLAG_NOSHADOW;
                        else if (!strcmp(tx->name, "caulk"))
-                               tx->basematerialflags = MATERIALFLAG_NODRAW;
+                               tx->basematerialflags = MATERIALFLAG_NODRAW | MATERIALFLAG_NOSHADOW;
                        else if (tx->skinframes[0] && tx->skinframes[0]->fog)
                                tx->basematerialflags |= MATERIALFLAG_ALPHA | MATERIALFLAG_BLENDED | MATERIALFLAG_NOSHADOW;
 
@@ -1774,7 +1773,6 @@ static void Mod_Q1BSP_LoadVisibility(lump_t *l)
 static void Mod_Q1BSP_ParseWadsFromEntityLump(const char *data)
 {
        char key[128], value[4096];
-       char wadname[128];
        int i, j, k;
        if (!data)
                return;
@@ -1816,9 +1814,7 @@ static void Mod_Q1BSP_ParseWadsFromEntityLump(const char *data)
                                                {
                                                        k = value[i];
                                                        value[i] = 0;
-                                                       strlcpy(wadname, "textures/", sizeof(wadname));
-                                                       strlcat(wadname, &value[j], sizeof(wadname));
-                                                       W_LoadTextureWadFile(wadname, false);
+                                                       W_LoadTextureWadFile(&value[j], false);
                                                        j = i+1;
                                                        if (!k)
                                                                break;
@@ -3626,7 +3622,7 @@ void Mod_Q1BSP_Load(dp_model_t *mod, void *buffer, void *bufferend)
                VectorCopy(bm->mins, mod->normalmins);
                VectorCopy(bm->maxs, mod->normalmaxs);
                dist = max(fabs(mod->normalmins[0]), fabs(mod->normalmaxs[0]));
-               modelyawradius = max(fabs(mod->normalmins[0]), fabs(mod->normalmaxs[0]));
+               modelyawradius = max(fabs(mod->normalmins[1]), fabs(mod->normalmaxs[1]));
                modelyawradius = dist*dist+modelyawradius*modelyawradius;
                modelradius = max(fabs(mod->normalmins[2]), fabs(mod->normalmaxs[2]));
                modelradius = modelyawradius + modelradius * modelradius;
@@ -4526,7 +4522,7 @@ static void Mod_Q3BSP_LoadLightmaps(lump_t *l, lump_t *faceslump)
                }
        }
 
-       convertedpixels = Mem_Alloc(tempmempool, size*size*4);
+       convertedpixels = (unsigned char *) Mem_Alloc(tempmempool, size*size*4);
        loadmodel->brushq3.lightmapsize = size;
        loadmodel->brushq3.num_originallightmaps = count;
 
@@ -4725,7 +4721,7 @@ static void Mod_Q3BSP_LoadFaces(lump_t *l)
        loadmodel->num_surfaces = count;
 
        if(count > 0)
-               patchtess = Mem_Alloc(tempmempool, count * sizeof(*patchtess));
+               patchtess = (patchtess_t*) Mem_Alloc(tempmempool, count * sizeof(*patchtess));
 
        i = 0;
        oldi = i;
@@ -4836,11 +4832,11 @@ static void Mod_Q3BSP_LoadFaces(lump_t *l)
                        cxtess = Q3PatchTesselationOnX(patchsize[0], patchsize[1], 3, originalvertex3f, r_subdivisions_collision_tolerance.value);
                        cytess = Q3PatchTesselationOnY(patchsize[0], patchsize[1], 3, originalvertex3f, r_subdivisions_collision_tolerance.value);
                        // bound to user settings
-                       cxtess = bound(r_subdivisions_mintess.integer, xtess, r_subdivisions_collision_maxtess.integer);
-                       cytess = bound(r_subdivisions_mintess.integer, ytess, r_subdivisions_collision_maxtess.integer);
+                       cxtess = bound(r_subdivisions_collision_mintess.integer, cxtess, r_subdivisions_collision_maxtess.integer);
+                       cytess = bound(r_subdivisions_collision_mintess.integer, cytess, r_subdivisions_collision_maxtess.integer);
                        // bound to sanity settings
-                       cxtess = bound(1, xtess, 1024);
-                       cytess = bound(1, ytess, 1024);
+                       cxtess = bound(1, cxtess, 1024);
+                       cytess = bound(1, cytess, 1024);
 
                        // store it for the LOD grouping step
                        patchtess[patchtesscount].surface_id = i;
@@ -4856,8 +4852,8 @@ static void Mod_Q3BSP_LoadFaces(lump_t *l)
                        patchtess[patchtesscount].lodgroup[4] = in->specific.patch.maxs[1];
                        patchtess[patchtesscount].lodgroup[5] = in->specific.patch.maxs[2];
 
-                       patchtess[patchtesscount].cxtess = xtess;
-                       patchtess[patchtesscount].cytess = ytess;
+                       patchtess[patchtesscount].cxtess = cxtess;
+                       patchtess[patchtesscount].cytess = cytess;
                        ++patchtesscount;
                        break;
                case Q3FACETYPE_FLARE: