directX游戏编程实验四吴凉凉 2012329700012

directX游戏编程实验四吴凉凉 2012329700012

ID:47162300

大小:232.05 KB

页数:5页

时间:2019-08-14

directX游戏编程实验四吴凉凉 2012329700012_第1页
directX游戏编程实验四吴凉凉 2012329700012_第2页
directX游戏编程实验四吴凉凉 2012329700012_第3页
directX游戏编程实验四吴凉凉 2012329700012_第4页
directX游戏编程实验四吴凉凉 2012329700012_第5页
资源描述:

《directX游戏编程实验四吴凉凉 2012329700012》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、浙江理工大学《DirectX游戏编程》实验报告2013~2014学年第1学期学院信息学院班级12数字媒体技术1班姓名吴凉凉学号2012329700012任课教师(上课时间:第10周345节)数字媒体技术专业2014年5月15日《DirectX游戏编程》实验报告实验名称:DirectX彩色图形绘制实验实验地点:机1所使用的工具软件及环境:安装Windows操作系统(WindowsXp)和VC的1台计算机。一、实验平台lWindowsXPprofessional操作系统。lVC6.0集成开发环境.项目1:D

2、irectX材质和光照实验在例程Cube的基础上,完成以下步骤:1)实现平行光照明。2)黄色材质设定。3)增加一个蓝色点光源。4)实现材质设定的透明度,实现50%透明度。在实验过程中注意灯光设置的方向、颜色等参数设定。项目2:DirectX纹理实验在项目1的程序基础上完成一下步骤:1)给立方体增加纹理,图片请自己准备。2)制作alpha通道纹理图,实现立方体的透明纹理。在实验过程中注意材质的透明度对纹理设定的影响。二、实验代码及结果1、黄色材质设定。//Turnonlighting.Device->Se

3、tRenderState(D3DRS_LIGHTING,true);D3DMATERIAL9mtrl;mtrl.Ambient=d3d::YELLOW;mtrl.Diffuse=d3d::YELLOW;mtrl.Specular=d3d::YELLOW;mtrl.Emissive=d3d::BLACK;mtrl.Power=5.0f;Device->SetMaterial(&mtrl);黄色材质设定。1、实现平行光照明。D3DLIGHT9dir;::ZeroMemory(&dir,sizeof(dir)

4、);dir.Type=D3DLIGHT_DIRECTIONAL;dir.Diffuse=d3d::WHITE;dir.Specular=d3d::WHITE0.3f;dir.Ambient=d3d::WHITE0.6f;dir.Direction=D3DXVECTOR3(1.0f,0.0f,0.0f);Device->SetLight(0,&dir);Device->LightEnable(0,true);Device->SetRenderState(D3DRS_NORMALIZENORMALS,tru

5、e);Device->SetRenderState(D3DRS_SPECULARENABLE,true);将语句:Device->SetRenderState(D3DRS_FILLMODE,D3DFILL_WIREFRAME);注释后得3、增加一个蓝色点光源。D3DXVECTOR3pos(0.0f,0.0f,5.0f);D3DXCOLORc=d3d::BLUE;D3DLIGHT9point=d3d::InitPointLight(&pos,&c);Device->SetLight(1,&point);D

6、evice->LightEnable(1,true);4、实现材质设定的透明度,实现50%透明度。mtrl.Diffuse.a=0.5f;Device->CreateVertexBuffer(24sizeof(Vertex),D3DUSAGE_WRITEONLY,Vertex::FVF,D3DPOOL_MANAGED,&VB,0);Device->SetTextureStageState(0,D3DTSS_ALPHAARG1,D3DTA_DIFFUSE);Device->SetTextureStageS

7、tate(0,D3DTSS_ALPHAOP,D3DTOP_SELECTARG1);Device->SetRenderState(D3DRS_SRCBLEND,D3DBLEND_SRCALPHA);Device->SetRenderState(D3DRS_DESTBLEND,D3DBLEND_INVSRCALPHA);将原来的材质改成白色:D3DMATERIAL9mtrl;mtrl.Ambient=d3d::WHITE;mtrl.Diffuse=d3d::WHITE;mtrl.Specular=d3d::

8、WHITE;mtrl.Emissive=d3d::BLACK;mtrl.Power=5.0f;mtrl.Diffuse.a=0.5f;Device->SetMaterial(&mtrl);将点光源也改成白色:D3DXVECTOR3pos(1.0f,1.0f,0.0f);D3DXCOLORc=d3d::WHITE;D3DLIGHT9point=d3d::InitPointLight(&pos,&c);//SetandEnabletheligh

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。