- change SpriteDrawerArgs to draw a full sprite instead of one column at a time - add r_noaccel cvar to allow forced software rendering of the psprites (useful for debugging and also one person on the forum actually requested this feature) - remove FWallTmapVals and calculate texture coordinates directly from FWallCoords - move portal clipping out of the inner sprite drawing loop
24 lines
711 B
C++
24 lines
711 B
C++
#pragma once
|
|
|
|
#include "r_visiblesprite.h"
|
|
|
|
namespace swrenderer
|
|
{
|
|
class RenderSprite : public VisibleSprite
|
|
{
|
|
public:
|
|
static void Project(RenderThread *thread, AActor *thing, const DVector3 &pos, FTexture *tex, const DVector2 &spriteScale, int renderflags, WaterFakeSide fakeside, F3DFloor *fakefloor, F3DFloor *fakeceiling, sector_t *current_sector, int lightlevel, bool foggy, FDynamicColormap *basecolormap);
|
|
|
|
protected:
|
|
void Render(RenderThread *thread, short *cliptop, short *clipbottom, int minZ, int maxZ, Fake3DTranslucent clip3DFloor) override;
|
|
|
|
private:
|
|
FWallCoords wallc;
|
|
double SpriteScale;
|
|
|
|
uint32_t Translation = 0;
|
|
uint32_t FillColor = 0;
|
|
|
|
uint32_t dynlightcolor = 0;
|
|
};
|
|
}
|