AABB
AlignmentBehavior
ArriveBehavior
AStar
BFS
BoundingSphere
BVH
BVHNode
Cell
CellSpacePartitioning
CohesionBehavior
CompositeGoal
ConvexHull
Corridor
CostTable
DFS
Dijkstra
Edge
EntityManager
EvadeBehavior
EventDispatcher
Behavior
FollowPathBehavior
FuzzyAND
FuzzyCompositeTerm
FuzzyFAIRLY
FuzzyModule
FuzzyOR
FuzzyRule
FuzzySet
FuzzyTerm
FuzzyVariable
FuzzyVERY
GameEntity
Goal
GoalEvaluator
Graph
GraphUtils
HalfEdge
HeuristicPolicyDijkstra
HeuristicPolicyEuclid
HeuristicPolicyEuclidSquared
HeuristicPolicyManhattan
InterposeBehavior
LeftSCurveFuzzySet
LeftShoulderFuzzySet
LineSegment
Logger
MathUtils
Matrix3
Matrix4
MemoryRecord
MemorySystem
MeshGeometry
MessageDispatcher
MovingEntity
NavEdge
NavMesh
NavMeshLoader
NavNode
Node
NormalDistFuzzySet
OBB
ObstacleAvoidanceBehavior
OffsetPursuitBehavior
OnPathBehavior
Path
Plane
Polygon
Polyhedron
PriorityQueue
PursuitBehavior
Quaternion
Ray
RectangleTriggerRegion
Regular
RightSCurveFuzzySet
RightShoulderFuzzySet
SAT
SeekBehavior
SeparationBehavior
SingletonFuzzySet
Smoother
SphericalTriggerRegion
State
StateMachine
SteeringBehavior
SteeringManager
Task
TaskQueue
Telegram
Think
Time
TriangularFuzzySet
Trigger
TriggerRegion
Vector3
Vehicle
Version
WanderBehavior

clear

EntityManager.clear() 方法用于清除实体管理器(EntityManager)中的所有实体实例,将实体管理器重置为初始状态。这意味着已经加载并且被存储在实体管理器中的所有实体将被从实体管理器中删除,并且所有缓存记录(比如状态变更和操作记录)也将被清空。

语法

entityManager.clear();

参数

无需传入参数。

返回值

该方法没有返回值。

异常

该方法不会抛出任何异常。

例子

const entityManager = new Yuka.EntityManager();

const entity1 = new Yuka.Entity();
const entity2 = new Yuka.Entity();

entityManager.add(entity1);
entityManager.add(entity2);

console.log(entityManager.entities.length);   // 输出:2

entityManager.clear();

console.log(entityManager.entities.length);   // 输出:0

注意事项

  • 在调用 EntityManager.clear() 方法后,所有实体都不再存在于实体管理器之中。如果需要将实体重新添加到实体管理器当中,需要使用 EntityManager.add() 方法。
  • 该方法只对调用的实体管理器进行修改。如果您在多个实体管理器之间共享实体实例,则需要调用每个实体管理器的 clear() 方法以确保所有相关实体均已清除。

参考文献