Add option to hide navmesh in editor debug view
This commit is contained in:
@@ -34,6 +34,15 @@ public:
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
AssetReference<RawDataAsset> DataAsset;
|
AssetReference<RawDataAsset> DataAsset;
|
||||||
|
|
||||||
|
#if USE_EDITOR
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// If checked, the navmesh will be drawn in debug view when showing navigation data.
|
||||||
|
/// </summary>
|
||||||
|
API_FIELD(Attributes="EditorOrder(-10), EditorDisplay(\"Nav Mesh\")") bool ShowDebugDraw = true;
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// The navigation mesh properties.
|
/// The navigation mesh properties.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|||||||
@@ -8,7 +8,12 @@
|
|||||||
#include "Engine/Content/Content.h"
|
#include "Engine/Content/Content.h"
|
||||||
#include "Engine/Content/JsonAsset.h"
|
#include "Engine/Content/JsonAsset.h"
|
||||||
#include "Engine/Threading/Threading.h"
|
#include "Engine/Threading/Threading.h"
|
||||||
|
#if USE_EDITOR
|
||||||
|
#include "Engine/Level/Level.h"
|
||||||
#include "Engine/Level/Scene/Scene.h"
|
#include "Engine/Level/Scene/Scene.h"
|
||||||
|
#endif
|
||||||
|
#include "NavMesh.h"
|
||||||
|
|
||||||
#include "Engine/Engine/EngineService.h"
|
#include "Engine/Engine/EngineService.h"
|
||||||
#include "Engine/Profiler/ProfilerCPU.h"
|
#include "Engine/Profiler/ProfilerCPU.h"
|
||||||
#include "Engine/Serialization/Serialization.h"
|
#include "Engine/Serialization/Serialization.h"
|
||||||
@@ -263,6 +268,27 @@ void Navigation::DrawNavMesh()
|
|||||||
{
|
{
|
||||||
for (auto navMesh : NavMeshes)
|
for (auto navMesh : NavMeshes)
|
||||||
{
|
{
|
||||||
|
#if USE_EDITOR
|
||||||
|
// Skip drawing if any of the navmeshes on scene has disabled ShowDebugDraw option
|
||||||
|
bool skip = false;
|
||||||
|
for (auto scene : Level::Scenes)
|
||||||
|
{
|
||||||
|
for (auto e : scene->NavigationMeshes)
|
||||||
|
{
|
||||||
|
if (e->Properties == navMesh->Properties)
|
||||||
|
{
|
||||||
|
if (!e->ShowDebugDraw)
|
||||||
|
{
|
||||||
|
skip = true;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (skip)
|
||||||
|
continue;
|
||||||
|
#endif
|
||||||
|
|
||||||
navMesh->DebugDraw();
|
navMesh->DebugDraw();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user