updated drawmodes and rendering

DebugDraw for recast now caches the results
We now have a drawmode dropdown selector
drawmode changes come from the gui itself no longer from console values
all recast drawmodes are supported with the exception of drawmodes that add abilities like navqueries until the nav tester tool is imlpemented.
This commit is contained in:
marauder2k7 2025-07-24 14:25:02 +01:00
parent 30b9502e90
commit d1771756c2
12 changed files with 548 additions and 53 deletions

View file

@ -292,6 +292,12 @@ $guiContent = new GuiNavEditorCtrl(NavEditorGui, EditorGuiGroup) {
Extent = "86 18";
text = "Actions";
};
new GuiPopUpMenuCtrl(DrawModeSelector) {
position = "155 0";
extent = "189 20";
profile = "ToolsGuiPopUpMenuProfile";
tooltipProfile = "GuiToolTipProfile";
};
new GuiStackControl()
{
internalName = "SelectActions";

View file

@ -188,6 +188,9 @@ function NavEditorPlugin::onActivated(%this)
Parent::onActivated(%this);
EditorGui.SetNavPalletBar();
DrawModeSelector.init();
DrawModeSelector.selectDefault();
}
function NavEditorPlugin::onDeactivated(%this)

View file

@ -673,3 +673,38 @@ singleton GuiControlProfile(NavEditorProfile)
fillColor = "192 192 192 192";
category = "Editor";
};
function DrawModeSelector::init(%this)
{
%this.clear();
%this.add("Draw NavMesh", 0);
%this.add("Draw NavMesh Transparent", 1);
%this.add("Draw NavMesh BVTree", 2);
%this.add("Draw NavMesh Nodes", 3);
%this.add("Draw NavMesh Portals", 4);
%this.add("Draw NavMesh Invis", 5);
%this.add("Draw Mesh", 6);
%this.add("Draw Voxels", 7);
%this.add("Draw Walkable Voxels", 8);
%this.add("Draw Compact Heightfield", 9);
%this.add("Draw Compact Distance", 10);
%this.add("Draw Compact Regions", 11);
%this.add("Draw Region Connections", 12);
%this.add("Draw Raw Contours", 13);
%this.add("Draw Both Contours", 14);
%this.add("Draw Contours", 15);
%this.add("Draw PolyMesh", 16);
%this.add("Draw PolyMesh Detail", 17);
}
function DrawModeSelector::selectDefault(%this)
{
%this.setSelected(0);
}
function DrawModeSelector::onSelect(%this, %id)
{
NavEditorGui.setDrawMode(%id);
}