Added support for OpenGL debug mode
When NzContextParameters.debugMode is true, Nazara will receive OpenGL's debug message and send them to Nazara's log NzString::Pointer now have the "0x" prefix Added support for ARB_texture_storage extension Nazara now try to load core texture 3D before trying to load EXT_texture3D Added NazaraNotice macro, writing raw text into Nazara's log Added NzContext::Destroy (called in Create)
This commit is contained in:
@@ -16,6 +16,7 @@
|
||||
#include <Nazara/Core/ThreadSafety.hpp>
|
||||
|
||||
#define NazaraLog NzLog::Instance()
|
||||
#define NazaraNotice(txt) NazaraLog->Write(txt)
|
||||
|
||||
class NzFile;
|
||||
|
||||
|
||||
@@ -38,6 +38,9 @@
|
||||
// Utilise un tracker pour repérer les éventuels leaks (Ralentit l'exécution)
|
||||
#define NAZARA_RENDERER_MEMORYLEAKTRACKER 0
|
||||
|
||||
// Active le paramère debug des paramètres des contextes par défaut (Perte de performances mais capable de recevoir des messages d'OpenGL)
|
||||
#define NAZARA_RENDERER_OPENGL_DEBUG 0
|
||||
|
||||
// Active les tests de sécurité basés sur le code (Conseillé pour le développement)
|
||||
#define NAZARA_RENDERER_SAFE 1
|
||||
|
||||
|
||||
@@ -24,6 +24,7 @@ class NAZARA_API NzContext
|
||||
~NzContext();
|
||||
|
||||
bool Create(const NzContextParameters& parameters = NzContextParameters());
|
||||
void Destroy();
|
||||
const NzContextParameters& GetParameters() const;
|
||||
bool IsActive() const;
|
||||
bool SetActive(bool active);
|
||||
|
||||
@@ -25,6 +25,7 @@ struct NAZARA_API NzContextParameters
|
||||
shareContext(defaultShareContext),
|
||||
window(defaultWindow),
|
||||
compatibilityProfile(defaultCompatibilityProfile),
|
||||
debugMode(defaultDebugMode),
|
||||
doubleBuffered(defaultDoubleBuffered),
|
||||
shared(defaultShared)
|
||||
{
|
||||
@@ -39,6 +40,7 @@ struct NAZARA_API NzContextParameters
|
||||
const NzContext* shareContext;
|
||||
NzWindowHandle window;
|
||||
bool compatibilityProfile;
|
||||
bool debugMode;
|
||||
bool doubleBuffered;
|
||||
bool shared;
|
||||
|
||||
@@ -47,6 +49,7 @@ struct NAZARA_API NzContextParameters
|
||||
static const NzContext* defaultShareContext;
|
||||
static NzWindowHandle defaultWindow;
|
||||
static bool defaultCompatibilityProfile;
|
||||
static bool defaultDebugMode;
|
||||
static bool defaultDoubleBuffered;
|
||||
static bool defaultShared;
|
||||
};
|
||||
|
||||
@@ -34,9 +34,11 @@ class NAZARA_API NzOpenGL
|
||||
enum Extension
|
||||
{
|
||||
AnisotropicFilter,
|
||||
DebugOutput,
|
||||
FP64,
|
||||
FrameBufferObject,
|
||||
Texture3D,
|
||||
TextureStorage,
|
||||
VertexArrayObject,
|
||||
|
||||
Count
|
||||
@@ -71,6 +73,9 @@ NAZARA_API extern PFNGLCHECKFRAMEBUFFERSTATUSPROC glCheckFramebufferStatus;
|
||||
NAZARA_API extern PFNGLCOLORMASKPROC glColorMask;
|
||||
NAZARA_API extern PFNGLCULLFACEPROC glCullFace;
|
||||
NAZARA_API extern PFNGLCOMPILESHADERPROC glCompileShader;
|
||||
NAZARA_API extern PFNGLDEBUGMESSAGECONTROLARBPROC glDebugMessageControl;
|
||||
NAZARA_API extern PFNGLDEBUGMESSAGEINSERTARBPROC glDebugMessageInsert;
|
||||
NAZARA_API extern PFNGLDEBUGMESSAGECALLBACKARBPROC glDebugMessageCallback;
|
||||
NAZARA_API extern PFNGLDELETEBUFFERSPROC glDeleteBuffers;
|
||||
NAZARA_API extern PFNGLDELETEFRAMEBUFFERSPROC glDeleteFramebuffers;
|
||||
NAZARA_API extern PFNGLDELETEPROGRAMPROC glDeleteProgram;
|
||||
@@ -101,6 +106,7 @@ NAZARA_API extern PFNGLGENRENDERBUFFERSPROC glGenRenderbuffers;
|
||||
NAZARA_API extern PFNGLGENTEXTURESPROC glGenTextures;
|
||||
NAZARA_API extern PFNGLGENVERTEXARRAYSPROC glGenVertexArrays;
|
||||
NAZARA_API extern PFNGLGETBUFFERPARAMETERIVPROC glGetBufferParameteriv;
|
||||
NAZARA_API extern PFNGLGETDEBUGMESSAGELOGARBPROC glGetDebugMessageLog;
|
||||
NAZARA_API extern PFNGLGETERRORPROC glGetError;
|
||||
NAZARA_API extern PFNGLGETINTEGERVPROC glGetIntegerv;
|
||||
NAZARA_API extern PFNGLGETPROGRAMIVPROC glGetProgramiv;
|
||||
@@ -126,12 +132,17 @@ NAZARA_API extern PFNGLSCISSORPROC glScissor;
|
||||
NAZARA_API extern PFNGLSHADERSOURCEPROC glShaderSource;
|
||||
NAZARA_API extern PFNGLSTENCILFUNCPROC glStencilFunc;
|
||||
NAZARA_API extern PFNGLSTENCILOPPROC glStencilOp;
|
||||
NAZARA_API extern PFNGLTEXIMAGE1DPROC glTexImage1D;
|
||||
NAZARA_API extern PFNGLTEXIMAGE2DPROC glTexImage2D;
|
||||
NAZARA_API extern PFNGLTEXIMAGE3DEXTPROC glTexImage3D;
|
||||
NAZARA_API extern PFNGLTEXIMAGE3DPROC glTexImage3D;
|
||||
NAZARA_API extern PFNGLTEXPARAMETERFPROC glTexParameterf;
|
||||
NAZARA_API extern PFNGLTEXPARAMETERIPROC glTexParameteri;
|
||||
NAZARA_API extern PFNGLTEXSTORAGE1DPROC glTexStorage1D;
|
||||
NAZARA_API extern PFNGLTEXSTORAGE2DPROC glTexStorage2D;
|
||||
NAZARA_API extern PFNGLTEXSTORAGE3DPROC glTexStorage3D;
|
||||
NAZARA_API extern PFNGLTEXSUBIMAGE1DPROC glTexSubImage1D;
|
||||
NAZARA_API extern PFNGLTEXSUBIMAGE2DPROC glTexSubImage2D;
|
||||
NAZARA_API extern PFNGLTEXSUBIMAGE3DEXTPROC glTexSubImage3D;
|
||||
NAZARA_API extern PFNGLTEXSUBIMAGE3DPROC glTexSubImage3D;
|
||||
NAZARA_API extern PFNGLUNIFORM1DPROC glUniform1d;
|
||||
NAZARA_API extern PFNGLUNIFORM1FPROC glUniform1f;
|
||||
NAZARA_API extern PFNGLUNIFORM1IPROC glUniform1i;
|
||||
|
||||
Reference in New Issue
Block a user