2013-06-23 07:49:34 +00:00
|
|
|
#ifndef R_RENDER
|
|
|
|
#define R_RENDER
|
|
|
|
|
2013-06-26 23:01:00 +00:00
|
|
|
#include "basictypes.h"
|
2013-06-23 07:49:34 +00:00
|
|
|
|
|
|
|
enum RenderFlags
|
|
|
|
{
|
|
|
|
// [BB] Added texture compression flags.
|
2014-05-11 11:27:51 +00:00
|
|
|
RFL_TEXTURE_COMPRESSION=1,
|
|
|
|
RFL_TEXTURE_COMPRESSION_S3TC=2,
|
2013-06-23 07:49:34 +00:00
|
|
|
|
2014-05-11 11:27:51 +00:00
|
|
|
RFL_FRAMEBUFFER = 4,
|
|
|
|
RFL_BUFFER_STORAGE = 8,
|
|
|
|
RFL_SHADER_STORAGE_BUFFER = 16,
|
2013-06-23 07:49:34 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
enum TexMode
|
|
|
|
{
|
|
|
|
TMF_MASKBIT = 1,
|
|
|
|
TMF_OPAQUEBIT = 2,
|
|
|
|
TMF_INVERTBIT = 4,
|
|
|
|
|
|
|
|
TM_MODULATE = 0,
|
|
|
|
TM_MASK = TMF_MASKBIT,
|
|
|
|
TM_OPAQUE = TMF_OPAQUEBIT,
|
|
|
|
TM_INVERT = TMF_INVERTBIT,
|
|
|
|
//TM_INVERTMASK = TMF_MASKBIT | TMF_INVERTBIT
|
|
|
|
TM_INVERTOPAQUE = TMF_INVERTBIT | TMF_OPAQUEBIT,
|
|
|
|
};
|
|
|
|
|
|
|
|
struct RenderContext
|
|
|
|
{
|
|
|
|
unsigned int flags;
|
|
|
|
unsigned int maxuniforms;
|
2014-05-10 19:47:07 +00:00
|
|
|
float version;
|
2014-05-11 11:27:51 +00:00
|
|
|
float glslversion;
|
2013-06-23 07:49:34 +00:00
|
|
|
int max_texturesize;
|
|
|
|
char * vendorstring;
|
|
|
|
|
|
|
|
int MaxLights() const
|
|
|
|
{
|
|
|
|
return maxuniforms>=2048? 128:64;
|
|
|
|
}
|
2014-05-11 11:27:51 +00:00
|
|
|
|
|
|
|
bool hasGLSL() const
|
|
|
|
{
|
|
|
|
return glslversion >= 1.3f;
|
|
|
|
}
|
2013-06-23 07:49:34 +00:00
|
|
|
};
|
|
|
|
|
2013-09-03 16:29:39 +00:00
|
|
|
extern RenderContext gl;
|
2013-06-23 07:49:34 +00:00
|
|
|
|
|
|
|
#endif
|
|
|
|
|