3D-Tile地图编辑器开发日志 额外记录
使用轨道组件的了解
1.曲率设置
如果使用贝塞尔函数会造成曲率问题
所以直线的时候也尽量不去设置曲率。直接Type为Linear
2.切线设置
tangents。
一般手动设置会导致各种变形
尽量让他保持自动
3.曲线继承关系
- SplineUser
最基础的线功能- clipFrom 起点
- clipTo 终点
- loopSamples 样本编辑模式
设置方式上述终点起点的两种模式 - updateMethod 生命周期更新(一般在Update更新生命周期
- autoRebuild 立即刷新(一般是在编辑时生效
- Multithreadad 多线程(点就完了 不知道会在哪出现不同步情况
- BuildOnAwake 在Awake刷新
- BuildOnEnable 在Enable刷新
- OffsetModifier 偏移变化,在这段路线间发生偏移效果
- RotationModifier 角度变化,在这段路线间发生角度变化
- ColorModifiers 颜色变化,在这段路线间颜色发生变化
- SizeModifiers 大小变化,在这段路线间大小发生变化
- SplineTracer
基于 SplineUser- Direction 方向
- Motion 可变参数,不想变的时候这里关掉
- Physics Mode 物理引擎
- dontLerpDirection 关闭线性方向
- UseTriggers 使用触发器
- CameraPreview 摄像机预览
- SplineFollower
基于 SplineTracer- Follow 启动,跟随线进行移动
- FollowMode 速度模式
- Uniform 速度模式:距离值
- Time 时间模式:多少s转一圈
- SpeedModifier 速度变化. 和之前的变化功能类似,在固定线段进行速度调整
- StartPosition 起点 和clipFrom 类似 封装了一层
- onBeginningReached 起点事件监听
- onEndReached 终点事件监听
4.开关碰撞
onJunction 只支持方向对其的时候触发
所以并不能直接实现 无线8字循环。
必须要在不同点做不同的开关
5.轨道方向
所以中上所述轨道必须设置为前方
如果要圆弧化
先把type设置为CatmullRom (完美曲率
再把type设置为Bezier (可设置曲率
6.循环轨道
尽量不要用 CatmullRom 因为切线不明确会有闪现出现
官方用例使用足够大的弯道来实现列车换轨
7.换道
a,b 为焦点索引
aDirection,bDirection 为赛道方向
一般要换赛道的时候
是到了交点处列车会和当前赛道同方向
Editor 使用流程
- 设置grid轨道
- 给grid轨道设置锚点
- 判断锚点是拐弯还是直线
- 设置开关条件
- 一键生成轨道
- 列车位移优化
- 保存列车地图
- 生成列车地图