0xAA55 发表于 2014-1-27 20:22:55

我对DX10的研究发现

我看了DX10的一些实例,一开始不知道它要表达些什么,这些实例都有什么用。最后我得出如下的结论:


GS:
Geometry Shader,几何着色器,用于显卡加速(不同于VS、PS)


CubeMapGS:
用GS计算出哪几个三角形会被渲染到CubeMap的哪几个render target里面。


Displacement:
第一步:用GS实现将要渲染的几何体的每一个三角形面挤出(为三个四面体组成的三棱台、三棱柱)
之所以用GS是为了蒙皮模型
第二步:全屏Pixel Shader,计算从摄像头到每个像素的向量 与三棱台内法线图产生的高度图相交,最终计算出该像素本来应该有的颜色


Draw Predicated:
通过使用D3D10_QUERY_OCCLUSION_PREDICATE来把不在视野内(包括被挡住)的三角形去除,来实现加速。


FixedFuncEMU:
在DirectX10内模拟DirectX9固定管线的一些功能:
固定管线坐标变换
固定管线灯光计算
透明比较
用户自定义剪切平面
像素雾
Gouraud与Flat的着色模式
投影纹理查找(texldp)
多纹理
D3DFILL_POINT 填充模式
屏幕空间UI显示


Instancing10:
通过提供一个纹理数组、矩阵数组等数组来实现通过单次调用绘图函数来绘制批量几何体。


MotionBlur10:
通过使用GS来计算运动模糊所需的特殊的三角形。这些三角形能以顺序无关的方式透明地显示出来。


ParticlesGS:
用GS实现粒子系统运动的计算。


PipesGS:
用GS实现各种复杂的计算。


SoftParticles:
通过对粒子系统与背景的深度的比较来画出边缘柔和的粒子系统。
页: [1]
查看完整版本: 我对DX10的研究发现