Skip to content

以下 API 仅适用于服务端脚本

构造函数

GameHighBessel()

实例化一个高阶贝塞尔类

输入参数

参数必填默认值类型说明
config.fixedPointNameOrPosListstring 或 { x: number; y: number; z: number }[];可以是固定点名称的列表,也可以是表示位置的坐标对象列表。
config.fixedPointMeshInvisibletrueboolean固定点模型是否不可见
config.cameraEntityGameEntity游戏中的相机实体。通过贝塞尔曲线可以控制相机的位置和方向。
config.delay0.001number刷新贝塞尔延迟时间 (ms)
config.offset[0,0,0][number, number, number]坐标偏移量,用于指定相对于某个参考点或目标的位置偏移。

返回值

类型说明
GameHighBessel高阶贝塞尔类

属性

progress

贝塞尔当前进度(0-1),修改该属性,可以移动到该进度下贝塞尔曲线的坐标。


delay

刷新贝塞尔延迟时间(ms)


cameraEntity

游戏中的相机实体。通过贝塞尔曲线可以控制相机的位置和方向。


check

检查标志,用于可记录贝塞尔路径


offset_X

X 轴偏移量,用于调整相机在 X 轴上的位置


offset_Y

Y 轴偏移量,用于调整相机在 Y 轴上的位置


offset_Z

Z 轴偏移量,用于调整相机在 Z 轴上的位置

静态方法

createBezierSurfaceFromPoints()

根据多个贝塞尔曲线的控制点转换贝塞尔曲面

返回一个 GameVector3 数组,代表生成的曲面顶点

输入参数

参数必填默认值类型说明
config.controlPoints{ x: number; y: number; z: number; }[][]三维控制点矩阵,定义了曲面的形状
config.u10numberU 方向(水平方向)的细分段数,决定了曲面在 U 方向上的细腻程度,默认为 10
config.v10numberV 方向(垂直方向)的细分段数,决定了曲面在 V 方向上的细腻程度,默认为 10

方法

fixedPointList()

返回固定点坐标列表

返回的格式如:[[x1,y1,z1],[x2,y2,z2]]


play()

播放动画

输入参数

参数必填默认值类型说明
config.cameraEntityGameEntity游戏中的相机实体
config.progressthis.progressnumber定义动画或过渡效果的进度
config.speed0.0001number定义动画或过渡效果的速度
config.ease"linear"keyof typeof GameHighBesselEases定义动画或过渡效果的缓动函数类型

pause()

暂停动画并返回当前进度

监听方法

onPlay()

设置动画开始播放时回调函数


onFinish()

设置动画完成时的回调函数


onUpdate()

当刷新动画进度时执行的回调函数,并返回该点坐标

接口

GameHighBesselEases

贝塞尔缓动函数

说明
linear线性变化函数,返回输入值本身
sine正弦变化函数,使用正弦曲线进行插值
easeInOut平滑步进函数,用于创建平滑的动画效果
easeIn加速步进函数,开始时较慢,逐渐加速
easeOut减速步进函数,开始时较快,逐渐减速
easeInQuad平方加速步进函数,加速效果更为明显
easeOutQuad平方减速步进函数,减速效果更为明显
easeInOutQuad平方平滑步进函数,根据时间进度选择加速或减速
easeInCubic立方加速步进函数,加速效果更加明显
easeOutCubic立方减速步进函数,减速效果更加明显
easeInOutCubic立方平滑步进函数,根据时间进度选择加速或减速