DX绘制流水线
来源:互联网 发布:matlab数据拟合 线性度 编辑:程序博客网 时间:2024/04/29 06:10
绘制流水线
顶点格式。
、顶点格式(定义结构体)可以有多种,关键就在于结构定义好后,要用灵活顶点格式(Flexible Vertex Format,FVF)标记的组合来描述顶点的结构
#define FVF_COLOR (D3DFVF_XYZ | D3DFVF_DIFFUSE.。。。)
标记与结构体内数据顺序一致
世界坐标系
让一个立方体中心位于世界坐标系中的点(x,y,z)上
创建用来让立方体变换的矩阵
D3DXMATRIX cubeWorldMatrix;
D3DMatrixTranslation(&cubeWorldMatrix, x , y , z );
设置立方体的变换, 立方体应该还是画在世界坐标系的中心。只不过在此之前把世界坐标系中心进行了位置变换
Device->SetTransform(D3DTS_WORLD , & cubeWorldMatrix);
drawCube();
观察坐标系
世界空间中的所有几何体随着摄像机一同进行变换。。变换后的几何体位于观察坐标系中(view space)
摄像机位于(5,3,-10),其观察点位世界坐标系原点
创建取景变换矩阵:
定义各个位置
D3DXVECTOR3 position( 5.0f, 3.0f, -10.0f);摄像机在世界坐标系中的位置
D3DXVRCTOR3 targetPont(0.0f, 0.0f, 0.0f);世界坐标系中的被观察点
D3DXVECTOR3 worldUp( 0.0f, 1.0f, 0.0f);世界坐标系中向上的方向向量
定义取景变换矩阵
D3DXMATRIX V;
D3DXMatrixLookAtLH(&V, &position, &targetPoint,, &worldUp);
设定取景变换
Device->SetTransform(D3DT_VIEW, &V);
背面消隐
默认在观察坐标系中,顶点排列顺序为顺时针的三角形单元式正面朝向
更改绘制状态(消隐)
Device->SetRenderState(D3DRS_CULLMODE, Value);
Value可取以下值
D3DCULL_NONE 禁用背面消隐
D3DCULL_CW 顺时针消隐
D3DCULL_CCW 逆时针消隐(默认)
透视投影(perspective projection)
D3DXMATRIX proj;
D3DMatrixPerspectiveFovLH
(
&proj,
PI*0.5f,视域角
(float)width/(float)height, 纵横比(屏幕)
1.0f,近裁剪面到坐标原点距离
1000.0f远裁剪面到坐标原点距离
);
Device->SetTransform(D3DTS_PROJECTION, &proj);
视口变换(viewport transform)
将顶点坐标从投影窗口转换到屏幕的一个矩形区域中(视口)
设置视口
D3DVIEWPORT9 vp=
{
0 父窗口位置,
0,
640, 父窗口大小
480,
0, 深度缓冲中的最小深度值
1 深度缓冲中的最大深度值
}
光栅化
几何图元变为二维图像
2013.11.20 昨晚本来想把几何体绘制也给看完的。。没想到朋友叫我去欧服和他玩LOL。。最终还是玩不了。延迟略高。。今天把绘制部分看完。顺便结合浅墨的文章实践下
- DX绘制流水线
- DX步步为营(二)——绘制流水线(T&L)
- 绘制流水线
- 绘制流水线
- 绘制流水线
- 绘制流水线
- 绘制流水线(2)
- DIRECTX9.0绘制流水线
- 绘制流水线详解01
- 绘制流水线详解02
- DirectX9绘制流水线
- Direct3D绘制流水线
- [dx] 启用dx 和 基本绘制所需的步骤
- 利用OpenGL固定功能流水线绘制球体
- DirectX3D游戏开发三 绘制流水线
- hook dx然后绘制出fps
- DX内置的绘制几何图形的函数
- hook dx然后绘制出fps
- Jquery Ajax格式(备查)
- 背景,滤镜转换工具地址
- JAVA帮助文档全系列 JDK1.5 JDK1.6 JDK1.7 官方中英完整版下载
- 深入理解JavaScript:prototype和__proto__属性
- 浅谈互联网革命的发展趋势
- DX绘制流水线
- BUCT oj 1852~1856 棋盘问题
- Python 3.x 字符串的makestrans函数和translate方法使用详解
- static静态变量
- hdu 4704 费马小定理
- 商店程序:预制打印设置 (NuPSimplePlot)
- 从已有的内存区域创建IStream内存流对象
- 通过ODBC直接读、写Excel表格文件。
- OCP-1Z0-053-V13.02-132题