You can now change the point size
Former-commit-id: b0018b14973d36f822524e8e5b94ba940a63897f
This commit is contained in:
parent
d5416fb139
commit
5c2f94f953
|
|
@ -151,6 +151,7 @@ NAZARA_API extern PFNGLGENVERTEXARRAYSPROC glGenVertexArrays;
|
||||||
NAZARA_API extern PFNGLGETBUFFERPARAMETERIVPROC glGetBufferParameteriv;
|
NAZARA_API extern PFNGLGETBUFFERPARAMETERIVPROC glGetBufferParameteriv;
|
||||||
NAZARA_API extern PFNGLGETDEBUGMESSAGELOGPROC glGetDebugMessageLog;
|
NAZARA_API extern PFNGLGETDEBUGMESSAGELOGPROC glGetDebugMessageLog;
|
||||||
NAZARA_API extern PFNGLGETERRORPROC glGetError;
|
NAZARA_API extern PFNGLGETERRORPROC glGetError;
|
||||||
|
NAZARA_API extern PFNGLGETFLOATVPROC glGetFloatv;
|
||||||
NAZARA_API extern PFNGLGETINTEGERVPROC glGetIntegerv;
|
NAZARA_API extern PFNGLGETINTEGERVPROC glGetIntegerv;
|
||||||
NAZARA_API extern PFNGLGETPROGRAMIVPROC glGetProgramiv;
|
NAZARA_API extern PFNGLGETPROGRAMIVPROC glGetProgramiv;
|
||||||
NAZARA_API extern PFNGLGETPROGRAMINFOLOGPROC glGetProgramInfoLog;
|
NAZARA_API extern PFNGLGETPROGRAMINFOLOGPROC glGetProgramInfoLog;
|
||||||
|
|
@ -172,6 +173,7 @@ NAZARA_API extern PFNGLLINKPROGRAMPROC glLinkProgram;
|
||||||
NAZARA_API extern PFNGLMAPBUFFERPROC glMapBuffer;
|
NAZARA_API extern PFNGLMAPBUFFERPROC glMapBuffer;
|
||||||
NAZARA_API extern PFNGLMAPBUFFERRANGEPROC glMapBufferRange;
|
NAZARA_API extern PFNGLMAPBUFFERRANGEPROC glMapBufferRange;
|
||||||
NAZARA_API extern PFNGLPIXELSTOREIPROC glPixelStorei;
|
NAZARA_API extern PFNGLPIXELSTOREIPROC glPixelStorei;
|
||||||
|
NAZARA_API extern PFNGLPOINTSIZEPROC glPointSize;
|
||||||
NAZARA_API extern PFNGLPOLYGONMODEPROC glPolygonMode;
|
NAZARA_API extern PFNGLPOLYGONMODEPROC glPolygonMode;
|
||||||
NAZARA_API extern PFNGLPROGRAMUNIFORM1DPROC glProgramUniform1d;
|
NAZARA_API extern PFNGLPROGRAMUNIFORM1DPROC glProgramUniform1d;
|
||||||
NAZARA_API extern PFNGLPROGRAMUNIFORM1FPROC glProgramUniform1f;
|
NAZARA_API extern PFNGLPROGRAMUNIFORM1FPROC glProgramUniform1f;
|
||||||
|
|
|
||||||
|
|
@ -41,6 +41,7 @@ class NAZARA_API NzRenderer
|
||||||
static unsigned int GetMaxAnisotropyLevel();
|
static unsigned int GetMaxAnisotropyLevel();
|
||||||
static unsigned int GetMaxRenderTargets();
|
static unsigned int GetMaxRenderTargets();
|
||||||
static unsigned int GetMaxTextureUnits();
|
static unsigned int GetMaxTextureUnits();
|
||||||
|
static float GetPointSize();
|
||||||
static NzShader* GetShader();
|
static NzShader* GetShader();
|
||||||
static NzRenderTarget* GetTarget();
|
static NzRenderTarget* GetTarget();
|
||||||
static NzRectui GetViewport();
|
static NzRectui GetViewport();
|
||||||
|
|
@ -60,6 +61,7 @@ class NAZARA_API NzRenderer
|
||||||
static void SetFaceFilling(nzFaceFilling fillingMode);
|
static void SetFaceFilling(nzFaceFilling fillingMode);
|
||||||
static bool SetIndexBuffer(const NzIndexBuffer* indexBuffer);
|
static bool SetIndexBuffer(const NzIndexBuffer* indexBuffer);
|
||||||
static void SetMatrix(nzMatrixType type, const NzMatrix4f& matrix);
|
static void SetMatrix(nzMatrixType type, const NzMatrix4f& matrix);
|
||||||
|
static void SetPointSize(float size);
|
||||||
static bool SetShader(NzShader* shader);
|
static bool SetShader(NzShader* shader);
|
||||||
static void SetStencilCompareFunction(nzRendererComparison compareFunc);
|
static void SetStencilCompareFunction(nzRendererComparison compareFunc);
|
||||||
static void SetStencilFailOperation(nzStencilOperation failOperation);
|
static void SetStencilFailOperation(nzStencilOperation failOperation);
|
||||||
|
|
|
||||||
|
|
@ -262,10 +262,11 @@ namespace NzOpenGL
|
||||||
glGenTextures = reinterpret_cast<PFNGLGENTEXTURESPROC>(LoadEntry("glGenTextures"));
|
glGenTextures = reinterpret_cast<PFNGLGENTEXTURESPROC>(LoadEntry("glGenTextures"));
|
||||||
glGetBufferParameteriv = reinterpret_cast<PFNGLGETBUFFERPARAMETERIVPROC>(LoadEntry("glGetBufferParameteriv"));
|
glGetBufferParameteriv = reinterpret_cast<PFNGLGETBUFFERPARAMETERIVPROC>(LoadEntry("glGetBufferParameteriv"));
|
||||||
glGetError = reinterpret_cast<PFNGLGETERRORPROC>(LoadEntry("glGetError"));
|
glGetError = reinterpret_cast<PFNGLGETERRORPROC>(LoadEntry("glGetError"));
|
||||||
|
glGetFloatv = reinterpret_cast<PFNGLGETFLOATVPROC>(LoadEntry("glGetFloatv"));
|
||||||
|
glGetIntegerv = reinterpret_cast<PFNGLGETINTEGERVPROC>(LoadEntry("glGetIntegerv"));
|
||||||
glGetQueryiv = reinterpret_cast<PFNGLGETQUERYIVPROC>(LoadEntry("glGetQueryiv"));
|
glGetQueryiv = reinterpret_cast<PFNGLGETQUERYIVPROC>(LoadEntry("glGetQueryiv"));
|
||||||
glGetQueryObjectiv = reinterpret_cast<PFNGLGETQUERYOBJECTIVPROC>(LoadEntry("glGetQueryObjectiv"));
|
glGetQueryObjectiv = reinterpret_cast<PFNGLGETQUERYOBJECTIVPROC>(LoadEntry("glGetQueryObjectiv"));
|
||||||
glGetQueryObjectuiv = reinterpret_cast<PFNGLGETQUERYOBJECTUIVPROC>(LoadEntry("glGetQueryObjectuiv"));
|
glGetQueryObjectuiv = reinterpret_cast<PFNGLGETQUERYOBJECTUIVPROC>(LoadEntry("glGetQueryObjectuiv"));
|
||||||
glGetIntegerv = reinterpret_cast<PFNGLGETINTEGERVPROC>(LoadEntry("glGetIntegerv"));
|
|
||||||
glGetProgramiv = reinterpret_cast<PFNGLGETPROGRAMIVPROC>(LoadEntry("glGetProgramiv"));
|
glGetProgramiv = reinterpret_cast<PFNGLGETPROGRAMIVPROC>(LoadEntry("glGetProgramiv"));
|
||||||
glGetProgramInfoLog = reinterpret_cast<PFNGLGETPROGRAMINFOLOGPROC>(LoadEntry("glGetProgramInfoLog"));
|
glGetProgramInfoLog = reinterpret_cast<PFNGLGETPROGRAMINFOLOGPROC>(LoadEntry("glGetProgramInfoLog"));
|
||||||
glGetShaderInfoLog = reinterpret_cast<PFNGLGETSHADERINFOLOGPROC>(LoadEntry("glGetShaderInfoLog"));
|
glGetShaderInfoLog = reinterpret_cast<PFNGLGETSHADERINFOLOGPROC>(LoadEntry("glGetShaderInfoLog"));
|
||||||
|
|
@ -280,6 +281,7 @@ namespace NzOpenGL
|
||||||
glLinkProgram = reinterpret_cast<PFNGLLINKPROGRAMPROC>(LoadEntry("glLinkProgram"));
|
glLinkProgram = reinterpret_cast<PFNGLLINKPROGRAMPROC>(LoadEntry("glLinkProgram"));
|
||||||
glMapBuffer = reinterpret_cast<PFNGLMAPBUFFERPROC>(LoadEntry("glMapBuffer"));
|
glMapBuffer = reinterpret_cast<PFNGLMAPBUFFERPROC>(LoadEntry("glMapBuffer"));
|
||||||
glPixelStorei = reinterpret_cast<PFNGLPIXELSTOREIPROC>(LoadEntry("glPixelStorei"));
|
glPixelStorei = reinterpret_cast<PFNGLPIXELSTOREIPROC>(LoadEntry("glPixelStorei"));
|
||||||
|
glPointSize = reinterpret_cast<PFNGLPOINTSIZEPROC>(LoadEntry("glPointSize"));
|
||||||
glPolygonMode = reinterpret_cast<PFNGLPOLYGONMODEPROC>(LoadEntry("glPolygonMode"));
|
glPolygonMode = reinterpret_cast<PFNGLPOLYGONMODEPROC>(LoadEntry("glPolygonMode"));
|
||||||
glReadPixels = reinterpret_cast<PFNGLREADPIXELSPROC>(LoadEntry("glReadPixels"));
|
glReadPixels = reinterpret_cast<PFNGLREADPIXELSPROC>(LoadEntry("glReadPixels"));
|
||||||
glScissor = reinterpret_cast<PFNGLSCISSORPROC>(LoadEntry("glScissor"));
|
glScissor = reinterpret_cast<PFNGLSCISSORPROC>(LoadEntry("glScissor"));
|
||||||
|
|
@ -936,6 +938,7 @@ PFNGLGENVERTEXARRAYSPROC glGenVertexArrays = nullptr;
|
||||||
PFNGLGETBUFFERPARAMETERIVPROC glGetBufferParameteriv = nullptr;
|
PFNGLGETBUFFERPARAMETERIVPROC glGetBufferParameteriv = nullptr;
|
||||||
PFNGLGETDEBUGMESSAGELOGPROC glGetDebugMessageLog = nullptr;
|
PFNGLGETDEBUGMESSAGELOGPROC glGetDebugMessageLog = nullptr;
|
||||||
PFNGLGETERRORPROC glGetError = nullptr;
|
PFNGLGETERRORPROC glGetError = nullptr;
|
||||||
|
PFNGLGETFLOATVPROC glGetFloatv = nullptr;
|
||||||
PFNGLGETINTEGERVPROC glGetIntegerv = nullptr;
|
PFNGLGETINTEGERVPROC glGetIntegerv = nullptr;
|
||||||
PFNGLGETPROGRAMIVPROC glGetProgramiv = nullptr;
|
PFNGLGETPROGRAMIVPROC glGetProgramiv = nullptr;
|
||||||
PFNGLGETPROGRAMINFOLOGPROC glGetProgramInfoLog = nullptr;
|
PFNGLGETPROGRAMINFOLOGPROC glGetProgramInfoLog = nullptr;
|
||||||
|
|
@ -957,6 +960,7 @@ PFNGLLINKPROGRAMPROC glLinkProgram = nullptr;
|
||||||
PFNGLMAPBUFFERPROC glMapBuffer = nullptr;
|
PFNGLMAPBUFFERPROC glMapBuffer = nullptr;
|
||||||
PFNGLMAPBUFFERRANGEPROC glMapBufferRange = nullptr;
|
PFNGLMAPBUFFERRANGEPROC glMapBufferRange = nullptr;
|
||||||
PFNGLPIXELSTOREIPROC glPixelStorei = nullptr;
|
PFNGLPIXELSTOREIPROC glPixelStorei = nullptr;
|
||||||
|
PFNGLPOINTSIZEPROC glPointSize = nullptr;
|
||||||
PFNGLPOLYGONMODEPROC glPolygonMode = nullptr;
|
PFNGLPOLYGONMODEPROC glPolygonMode = nullptr;
|
||||||
PFNGLPROGRAMUNIFORM1DPROC glProgramUniform1d = nullptr;
|
PFNGLPROGRAMUNIFORM1DPROC glProgramUniform1d = nullptr;
|
||||||
PFNGLPROGRAMUNIFORM1FPROC glProgramUniform1f = nullptr;
|
PFNGLPROGRAMUNIFORM1FPROC glProgramUniform1f = nullptr;
|
||||||
|
|
|
||||||
|
|
@ -250,6 +250,14 @@ unsigned int NzRenderer::GetMaxTextureUnits()
|
||||||
return s_maxTextureUnit;
|
return s_maxTextureUnit;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
float NzRenderer::GetPointSize()
|
||||||
|
{
|
||||||
|
float pointSize;
|
||||||
|
glGetFloatv(GL_POINT_SIZE, &pointSize);
|
||||||
|
|
||||||
|
return pointSize;
|
||||||
|
}
|
||||||
|
|
||||||
NzShader* NzRenderer::GetShader()
|
NzShader* NzRenderer::GetShader()
|
||||||
{
|
{
|
||||||
return s_shader;
|
return s_shader;
|
||||||
|
|
@ -514,6 +522,19 @@ void NzRenderer::SetMatrix(nzMatrixType type, const NzMatrix4f& matrix)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void NzRenderer::SetPointSize(float size)
|
||||||
|
{
|
||||||
|
#if NAZARA_RENDERER_SAFE
|
||||||
|
if (size <= 0.f)
|
||||||
|
{
|
||||||
|
NazaraError("Size must be over zero");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
glPointSize(size);
|
||||||
|
}
|
||||||
|
|
||||||
bool NzRenderer::SetShader(NzShader* shader)
|
bool NzRenderer::SetShader(NzShader* shader)
|
||||||
{
|
{
|
||||||
if (s_shader == shader)
|
if (s_shader == shader)
|
||||||
|
|
@ -856,15 +877,15 @@ bool NzRenderer::EnsureStateUpdate()
|
||||||
NzHardwareBuffer* vertexBufferImpl = static_cast<NzHardwareBuffer*>(s_vertexBuffer->GetBuffer()->GetImpl());
|
NzHardwareBuffer* vertexBufferImpl = static_cast<NzHardwareBuffer*>(s_vertexBuffer->GetBuffer()->GetImpl());
|
||||||
vertexBufferImpl->Bind();
|
vertexBufferImpl->Bind();
|
||||||
|
|
||||||
const nzUInt8* buffer = reinterpret_cast<const nzUInt8*>(s_vertexBuffer->GetPointer());
|
const nzUInt8* buffer = static_cast<const nzUInt8*>(s_vertexBuffer->GetPointer());
|
||||||
|
|
||||||
unsigned int stride = s_vertexDeclaration->GetStride(nzElementStream_VertexData);
|
unsigned int stride = s_vertexDeclaration->GetStride(nzElementStream_VertexData);
|
||||||
for (unsigned int i = 0; i <= nzElementUsage_Max; ++i)
|
for (unsigned int i = 0; i <= nzElementUsage_Max; ++i)
|
||||||
{
|
{
|
||||||
const NzVertexElement* element = s_vertexDeclaration->GetElement(nzElementStream_VertexData, static_cast<nzElementUsage>(i));
|
nzElementUsage usage = static_cast<nzElementUsage>(i);
|
||||||
|
if (s_vertexDeclaration->HasElement(nzElementStream_VertexData, usage))
|
||||||
if (element)
|
|
||||||
{
|
{
|
||||||
|
const NzVertexElement* element = s_vertexDeclaration->GetElement(nzElementStream_VertexData, usage);
|
||||||
|
|
||||||
glEnableVertexAttribArray(NzOpenGL::AttributeIndex[i]);
|
glEnableVertexAttribArray(NzOpenGL::AttributeIndex[i]);
|
||||||
glVertexAttribPointer(NzOpenGL::AttributeIndex[i],
|
glVertexAttribPointer(NzOpenGL::AttributeIndex[i],
|
||||||
NzVertexDeclaration::GetElementCount(element->type),
|
NzVertexDeclaration::GetElementCount(element->type),
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue