Add commented out LodQuadTree debug code

This commit is contained in:
James Seibel
2023-09-30 09:34:57 -05:00
parent d15eba1185
commit fb424aadb6
@@ -275,29 +275,44 @@ public class LodQuadTree extends QuadTree<LodRenderSection> implements AutoClose
// TODO this should only equal the expected detail level, the (expectedDetailLevel-1) is a temporary fix to prevent corners from being cut out
else if (sectionPos.getDetailLevel() == expectedDetailLevel || sectionPos.getDetailLevel() == expectedDetailLevel - 1)
{
// this is the detail level we want to render //
// prepare this section for rendering
renderSection.loadRenderSource(this.renderSourceProvider, this.level); // TODO this should fire for the lowest detail level first, wait for it to finish then fire the next highest to prevent waiting forever for 2 million chunk section to finish sampling everything
// wait for the parent to disable before enabling this section, so we don't overdraw/overlap render sections
if (!parentRenderSectionIsEnabled && renderSection.canRenderNow())
/* Can be uncommented to easily debug a single render section. */
/* Don't forget the disableRendering() at the bottom though. */
//if (sectionPos.getDetailLevel() == 10
// &&
// (
// sectionPos.getX() == 0 &&
// sectionPos.getZ() == -4
// ))
{
// if rendering is already enabled we don't have to re-enable it
if (!renderSection.isRenderingEnabled())
// this is the detail level we want to render //
// prepare this section for rendering
renderSection.loadRenderSource(this.renderSourceProvider, this.level); // TODO this should fire for the lowest detail level first, wait for it to finish then fire the next highest to prevent waiting forever for 2 million chunk section to finish sampling everything
// wait for the parent to disable before enabling this section, so we don't overdraw/overlap render sections
if (!parentRenderSectionIsEnabled && renderSection.canRenderNow())
{
renderSection.enableRendering();
// delete/disable children, all of them will be a lower detail level than requested
quadNode.deleteAllChildren((childRenderSection) ->
// if rendering is already enabled we don't have to re-enable it
if (!renderSection.isRenderingEnabled())
{
if (childRenderSection != null)
renderSection.enableRendering();
// delete/disable children, all of them will be a lower detail level than requested
quadNode.deleteAllChildren((childRenderSection) ->
{
childRenderSection.disableRendering();
childRenderSection.disposeRenderData();
}
});
if (childRenderSection != null)
{
childRenderSection.disableRendering();
childRenderSection.disposeRenderData();
}
});
}
}
}
//else
//{
// renderSection.disableRendering();
//}
return renderSection.canRenderNow();
}
else