Epoch Dev Blog 7 - Ocean

 • 

解决了 Depth Buffer 只在 A7 设备上正常的 Bug,海水终于在 A8 / A9 设备上渲染出来了。因为有 Vertex Displacement,所以索性只用一个 Sphere Mesh 来做,效果比我想象的还好一些。



到这个地方基本上地球类的基本地形生成算法和大气层都基本完工了,接下来需要做的是树木的 Population 和 天气变化。树木这部分基本就是把之前 Epoch 的 SpeedTree(松树,苹果树,海星,花,等等等等)搬回来,然后用一个 Pooling System 安置在星球的不同高度上。
至于天气做到这个地方我发现还是蛮难的,对于云的生成简单可以做一个 Sphere Mesh + 两面的 Transparent Shader,但不是体积云,太丑了。尝试使用粒子系统的话问题就是如何处理星球夜晚的云层,从远处看会发现照射处和非照射处颜色一样就不对了,而且我想要比较真实的云彩阴影,要解决这个问题估计要使用 Ray Marching,这几天先研究下吧。