下载 App
《涌之内》开发日志D4:让画面里的水域,真正成为能游进去的地方
修改于10/206 浏览综合
最近这轮开发,花了不少时间重新检查《涌之内》的岩岸。
岩岸是水下场景中很容易被当成背景的一部分。但在实际游玩里,它决定着玩家怎样转向、从哪里绕过去、能不能贴着边缘滑行,也决定着一片水域是否让人愿意相信。画面上看起来开阔的地方,如果游过去却被挡住,前面建立起来的空间感就会受到影响。
所以,这次把环境绘画、实际地形和碰撞放在一起处理,也把检查范围从固定截图扩展到了连续移动中的游戏画面。

浅湾的实际游戏画面。近处岩层、水下远景与玩家小鱼,需要在正常游动的镜头里共同成立。
之前的长岸线有两个比较明显的问题。一是岩面反复使用镜像条带,镜头移动得久了,很容易认出相同的纹理;二是部分边缘仍然带着早期地图骨架的痕迹,过于笔直,绘画中的层次没有充分体现在玩家能够接近的轮廓上。
这一轮重新制作了沿岸使用的绘画材料。温和的蓝绿色沉积岩、偏冷的断裂岩层,以及带有铜绿附生细节的石灰岩,分别承担不同水域的气质。它们沿世界中的位置逐渐过渡,近处保留清楚的材料与层理,远处继续交给水色和光线表现距离。
材料也重新按照岸线展开。岩层的明暗和表面变化需要跟着地形走,长画面循环使用时的接缝则单独处理。制作过程中用到了图像生成底稿和 Krita 的分层处理,保留了可以继续编辑的像素图层与地形蒙版。后续调整轮廓时,能够追溯到对应的绘画和导出资源。
局部岸线也加入了凹湾和侵蚀变化。这些调整向原来的实体岩岸内部打开空间,保留已有安全水域,同时避开关键流口和主要通道。原本能够通过的地方仍然可以通过,新出现的凹处也具有实际的游动空间。

调整前:注意画面上方近岸的表面材料与较直的下缘。

调整后:同一位置换用了新的岩层材料,并调整了局部轮廓。两张均来自固定位置的原生游戏检查。
这轮最具体的一项修复,是一处长礁下方的空气墙。
把实际绘画和碰撞轮廓叠在一起后,问题很清楚:旧碰撞比可见岩石伸得更低。玩家明明还在水里,角色却已经接触到了程序中的岩壁。
这种问题在静态截图里不容易发现。单看画面,岩石没有缺失,水域也完整;只有真正向上游、贴着岩缘移动,才会感觉到那段不合理的阻挡。
这次根据绘画的真实外轮廓重新拟合了这处长礁,并保留实体碰撞。使用相同起点和相同方向输入进行对照,两处位置分别恢复了约 1.30 米和 0.44 米的可游空间。对于贴边绕行来说,这个差别已经很明显:玩家能够接近自己看到的岩缘,再沿着它继续移动。

修正前:橙色碰撞线伸进可见水域,小鱼还没有碰到绘画中的岩缘就被挡住。

修正后:同起点、同方向输入,小鱼能够更接近可见岩缘。这处恢复了约 1.30 米可游空间,镜头随实际位置变化。橙线是检查时开启的碰撞叠加,正常游玩不会显示。
更重要的变化在制作流程里。现在,改动过的长岸线绘画蒙版和碰撞使用同一份轮廓。调整一处凹湾时,画面和物理边界会一起变化,减少后续出现“画出来了,却游不进去”的机会。
地形细化之后,性能也经历了一次实际回退。
岸线变得更细,参与碰撞计算的边段随之增加。最初的运行结果并不好:同一存档、同一短场景,旧版约 55.11 FPS,细化后的版本一度降到了约 44.56 FPS。
继续查下去,发现短距离移动时,碰撞查询仍然取出了过多的岸线边段。小鱼只移动很短的一段距离,却要检查一批根本不可能碰到的边缘。
随后给这些短距离查询增加了更紧凑的预计算范围,并保留原来的边段顺序、相邻关系和接触求解。水流贴岸处理、鱼群避岸所使用的范围保持原样。修正前后又与完整扫描进行了对照,确认得到的碰撞结果一致。
处理后,同场景短测恢复到了约 57.64 FPS。鱼群数量、角色动画和环境画面都保留下来。这组数据只代表当前 Windows 环境中的一个短场景,长时间游玩里仍然存在偶发长帧,整个游戏的稳定性还需要继续打磨。
这轮环境施工也沿用了此前已经接入的角色体系:身体、鳍和尾部的分层动作,成长过程中的比例变化,以及随实际行为积累的颜色表现。它们和水流、植物、远近景共同出现在正常游戏中,检查时也一起观察角色是否清楚、通道是否容易辨认、前景是否造成不必要的遮挡。
最后,所有改动重新回到了正常游戏流程里。
最终代码和最终画面完成了一次从新游戏开始的完整旅程检查,中途保存、退出,再从这次实际形成的存档继续。主要替代路线、操作失误后的恢复、暂停和继续功能也分别检查过。
这些运行使用了程序驱动的真实游戏输入,能够帮助发现阻断和状态错误;玩家亲手游玩时的感受,仍然需要真实反馈。固定位置的画面检查也单独记录,不把它当成连续游玩的证明。
旧版本和旧存档同时保留。新版继续游戏时,会复制已有存档与设置,之后写入独立的新存档。这样,即使玩家游进了本轮新打开的凹湾,也不会让旧版回退读取到它无法理解的位置。
目前仍有需要继续处理的地方。少量细礁边缘存在小幅轮廓误差,长地图中还能辨认出相近的岩层母题,偶发长帧也没有完全消失。这些问题会继续按实际游玩中的影响逐项处理。
这次的改动已经进入日常游戏入口。重新游过熟悉的水域时,可以留意近处岩岸的层理、贴边滑行时的接触,以及镜头移动过程中不同材料之间的过渡。很多变化就在小鱼靠近岩石、转过一道弯的几秒钟里。











