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

enableFixedDelta

描述

enableFixedDelta 方法是 Time 接口中的一个设置方法,它用于启用或禁用固定时间步的功能。启用固定时间步后,每一帧的时间步 deltaTime 都会保持固定。这对于有多种跨度时间的物理模拟效果非常有用,例如模拟游戏角色受伤后的恢复过程等场景。默认情况下,此功能为关闭状态。

语法

Time.enableFixedDelta( fixedDelta, maxDeltaTime );

参数

  • fixedDelta:Number 类型,表示固定的时间步长。单位为秒,必须大于 0。如果该参数不传递或传递的值为 0,则自动禁用固定时间步(即返回到逐帧更新的时间步)。
  • maxDeltaTime:Number 类型,表示最大时间步长,单位为秒。如果在一帧中,真实的时间步长大于 maxDeltaTime,则会强制将时间步长设为 maxDeltaTime。此参数可选,如果不传递,则默认为 0.1 秒。

返回值

无返回值。

示例

启用固定时间步

// 启用固定时间步,每帧时间步为 0.02 秒,最大时间步为 0.1 秒
Time.enableFixedDelta( 0.02, 0.1 );

关闭固定时间步

// 关闭固定时间步,自动返回到逐帧更新的时间步
Time.enableFixedDelta( 0 );

注意事项

  • 启用固定时间步后,每帧的时间步将保持恒定,不会因为计算机性能等因素而发生变化。
  • Time.deltaTimeTime.fixedDeltaTime 值将相同,都等于固定时间步长。
  • 如果你同时使用了 Time.timeScale 方法调整了时间尺度,固定时间步长度也会随之缩放。