qzdoom/src/hwrenderer/scene/hw_weapon.h
Christoph Oelckers 52d73eabbf - weapon drawing code refactor complete.
Setup and drawing are now done separately, this also no longer needs the Quad drawer.
2018-05-04 23:11:37 +02:00

51 lines
806 B
C++

#pragma once
#include "vectors.h"
class DPSprite;
class player_t;
class AActor;
enum area_t : int;
struct FSpriteModelFrame;
struct HWDrawInfo;
struct WeaponPosition
{
float wx, wy;
float bobx, boby;
DPSprite *weapon;
};
struct WeaponLighting
{
FColormap cm;
int lightlevel;
bool isbelow;
};
struct HUDSprite
{
AActor *owner;
DPSprite *weapon;
FMaterial *tex;
FSpriteModelFrame *mframe;
FColormap cm;
int lightlevel;
PalEntry ObjectColor;
FRenderStyle RenderStyle;
float alpha;
int OverrideShader;
float mx, my;
float dynrgb[3];
int lightindex;
void SetBright(bool isbelow);
bool GetWeaponRenderStyle(DPSprite *psp, AActor *playermo, sector_t *viewsector, WeaponLighting &light);
bool GetWeaponRect(HWDrawInfo *di, DPSprite *psp, float sx, float sy, player_t *player);
};