0
点赞
收藏
分享

微信扫一扫

[Games104笔记]4/4 渲染系统1 『渲染数据组织』

一些挑战

适配当代硬件

结合CPU和GPU

[Games104笔记]4/4 渲染系统1 『渲染数据组织』_游戏引擎

限制对CPU带宽和内存占用的访问

[Games104笔记]4/4 渲染系统1 『渲染数据组织』_javascript_02

[Games104笔记]4/4 渲染系统1 『渲染数据组织』_csdn博客_03

投影,光栅化

[Games104笔记]4/4 渲染系统1 『渲染数据组织』_游戏引擎_04

[Games104笔记]4/4 渲染系统1 『渲染数据组织』_csdn博客_05

​​CG基础学习笔记(Lecture3-4)_泥烟的博客-CSDN博客[Games104笔记]4/4 渲染系统1 『渲染数据组织』_javascript_06javascript:void(0)​​

着色

[Games104笔记]4/4 渲染系统1 『渲染数据组织』_聚类_07

[Games104笔记]4/4 渲染系统1 『渲染数据组织』_javascript_08

​​CG基础学习笔记(Lecture7~9 初学shading)_泥烟的博客-CSDN博客[Games104笔记]4/4 渲染系统1 『渲染数据组织』_javascript_06javascript:void(0)​​

SIMD (Single Instruction Multiple Data)

单指令多数据

SIMT (Single Instruction Multiple Threads)

单指令多线程

[Games104笔记]4/4 渲染系统1 『渲染数据组织』_聚类_10

GPU 构成

[Games104笔记]4/4 渲染系统1 『渲染数据组织』_csdn博客_11



GPC  (图形处理集群)    计算、栅格化、阴影和纹理处理......

SM  (流式多处理器)      运行CUDA内核的GPU的一部分

Texture Units   纹理处理单元,它可以获取和过滤纹理。

CUDA Core  允许不同处理器同时工作数据的并行处理器

Warp  一组线程

尽可能减少CPU和GPU之间的数据传输, 减少资源传输的成本

尽可能单向

[Games104笔记]4/4 渲染系统1 『渲染数据组织』_csdn博客_12

注意缓存效率. 充分利用硬件的并行计算,尽量避免冯·诺依曼的瓶颈

[Games104笔记]4/4 渲染系统1 『渲染数据组织』_聚类_13

应用程序的性能受到的限制

[Games104笔记]4/4 渲染系统1 『渲染数据组织』_javascript_14

※submesh

相同材质,mesh分类管理

[Games104笔记]4/4 渲染系统1 『渲染数据组织』_聚类_15

[Games104笔记]4/4 渲染系统1 『渲染数据组织』_javascript_16

[Games104笔记]4/4 渲染系统1 『渲染数据组织』_游戏引擎_17

资源库

[Games104笔记]4/4 渲染系统1 『渲染数据组织』_csdn博客_18

实例化:使用句柄重用资源

[Games104笔记]4/4 渲染系统1 『渲染数据组织』_csdn博客_19 [Games104笔记]4/4 渲染系统1 『渲染数据组织』_游戏引擎_20

 批处理绘制

[Games104笔记]4/4 渲染系统1 『渲染数据组织』_游戏引擎_21

几种包围盒

轴对称, 贴着物体, 凸包...

[Games104笔记]4/4 渲染系统1 『渲染数据组织』_javascript_22

※BVH

动态的事物很多

BVH针对的是可见物件的层次结构,而八叉树针对的是场景空间下哪些物件应当归于子空间中

[Games104笔记]4/4 渲染系统1 『渲染数据组织』_聚类_23

PVS

可见度集

[Games104笔记]4/4 渲染系统1 『渲染数据组织』_聚类_24

[Games104笔记]4/4 渲染系统1 『渲染数据组织』_javascript_25

[Games104笔记]4/4 渲染系统1 『渲染数据组织』_javascript_26

GPU剔除
 

[Games104笔记]4/4 渲染系统1 『渲染数据组织』_javascript_27

图像压缩

[Games104笔记]4/4 渲染系统1 『渲染数据组织』_游戏引擎_28

通用的块压缩

[Games104笔记]4/4 渲染系统1 『渲染数据组织』_javascript_29

 几种创作方式的比较

[Games104笔记]4/4 渲染系统1 『渲染数据组织』_游戏引擎_30

基于聚类的网格管道

surf:基于材料的子网格,由许多三角形簇组成集群
 

[Games104笔记]4/4 渲染系统1 『渲染数据组织』_csdn博客_31

 

[Games104笔记]4/4 渲染系统1 『渲染数据组织』_聚类_32

聚类 的GPU剔除

[Games104笔记]4/4 渲染系统1 『渲染数据组织』_游戏引擎_33

无缝边界的分层LOD集群, 不需要硬件支持,而是在预先计算的BVH树上使用分层集群选择

[Games104笔记]4/4 渲染系统1 『渲染数据组织』_csdn博客_34

Tips:

1.游戏引擎的设计与硬件结构设计有着深刻的联系。

2.采用submesh设计来支持多材料模型

3.使用剔除算法绘制尽可能少的对象

4.随着GPU功能的增强,越来越多的工作被转移到GPU中,即GPU驱动


举报

相关推荐

0 条评论