D3D 中的渲染流程问题,望高手指点一下
1.首先,我现在知道的渲染流程:
管线的流程
首先是顶点坐标转换:
物体坐标——》世界坐标——》相机坐标系
坐标转换之后进行的是:
光照变换--》投影变换--》视区变换
视区变换之后:
像素处理——》像素测试(模板测试,深度测试,Alpha测试等等)——》渲染像素
在可编程流水线中用:
VS取代了上面的顶点变换,PS取代了上面的像素处理过程。
上面是我现在的认识,很混乱,也很模糊,也可能有很多错误,希望哪位高手能指点一下。希望能给细化和统一一下,比如:纹理是在哪个阶段加入的?像素处理都包含哪些操作?
2.对于D3D里面的一些函数:DrawPrimitive,Present ,都对应到哪些阶段里面,内部都做了些什么样的操作?
3.关于D3D里面的离屏表面:比如可以设置RenderTarget,SetDepthStencilSurface,让D3D将像素渲染到一个非屏幕的面上,这个详细点应该怎么去理解?比如:为什么设置了RenderTarget,还要设置SetDepthStencilSurface,这两个有什么关系?
问题较多,先再这里谢过了。这些问题让我现在感觉很朦胧,很模糊,希望能帮帮忙,帮我解除这些迷惑。
http://msdn.microsoft.com/en-us/library/ee417844(VS.85).aspx
网上牛人写得pipe line 详解,图片比较大,这里是所略图,打开联接看大图
http://topic.csdn.net/u/20091104/11/9e9fffd9-0662-4dde-b48d-d5375288bc68.html
相信这两个资料能解开你的疑惑,尤其是第二个