NeXEkho
08-06-2010, 03:40 PM
I try and use a sampler3D in a GLSL 1.4 and I get a warning:
global function texture3D is deprecated after version 120
I'm wondering; why, and what exactly can I use after version 120 to replace it? I couldn't find any mention of it being deprecated in my Google searches, can anyone please elaborate? I was going to use it for volume rendering but its absence complicates things.
NOTE:
If I roll back to #130, it renders but I still get the warning. Driver bug? nVidia 9500GT with latest drivers.
uint8_t ui8Shader_Voxel_Vertex[] =
"#version 140\n"
"in vec3 v3Vertex;"
"out vec3 v3Coord;"
"uniform mat4 m4Transform;"
"void main()"
"{"
" v3Coord = v3Vertex;"
" gl_Position = m4Transform * vec4( v3Vertex, 1.0 );"
"}";
uint8_t ui8Shader_Voxel_Fragment[] =
"#version 140\n"
"in vec3 v3Coord;"
"out vec4 v4Composited;"
"uniform sampler3D s3dField;"
"void main(void)"
"{"
" v4Composited = texture3D( s3dField, v3Coord );"
"}";
global function texture3D is deprecated after version 120
I'm wondering; why, and what exactly can I use after version 120 to replace it? I couldn't find any mention of it being deprecated in my Google searches, can anyone please elaborate? I was going to use it for volume rendering but its absence complicates things.
NOTE:
If I roll back to #130, it renders but I still get the warning. Driver bug? nVidia 9500GT with latest drivers.
uint8_t ui8Shader_Voxel_Vertex[] =
"#version 140\n"
"in vec3 v3Vertex;"
"out vec3 v3Coord;"
"uniform mat4 m4Transform;"
"void main()"
"{"
" v3Coord = v3Vertex;"
" gl_Position = m4Transform * vec4( v3Vertex, 1.0 );"
"}";
uint8_t ui8Shader_Voxel_Fragment[] =
"#version 140\n"
"in vec3 v3Coord;"
"out vec4 v4Composited;"
"uniform sampler3D s3dField;"
"void main(void)"
"{"
" v4Composited = texture3D( s3dField, v3Coord );"
"}";