forked from bit/DotRecastNetSim
for unity3d
This commit is contained in:
parent
ed55d6a7f2
commit
996592eec3
|
@ -1,13 +0,0 @@
|
||||||
namespace DotRecast.Recast.Demo.Tools;
|
|
||||||
|
|
||||||
public enum ColliderShape
|
|
||||||
{
|
|
||||||
SPHERE,
|
|
||||||
CAPSULE,
|
|
||||||
BOX,
|
|
||||||
CYLINDER,
|
|
||||||
COMPOSITE,
|
|
||||||
CONVEX,
|
|
||||||
TRIMESH_BRIDGE,
|
|
||||||
TRIMESH_HOUSE
|
|
||||||
}
|
|
|
@ -73,8 +73,8 @@ public class DynamicUpdateTool : Tool
|
||||||
private long buildTime;
|
private long buildTime;
|
||||||
private long raycastTime;
|
private long raycastTime;
|
||||||
|
|
||||||
private int colliderShapeIdx = (int)ColliderShape.SPHERE;
|
private int colliderShapeIdx = (int)DynamicColliderShape.SPHERE;
|
||||||
private ColliderShape colliderShape = ColliderShape.SPHERE;
|
private DynamicColliderShape colliderShape = DynamicColliderShape.SPHERE;
|
||||||
|
|
||||||
private DynamicNavMesh dynaMesh;
|
private DynamicNavMesh dynaMesh;
|
||||||
private readonly TaskFactory executor;
|
private readonly TaskFactory executor;
|
||||||
|
@ -113,35 +113,35 @@ public class DynamicUpdateTool : Tool
|
||||||
Tuple<ICollider, IColliderGizmo> colliderWithGizmo = null;
|
Tuple<ICollider, IColliderGizmo> colliderWithGizmo = null;
|
||||||
if (dynaMesh != null)
|
if (dynaMesh != null)
|
||||||
{
|
{
|
||||||
if (colliderShape == ColliderShape.SPHERE)
|
if (colliderShape == DynamicColliderShape.SPHERE)
|
||||||
{
|
{
|
||||||
colliderWithGizmo = SphereCollider(p);
|
colliderWithGizmo = SphereCollider(p);
|
||||||
}
|
}
|
||||||
else if (colliderShape == ColliderShape.CAPSULE)
|
else if (colliderShape == DynamicColliderShape.CAPSULE)
|
||||||
{
|
{
|
||||||
colliderWithGizmo = CapsuleCollider(p);
|
colliderWithGizmo = CapsuleCollider(p);
|
||||||
}
|
}
|
||||||
else if (colliderShape == ColliderShape.BOX)
|
else if (colliderShape == DynamicColliderShape.BOX)
|
||||||
{
|
{
|
||||||
colliderWithGizmo = BoxCollider(p);
|
colliderWithGizmo = BoxCollider(p);
|
||||||
}
|
}
|
||||||
else if (colliderShape == ColliderShape.CYLINDER)
|
else if (colliderShape == DynamicColliderShape.CYLINDER)
|
||||||
{
|
{
|
||||||
colliderWithGizmo = CylinderCollider(p);
|
colliderWithGizmo = CylinderCollider(p);
|
||||||
}
|
}
|
||||||
else if (colliderShape == ColliderShape.COMPOSITE)
|
else if (colliderShape == DynamicColliderShape.COMPOSITE)
|
||||||
{
|
{
|
||||||
colliderWithGizmo = CompositeCollider(p);
|
colliderWithGizmo = CompositeCollider(p);
|
||||||
}
|
}
|
||||||
else if (colliderShape == ColliderShape.TRIMESH_BRIDGE)
|
else if (colliderShape == DynamicColliderShape.TRIMESH_BRIDGE)
|
||||||
{
|
{
|
||||||
colliderWithGizmo = TrimeshBridge(p);
|
colliderWithGizmo = TrimeshBridge(p);
|
||||||
}
|
}
|
||||||
else if (colliderShape == ColliderShape.TRIMESH_HOUSE)
|
else if (colliderShape == DynamicColliderShape.TRIMESH_HOUSE)
|
||||||
{
|
{
|
||||||
colliderWithGizmo = TrimeshHouse(p);
|
colliderWithGizmo = TrimeshHouse(p);
|
||||||
}
|
}
|
||||||
else if (colliderShape == ColliderShape.CONVEX)
|
else if (colliderShape == DynamicColliderShape.CONVEX)
|
||||||
{
|
{
|
||||||
colliderWithGizmo = ConvexTrimesh(p);
|
colliderWithGizmo = ConvexTrimesh(p);
|
||||||
}
|
}
|
||||||
|
@ -617,19 +617,19 @@ public class DynamicUpdateTool : Tool
|
||||||
ImGui.Separator();
|
ImGui.Separator();
|
||||||
var prev = colliderShape;
|
var prev = colliderShape;
|
||||||
ImGui.Checkbox("Show", ref showColliders);
|
ImGui.Checkbox("Show", ref showColliders);
|
||||||
ImGui.RadioButton("Sphere", ref colliderShapeIdx, (int)ColliderShape.SPHERE);
|
ImGui.RadioButton("Sphere", ref colliderShapeIdx, (int)DynamicColliderShape.SPHERE);
|
||||||
ImGui.RadioButton("Capsule", ref colliderShapeIdx, (int)ColliderShape.CAPSULE);
|
ImGui.RadioButton("Capsule", ref colliderShapeIdx, (int)DynamicColliderShape.CAPSULE);
|
||||||
ImGui.RadioButton("Box", ref colliderShapeIdx, (int)ColliderShape.BOX);
|
ImGui.RadioButton("Box", ref colliderShapeIdx, (int)DynamicColliderShape.BOX);
|
||||||
ImGui.RadioButton("Cylinder", ref colliderShapeIdx, (int)ColliderShape.CYLINDER);
|
ImGui.RadioButton("Cylinder", ref colliderShapeIdx, (int)DynamicColliderShape.CYLINDER);
|
||||||
ImGui.RadioButton("Composite", ref colliderShapeIdx, (int)ColliderShape.COMPOSITE);
|
ImGui.RadioButton("Composite", ref colliderShapeIdx, (int)DynamicColliderShape.COMPOSITE);
|
||||||
ImGui.RadioButton("Convex Trimesh", ref colliderShapeIdx, (int)ColliderShape.CONVEX);
|
ImGui.RadioButton("Convex Trimesh", ref colliderShapeIdx, (int)DynamicColliderShape.CONVEX);
|
||||||
ImGui.RadioButton("Trimesh Bridge", ref colliderShapeIdx, (int)ColliderShape.TRIMESH_BRIDGE);
|
ImGui.RadioButton("Trimesh Bridge", ref colliderShapeIdx, (int)DynamicColliderShape.TRIMESH_BRIDGE);
|
||||||
ImGui.RadioButton("Trimesh House", ref colliderShapeIdx, (int)ColliderShape.TRIMESH_HOUSE);
|
ImGui.RadioButton("Trimesh House", ref colliderShapeIdx, (int)DynamicColliderShape.TRIMESH_HOUSE);
|
||||||
ImGui.NewLine();
|
ImGui.NewLine();
|
||||||
|
|
||||||
if ((int)prev != colliderShapeIdx)
|
if ((int)prev != colliderShapeIdx)
|
||||||
{
|
{
|
||||||
colliderShape = (ColliderShape)colliderShapeIdx;
|
colliderShape = (DynamicColliderShape)colliderShapeIdx;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,14 @@
|
||||||
|
namespace DotRecast.Recast.DemoTool
|
||||||
|
{
|
||||||
|
public enum DynamicColliderShape
|
||||||
|
{
|
||||||
|
SPHERE,
|
||||||
|
CAPSULE,
|
||||||
|
BOX,
|
||||||
|
CYLINDER,
|
||||||
|
COMPOSITE,
|
||||||
|
CONVEX,
|
||||||
|
TRIMESH_BRIDGE,
|
||||||
|
TRIMESH_HOUSE
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue