第一部分 --- InstantOC(渲染管线,遮挡剔除与LOD)
1.渲染管线通俗的讲就是为了使内存中的数据变为屏幕上的图像,我们所做的一系列操作
这个图的分界线上方都是GPU做的操作,下方则是GPU做的操作
1.CPU做的操作:
a.判断处于摄像机的视锥以内的那些游戏物体需要进行渲染和显示
b.判断完之后调用图形API接口,并将要渲染的游戏物体的数据作为输入传给接口,接口在接收到数据后就会在对数据进行了一定处理后将数据输入到GPU中,让GPU渲染图像,渲染完毕之后就会输出图像,输出的图像会存到缓存中 --- 如果是WINdows系统的话,调用dirtX接口,如果还是移动端的话调用openGL接口
绘制调用Draw Call是一个参数,这个参数反映的是在一帧的时间里,通过渲染管线渲染游戏对象的次数
在一帧的时间里出现了10个游戏物体的话(无光照),那么我们就要调用10次渲染管线进行渲染,此时的draw call为10
draw call 越大,GPU的渲染压力越大,需要的渲染时间越长,所以draw call越小越好
1.查看draw call的方法 --- 在游戏界面处点击state(状态),然后在graphics处的Batches旁就能看到当前draw call数
在没有光照的情况下,每增加一个游戏物体draw call就会 +1 ,而在有光照的情况下,每增加一个游戏物体draw call就不是简单的 +1 了