【《光注》开发者日志3】光照残留+光照强度检测
GameJam的主题是Light,我的想法是做一款基于光照的叙事解谜游戏(希望能完成吧)。与普通光照解谜游戏不同的是,我的目标是基于实时光照来解谜的,所以先来写点代码吧(程序员思维上线)。
光照残留
考虑到如果场景全黑,玩家探索起来会很困难,所以我设计了光照照过的区域会“残留”下来,类似战争迷雾的效果。当光源不再照射时,这些区域不会完全变黑。
实现方法基本参考了战争迷雾的实现,就是把光照区域渲染到一张贴图里,但渲染时不清理贴图,这样就能保留光照的残留效果。
聚光灯
聚光灯Gamejam怎么能缺少聚光灯呢,这不就来了嘛。
聚光灯的特性是角度越小,照射距离越远,光的强度也越高;相反,角度越大,照射范围越广,但距离较短。
光照检测
终于到了这一步,整个光照系统的实现是为了方便检测不同地方的光照强度和颜色等信息。
要做到这一点,需要从光照贴图里获取信息,也就是说在生成光照贴图时就需要把必要的信息写入贴图中。
看下图,角色头顶的光注条会实时显示光的强度和颜色。
当被多个光源照射时,强度会增加,颜色也会叠加。这与解谜玩法紧密结合。
下一步就是加入主角控制,镜头跟随,寻路系统了。
结语
这是我开题后的开发内容。游戏主题已经构思好了,这次我打算把解谜和叙事结合,所以谜题会相对简单一些。至于叙事部分,暂时保密(绝对不是我没想好)。
最后,我叫Agoo,是一个业余时间做独立游戏的个人开发者,喜欢玩解谜游戏,也喜欢做解谜游戏。希望大家多多关注,后续会持续更新开发过程。