123
This commit is contained in:
169
RenderDll/Common/CommonRender.h
Normal file
169
RenderDll/Common/CommonRender.h
Normal file
@@ -0,0 +1,169 @@
|
||||
/*=============================================================================
|
||||
CommonRender.h: Crytek Common render helper functions and structures declarations.
|
||||
Copyright (c) 2001 Crytek Studios. All Rights Reserved.
|
||||
|
||||
Revision history:
|
||||
* Created by Khonich Andrey
|
||||
|
||||
=============================================================================*/
|
||||
|
||||
#if !defined(COMMONRENDER_H__THIS_LINE_INSERTED_BY_VVP__15_10_1999__INCLUDED_)
|
||||
#define COMMONRENDER_H__THIS_LINE_INSERTED_BY_VVP__15_10_1999__INCLUDED_
|
||||
|
||||
#include "Cry_Math.h"
|
||||
|
||||
#include "Defs.h"
|
||||
#include "ColorDefs.h"
|
||||
#include "Shaders/Shader.h"
|
||||
|
||||
|
||||
|
||||
//////////////////////////////////////////////////////////////////////
|
||||
extern CRenderer *gRenDev;
|
||||
extern bool g_bProfilerEnabled;
|
||||
|
||||
|
||||
class CryModel;
|
||||
|
||||
// Cull functions
|
||||
int gfCullBox(Vec3d& min, Vec3d& max);
|
||||
bool gfCullPoint(Vec3d& org);
|
||||
int gfCullSphere(Vec3d& cent, float radius);
|
||||
int gfCullBoundBox(float *minmax);
|
||||
|
||||
//====================================================================
|
||||
|
||||
#define CR_LITTLE_ENDIAN
|
||||
|
||||
|
||||
extern TArray <CFColor> gCurLightStyles;
|
||||
|
||||
struct SWaveForm;
|
||||
struct SShader;
|
||||
|
||||
extern bool gbRgb;
|
||||
|
||||
_inline DWORD COLCONV (DWORD clr)
|
||||
{
|
||||
return ((clr & 0xff00ff00) | ((clr & 0xff0000)>>16) | ((clr & 0xff)<<16));
|
||||
}
|
||||
_inline void COLCONV (CFColor& col)
|
||||
{
|
||||
float v = col[0];
|
||||
col[0] = col[2];
|
||||
col[2] = v;
|
||||
}
|
||||
|
||||
_inline void f2d(double *dst, float *src)
|
||||
{
|
||||
for (int i=0; i<16; i++)
|
||||
{
|
||||
dst[i] = src[i];
|
||||
}
|
||||
}
|
||||
|
||||
_inline void d2f(float *dst, double *src)
|
||||
{
|
||||
for (int i=0; i<16; i++)
|
||||
{
|
||||
dst[i] = (float)src[i];
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//==============================================================================
|
||||
|
||||
#define SF_TRANS 4
|
||||
|
||||
//==============================================================================
|
||||
|
||||
struct SGenTC_NormalMap : public SGenTC
|
||||
{
|
||||
virtual SGenTC *mfCopy();
|
||||
virtual bool mfSet(bool bEnable);
|
||||
virtual void mfCompile(char *params, SShader *ef);
|
||||
virtual int Size()
|
||||
{
|
||||
int nSize = sizeof(SGenTC_NormalMap);
|
||||
return nSize;
|
||||
}
|
||||
};
|
||||
|
||||
struct SGenTC_ReflectionMap : public SGenTC
|
||||
{
|
||||
virtual SGenTC *mfCopy();
|
||||
virtual bool mfSet(bool bEnable);
|
||||
virtual void mfCompile(char *params, SShader *ef);
|
||||
virtual int Size()
|
||||
{
|
||||
int nSize = sizeof(SGenTC_ReflectionMap);
|
||||
return nSize;
|
||||
}
|
||||
};
|
||||
|
||||
struct SGenTC_SphereMap : public SGenTC
|
||||
{
|
||||
virtual SGenTC *mfCopy();
|
||||
virtual bool mfSet(bool bEnable);
|
||||
virtual void mfCompile(char *params, SShader *ef);
|
||||
virtual int Size()
|
||||
{
|
||||
int nSize = sizeof(SGenTC_SphereMap);
|
||||
return nSize;
|
||||
}
|
||||
};
|
||||
|
||||
struct SGenTC_EmbossMap : public SGenTC
|
||||
{
|
||||
virtual SGenTC *mfCopy();
|
||||
virtual bool mfSet(bool bEnable);
|
||||
virtual void mfCompile(char *params, SShader *ef);
|
||||
virtual int Size()
|
||||
{
|
||||
int nSize = sizeof(SGenTC_EmbossMap);
|
||||
return nSize;
|
||||
}
|
||||
};
|
||||
|
||||
struct SGenTC_ObjectLinear : public SGenTC
|
||||
{
|
||||
TArray<SParam> m_Params;
|
||||
|
||||
virtual ~SGenTC_ObjectLinear()
|
||||
{
|
||||
m_Params.Free();
|
||||
}
|
||||
virtual SGenTC *mfCopy();
|
||||
virtual bool mfSet(bool bEnable);
|
||||
virtual void mfCompile(char *params, SShader *ef);
|
||||
virtual int Size()
|
||||
{
|
||||
int nSize = sizeof(SGenTC_ObjectLinear);
|
||||
nSize += m_Params.GetSize() * sizeof(SParam);
|
||||
return nSize;
|
||||
}
|
||||
};
|
||||
|
||||
struct SGenTC_EyeLinear : public SGenTC
|
||||
{
|
||||
TArray<SParam> m_Params;
|
||||
|
||||
virtual ~SGenTC_EyeLinear()
|
||||
{
|
||||
m_Params.Free();
|
||||
}
|
||||
virtual SGenTC *mfCopy();
|
||||
virtual bool mfSet(bool bEnable);
|
||||
virtual void mfCompile(char *params, SShader *ef);
|
||||
virtual int Size()
|
||||
{
|
||||
int nSize = sizeof(SGenTC_EyeLinear);
|
||||
nSize += m_Params.GetSize() * sizeof(SParam);
|
||||
return nSize;
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
//=================================================================
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user