下载
加入VIP
  • 专属下载特权
  • 现金文档折扣购买
  • VIP免费专区
  • 千万文档免费下载

上传资料

关闭

关闭

关闭

封号提示

内容

首页 三维编程实验五、d3d变换三

三维编程实验五、d3d变换三.doc

三维编程实验五、d3d变换三

hlphlp
2018-09-11 0人阅读 举报 0 0 暂无简介

简介:本文档为《三维编程实验五、d3d变换三doc》,可适用于IT/计算机领域

实验五、DD变换三、实验目的、掌握DD的几何流水线、熟悉DD的矩阵运算、掌握DD几何体。、实验步骤、打开vsnet打开ftp上的Ddemo项目执行并观看结果。、把观察矩阵的观察点参数改变后再观察结果。、修改世界变换的函数(在其中增加平移矩阵的操作):voidSetupRotation(floatangleX,floatangleY,floatangleZ,floatx,floaty,floatz,floatsize){Herewewillrotateourworldaroundthex,yandzaxisDDXMATRIXmatWorld,matWorldX,matWorldY,matWorldZ,matTrans,matSizeDDXMatrixTranslation(matTrans,x,y,z)DDXMatrixScaling(matSize,size,size,size)CreatethetransformationmatricesDDXMatrixRotationX(matWorldX,angleX)DDXMatrixRotationY(matWorldY,angleY)DDXMatrixRotationZ(matWorldZ,angleZ)CombinethetransformationsbymultiplyingthemtogetherDDXMatrixMultiply(matWorld,matWorldX,matWorldY)DDXMatrixMultiply(matWorld,matWorld,matWorldZ)DDXMatrixMultiply(matWorld,matTrans,matWorld)DDXMatrixMultiply(matWorld,matWorld,matSize)ApplythetansformationgpDDDevice>SetTransform(DDTSWORLD,matWorld)}、修改渲染函数在第一次渲染出了第一个立方体之后改变世界变换的参数进行第二次渲染画第二个立方体。SetupRotation(,timeGetTime()f,,,,,)gpDDDevice>DrawPrimitive(DDPTTRIANGLESTRIP,,)TopgpDDDevice>DrawPrimitive(DDPTTRIANGLESTRIP,,)SidesgpDDDevice>DrawPrimitive(DDPTTRIANGLESTRIP,,)BottomSetupRotation(,timeGetTime()f,,,,,)gpDDDevice>DrawPrimitive(DDPTTRIANGLESTRIP,,)TopgpDDDevice>DrawPrimitive(DDPTTRIANGLESTRIP,,)Sides、gpDDDevice>DrawPrimitive(DDPTTRIANGLESTRIP,,)Bottom、执行观察效果。、在初始化D函数中添加深度缓冲的设置。if(gpDD>CheckDeviceFormat(DDADAPTERDEFAULT,DDDEVTYPEHAL,dddmFormat,DDUSAGEDEPTHSTENCIL,DDRTYPESURFACE,DDFMTD)==DDOK){ddppAutoDepthStencilFormat=DDFMTDddppEnableAutoDepthStencil=TRUE}elseif(gpDD>CheckDeviceFormat(DDADAPTERDEFAULT,DDDEVTYPEHAL,dddmFormat,DDUSAGEDEPTHSTENCIL,DDRTYPESURFACE,DDFMTDX)==DDOK){ddppAutoDepthStencilFormat=DDFMTDXddppEnableAutoDepthStencil=TRUE}elseif(gpDD>CheckDeviceFormat(DDADAPTERDEFAULT,DDDEVTYPEHAL,dddmFormat,DDUSAGEDEPTHSTENCIL,DDRTYPESURFACE,DDFMTD)==DDOK){ddppAutoDepthStencilFormat=DDFMTDddppEnableAutoDepthStencil=TRUE}else{ddppEnableAutoDepthStencil=FALSE}if(FAILED(gpDD>CreateDevice(DDADAPTERDEFAULT,DDDEVTYPEHAL,hWnd,vp,ddpp,gpDDDevice))){returnEFAIL}if(FAILED(gpDDDevice>SetRenderState(DDRSZENABLE,DDZBTRUE))){returnEFAIL}、在渲染函数中清屏时候也清除深度缓冲数据。gpDDDevice>Clear(,,DDCLEARTARGET|DDCLEARZBUFFER,DDCOLORXRGB(,,),f,)、本实验结果请参照源码dDemo。

用户评价(0)

关闭

新课改视野下建构高中语文教学实验成果报告(32KB)

抱歉,积分不足下载失败,请稍后再试!

提示

试读已结束,如需要继续阅读或者下载,敬请购买!

文档小程序码

使用微信“扫一扫”扫码寻找文档

1

打开微信

2

扫描小程序码

3

发布寻找信息

4

等待寻找结果

我知道了
评分:

/3

三维编程实验五、d3d变换三

VIP

在线
客服

免费
邮箱

爱问共享资料服务号

扫描关注领取更多福利