Games104现代游戏引擎入门-lecture6游戏中的大气和云的渲染(上)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1 地形渲染

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
LOD:
地形是连续的,和GO是不一样的。
在这里插入图片描述
和FOV是相关的,
屏幕是同等像素量的话,每一个三角形在小的fov下占的像素量会增加。

在这里插入图片描述
原则1:和FOV相关
原则2:Error compare to ground truth(pre-computation)

在这里插入图片描述
如何把三角形变的稀疏?

1 Triangle-based subdivison

永远把等腰三角形的底切一刀,分成两个三角形

高亮的是fov下的。135°。游戏中一般是70-80左右。
在这里插入图片描述
在这里插入图片描述

这个方法效率很好,但是不符合直觉。
在这里插入图片描述

2 QuadTree-Based Subdivision

目前用的都是四叉树
结果规整,符合数据的规范,符合人的感觉。
在这里插入图片描述
暗含了资源管理。
在这里插入图片描述
退化三角形,吸附,

在这里插入图片描述
在这里插入图片描述

3 Triangulated Irregular network(TIN)

在这里插入图片描述
在这里插入图片描述三角形数量会很少。沙漠啥的用,其他用的很少。
在这里插入图片描述

4 GPU-based tessellation

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Mesh Shder

在这里插入图片描述

动态地形

在这里插入图片描述
在这里插入图片描述

5 Non-Heightfield Terrain

在这里插入图片描述
在这里插入图片描述

6 体素-Marching Cubes

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

7 给地形上色

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
Splatting:但是还是有个问题,在相机移动,从上往下看的时候,会有明显的缝隙
在这里插入图片描述

解决办法:加了个bias,0.2

在这里插入图片描述
在这里插入图片描述
3D texture:texuter之间会做插值,是有关系的
texture arrya:层和层之间的texture是没有关系的。

在这里插入图片描述

视差贴图-只能是视觉的,几何边界还是光滑的。

在这里插入图片描述

virtual Texture

在这里插入图片描述
核心 思想:用的东西加载到内存,不用的都扔在硬盘上。基本都用这个。
在这里插入图片描述

8 硬件发展

传的都是压缩的,在显卡里解压。
DMA:显卡直接在磁盘中读,不往内存写。

在这里插入图片描述

9 浮点数的溢出

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
解决办法:
在这里插入图片描述

2 树的渲染

在这里插入图片描述

在这里插入图片描述

3 Decorator Rendering

用简单的mesh表示,
在这里插入图片描述

4 道路渲染

在这里插入图片描述
Decals:

virtual texture:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_41286360/article/details/124283368