re3/src/render/Shadows.h

28 lines
1.5 KiB
C
Raw Normal View History

2019-05-29 00:52:30 +00:00
#pragma once
struct RwTexture;
class CEntity;
2019-05-29 00:52:30 +00:00
2019-06-30 19:06:55 +00:00
enum
{
SHADOWTYPE_2 = 2
};
2019-05-29 00:52:30 +00:00
class CShadows
{
public:
static void AddPermanentShadow(uint8 ShadowType, RwTexture* pTexture, CVector* pPosn, float fX1, float fY1, float fX2, float fY2, short nTransparency, uint8 nRed, uint8 nGreen, uint8 nBlue, float fZDistance, uint32 nTime, float fScale);
static void RenderStaticShadows(void);
static void RenderStoredShadows(void);
2019-05-31 09:44:43 +00:00
static void RenderExtraPlayerShadows(void);
2019-06-12 14:52:26 +00:00
static void CalcPedShadowValues(CVector light, float *frontX, float *frontY, float *sideX, float *sideY, float *dispX, float *dispY);
2019-06-30 19:06:55 +00:00
static void StoreShadowForTree(CEntity *ent);
static void StoreShadowForPole(CEntity *ent, float offsetX, float offsetY, float offsetZ, float poleHeight, float poleWidth, uint32 subId);
static void StoreShadowForPedObject(CEntity *ent, float dispX, float dispY, float frontX, float frontY, float sideX, float sideY);
2019-06-30 19:06:55 +00:00
static void StoreStaticShadow(uint32 id, uint8 type, RwTexture *texture, CVector *coors, float frontX, float frontY, float sideX, float sideY, int16 intensity, uint8 red, uint8 green, uint8 blue, float zDistance, float scale, float drawDistance, bool temporaryShadow, float upDistance);;
static void StoreShadowToBeRendered(uint8 type, RwTexture *texture, CVector *coors, float frontX, float frontY, float sideX, float sideY, int16 intensity, uint8 red, uint8 green, uint8 blue, float zDistance, bool drawOnWater, float upDistance);
2019-05-31 09:44:43 +00:00
};
2019-06-30 19:06:55 +00:00
extern RwTexture *&gpBloodPoolTex;
extern RwTexture *&gpShadowExplosionTex;