Skip to content
Snippets Groups Projects
Commit 64c89ee2 authored by David Parks's avatar David Parks
Browse files

SH-2908 Fix for mac build

parent 001e3207
No related branches found
No related tags found
No related merge requests found
...@@ -561,6 +561,15 @@ bool LLGLManager::initGL() ...@@ -561,6 +561,15 @@ bool LLGLManager::initGL()
if (mGLVersion >= 2.f) if (mGLVersion >= 2.f)
{ {
parse_glsl_version(mGLSLVersionMajor, mGLSLVersionMinor); parse_glsl_version(mGLSLVersionMajor, mGLSLVersionMinor);
#if LL_DARWIN
//never use GLSL greater than 1.20 on OSX
if (mGLSLVersionMajor > 1 || mGLSLVersionMinor >= 30)
{
mGLSLVersionMajor = 1;
mGLSLVersionMinor = 20;
}
#endif
} }
// Trailing space necessary to keep "nVidia Corpor_ati_on" cards // Trailing space necessary to keep "nVidia Corpor_ati_on" cards
......
...@@ -1264,11 +1264,13 @@ void LLVertexBuffer::setupVertexArray() ...@@ -1264,11 +1264,13 @@ void LLVertexBuffer::setupVertexArray()
if (attrib_integer) if (attrib_integer)
{ {
#if !LL_DARWIN
//glVertexattribIPointer requires GLSL 1.30 or later //glVertexattribIPointer requires GLSL 1.30 or later
if (gGLManager.mGLSLVersionMajor > 1 || gGLManager.mGLSLVersionMinor >= 30) if (gGLManager.mGLSLVersionMajor > 1 || gGLManager.mGLSLVersionMinor >= 30)
{ {
glVertexAttribIPointer(i, attrib_size[i], attrib_type[i], sTypeSize[i], (void*) mOffsets[i]); glVertexAttribIPointer(i, attrib_size[i], attrib_type[i], sTypeSize[i], (void*) mOffsets[i]);
} }
#endif
} }
else else
{ {
...@@ -2258,9 +2260,11 @@ void LLVertexBuffer::setupVertexBuffer(U32 data_mask) ...@@ -2258,9 +2260,11 @@ void LLVertexBuffer::setupVertexBuffer(U32 data_mask)
if (data_mask & MAP_TEXTURE_INDEX && if (data_mask & MAP_TEXTURE_INDEX &&
(gGLManager.mGLSLVersionMajor >= 2 || gGLManager.mGLSLVersionMinor >= 30)) //indexed texture rendering requires GLSL 1.30 or later (gGLManager.mGLSLVersionMajor >= 2 || gGLManager.mGLSLVersionMinor >= 30)) //indexed texture rendering requires GLSL 1.30 or later
{ {
#if !LL_DARWIN
S32 loc = TYPE_TEXTURE_INDEX; S32 loc = TYPE_TEXTURE_INDEX;
void *ptr = (void*) (base + mOffsets[TYPE_VERTEX] + 12); void *ptr = (void*) (base + mOffsets[TYPE_VERTEX] + 12);
glVertexAttribIPointer(loc, 4, GL_UNSIGNED_BYTE, LLVertexBuffer::sTypeSize[TYPE_VERTEX], ptr); glVertexAttribIPointer(loc, 4, GL_UNSIGNED_BYTE, LLVertexBuffer::sTypeSize[TYPE_VERTEX], ptr);
#endif
} }
if (data_mask & MAP_VERTEX) if (data_mask & MAP_VERTEX)
{ {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment