mirror of
https://github.com/blawar/GLideN64.git
synced 2024-07-07 03:13:49 +00:00
Implement Context::blitFramebuffers
This commit is contained in:
parent
704378777d
commit
5e67d79ae7
|
@ -98,6 +98,8 @@ void Context::setTextureParameters(const TexParameters & _parameters)
|
||||||
m_impl->setTextureParameters(_parameters);
|
m_impl->setTextureParameters(_parameters);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*---------------Framebuffer-------------*/
|
||||||
|
|
||||||
ObjectHandle Context::createFramebuffer()
|
ObjectHandle Context::createFramebuffer()
|
||||||
{
|
{
|
||||||
return m_impl->createFramebuffer();
|
return m_impl->createFramebuffer();
|
||||||
|
@ -123,11 +125,18 @@ void Context::addFrameBufferRenderTarget(const FrameBufferRenderTarget & _params
|
||||||
m_impl->addFrameBufferRenderTarget(_params);
|
m_impl->addFrameBufferRenderTarget(_params);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool Context::blitFramebuffers(const BlitFramebuffersParams & _params)
|
||||||
|
{
|
||||||
|
return m_impl->blitFramebuffers(_params);
|
||||||
|
}
|
||||||
|
|
||||||
PixelWriteBuffer * Context::createPixelWriteBuffer(size_t _sizeInBytes)
|
PixelWriteBuffer * Context::createPixelWriteBuffer(size_t _sizeInBytes)
|
||||||
{
|
{
|
||||||
return m_impl->createPixelWriteBuffer(_sizeInBytes);
|
return m_impl->createPixelWriteBuffer(_sizeInBytes);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*---------------Shaders-------------*/
|
||||||
|
|
||||||
CombinerProgram * Context::createCombinerProgram(Combiner & _color, Combiner & _alpha, const CombinerKey & _key)
|
CombinerProgram * Context::createCombinerProgram(Combiner & _color, Combiner & _alpha, const CombinerKey & _key)
|
||||||
{
|
{
|
||||||
return m_impl->createCombinerProgram(_color, _alpha, _key);
|
return m_impl->createCombinerProgram(_color, _alpha, _key);
|
||||||
|
|
|
@ -131,6 +131,24 @@ namespace graphics {
|
||||||
|
|
||||||
void addFrameBufferRenderTarget(const FrameBufferRenderTarget & _params);
|
void addFrameBufferRenderTarget(const FrameBufferRenderTarget & _params);
|
||||||
|
|
||||||
|
struct BlitFramebuffersParams
|
||||||
|
{
|
||||||
|
ObjectHandle readBuffer;
|
||||||
|
ObjectHandle drawBuffer;
|
||||||
|
s32 srcX0;
|
||||||
|
s32 srcY0;
|
||||||
|
s32 srcX1;
|
||||||
|
s32 srcY1;
|
||||||
|
s32 dstX0;
|
||||||
|
s32 dstY0;
|
||||||
|
s32 dstX1;
|
||||||
|
s32 dstY1;
|
||||||
|
Parameter mask;
|
||||||
|
Parameter filter;
|
||||||
|
};
|
||||||
|
|
||||||
|
bool blitFramebuffers(const BlitFramebuffersParams & _params);
|
||||||
|
|
||||||
PixelWriteBuffer * createPixelWriteBuffer(size_t _sizeInBytes);
|
PixelWriteBuffer * createPixelWriteBuffer(size_t _sizeInBytes);
|
||||||
|
|
||||||
/*---------------Shaders-------------*/
|
/*---------------Shaders-------------*/
|
||||||
|
|
|
@ -32,6 +32,7 @@ namespace graphics {
|
||||||
virtual void addFrameBufferRenderTarget(const Context::FrameBufferRenderTarget & _params) = 0;
|
virtual void addFrameBufferRenderTarget(const Context::FrameBufferRenderTarget & _params) = 0;
|
||||||
virtual ObjectHandle createRenderbuffer() = 0;
|
virtual ObjectHandle createRenderbuffer() = 0;
|
||||||
virtual void initRenderbuffer(const Context::InitRenderbufferParams & _params) = 0;
|
virtual void initRenderbuffer(const Context::InitRenderbufferParams & _params) = 0;
|
||||||
|
virtual bool blitFramebuffers(const Context::BlitFramebuffersParams & _params) = 0;
|
||||||
virtual PixelWriteBuffer * createPixelWriteBuffer(size_t _sizeInBytes) = 0;
|
virtual PixelWriteBuffer * createPixelWriteBuffer(size_t _sizeInBytes) = 0;
|
||||||
virtual CombinerProgram * createCombinerProgram(Combiner & _color, Combiner & _alpha, const CombinerKey & _key) = 0;
|
virtual CombinerProgram * createCombinerProgram(Combiner & _color, Combiner & _alpha, const CombinerKey & _key) = 0;
|
||||||
virtual bool saveShadersStorage(const Combiners & _combiners) = 0;
|
virtual bool saveShadersStorage(const Combiners & _combiners) = 0;
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
#include <Graphics/Parameters.h>
|
#include <Graphics/Parameters.h>
|
||||||
#include "opengl_GLInfo.h"
|
#include "opengl_GLInfo.h"
|
||||||
#include "opengl_CachedFunctions.h"
|
#include "opengl_CachedFunctions.h"
|
||||||
|
#include "opengl_Utils.h"
|
||||||
#include "opengl_BufferManipulationObjectFactory.h"
|
#include "opengl_BufferManipulationObjectFactory.h"
|
||||||
|
|
||||||
//#define ENABLE_GL_4_5
|
//#define ENABLE_GL_4_5
|
||||||
|
@ -221,6 +222,43 @@ private:
|
||||||
CachedBindBuffer * m_bind;
|
CachedBindBuffer * m_bind;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/*---------------BlitFramebuffers-------------*/
|
||||||
|
|
||||||
|
class BlitFramebuffersImpl : public BlitFramebuffers
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
static bool Check(const GLInfo & _glinfo) {
|
||||||
|
return !_glinfo.isGLES2;
|
||||||
|
}
|
||||||
|
|
||||||
|
BlitFramebuffersImpl(CachedBindFramebuffer * _bind)
|
||||||
|
: m_bind(_bind) {}
|
||||||
|
|
||||||
|
bool blitFramebuffers(const graphics::Context::BlitFramebuffersParams & _params) override
|
||||||
|
{
|
||||||
|
m_bind->bind(graphics::bufferTarget::READ_FRAMEBUFFER, _params.readBuffer);
|
||||||
|
m_bind->bind(graphics::bufferTarget::DRAW_FRAMEBUFFER, _params.drawBuffer);
|
||||||
|
glBlitFramebuffer(
|
||||||
|
_params.srcX0, _params.srcY0, _params.srcX1, _params.srcY1,
|
||||||
|
_params.dstX0, _params.dstY0, _params.dstX1, _params.dstY1,
|
||||||
|
GLbitfield(_params.mask), GLenum(_params.filter)
|
||||||
|
);
|
||||||
|
return !Utils::isGLError();
|
||||||
|
}
|
||||||
|
|
||||||
|
private:
|
||||||
|
CachedBindFramebuffer * m_bind;
|
||||||
|
};
|
||||||
|
|
||||||
|
class DummyBlitFramebuffers: public BlitFramebuffers
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
bool blitFramebuffers(const graphics::Context::BlitFramebuffersParams & _params) override
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
/*---------------BufferManipulationObjectFactory-------------*/
|
/*---------------BufferManipulationObjectFactory-------------*/
|
||||||
|
|
||||||
BufferManipulationObjectFactory::BufferManipulationObjectFactory(const GLInfo & _info,
|
BufferManipulationObjectFactory::BufferManipulationObjectFactory(const GLInfo & _info,
|
||||||
|
@ -261,6 +299,14 @@ AddFramebufferRenderTarget * BufferManipulationObjectFactory::getAddFramebufferR
|
||||||
return new AddFramebufferTexture2D(m_cachedFunctions.geCachedBindFramebuffer());
|
return new AddFramebufferTexture2D(m_cachedFunctions.geCachedBindFramebuffer());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
BlitFramebuffers * BufferManipulationObjectFactory::getBlitFramebuffers() const
|
||||||
|
{
|
||||||
|
if (BlitFramebuffersImpl::Check(m_glInfo))
|
||||||
|
return new BlitFramebuffersImpl(m_cachedFunctions.geCachedBindFramebuffer());
|
||||||
|
|
||||||
|
return new DummyBlitFramebuffers;
|
||||||
|
}
|
||||||
|
|
||||||
CreatePixelWriteBuffer * BufferManipulationObjectFactory::createPixelWriteBuffer() const
|
CreatePixelWriteBuffer * BufferManipulationObjectFactory::createPixelWriteBuffer() const
|
||||||
{
|
{
|
||||||
if (m_glInfo.isGLES2)
|
if (m_glInfo.isGLES2)
|
||||||
|
|
|
@ -13,38 +13,45 @@ namespace opengl {
|
||||||
class CreateFramebufferObject
|
class CreateFramebufferObject
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
virtual ~CreateFramebufferObject() {};
|
virtual ~CreateFramebufferObject() {}
|
||||||
virtual graphics::ObjectHandle createFramebuffer() = 0;
|
virtual graphics::ObjectHandle createFramebuffer() = 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
class CreateRenderbuffer
|
class CreateRenderbuffer
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
virtual ~CreateRenderbuffer() {};
|
virtual ~CreateRenderbuffer() {}
|
||||||
virtual graphics::ObjectHandle createRenderbuffer() = 0;
|
virtual graphics::ObjectHandle createRenderbuffer() = 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
class InitRenderbuffer
|
class InitRenderbuffer
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
virtual ~InitRenderbuffer() {};
|
virtual ~InitRenderbuffer() {}
|
||||||
virtual void initRenderbuffer(const graphics::Context::InitRenderbufferParams & _params) = 0;
|
virtual void initRenderbuffer(const graphics::Context::InitRenderbufferParams & _params) = 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
class AddFramebufferRenderTarget
|
class AddFramebufferRenderTarget
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
virtual ~AddFramebufferRenderTarget() {};
|
virtual ~AddFramebufferRenderTarget() {}
|
||||||
virtual void addFrameBufferRenderTarget(const graphics::Context::FrameBufferRenderTarget & _params) = 0;
|
virtual void addFrameBufferRenderTarget(const graphics::Context::FrameBufferRenderTarget & _params) = 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
class CreatePixelWriteBuffer
|
class CreatePixelWriteBuffer
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
virtual ~CreatePixelWriteBuffer() {};
|
virtual ~CreatePixelWriteBuffer() {}
|
||||||
virtual graphics::PixelWriteBuffer * createPixelWriteBuffer(size_t _sizeInBytes) = 0;
|
virtual graphics::PixelWriteBuffer * createPixelWriteBuffer(size_t _sizeInBytes) = 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
class BlitFramebuffers
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
virtual ~BlitFramebuffers() {}
|
||||||
|
virtual bool blitFramebuffers(const graphics::Context::BlitFramebuffersParams & _params) = 0;
|
||||||
|
};
|
||||||
|
|
||||||
class BufferManipulationObjectFactory
|
class BufferManipulationObjectFactory
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
@ -61,6 +68,8 @@ namespace opengl {
|
||||||
|
|
||||||
CreatePixelWriteBuffer * createPixelWriteBuffer() const;
|
CreatePixelWriteBuffer * createPixelWriteBuffer() const;
|
||||||
|
|
||||||
|
BlitFramebuffers * getBlitFramebuffers() const;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
const GLInfo & m_glInfo;
|
const GLInfo & m_glInfo;
|
||||||
CachedFunctions & m_cachedFunctions;
|
CachedFunctions & m_cachedFunctions;
|
||||||
|
|
|
@ -42,6 +42,7 @@ void ContextImpl::init()
|
||||||
m_initRenderbuffer.reset(bufferObjectFactory.getInitRenderbuffer());
|
m_initRenderbuffer.reset(bufferObjectFactory.getInitRenderbuffer());
|
||||||
m_addFramebufferRenderTarget.reset(bufferObjectFactory.getAddFramebufferRenderTarget());
|
m_addFramebufferRenderTarget.reset(bufferObjectFactory.getAddFramebufferRenderTarget());
|
||||||
m_createPixelWriteBuffer.reset(bufferObjectFactory.createPixelWriteBuffer());
|
m_createPixelWriteBuffer.reset(bufferObjectFactory.createPixelWriteBuffer());
|
||||||
|
m_blitFramebuffers.reset(bufferObjectFactory.getBlitFramebuffers());
|
||||||
}
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
|
@ -136,6 +137,8 @@ void ContextImpl::clearDepthBuffer()
|
||||||
enableScissor->enable(true);
|
enableScissor->enable(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*---------------Texture-------------*/
|
||||||
|
|
||||||
graphics::ObjectHandle ContextImpl::createTexture(graphics::Parameter _target)
|
graphics::ObjectHandle ContextImpl::createTexture(graphics::Parameter _target)
|
||||||
{
|
{
|
||||||
return m_createTexture->createTexture(_target);
|
return m_createTexture->createTexture(_target);
|
||||||
|
@ -163,6 +166,8 @@ void ContextImpl::setTextureParameters(const graphics::Context::TexParameters &
|
||||||
m_set2DTextureParameters->setTextureParameters(_parameters);
|
m_set2DTextureParameters->setTextureParameters(_parameters);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*---------------Framebuffer-------------*/
|
||||||
|
|
||||||
graphics::ObjectHandle ContextImpl::createFramebuffer()
|
graphics::ObjectHandle ContextImpl::createFramebuffer()
|
||||||
{
|
{
|
||||||
return m_createFramebuffer->createFramebuffer();
|
return m_createFramebuffer->createFramebuffer();
|
||||||
|
@ -190,11 +195,18 @@ void ContextImpl::addFrameBufferRenderTarget(const graphics::Context::FrameBuffe
|
||||||
m_addFramebufferRenderTarget->addFrameBufferRenderTarget(_params);
|
m_addFramebufferRenderTarget->addFrameBufferRenderTarget(_params);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool ContextImpl::blitFramebuffers(const graphics::Context::BlitFramebuffersParams & _params)
|
||||||
|
{
|
||||||
|
return m_blitFramebuffers->blitFramebuffers(_params);
|
||||||
|
}
|
||||||
|
|
||||||
graphics::PixelWriteBuffer * ContextImpl::createPixelWriteBuffer(size_t _sizeInBytes)
|
graphics::PixelWriteBuffer * ContextImpl::createPixelWriteBuffer(size_t _sizeInBytes)
|
||||||
{
|
{
|
||||||
return m_createPixelWriteBuffer->createPixelWriteBuffer(_sizeInBytes);
|
return m_createPixelWriteBuffer->createPixelWriteBuffer(_sizeInBytes);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*---------------Shaders-------------*/
|
||||||
|
|
||||||
graphics::CombinerProgram * ContextImpl::createCombinerProgram(Combiner & _color, Combiner & _alpha, const CombinerKey & _key)
|
graphics::CombinerProgram * ContextImpl::createCombinerProgram(Combiner & _color, Combiner & _alpha, const CombinerKey & _key)
|
||||||
{
|
{
|
||||||
return m_combinerProgramBuilder->buildCombinerProgram(_color, _alpha, _key);
|
return m_combinerProgramBuilder->buildCombinerProgram(_color, _alpha, _key);
|
||||||
|
|
|
@ -44,6 +44,8 @@ namespace opengl {
|
||||||
|
|
||||||
void clearDepthBuffer() override;
|
void clearDepthBuffer() override;
|
||||||
|
|
||||||
|
/*---------------Texture-------------*/
|
||||||
|
|
||||||
graphics::ObjectHandle createTexture(graphics::Parameter _target) override;
|
graphics::ObjectHandle createTexture(graphics::Parameter _target) override;
|
||||||
|
|
||||||
void deleteTexture(graphics::ObjectHandle _name) override;
|
void deleteTexture(graphics::ObjectHandle _name) override;
|
||||||
|
@ -54,6 +56,8 @@ namespace opengl {
|
||||||
|
|
||||||
void setTextureParameters(const graphics::Context::TexParameters & _parameters) override;
|
void setTextureParameters(const graphics::Context::TexParameters & _parameters) override;
|
||||||
|
|
||||||
|
/*---------------Framebuffer-------------*/
|
||||||
|
|
||||||
graphics::ObjectHandle createFramebuffer() override;
|
graphics::ObjectHandle createFramebuffer() override;
|
||||||
|
|
||||||
void deleteFramebuffer(graphics::ObjectHandle _name) override;
|
void deleteFramebuffer(graphics::ObjectHandle _name) override;
|
||||||
|
@ -64,8 +68,12 @@ namespace opengl {
|
||||||
|
|
||||||
void addFrameBufferRenderTarget(const graphics::Context::FrameBufferRenderTarget & _params) override;
|
void addFrameBufferRenderTarget(const graphics::Context::FrameBufferRenderTarget & _params) override;
|
||||||
|
|
||||||
|
bool blitFramebuffers(const graphics::Context::BlitFramebuffersParams & _params) override;
|
||||||
|
|
||||||
graphics::PixelWriteBuffer * createPixelWriteBuffer(size_t _sizeInBytes) override;
|
graphics::PixelWriteBuffer * createPixelWriteBuffer(size_t _sizeInBytes) override;
|
||||||
|
|
||||||
|
/*---------------Shaders-------------*/
|
||||||
|
|
||||||
graphics::CombinerProgram * createCombinerProgram(Combiner & _color, Combiner & _alpha, const CombinerKey & _key) override;
|
graphics::CombinerProgram * createCombinerProgram(Combiner & _color, Combiner & _alpha, const CombinerKey & _key) override;
|
||||||
|
|
||||||
bool saveShadersStorage(const graphics::Combiners & _combiners) override;
|
bool saveShadersStorage(const graphics::Combiners & _combiners) override;
|
||||||
|
@ -106,6 +114,7 @@ namespace opengl {
|
||||||
std::unique_ptr<InitRenderbuffer> m_initRenderbuffer;
|
std::unique_ptr<InitRenderbuffer> m_initRenderbuffer;
|
||||||
std::unique_ptr<AddFramebufferRenderTarget> m_addFramebufferRenderTarget;
|
std::unique_ptr<AddFramebufferRenderTarget> m_addFramebufferRenderTarget;
|
||||||
std::unique_ptr<CreatePixelWriteBuffer> m_createPixelWriteBuffer;
|
std::unique_ptr<CreatePixelWriteBuffer> m_createPixelWriteBuffer;
|
||||||
|
std::unique_ptr<BlitFramebuffers> m_blitFramebuffers;
|
||||||
|
|
||||||
std::unique_ptr<GraphicsDrawer> m_graphicsDrawer;
|
std::unique_ptr<GraphicsDrawer> m_graphicsDrawer;
|
||||||
std::unique_ptr<TextDrawer> m_textDrawer;
|
std::unique_ptr<TextDrawer> m_textDrawer;
|
||||||
|
|
|
@ -1472,3 +1472,25 @@ void GraphicsDrawer::copyTexturedRect(const CopyRectParams & _params)
|
||||||
gSP.changed |= CHANGED_GEOMETRYMODE | CHANGED_VIEWPORT;
|
gSP.changed |= CHANGED_GEOMETRYMODE | CHANGED_VIEWPORT;
|
||||||
gDP.changed |= CHANGED_RENDERMODE | CHANGED_TILE | CHANGED_COMBINE | CHANGED_SCISSOR;
|
gDP.changed |= CHANGED_RENDERMODE | CHANGED_TILE | CHANGED_COMBINE | CHANGED_SCISSOR;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void GraphicsDrawer::blitOrCopyTexturedRect(const BlitOrCopyRectParams & _params)
|
||||||
|
{
|
||||||
|
Context::BlitFramebuffersParams blitParams;
|
||||||
|
blitParams.readBuffer = _params.readBuffer;
|
||||||
|
blitParams.drawBuffer = _params.drawBuffer;
|
||||||
|
blitParams.srcX0 = _params.srcX0;
|
||||||
|
blitParams.srcX1 = _params.srcX1;
|
||||||
|
blitParams.dstX0 = _params.dstX0;
|
||||||
|
blitParams.dstX1 = _params.dstX1;
|
||||||
|
blitParams.srcY0 = _params.srcY0;
|
||||||
|
blitParams.srcY1 = _params.srcY1;
|
||||||
|
blitParams.dstY0 = _params.dstY0;
|
||||||
|
blitParams.dstY1 = _params.dstY1;
|
||||||
|
blitParams.mask = _params.mask;
|
||||||
|
blitParams.filter = _params.filter;
|
||||||
|
|
||||||
|
if (gfxContext.blitFramebuffers(blitParams))
|
||||||
|
return;
|
||||||
|
|
||||||
|
copyTexturedRect(_params);
|
||||||
|
}
|
||||||
|
|
|
@ -3,6 +3,7 @@
|
||||||
#include <array>
|
#include <array>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
#include "gSP.h"
|
#include "gSP.h"
|
||||||
|
#include "Graphics/ObjectHandle.h"
|
||||||
#include "Graphics/Parameter.h"
|
#include "Graphics/Parameter.h"
|
||||||
|
|
||||||
namespace graphics {
|
namespace graphics {
|
||||||
|
@ -99,6 +100,15 @@ public:
|
||||||
|
|
||||||
void copyTexturedRect(const CopyRectParams & _params);
|
void copyTexturedRect(const CopyRectParams & _params);
|
||||||
|
|
||||||
|
struct BlitOrCopyRectParams : public CopyRectParams
|
||||||
|
{
|
||||||
|
graphics::ObjectHandle readBuffer;
|
||||||
|
graphics::ObjectHandle drawBuffer;
|
||||||
|
graphics::Parameter mask;
|
||||||
|
};
|
||||||
|
|
||||||
|
void blitOrCopyTexturedRect(const BlitOrCopyRectParams & _params);
|
||||||
|
|
||||||
void drawText(const char *_pText, float x, float y);
|
void drawText(const char *_pText, float x, float y);
|
||||||
|
|
||||||
void drawOSD();
|
void drawOSD();
|
||||||
|
|
|
@ -58,7 +58,7 @@ typedef char GLchar;
|
||||||
#include "common/GLFunctions.h"
|
#include "common/GLFunctions.h"
|
||||||
#define GL_IMAGE_TEXTURES_SUPPORT
|
#define GL_IMAGE_TEXTURES_SUPPORT
|
||||||
#define GL_MULTISAMPLING_SUPPORT
|
#define GL_MULTISAMPLING_SUPPORT
|
||||||
#define NO_BLIT_BUFFER_COPY
|
//#define NO_BLIT_BUFFER_COPY
|
||||||
#endif // OS_MAC_OS_X
|
#endif // OS_MAC_OS_X
|
||||||
#endif // GLES2
|
#endif // GLES2
|
||||||
|
|
||||||
|
|
|
@ -10,8 +10,7 @@
|
||||||
#include <Graphics/Context.h>
|
#include <Graphics/Context.h>
|
||||||
#include <Graphics/Parameters.h>
|
#include <Graphics/Parameters.h>
|
||||||
|
|
||||||
#define NEW_POST_PROCESSOR
|
//#define NEW_POST_PROCESSOR
|
||||||
|
|
||||||
|
|
||||||
#if defined(GLES3_1)
|
#if defined(GLES3_1)
|
||||||
#define SHADER_VERSION "#version 310 es \n"
|
#define SHADER_VERSION "#version 310 es \n"
|
||||||
|
|
Loading…
Reference in New Issue
Block a user