在本篇教程中,我们将通过D3D11画一个简单的三角形。在D3D11中,GPU的渲染主要通过shader来操作(当然还有一些操作是由GPU固定管线完成,比如光栅化操作),最常用的shader操作是顶点shader(vertex shader)和像素shader(pixel shader ...
通常我们在xz平面定义一个二维的网格,然后y的值根据一定的函数计算得到,比如正弦 余弦函数的组合等等,可以得到一个看似不错的地形或者水面的效果。 在本教程中我们修改ModelClass.h和ModelClass.cpp,得到一个近似的地形。 在本章代码中,我们定义 个顶点,共 个三角形,每个网格的大小都为 . 我们得到y值的函数为: float ModelClass::getHeight flo ...
2012-03-25 11:00 2 4286 推荐指数:
在本篇教程中,我们将通过D3D11画一个简单的三角形。在D3D11中,GPU的渲染主要通过shader来操作(当然还有一些操作是由GPU固定管线完成,比如光栅化操作),最常用的shader操作是顶点shader(vertex shader)和像素shader(pixel shader ...
本文由zhangbaochong原创,转载请注明出处http://www.cnblogs.com/zhangbaochong/p/5510294.html 上一个教程我们实现了渲染一个会旋转的立方体,这次我们来实现一个简单地形。 先来看看最终实现效果吧(蓝色是背景色,地形的不同高度分别 ...
,继承自前面教程我们实现的基类Dx11DemoBase。 TriangleDemo.h头文件 ...
这里不再介绍effect框架的具体使用,有关effect框架使用可参考http://www.cnblogs.com/zhangbaochong/p/5475961.html 实现的功能依然是画一个简单的三角形,只不过使用了effect框架。 为了体现使用effect框架方便变量绑定的优点 ...
上一次我们学习了如何画一个2D三角形,现在让我们进一步学习如何画一个旋转的彩色立方体吧。 具体流程同画三角形类似,因此不再给出完整代码了,不同的部分会再说明。 由于我们要画彩色的立方体,所以顶点结构体中加入颜色变量 着色器代码 定义了一个矩阵 ...
本章我们将替换掉CameraClass类,实现一个稍微靠谱点的摄像机类。并通过Q,W,E,A,S,D,Z,X,C等按键实现摄像机的控制。 该类的主要功能就是根据指定的摄像机位置,up方向以及lookat方向,得到最终的视图矩阵,所谓视图矩阵就是把世界坐标系的顶点位置转化到视点 ...
在D3D11管线中,新增加了3个stage, Hull shader, Tessellator, Domain shader,用来实现细分操作,就是在gpu中把低细节的表面细分成高细节的体元。在gpu中把低模通过tessellation转化为高模,在获得高细节模型的同时,可以有效降低 ...
我们知道,D3D11中按Frame来渲染物体,每个Frame中又可能包含若干个primitive,如下面的示意图所示: gpu在实际渲染中,会按帧来渲染,比如上图frame0中,有两个primitive(三角形),经过vs以后,PA(primitive assemble ...