]> git.rm.cloudns.org Git - xonotic/darkplaces.git/commitdiff
avoid crashes on watershader surfaces in models that are off-screen (yet
authorhavoc <havoc@d7cf8633-e32d-0410-b094-e92efae38249>
Sat, 17 Sep 2011 03:23:29 +0000 (03:23 +0000)
committerhavoc <havoc@d7cf8633-e32d-0410-b094-e92efae38249>
Sat, 17 Sep 2011 03:23:29 +0000 (03:23 +0000)
somehow marked visible)

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@11360 d7cf8633-e32d-0410-b094-e92efae38249

gl_rmain.c

index 8bd4e908717fc52e29949f3f1c09e14a9f021ef3..e92620c07c697a4e854ee93b1e6262f262f0abe6 100644 (file)
@@ -5633,6 +5633,10 @@ void R_Water_AddWaterPlane(msurface_t *surface, int entno)
        r_waterstate_waterplane_t *p;
        texture_t *t = R_GetCurrentTexture(surface->texture);
 
+       // if the model has no normals, it's probably off-screen and they were not generated, so don't add it anyway
+       if (!rsurface.modelnormal3f)
+               return;
+
        RSurf_PrepareVerticesForBatch(BATCHNEED_ARRAY_VERTEX | BATCHNEED_ARRAY_NORMAL | BATCHNEED_NOGAPS, 1, ((const msurface_t **)&surface));
        // average the vertex normals, find the surface bounds (after deformvertexes)
        VectorClear(normal);