官方的教程足够用了,为了方便,在这里记录一下
https://ludiq.io/chronos/tutorial
导入Chronos组件。
用Chronos控制各个物体的时间,本质上是通过控制物件参照的时钟,再在脚本中用Chronos帮忙做好的时间计算代理代替原来的物理/运动控制。
第一步 设置参照时钟
有三种时钟,一是全局时钟,一是区域时钟,三是本地时钟
全局时钟只需要静态设置看向此类时钟,物件就能受到该时钟影响
区域时钟是需要挂载在一个有触发器碰撞体的物体上,进入碰撞体内部的发生触发事件的物体就会被影响
本地时钟直接挂载在需要影响的物体上
时钟可以设置父时钟,产生链式叠加的时间控制。可以设置是相乘叠加or相加叠加
全局时钟
在场景中放一个TimeKeeper物体,在这个物体上挂在全局时钟才有效。
需要为各个不同的全局时钟起名字Key


接下来只需要在需要看向这个时钟的物体上挂载Timeline组件,并设置它看向全局的某个时钟
区域时钟
在一个设定了触发型碰撞体的组件上挂载一个区域时钟
Mode为Instant 一碰撞就立即产生效果
Mode为Point To Edge、Distance From Entry都是渐进产生效果的
前者设置曲线如下图时,基本上表示越靠近碰撞体中心受到效果越大

本地时钟
自产自销属于是

第二步 影响物体行动
所有需要受时间控制的物体,都需要挂载一个Timeline组件,可以看向全局的某个时钟,也可以看向本地时钟。自动处理受到区域时钟的影响。
主要是在代码中,物体的物理/运动控制需要参照由自己的TimeLine组件代理计算出来的时间流速。
比如说在Update里的Time.deltaTime,需要改成GetComponent<Timeline>().deltaTime
为了写法方便,官方的做法是将本来的MonoBehaviour简单封装一层,这样其它新建的C#脚本类继承BaseBohaviour,就可以用time简单快速地获取到自己的Timeline组件
using System.Collections;
using System.Collections.Generic;
using UnityEngine

本文介绍Unity游戏开发中Chronos插件的使用方法,包括不同类型的时钟设置、物体时间流速控制、物体运动控制及动画音乐同步等。通过具体案例展示如何实现游戏中的时间流速变化。
最低0.47元/天 解锁文章
37万+





