在根据四叉树节点创建了1365个地形分块网格并保存到本地后,我们接下来要在游戏运行的过程中动态地显示所需的网格,这是最关键的一步。 如何根据摄像机位置动态地选择地形块?这其中体现了由整体到局部,从简单到复杂的原则。 0、我们首先创建三个缓存列表。 1、我们先将索引为0的地形分块(即最高LOD等级)的分块放入BufferA; 2、然后遍历BufferA,判断BufferA中的每一个元素是否符合“无需更加详细”的条件,如果是,将它放入BufferFinal,否则放入BufferB; 3、在遍历完BufferA中的元素后,清空BufferA,将BufferB的元素全部复制到B...
在很多太空科幻类的电影、游戏中、我们常常看到在太空中的星球的场景,在这些场景中我们可以看到真实的行星地表光影效果和云层、以及非常炫酷的大气层效果。在unity中我们也可以创建类似的效果。本文我将介绍如何在unityshader中编写地球特效渲染。 上图是最终的效果。实现这样的效果可以使用基于物理的大气渲染或体素渲染(详见【Unity/大气渲染】单次散射的原理和简单实现Relolihentai博客园(cnblogs.com))。在本文我主要介绍通过特效的形式实现地球渲染,并非基于物理的大气渲染。以下是我的思路。 主要的思路是:对效...