disable provoking ib from wireframe render mode

This commit is contained in:
Turánszki János
2025-11-04 09:38:22 +01:00
parent 02e9eb0e26
commit 152d61289a
2 changed files with 9 additions and 7 deletions
+8 -6
View File
@@ -3184,6 +3184,7 @@ void RenderMeshes(
const float tessF = mesh.GetTessellationFactor();
const bool tessellatorRequested = tessF > 0 && tessellation;
const bool meshShaderRequested = !tessellatorRequested && mesh_shader && mesh.vb_clu.IsValid();
const bool wireframe = IsWireRender();
// Notes on provoking index buffer:
// Normally it's used for primitiveID generation, so it would be only used in PREPASS
@@ -3191,11 +3192,12 @@ void RenderMeshes(
// RENDERPASS_MAIN requires it to fix depth mismatch only on Intel GPU between prepass and color passes
// tessellation requires it to match same primitive order between prepass and color pass to have exact same tessellation
const bool provokingIBRequired =
renderPass == RENDERPASS_PREPASS ||
renderPass == RENDERPASS_PREPASS_DEPTHONLY ||
renderPass == RENDERPASS_MAIN ||
tessellatorRequested
;
!wireframe && (
renderPass == RENDERPASS_PREPASS ||
renderPass == RENDERPASS_PREPASS_DEPTHONLY ||
renderPass == RENDERPASS_MAIN ||
tessellatorRequested
);
if (forwardLightmaskRequest)
{
@@ -3249,7 +3251,7 @@ void RenderMeshes(
const PipelineState* pso = nullptr;
const PipelineState* pso_backside = nullptr; // only when separate backside rendering is required (transparent doublesided)
{
if (IsWireRender() && renderPass != RENDERPASS_ENVMAPCAPTURE)
if (wireframe && renderPass != RENDERPASS_ENVMAPCAPTURE)
{
switch (renderPass)
{
+1 -1
View File
@@ -9,7 +9,7 @@ namespace wi::version
// minor features, major updates, breaking compatibility changes
const int minor = 71;
// minor bug fixes, alterations, refactors, updates
const int revision = 851;
const int revision = 852;
const std::string version_string = std::to_string(major) + "." + std::to_string(minor) + "." + std::to_string(revision);