]> de.git.xonotic.org Git - xonotic/darkplaces.git/blobdiff - r_sprites.c
fix and simplify strpad so that it actually works
[xonotic/darkplaces.git] / r_sprites.c
index df61d746e9e657918f46b5530e4fc5aecd051e1a..6c8126b73cb49c3c9bc78f3592da95f508a86746 100644 (file)
@@ -72,10 +72,10 @@ void R_Model_Sprite_Draw_TransparentCallback(const entity_render_t *ent, const r
                if (ent->frameblend[i].lerp >= 0.01f)
                {
                        mspriteframe_t *frame = model->sprite.sprdata_frames + ent->frameblend[i].frame;
-                       texture_t *texture = &frame->texture;
+                       texture_t *texture = model->data_textures + ent->frameblend[i].frame;
                        R_UpdateTextureInfo(ent, texture);
                        // FIXME: negate left and right in loader
-                       R_DrawSprite(texture->currentlayers[0].blendfunc1, texture->currentlayers[0].blendfunc2, frame->texture.currentskinframe->base, frame->texture.currentskinframe->fog, (ent->effects & EF_NODEPTHTEST), org, left, up, frame->left, frame->right, frame->down, frame->up, texture->currentlayers[0].color[0], texture->currentlayers[0].color[1], texture->currentlayers[0].color[2], ent->alpha * ent->frameblend[i].lerp);
+                       R_DrawSprite(texture->currentlayers[0].blendfunc1, texture->currentlayers[0].blendfunc2, texture->basetexture, texture->currentskinframe->fog, (texture->currentmaterialflags & MATERIALFLAG_NODEPTHTEST), (texture->currentmaterialflags & MATERIALFLAG_SHORTDEPTHRANGE), org, left, up, frame->left, frame->right, frame->down, frame->up, texture->currentlayers[0].color[0], texture->currentlayers[0].color[1], texture->currentlayers[0].color[2], ent->alpha * ent->frameblend[i].lerp);
                }
        }
 }
@@ -87,6 +87,6 @@ void R_Model_Sprite_Draw(entity_render_t *ent)
                return;
 
        Matrix4x4_OriginFromMatrix(&ent->matrix, org);
-       R_MeshQueue_AddTransparent(ent->effects & EF_NODEPTHTEST ? r_view.origin : org, R_Model_Sprite_Draw_TransparentCallback, ent, 0, r_shadow_rtlight);
+       R_MeshQueue_AddTransparent(ent->effects & EF_NODEPTHTEST ? r_view.origin : org, R_Model_Sprite_Draw_TransparentCallback, ent, 0, rsurface.rtlight);
 }