const GLint anIntFormat = theCtx->IsGlGreaterEqual (3, 0) ? theTextFormat : thePixelFormat;
#endif
+ if (theDataType == GL_FLOAT && !theCtx->arbTexFloat)
+ {
+ theCtx->PushMessage (GL_DEBUG_SOURCE_APPLICATION, GL_DEBUG_TYPE_ERROR, 0, GL_DEBUG_SEVERITY_HIGH,
+ "Error: floating-point textures are not supported by hardware.");
+ Release (theCtx.operator->());
+ return false;
+ }
+
const GLsizei aMaxSize = theCtx->MaxTextureSize();
if (theSizeX > aMaxSize
|| theSizeY > aMaxSize)
glTexImage1D (GL_PROXY_TEXTURE_1D, 0, anIntFormat,
theSizeX, 0,
thePixelFormat, theDataType, NULL);
- glGetTexLevelParameteriv (GL_PROXY_TEXTURE_2D, 0, GL_TEXTURE_WIDTH, &aTestWidth);
+ glGetTexLevelParameteriv (GL_PROXY_TEXTURE_1D, 0, GL_TEXTURE_WIDTH, &aTestWidth);
if (aTestWidth == 0)
{
// no memory or broken input parameters
Unbind (theCtx);
return true;
#else
+ theCtx->PushMessage (GL_DEBUG_SOURCE_APPLICATION, GL_DEBUG_TYPE_ERROR, 0, GL_DEBUG_SEVERITY_HIGH,
+ "Error: 1D textures are not supported by hardware.");
Release (theCtx.operator->());
return false;
#endif
#define THE_SHADER_IN in
#define THE_SHADER_OUT out
#define THE_OUT out
+ #define occTexture1D texture
#define occTexture2D texture
+ #define occTexture3D texture
#else
#define THE_ATTRIBUTE attribute
#define THE_SHADER_IN varying
#define THE_SHADER_OUT varying
#define THE_OUT
+ #define occTexture1D texture1D
#define occTexture2D texture2D
+ #define occTexture3D texture3D
#endif
#ifdef GL_ES
" #define THE_SHADER_IN in\n"
" #define THE_SHADER_OUT out\n"
" #define THE_OUT out\n"
+ " #define occTexture1D texture\n"
" #define occTexture2D texture\n"
+ " #define occTexture3D texture\n"
"#else\n"
" #define THE_ATTRIBUTE attribute\n"
" #define THE_SHADER_IN varying\n"
" #define THE_SHADER_OUT varying\n"
" #define THE_OUT\n"
+ " #define occTexture1D texture1D\n"
" #define occTexture2D texture2D\n"
+ " #define occTexture3D texture3D\n"
"#endif\n"
"\n"
"#ifdef GL_ES\n"