mirror of
https://github.com/blawar/GLideN64.git
synced 2024-07-04 10:03:36 +00:00
Disable GL_CLIP_DISTANCE for GLES
This commit is contained in:
parent
d894d465c1
commit
bd5740ea3d
|
@ -176,6 +176,7 @@ void GBIInfo::_makeCurrent(MicrocodeInfo * _pCurrent)
|
|||
case F3DEX2CBFD:F3DEX2CBFD_Init(); break;
|
||||
}
|
||||
|
||||
#ifndef GLESX
|
||||
if (m_pCurrent->NoN) {
|
||||
// Disable near and far plane clipping
|
||||
glEnable(GL_DEPTH_CLAMP);
|
||||
|
@ -185,7 +186,9 @@ void GBIInfo::_makeCurrent(MicrocodeInfo * _pCurrent)
|
|||
glDisable(GL_DEPTH_CLAMP);
|
||||
glDisable(GL_CLIP_DISTANCE0);
|
||||
}
|
||||
#endif
|
||||
} else if (m_pCurrent->NoN != _pCurrent->NoN) {
|
||||
#ifndef GLESX
|
||||
if (_pCurrent->NoN) {
|
||||
// Disable near and far plane clipping
|
||||
glEnable(GL_DEPTH_CLAMP);
|
||||
|
@ -196,6 +199,7 @@ void GBIInfo::_makeCurrent(MicrocodeInfo * _pCurrent)
|
|||
glDisable(GL_DEPTH_CLAMP);
|
||||
glDisable(GL_CLIP_DISTANCE0);
|
||||
}
|
||||
#endif
|
||||
}
|
||||
m_pCurrent = _pCurrent;
|
||||
}
|
||||
|
|
|
@ -578,12 +578,16 @@ void OGLRender::_updateStates(RENDER_STATE _renderState) const
|
|||
_updateDepthUpdate();
|
||||
|
||||
glEnable(GL_DEPTH_TEST);
|
||||
#ifndef GLESX
|
||||
if (!GBI.isNoN())
|
||||
glDisable(GL_DEPTH_CLAMP);
|
||||
#endif
|
||||
} else {
|
||||
glDisable(GL_DEPTH_TEST);
|
||||
#ifndef GLESX
|
||||
if (!GBI.isNoN())
|
||||
glEnable(GL_DEPTH_CLAMP);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -15,6 +15,7 @@
|
|||
#include <GLES2/gl2ext.h>
|
||||
#define GL_DRAW_FRAMEBUFFER GL_FRAMEBUFFER
|
||||
#define GL_READ_FRAMEBUFFER GL_FRAMEBUFFER
|
||||
#define GLESX
|
||||
#else
|
||||
#define GL_GLEXT_PROTOTYPES
|
||||
#if defined(OS_MAC_OS_X)
|
||||
|
|
|
@ -89,7 +89,9 @@ static const char* vertex_shader =
|
|||
" break; \n"
|
||||
" } \n"
|
||||
" } \n"
|
||||
#ifndef GLESX
|
||||
" gl_ClipDistance[0] = gl_Position.w - gl_Position.z; \n"
|
||||
#endif
|
||||
"} \n"
|
||||
;
|
||||
|
||||
|
|
|
@ -150,6 +150,7 @@ void inline cache_glDisable (GLenum cap)
|
|||
glState.cached_DEPTH_TEST = false;
|
||||
}
|
||||
break;
|
||||
#ifndef GLESX
|
||||
case GL_DEPTH_CLAMP:
|
||||
if (glState.cached_DEPTH_CLAMP) {
|
||||
glDisable(GL_DEPTH_CLAMP);
|
||||
|
@ -162,6 +163,7 @@ void inline cache_glDisable (GLenum cap)
|
|||
glState.cached_CLIP_DISTANCE0 = false;
|
||||
}
|
||||
break;
|
||||
#endif
|
||||
case GL_DITHER:
|
||||
if (glState.cached_DITHER) {
|
||||
glDisable(GL_DITHER);
|
||||
|
@ -220,6 +222,7 @@ void inline cache_glEnable(GLenum cap)
|
|||
glState.cached_DEPTH_TEST = true;
|
||||
}
|
||||
break;
|
||||
#ifndef GLESX
|
||||
case GL_DEPTH_CLAMP:
|
||||
if (!glState.cached_DEPTH_CLAMP) {
|
||||
glEnable(GL_DEPTH_CLAMP);
|
||||
|
@ -232,6 +235,7 @@ void inline cache_glEnable(GLenum cap)
|
|||
glState.cached_CLIP_DISTANCE0 = true;
|
||||
}
|
||||
break;
|
||||
#endif
|
||||
case GL_DITHER:
|
||||
if (!glState.cached_DITHER) {
|
||||
glEnable(GL_DITHER);
|
||||
|
|
Loading…
Reference in New Issue
Block a user