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

resolveReferences

Yuka js库中的FollowPathBehavior类是一种行为,用于实现物体沿着路径移动。当使用该行为时,需要解析参考对象和路径。resolveReferences方法就是为了解析这些引用而存在的。

语法

resolveReferences( references );

参数

  • references:一个对参考对象和路径的引用对象 { referenceID: string, pathID: string } 的数组。

描述

FollowPathBehavior类中使用该方法,可以让行为实例化时解析参考对象和路径。referenceID指的是参考对象的ID,而pathID指的则是路径的ID。使用该方法可以将这些引用转换为实际的对象。

在执行该方法之前,FollowPathBehavior类需要进行一些准备工作。首先,必须从全局引用中获取到pathManagerreferenceManager的实例。这两个实例会负责管理所有路径和参考对象的信息。

为了获取到所需的路径和参考对象,resolveReferences方法必须调用pathManager.getPathById(pathID)referenceManager.getReferenceById(referenceID)。如果成功获取到了路径和参考对象的实例,那么行为将使用这些对象来实现移动功能。

示例

import { FollowPathBehavior } from 'yuka';

const references = [
  { referenceID: 'referenceId1', pathID: 'pathId1' },
  { referenceID: 'referenceId2', pathID: 'pathId2' }
];

const behavior = new FollowPathBehavior();

behavior.resolveReferences( references );

以上示例中,我们使用了一个FollowPathBehavior实例,并将一个包含参考对象和路径ID的数组传递给它的resolveReferences方法。执行该方法后,行为将会使用referenceManagerpathManager获取到所有的参考对象和路径,这样行为就可以沿着路径进行移动了。

参考链接