这次的更新主要是三个类别
一是,最表层的,填充了一些多媒体的内容
二是,用新买的Urp图形工具包Lux urp essential克服了一些老大难问题
三是,彻底重写了镜头的更新方式和角色已经AI的操控方式
1.无非是建了点模型,完善了一些贴图,当然头发是一个非常显著的特征。
2.第二点,这个售价15美元的包可以说在很多地方解了燃眉之急
首先,我是做头发的时候怎么也做不出好的效果,搜索搜出来的这个。然后我发现,这个包里的很多东西都非常实用,比如“便宜的体积光效果”。买下来之后,发现收获比预想的还多。比如方便实在的贴花系统,不是以前那个推模型的假贴花了,是真的实时的贴花。拓展的Lit shader,包涵了一些官方没舍得下放Urp的功能,比如horizon occlusion,geometric specular AA等等。其中的镜头消隐,可以说让我的视野舒服了不少。而GI to AO,近似地廉价实现了之前依赖SSR的漏光修正,当然也不完美,但聊胜于无。头发我其实没用好,但coverage也比alpha test要自然的多。SSS皮肤效果也比我用MATCAP和环境光融合的更自然。总之,这个让URP真正可以脱离“手游画质”的既视感了。当然,素材不行还是白搭。
3.这个要从URP的后处理说起。URP的后处理一方面是为了性能,更多的则是受限于前向渲染,非常有限。我近期持续关注着URP的更新,起码SSAO应该是快了。扯远了。我为了让SMAA的画面能稍微更多一点柔和感,来补偿没有TAA的遗憾,就尝试加入了动态模糊。这一加可不得了,我发现角色会蜜汁鬼畜。而在尝试消除这个恐怖的残影的过程中,我发现了一个更可怕的事实,那就是,我的游戏其实会每隔几秒地出现微小的卡顿,这个小的卡顿因为录像造成的巨大的卡顿和过去长期使用TAA和root motion导致我忽视了很久。于是,我下定决心一定要解决这个该死的问题。我前后花了一周左右的时间,中间其实几度放弃,因为发现这个是Unity的物理引擎的问题,以为好不了了。但周遭对Ori的赞不绝口,激励了我,一定能弄好的。于是,我从几个方面彻底地改变了这个游戏的控制方式。首先,我放弃了使用rootmotion来控制角色的移动。因为我发现,没有人会惊呼赞叹这个游戏的脚步踏实,问了几个人,也都是在脚踏实地和平滑镜头里优先后者。这个改动,让顿挫的镜头移动变成了线性的平滑运动。第二步,就得解决镜头更新和角色更新的不同步问题了。Invector Free的默认镜头更新是在FixedUpdate里的,这个注定是有局限的。尽管我很早就讲timestep设置为了0.01666666667,但这个对于物理更新和Update的不同步一点卵用没有。我知道这个事之后就有点绝望了,还找过内插的脚本,也没有。最终我找到了一个简单的方法,抛弃FixedUpdate和系统自动的更新,手动Physics.Simulate。这个办法一开始我也担心没用,但配合smoothDeltaTime的效果非常好。我心情顿时舒畅多了,当天就解决了这个问题,还把一系列引发的后续问题的大多数都搞定了。
现在,我终于有底气说我这个游戏也是优化过的了。Unity并不是一个垃圾引擎,只是很多人并没有逼自己一把,在很多看上去细微的点上得过且过了,但这些细节如果不加以统筹控制,最终会让游戏的品质完全无法接受。
原定的5月,其实是五一的档期,很有可能赶不上了,推迟到6月应该还有机会,借高考和中考来一波。
再说一下,如果有愿意联动的,请联系我。
暂无关于此日志的评论。