mirror of
https://github.com/aap/librw.git
synced 2025-12-20 01:19:51 +00:00
some more state caching for gl3
This commit is contained in:
@@ -2,25 +2,21 @@
|
||||
layout(std140) uniform State
|
||||
{
|
||||
vec2 u_alphaRef;
|
||||
|
||||
float u_fogStart;
|
||||
float u_fogEnd;
|
||||
float u_fogRange;
|
||||
float u_fogDisable;
|
||||
vec4 u_fogData;
|
||||
vec4 u_fogColor;
|
||||
};
|
||||
#else
|
||||
//uniform int u_alphaTest;
|
||||
//uniform float u_alphaRef;
|
||||
uniform vec2 u_alphaRef;
|
||||
|
||||
uniform float u_fogStart;
|
||||
uniform float u_fogEnd;
|
||||
uniform float u_fogRange;
|
||||
uniform float u_fogDisable;
|
||||
uniform vec4 u_fogData;
|
||||
uniform vec4 u_fogColor;
|
||||
#endif
|
||||
|
||||
#define u_fogStart (u_fogData.x)
|
||||
#define u_fogEnd (u_fogData.y)
|
||||
#define u_fogRange (u_fogData.z)
|
||||
#define u_fogDisable (u_fogData.w)
|
||||
|
||||
void DoAlphaTest(float a)
|
||||
{
|
||||
if(a < u_alphaRef.x || a >= u_alphaRef.y)
|
||||
|
||||
@@ -7,23 +7,20 @@
|
||||
layout(std140) uniform State
|
||||
{
|
||||
vec2 u_alphaRef;
|
||||
|
||||
float u_fogStart;
|
||||
float u_fogEnd;
|
||||
float u_fogRange;
|
||||
float u_fogDisable;
|
||||
vec4 u_fogData;
|
||||
vec4 u_fogColor;
|
||||
};
|
||||
#else
|
||||
uniform vec2 u_alphaRef;
|
||||
|
||||
uniform float u_fogStart;
|
||||
uniform float u_fogEnd;
|
||||
uniform float u_fogRange;
|
||||
uniform float u_fogDisable;
|
||||
uniform vec4 u_fogData;
|
||||
uniform vec4 u_fogColor;
|
||||
#endif
|
||||
|
||||
#define u_fogStart (u_fogData.x)
|
||||
#define u_fogEnd (u_fogData.y)
|
||||
#define u_fogRange (u_fogData.z)
|
||||
#define u_fogDisable (u_fogData.w)
|
||||
|
||||
#ifdef USE_UBOS
|
||||
layout(std140) uniform Scene
|
||||
{
|
||||
|
||||
@@ -3,25 +3,21 @@ const char *header_frag_src =
|
||||
"layout(std140) uniform State\n"
|
||||
"{\n"
|
||||
" vec2 u_alphaRef;\n"
|
||||
|
||||
" float u_fogStart;\n"
|
||||
" float u_fogEnd;\n"
|
||||
" float u_fogRange;\n"
|
||||
" float u_fogDisable;\n"
|
||||
" vec4 u_fogData;\n"
|
||||
" vec4 u_fogColor;\n"
|
||||
"};\n"
|
||||
"#else\n"
|
||||
"//uniform int u_alphaTest;\n"
|
||||
"//uniform float u_alphaRef;\n"
|
||||
"uniform vec2 u_alphaRef;\n"
|
||||
|
||||
"uniform float u_fogStart;\n"
|
||||
"uniform float u_fogEnd;\n"
|
||||
"uniform float u_fogRange;\n"
|
||||
"uniform float u_fogDisable;\n"
|
||||
"uniform vec4 u_fogData;\n"
|
||||
"uniform vec4 u_fogColor;\n"
|
||||
"#endif\n"
|
||||
|
||||
"#define u_fogStart (u_fogData.x)\n"
|
||||
"#define u_fogEnd (u_fogData.y)\n"
|
||||
"#define u_fogRange (u_fogData.z)\n"
|
||||
"#define u_fogDisable (u_fogData.w)\n"
|
||||
|
||||
"void DoAlphaTest(float a)\n"
|
||||
"{\n"
|
||||
" if(a < u_alphaRef.x || a >= u_alphaRef.y)\n"
|
||||
|
||||
@@ -8,23 +8,20 @@ const char *header_vert_src =
|
||||
"layout(std140) uniform State\n"
|
||||
"{\n"
|
||||
" vec2 u_alphaRef;\n"
|
||||
|
||||
" float u_fogStart;\n"
|
||||
" float u_fogEnd;\n"
|
||||
" float u_fogRange;\n"
|
||||
" float u_fogDisable;\n"
|
||||
" vec4 u_fogData;\n"
|
||||
" vec4 u_fogColor;\n"
|
||||
"};\n"
|
||||
"#else\n"
|
||||
"uniform vec2 u_alphaRef;\n"
|
||||
|
||||
"uniform float u_fogStart;\n"
|
||||
"uniform float u_fogEnd;\n"
|
||||
"uniform float u_fogRange;\n"
|
||||
"uniform float u_fogDisable;\n"
|
||||
"uniform vec4 u_fogData;\n"
|
||||
"uniform vec4 u_fogColor;\n"
|
||||
"#endif\n"
|
||||
|
||||
"#define u_fogStart (u_fogData.x)\n"
|
||||
"#define u_fogEnd (u_fogData.y)\n"
|
||||
"#define u_fogRange (u_fogData.z)\n"
|
||||
"#define u_fogDisable (u_fogData.w)\n"
|
||||
|
||||
"#ifdef USE_UBOS\n"
|
||||
"layout(std140) uniform Scene\n"
|
||||
"{\n"
|
||||
|
||||
Reference in New Issue
Block a user