mirror of
https://github.com/blawar/GLideN64.git
synced 2024-07-04 10:03:36 +00:00
Replace glMapBuffer by GLES3 compatible glMapBufferRange.
This commit is contained in:
parent
82ce16f5fc
commit
70b1b9ad03
|
@ -935,7 +935,9 @@ void FrameBufferToRDRAM::CopyToRDRAM(u32 _address)
|
|||
#ifndef GLES2
|
||||
PBOBinder binder(GL_PIXEL_PACK_BUFFER, m_PBO);
|
||||
glReadPixels(0, 0, VI.width, VI.height, GL_RGBA, GL_UNSIGNED_BYTE, 0);
|
||||
GLubyte* pixelData = (GLubyte*)glMapBuffer(GL_PIXEL_PACK_BUFFER, GL_READ_ONLY);
|
||||
isGLError();
|
||||
GLubyte* pixelData = (GLubyte*)glMapBufferRange(GL_PIXEL_PACK_BUFFER, 0, VI.width * VI.height * 4, GL_MAP_READ_BIT);
|
||||
isGLError();
|
||||
if(pixelData == NULL)
|
||||
return;
|
||||
#else
|
||||
|
@ -1101,7 +1103,7 @@ bool DepthBufferToRDRAM::CopyToRDRAM( u32 _address) {
|
|||
glBindFramebuffer(GL_READ_FRAMEBUFFER, m_FBO);
|
||||
glReadPixels(0, 0, VI.width, VI.height, GL_DEPTH_COMPONENT, GL_FLOAT, 0);
|
||||
|
||||
GLubyte* pixelData = (GLubyte*)glMapBuffer(GL_PIXEL_PACK_BUFFER, GL_READ_ONLY);
|
||||
GLubyte* pixelData = (GLubyte*)glMapBufferRange(GL_PIXEL_PACK_BUFFER, 0, VI.width * VI.height * 4, GL_MAP_READ_BIT);
|
||||
if(pixelData == NULL)
|
||||
return false;
|
||||
|
||||
|
@ -1197,7 +1199,7 @@ void RDRAMtoFrameBuffer::CopyFromRDRAM( u32 _address, bool _bUseAlpha)
|
|||
#ifndef GLES2
|
||||
PBOBinder binder(GL_PIXEL_UNPACK_BUFFER, m_PBO);
|
||||
glBufferData(GL_PIXEL_UNPACK_BUFFER, dataSize, NULL, GL_DYNAMIC_DRAW);
|
||||
GLubyte* ptr = (GLubyte*)glMapBuffer(GL_PIXEL_UNPACK_BUFFER, GL_WRITE_ONLY);
|
||||
GLubyte* ptr = (GLubyte*)glMapBufferRange(GL_PIXEL_UNPACK_BUFFER, 0, dataSize, GL_MAP_WRITE_BIT);
|
||||
#else
|
||||
m_PBO = (GLubyte*)malloc(dataSize);
|
||||
GLubyte* ptr = m_PBO;
|
||||
|
|
|
@ -135,7 +135,9 @@ void NoiseTexture::update()
|
|||
#ifndef GLES2
|
||||
PBOBinder binder(GL_PIXEL_UNPACK_BUFFER, m_PBO);
|
||||
glBufferData(GL_PIXEL_UNPACK_BUFFER, dataSize, NULL, GL_DYNAMIC_DRAW);
|
||||
GLubyte* ptr = (GLubyte*)glMapBuffer(GL_PIXEL_UNPACK_BUFFER, GL_WRITE_ONLY);
|
||||
isGLError();
|
||||
GLubyte* ptr = (GLubyte*)glMapBufferRange(GL_PIXEL_UNPACK_BUFFER, 0, dataSize, GL_MAP_WRITE_BIT);
|
||||
isGLError();
|
||||
#else
|
||||
m_PBO = (GLubyte*)malloc(dataSize);
|
||||
GLubyte* ptr = m_PBO;
|
||||
|
|
|
@ -52,6 +52,7 @@ extern PFNGLGENBUFFERSPROC glGenBuffers;
|
|||
extern PFNGLBINDBUFFERPROC glBindBuffer;
|
||||
extern PFNGLBUFFERDATAPROC glBufferData;
|
||||
extern PFNGLMAPBUFFERPROC glMapBuffer;
|
||||
extern PFNGLMAPBUFFERRANGEPROC glMapBufferRange;
|
||||
extern PFNGLUNMAPBUFFERPROC glUnmapBuffer;
|
||||
extern PFNGLDELETEBUFFERSPROC glDeleteBuffers;
|
||||
extern PFNGLBINDIMAGETEXTUREPROC glBindImageTexture;
|
||||
|
|
|
@ -54,6 +54,7 @@ PFNGLGENBUFFERSPROC glGenBuffers;
|
|||
PFNGLBINDBUFFERPROC glBindBuffer;
|
||||
PFNGLBUFFERDATAPROC glBufferData;
|
||||
PFNGLMAPBUFFERPROC glMapBuffer;
|
||||
PFNGLMAPBUFFERRANGEPROC glMapBufferRange;
|
||||
PFNGLUNMAPBUFFERPROC glUnmapBuffer;
|
||||
PFNGLDELETEBUFFERSPROC glDeleteBuffers;
|
||||
PFNGLBINDIMAGETEXTUREPROC glBindImageTexture;
|
||||
|
@ -120,6 +121,7 @@ void initGLFunctions()
|
|||
glBindBuffer = (PFNGLBINDBUFFERPROC)wglGetProcAddress( "glBindBuffer" );
|
||||
glBufferData = (PFNGLBUFFERDATAPROC)wglGetProcAddress( "glBufferData" );
|
||||
glMapBuffer = (PFNGLMAPBUFFERPROC)wglGetProcAddress( "glMapBuffer" );
|
||||
glMapBufferRange = (PFNGLMAPBUFFERRANGEPROC)wglGetProcAddress("glMapBufferRange");
|
||||
glUnmapBuffer = (PFNGLUNMAPBUFFERPROC)wglGetProcAddress( "glUnmapBuffer" );
|
||||
glDeleteBuffers = (PFNGLDELETEBUFFERSPROC)wglGetProcAddress( "glDeleteBuffers" );
|
||||
glBindImageTexture = (PFNGLBINDIMAGETEXTUREPROC)wglGetProcAddress( "glBindImageTexture" );
|
||||
|
|
Loading…
Reference in New Issue
Block a user