《几何模型显》PPT课件.ppt
《《几何模型显》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《几何模型显》PPT课件.ppt(43页珍藏版)》请在三一办公上搜索。
1、第3章 坐标系与基本图元,Direct3D坐标系,在空间几何中,绝大多数情况下使用笛卡尔坐标系为参照系来表示图形,表三维图形时需要使用三维笛卡尔坐标系。三维笛卡尔坐标系根据z坐标轴相对x,y坐标轴方向的不同,可分为左手坐标系和右手坐标系,它们的区别方法是:将右手食指、中指、无名指和小拇指顺着x轴正向到y轴正向旋转的方向,如果大拇指的方向和z轴正向相同,就是右手坐标系,反之就左手坐标系。,左手坐标系,右手坐标系,Direct程序中常用坐标系,(150,50),(50,250),(250,250),本程序执行结果,FVF灵活顶点格式,FVF(Flexible Vertex Format)用来描述在
2、顶点缓冲区中的顶点存储格式中包含了哪些属性。根据图形显示的需要,顶缓冲区中的格式可以包含顶点坐标、颜色、法线方向、纹理坐标等属性。,FVF标记数据的用途,FVF灵活顶点格式说明符,struct CUSTOMVERTEXfloat x,y,z,rhw,color;#define D3DFVF_CUSTOMVERTEX(D3DFVF_XYZ|D3DFVF_DIFFUSE)CUSTOMVERTEX vertices=150.0f,50.0f,0.5f,1.0f,0 xffff0000,/x,y,z,rhw,color 250.0f,250.0f,0.5f,1.0f,0 xff00ff00,50.0f
3、,250.0f,0.5f,1.0f,0 xff00ffff,;,三角形的FVF定义如下:,文件首部,#include LPDIRECT3D9 g_pD3D=NULL;LPDIRECT3DDEVICE9 g_pd3dDevice=NULL;LPDIRECT3DVERTEXBUFFER9 g_pVB=NULL;/顶点缓冲区struct CUSTOMVERTEX FLOAT x,y,z,rhw;/顶点坐标 DWORD color;/顶点颜色;#define D3DFVF_CUSTOMVERTEX(D3DFVF_XYZRHW|D3DFVF_DIFFUSE),颜色值的顺序,0 xAARRGGBBALPH
4、A值:0 x000 xffR、G、B均为:0 x00 0 xff,HRESULT InitVB()CUSTOMVERTEX vertices=150.0f,50.0f,0.5f,1.0f,0 xffff0000,/x,y,z,rhw,color 250.0f,250.0f,0.5f,1.0f,0 xff00ff00,50.0f,250.0f,0.5f,1.0f,0 xff00ffff,;if(FAILED(g_pd3dDevice-CreateVertexBuffer(3*sizeof(CUSTOMVERTEX),0,D3DFVF_CUSTOMVERTEX,D3DPOOL_DEFAULT,创建
5、顶点缓冲区,在使用顶缓冲区绘图前,首先要创建顶点缓冲区,其原型如下:HRESULT IDirect3DDevice9:CreateVertexBuffer(UINT Length,/顶点缓冲区的大小 DWORD Usage,/顶点缓冲区的属性 DWORD FVF,/灵活顶点格式 D3DPOOL Pool,/在内存中的位置 IDirect3DVertexBuffer9*ppVertexBuffer,/缓冲/区指针 Handle*pSharedHandle/保留参数),CreateVertexBuffer()参数说明,Usage:一般设为0或取下列值,D3DPOOL取值,向顶点缓冲区写入数据,如果
6、不向顶点缓冲区填入有用数据的话,顶点缓冲是没有用的,所以必须向顶点缓冲填充数据,在写入数据前需要调用Lock函数加锁缓冲区。,Lock()函数原型,HRESULT IDirect3DVertexBuffer:Lock(UINT OffsetToLock,/加锁地址 UINT SizeToLock,/加锁内存大小 VOID*ppbDATA,/内存指针地址 DWORD flags/加锁属性);,Lock参数说明,缓冲区加锁属性可取下列值或0,顶点缓冲区图形显示,Render()函数,VOID Render()g_pd3dDevice-Clear(0,NULL,D3DCLEAR_TARGET,D3D
7、COLOR_XRGB(0,0,255),1.0f,0);if(SUCCEEDED(g_pd3dDevice-BeginScene()g_pd3dDevice-SetStreamSource(0,g_pVB,0,sizeof(CUSTOMVERTEX);g_pd3dDevice-SetFVF(D3DFVF_CUSTOMVERTEX);g_pd3dDevice-DrawPrimitive(D3DPT_TRIANGLELIST,0,1);g_pd3dDevice-EndScene();g_pd3dDevice-Present(NULL,NULL,NULL,NULL);,SetStreamSource
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 几何模型显 几何 模型 PPT 课件
![提示](https://www.31ppt.com/images/bang_tan.gif)
链接地址:https://www.31ppt.com/p-5469566.html