Unity不使用ScaleTime实现暂停排坑

作者: CC独游分类: 设计·创意 发布时间: 2024-06-11 19:53:55 浏览:3292 次

Unity不使用ScaleTime实现暂停排坑

1饭特稀:
unity就是这样,小功能都要浪费时间去做,为什么不像其他引擎一样把游戏基本的功能做好呢,总要开发者自己造轮子或去插件商城,有时候真是气的想换成godot或ue

【回复】那么功能全部塞到引擎里的代价是什么呢?
【回复】自己学习各种技术,实现各种功能本身就是很有趣和成就感的事情啊
【回复】UE不清楚,godot要手搓的更多吧
最后一天的刀:
哇,我的思路和大佬的差不多,因为unity自带的那些太粗糙了干脆放弃不用,所以自己弄些总开关自己来控制比较好,不过有时候自己写着写着就忘了,然后回头在update和fixedupdate里逛补 if

【回复】幸好有Find Reference功能可以批量查找,不然漏掉了就找不到了
SpadeSONG:
Time.timeScale = 0 我试过AudioClip.PlayAtPoint会失效

【回复】回复 @zealotand : 应该是你说的延时destroy的问题,既然知道大概得原因,我自己重写一个就好了
【回复】回复 @SpadeSONG :主要原因是object.Destroy的延时版本受timescale影响,因此playatpoint调用时会根据timescale缩短时间参数希望destroy依然可以按实际时间去销毁,不知道怎么回事,可能是在timescale为0的情况下传给destroy的时间参数太短以至于延时destroy直接优化成无延时destroy了,也可能是其他原因,估计主要还是延时destroy的问题。
【回复】回复 @zealotand :原来如此
爱干饭的阮阮:
这种全局属性尽量少用吧,确实不确定因素太多,后面项目打了改起来非常麻烦

【回复】没事,项目规模完全由我一人把控,不用做防御性的考虑
原始社会很花心:
目前我这公司里面是通过时间戳暂停的,需要的类绑定接口,接口内部自己处理相关逻辑,思路都是一样的

SpadeSONG:
Time.timeScale = 0 我试过AudioClip.PlayAtPoint会失效

冰镇兔子2021:
不是暂停了为什么还要继续模拟物理。不矛盾吗

【回复】菜单里面也可以有物理效果,以及如果是慢速播放什么的,改timeScale也会影响物理的模拟,导致奇怪的结果
【回复】比如子弹时间的功能,敌人静止,弹道特效命中特效等慢放,主角正常速度

游戏开发 UNITY 教程 暂停

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!