大概十年没碰地编了,最近一时兴起想画点什么,然后就想起了一个经典题材:昼夜循环
昼夜循环的最基本形态就是用两个延时触发循环修改环境光照,如果加入黎明和黄昏就是一共4个。先设置一个合适的光照渐变速度,将除了进入循环的第一个触发以外都设为禁止,前一个触发解禁下一个触发的时候同时禁止自己,然后修改环境光照。这样这些触发就会按照时间间隔一个个有序的触发,完成基本的昼夜循环。
但是不同时间段不仅光照强度不同,色调也是不一样的。而触发中的“重绘某色”不能和修改光照一样渐变,它们是瞬间起效的:如果在修改环境光照的同时修改色调,表现出来的效果就是先是颜色瞬间变化,然后慢慢的变亮或变暗,非常突兀。为了解决这个问题,容易想到且效果最好的方式是设置一连串触发,手动的渐变修改色调;但是这样做需要编写大量的触发,复杂且占资源。另一种方式是利用光照的渐变,在变化到一半时修改色调,突兀感会小很多。为了这个目的,仅需要再引入四个触发。加上游戏开始时修改光照变化速度和幅度的触发以及昼夜循环的四个触发,一共只需要9个。虽然还是有一些突兀,但是已经基本上可以游玩了。
这九个触发的设置如下表:
昼夜循环的最基本形态就是用两个延时触发循环修改环境光照,如果加入黎明和黄昏就是一共4个。先设置一个合适的光照渐变速度,将除了进入循环的第一个触发以外都设为禁止,前一个触发解禁下一个触发的时候同时禁止自己,然后修改环境光照。这样这些触发就会按照时间间隔一个个有序的触发,完成基本的昼夜循环。
但是不同时间段不仅光照强度不同,色调也是不一样的。而触发中的“重绘某色”不能和修改光照一样渐变,它们是瞬间起效的:如果在修改环境光照的同时修改色调,表现出来的效果就是先是颜色瞬间变化,然后慢慢的变亮或变暗,非常突兀。为了解决这个问题,容易想到且效果最好的方式是设置一连串触发,手动的渐变修改色调;但是这样做需要编写大量的触发,复杂且占资源。另一种方式是利用光照的渐变,在变化到一半时修改色调,突兀感会小很多。为了这个目的,仅需要再引入四个触发。加上游戏开始时修改光照变化速度和幅度的触发以及昼夜循环的四个触发,一共只需要9个。虽然还是有一些突兀,但是已经基本上可以游玩了。
这九个触发的设置如下表: