diff options
author | marha <marha@users.sourceforge.net> | 2013-11-04 12:08:23 +0100 |
---|---|---|
committer | marha <marha@users.sourceforge.net> | 2013-11-04 12:08:23 +0100 |
commit | 31fd4c5654595a4763e492e4ec26f66ca3a8a405 (patch) | |
tree | 8d6b249c93725e838676e26af171a167f6f20903 /mesalib/src/glsl/builtin_variables.cpp | |
parent | e4ef724e06621be9325fc41ed886fd404467fdc0 (diff) | |
download | vcxsrv-31fd4c5654595a4763e492e4ec26f66ca3a8a405.tar.gz vcxsrv-31fd4c5654595a4763e492e4ec26f66ca3a8a405.tar.bz2 vcxsrv-31fd4c5654595a4763e492e4ec26f66ca3a8a405.zip |
libxtrans fontconfig mesa xserver pixman xkbcomp git update 4 nov 2013
xserver commit 33c85beed521c9db140cadd8c5aa9992398ee1fe
xkbcomp commit e3e6e938535532bfad175c1635256ab7fb3ac943
pixman commit 8cbc7da4e525c96a8e089e4c1baee75dc8315218
libxtrans commit 1fb0fd555a16dd8fce4abc6d3fd22b315f46762a
fontconfig commit 767108aa1327cf0156dfc6f024dbc8fb783ae067
mesa commit 2f896627175384fd5943f21804700a155ba4e8a0
Diffstat (limited to 'mesalib/src/glsl/builtin_variables.cpp')
-rw-r--r-- | mesalib/src/glsl/builtin_variables.cpp | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/mesalib/src/glsl/builtin_variables.cpp b/mesalib/src/glsl/builtin_variables.cpp index 7a3505ace..4d441045a 100644 --- a/mesalib/src/glsl/builtin_variables.cpp +++ b/mesalib/src/glsl/builtin_variables.cpp @@ -30,6 +30,9 @@ #include "program/prog_statevars.h" #include "program/prog_instruction.h" +static struct gl_builtin_uniform_element gl_NumSamples_elements[] = { + {NULL, {STATE_NUM_SAMPLES, 0, 0}, SWIZZLE_XXXX} +}; static struct gl_builtin_uniform_element gl_DepthRange_elements[] = { {"near", {STATE_DEPTH_RANGE, 0, 0}, SWIZZLE_XXXX}, @@ -236,6 +239,7 @@ static struct gl_builtin_uniform_element gl_NormalMatrix_elements[] = { #define STATEVAR(name) {#name, name ## _elements, Elements(name ## _elements)} static const struct gl_builtin_uniform_desc _mesa_builtin_uniform_desc[] = { + STATEVAR(gl_NumSamples), STATEVAR(gl_DepthRange), STATEVAR(gl_ClipPlane), STATEVAR(gl_Point), @@ -662,6 +666,7 @@ builtin_variable_generator::generate_constants() void builtin_variable_generator::generate_uniforms() { + add_uniform(int_t, "gl_NumSamples"); add_uniform(type("gl_DepthRangeParameters"), "gl_DepthRange"); add_uniform(array(vec4_t, VERT_ATTRIB_MAX), "gl_CurrentAttribVertMESA"); add_uniform(array(vec4_t, VARYING_SLOT_MAX), "gl_CurrentAttribFragMESA"); @@ -838,6 +843,19 @@ builtin_variable_generator::generate_fs_special_vars() if (state->AMD_shader_stencil_export_warn) var->warn_extension = "GL_AMD_shader_stencil_export"; } + + if (state->ARB_sample_shading_enable) { + add_system_value(SYSTEM_VALUE_SAMPLE_ID, int_t, "gl_SampleID"); + add_system_value(SYSTEM_VALUE_SAMPLE_POS, vec2_t, "gl_SamplePosition"); + /* From the ARB_sample_shading specification: + * "The number of elements in the array is ceil(<s>/32), where + * <s> is the maximum number of color samples supported by the + * implementation." + * Since no drivers expose more than 32x MSAA, we can simply set + * the array size to 1 rather than computing it. + */ + add_output(FRAG_RESULT_SAMPLE_MASK, array(int_t, 1), "gl_SampleMask"); + } } |