Renamed depth test to depth buffer
Because disabling depth test also disable depth write Former-commit-id: 0e0b3353c309fb1d702d030accc4349f1f0c6d96
This commit is contained in:
@@ -24,7 +24,7 @@ namespace
|
||||
static const NzShader* shader = nullptr;
|
||||
static NzVertexBuffer* vertexBuffer = nullptr;
|
||||
static NzVertexDeclaration* vertexDeclaration = nullptr;
|
||||
static bool depthTest = true;
|
||||
static bool depthBufferEnabled = true;
|
||||
static bool initialized = false;
|
||||
static float lineWidth = 1.5f;
|
||||
static float pointSize = 3.f;
|
||||
@@ -128,29 +128,14 @@ void NzDebugDrawer::Draw(const NzCubef& cube)
|
||||
|
||||
mapper.Unmap();
|
||||
|
||||
const NzShader* oldShader = NzRenderer::GetShader();
|
||||
|
||||
NzRenderer::SetShader(shader);
|
||||
|
||||
bool depthTestActive = NzRenderer::IsEnabled(nzRendererParameter_DepthTest);
|
||||
if (depthTestActive != depthTest)
|
||||
NzRenderer::Enable(nzRendererParameter_DepthTest, depthTest);
|
||||
|
||||
float oldLineWidth = NzRenderer::GetLineWidth();
|
||||
NzRenderer::Enable(nzRendererParameter_DepthBuffer, depthBufferEnabled);
|
||||
NzRenderer::SetLineWidth(lineWidth);
|
||||
|
||||
NzRenderer::SetShader(shader);
|
||||
NzRenderer::SetVertexBuffer(vertexBuffer);
|
||||
|
||||
shader->SendColor(colorLocation, primaryColor);
|
||||
|
||||
NzRenderer::DrawPrimitives(nzPrimitiveType_LineList, 0, 24);
|
||||
|
||||
NzRenderer::SetLineWidth(oldLineWidth);
|
||||
|
||||
if (depthTestActive != depthTest)
|
||||
NzRenderer::Enable(nzRendererParameter_DepthTest, depthTestActive);
|
||||
|
||||
NzRenderer::SetShader(oldShader);
|
||||
}
|
||||
|
||||
void NzDebugDrawer::Draw(const NzCubeui& cube)
|
||||
@@ -231,29 +216,14 @@ void NzDebugDrawer::Draw(const NzFrustumf& frustum)
|
||||
|
||||
mapper.Unmap();
|
||||
|
||||
const NzShader* oldShader = NzRenderer::GetShader();
|
||||
|
||||
NzRenderer::SetShader(shader);
|
||||
|
||||
bool depthTestActive = NzRenderer::IsEnabled(nzRendererParameter_DepthTest);
|
||||
if (depthTestActive != depthTest)
|
||||
NzRenderer::Enable(nzRendererParameter_DepthTest, depthTest);
|
||||
|
||||
float oldLineWidth = NzRenderer::GetLineWidth();
|
||||
NzRenderer::Enable(nzRendererParameter_DepthBuffer, depthBufferEnabled);
|
||||
NzRenderer::SetLineWidth(lineWidth);
|
||||
|
||||
NzRenderer::SetShader(shader);
|
||||
NzRenderer::SetVertexBuffer(vertexBuffer);
|
||||
|
||||
shader->SendColor(colorLocation, primaryColor);
|
||||
|
||||
NzRenderer::DrawPrimitives(nzPrimitiveType_LineList, 0, 24);
|
||||
|
||||
NzRenderer::SetLineWidth(oldLineWidth);
|
||||
|
||||
if (depthTestActive != depthTest)
|
||||
NzRenderer::Enable(nzRendererParameter_DepthTest, depthTestActive);
|
||||
|
||||
NzRenderer::SetShader(oldShader);
|
||||
}
|
||||
|
||||
void NzDebugDrawer::Draw(const NzOrientedCubef& orientedCube)
|
||||
@@ -329,29 +299,14 @@ void NzDebugDrawer::Draw(const NzOrientedCubef& orientedCube)
|
||||
|
||||
mapper.Unmap();
|
||||
|
||||
const NzShader* oldShader = NzRenderer::GetShader();
|
||||
|
||||
NzRenderer::SetShader(shader);
|
||||
|
||||
bool depthTestActive = NzRenderer::IsEnabled(nzRendererParameter_DepthTest);
|
||||
if (depthTestActive != depthTest)
|
||||
NzRenderer::Enable(nzRendererParameter_DepthTest, depthTest);
|
||||
|
||||
float oldLineWidth = NzRenderer::GetLineWidth();
|
||||
NzRenderer::Enable(nzRendererParameter_DepthBuffer, depthBufferEnabled);
|
||||
NzRenderer::SetLineWidth(lineWidth);
|
||||
|
||||
NzRenderer::SetShader(shader);
|
||||
NzRenderer::SetVertexBuffer(vertexBuffer);
|
||||
|
||||
shader->SendColor(colorLocation, primaryColor);
|
||||
|
||||
NzRenderer::DrawPrimitives(nzPrimitiveType_LineList, 0, 24);
|
||||
|
||||
NzRenderer::SetLineWidth(oldLineWidth);
|
||||
|
||||
if (depthTestActive != depthTest)
|
||||
NzRenderer::Enable(nzRendererParameter_DepthTest, depthTestActive);
|
||||
|
||||
NzRenderer::SetShader(oldShader);
|
||||
}
|
||||
|
||||
void NzDebugDrawer::Draw(const NzSkeleton* skeleton)
|
||||
@@ -393,35 +348,17 @@ void NzDebugDrawer::Draw(const NzSkeleton* skeleton)
|
||||
|
||||
if (vertexCount > 0)
|
||||
{
|
||||
const NzShader* oldShader = NzRenderer::GetShader();
|
||||
|
||||
NzRenderer::SetShader(shader);
|
||||
|
||||
bool depthTestActive = NzRenderer::IsEnabled(nzRendererParameter_DepthTest);
|
||||
if (depthTestActive != depthTest)
|
||||
NzRenderer::Enable(nzRendererParameter_DepthTest, depthTest);
|
||||
|
||||
NzRenderer::SetVertexBuffer(vertexBuffer);
|
||||
|
||||
float oldLineWidth = NzRenderer::GetLineWidth();
|
||||
NzRenderer::Enable(nzRendererParameter_DepthBuffer, depthBufferEnabled);
|
||||
NzRenderer::SetLineWidth(lineWidth);
|
||||
NzRenderer::SetPointSize(pointSize);
|
||||
NzRenderer::SetShader(shader);
|
||||
NzRenderer::SetVertexBuffer(vertexBuffer);
|
||||
|
||||
shader->SendColor(colorLocation, primaryColor);
|
||||
NzRenderer::DrawPrimitives(nzPrimitiveType_LineList, 0, vertexCount);
|
||||
|
||||
float oldPointSize = NzRenderer::GetPointSize();
|
||||
NzRenderer::SetPointSize(pointSize);
|
||||
|
||||
shader->SendColor(colorLocation, secondaryColor);
|
||||
NzRenderer::DrawPrimitives(nzPrimitiveType_PointList, 0, vertexCount);
|
||||
|
||||
NzRenderer::SetLineWidth(oldLineWidth);
|
||||
NzRenderer::SetPointSize(oldPointSize);
|
||||
|
||||
if (depthTestActive != depthTest)
|
||||
NzRenderer::Enable(nzRendererParameter_DepthTest, depthTestActive);
|
||||
|
||||
NzRenderer::SetShader(oldShader);
|
||||
}
|
||||
}
|
||||
/*
|
||||
@@ -561,6 +498,32 @@ void NzDebugDrawer::DrawTangents(const NzSubMesh* subMesh)
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
void NzDebugDrawer::EnableDepthBuffer(bool depthBuffer)
|
||||
{
|
||||
depthBufferEnabled = depthBuffer;
|
||||
}
|
||||
|
||||
float NzDebugDrawer::GetLineWidth()
|
||||
{
|
||||
return lineWidth;
|
||||
}
|
||||
|
||||
float NzDebugDrawer::GetPointSize()
|
||||
{
|
||||
return pointSize;
|
||||
}
|
||||
|
||||
NzColor NzDebugDrawer::GetPrimaryColor()
|
||||
{
|
||||
return primaryColor;
|
||||
}
|
||||
|
||||
NzColor NzDebugDrawer::GetSecondaryColor()
|
||||
{
|
||||
return secondaryColor;
|
||||
}
|
||||
|
||||
bool NzDebugDrawer::Initialize()
|
||||
{
|
||||
if (!initialized)
|
||||
@@ -612,34 +575,9 @@ bool NzDebugDrawer::Initialize()
|
||||
return true;
|
||||
}
|
||||
|
||||
bool NzDebugDrawer::GetDepthTest()
|
||||
bool NzDebugDrawer::IsDepthBufferEnabled()
|
||||
{
|
||||
return depthTest;
|
||||
}
|
||||
|
||||
float NzDebugDrawer::GetLineWidth()
|
||||
{
|
||||
return lineWidth;
|
||||
}
|
||||
|
||||
float NzDebugDrawer::GetPointSize()
|
||||
{
|
||||
return pointSize;
|
||||
}
|
||||
|
||||
NzColor NzDebugDrawer::GetPrimaryColor()
|
||||
{
|
||||
return primaryColor;
|
||||
}
|
||||
|
||||
NzColor NzDebugDrawer::GetSecondaryColor()
|
||||
{
|
||||
return secondaryColor;
|
||||
}
|
||||
|
||||
void NzDebugDrawer::SetDepthTest(bool shouldTest)
|
||||
{
|
||||
depthTest = shouldTest;
|
||||
return depthBufferEnabled;
|
||||
}
|
||||
|
||||
void NzDebugDrawer::SetLineWidth(float width)
|
||||
|
||||
@@ -155,14 +155,14 @@ void NzMaterial::Apply(const NzShader* shader) const
|
||||
|
||||
NzRenderer::SetFaceFilling(m_faceFilling);
|
||||
|
||||
if (m_zTestEnabled)
|
||||
if (m_zBufferEnabled)
|
||||
{
|
||||
NzRenderer::Enable(nzRendererParameter_DepthTest, true);
|
||||
NzRenderer::Enable(nzRendererParameter_DepthBuffer, true);
|
||||
NzRenderer::Enable(nzRendererParameter_DepthWrite, m_zWriteEnabled);
|
||||
NzRenderer::SetDepthFunc(m_zTestCompareFunc);
|
||||
}
|
||||
else
|
||||
NzRenderer::Enable(nzRendererParameter_DepthTest, false);
|
||||
NzRenderer::Enable(nzRendererParameter_DepthBuffer, false);
|
||||
}
|
||||
|
||||
void NzMaterial::EnableAlphaBlending(bool alphaBlending)
|
||||
@@ -184,9 +184,9 @@ void NzMaterial::EnableLighting(bool lighting)
|
||||
m_shaderFlags &= ~nzShaderFlags_Lighting;
|
||||
}
|
||||
|
||||
void NzMaterial::EnableZTest(bool zTest)
|
||||
void NzMaterial::EnableZBuffer(bool zBuffer)
|
||||
{
|
||||
m_zTestEnabled = zTest;
|
||||
m_zBufferEnabled = zBuffer;
|
||||
}
|
||||
|
||||
void NzMaterial::EnableZWrite(bool zWrite)
|
||||
@@ -314,9 +314,9 @@ bool NzMaterial::IsLightingEnabled() const
|
||||
return m_lightingEnabled;
|
||||
}
|
||||
|
||||
bool NzMaterial::IsZTestEnabled() const
|
||||
bool NzMaterial::IsZBufferEnabled() const
|
||||
{
|
||||
return m_zTestEnabled;
|
||||
return m_zBufferEnabled;
|
||||
}
|
||||
|
||||
bool NzMaterial::IsZWriteEnabled() const
|
||||
@@ -363,8 +363,8 @@ void NzMaterial::Reset()
|
||||
m_specularColor = NzColor::White;
|
||||
m_specularSampler = NzTextureSampler();
|
||||
m_srcBlend = nzBlendFunc_One;
|
||||
m_zBufferEnabled = true;
|
||||
m_zTestCompareFunc = nzRendererComparison_LessOrEqual;
|
||||
m_zTestEnabled = true;
|
||||
m_zWriteEnabled = true;
|
||||
}
|
||||
|
||||
@@ -577,7 +577,7 @@ void NzMaterial::SetSrcBlend(nzBlendFunc func)
|
||||
|
||||
void NzMaterial::SetZTestCompare(nzRendererComparison compareFunc)
|
||||
{
|
||||
m_zTestEnabled = compareFunc;
|
||||
m_zTestCompareFunc = compareFunc;
|
||||
}
|
||||
|
||||
NzMaterial& NzMaterial::operator=(const NzMaterial& material)
|
||||
|
||||
@@ -1035,7 +1035,7 @@ GLenum NzOpenGL::RendererParameter[nzRendererParameter_Max+1] =
|
||||
{
|
||||
GL_BLEND, // nzRendererParameter_Blend
|
||||
GL_NONE, // nzRendererParameter_ColorWrite
|
||||
GL_DEPTH_TEST, // nzRendererParameter_DepthTest
|
||||
GL_DEPTH_TEST, // nzRendererParameter_DepthBuffer
|
||||
GL_NONE, // nzRendererParameter_DepthWrite
|
||||
GL_CULL_FACE, // nzRendererParameter_FaceCulling
|
||||
GL_SCISSOR_TEST, // nzRendererParameter_ScissorTest
|
||||
|
||||
Reference in New Issue
Block a user