2019-05-29 00:52:30 +00:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
struct RwTexture;
|
2019-06-12 19:17:02 +00:00
|
|
|
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:
|
2019-05-30 19:24:47 +00:00
|
|
|
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);
|
2019-06-12 19:17:02 +00:00
|
|
|
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-28 16:19:00 +00:00
|
|
|
|
2019-06-30 19:06:55 +00:00
|
|
|
extern RwTexture *&gpBloodPoolTex;
|
|
|
|
extern RwTexture *&gpShadowExplosionTex;
|