directx教程绘制d模型

directx教程绘制d模型

ID:17963919

大小:103.50 KB

页数:19页

时间:2018-09-11

directx教程绘制d模型_第1页
directx教程绘制d模型_第2页
directx教程绘制d模型_第3页
directx教程绘制d模型_第4页
directx教程绘制d模型_第5页
资源描述:

《directx教程绘制d模型》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、DirectX10教程7:绘制3D模型原文地址:Tutorial7:3DModelRendering。本教程介绍在DirectX10中使用HLSL绘制3D模型,代码基于上一个漫反射光照的教程。在上一个教程中我们绘制了一个3D模型,只是一个简单的三角形很容易理解。本教程我们要绘制一个更复杂的对象——立方体,但在这之前需要讨论一下模型格式。有很多工具可以创建3D模型,Maya和3DStudioMax是两个较为流行的建模工具,其他的工具功能弱一点,但都能完成基本的工作。无论使用的是何种工具,你总要将做好的模型导出

2、为不同的格式。建议你定义自己的模型格式,然后编写一个转换程序将输出格式转换为自己的格式。因为你有可能改变使用的3D建模工具,模型格式也会随之改变,因此会处理不同的格式。如果你使用自己的格式,并将不同的其他格式转换为自己的格式,那么你的程序就无需进行修改,只需修改你的格式转换程序即可。而且大多数3D建模工具会导出只适用于它们的无关数据,在你的模型格式中无需使用这些数据。使用自己的格式最重要的就是格式是否满足你的需要,使用起来是否简便。你也可以考虑对不同的对象使用不同的格式,例如有些模型包含动画,而有些模型是静

3、态的。我要介绍的模型格式非常基本。每行对应一个顶点,包含位置矢量(x,y,z),纹理坐标(tu,tv)和法线矢量(nx,ny,nz)。在文件顶部还包含顶点的数量,你可以在第一行就读取这个信息,这样在读取顶点数据之前就可以分配大小正确的内存用于数组。此文件格式每三行数据构成一个三角形,顶点的排列顺序是是顺时针方向。下面是模型文件的内容:Cube.txtVertexCount:36Data:-1.01.0-1.00.00.00.00.0-1.01.01.0-1.01.00.00.00.0-1.0-1.0-1.0

4、-1.00.01.00.00.0-1.0-1.0-1.0-1.00.01.00.00.0-1.01.01.0-1.01.00.00.00.0-1.01.0-1.0-1.01.01.00.00.0-1.01.01.0-1.00.00.01.00.00.01.01.01.01.00.01.00.00.01.0-1.0-1.00.01.01.00.00.01.0-1.0-1.00.01.01.00.00.01.01.01.01.00.01.00.00.01.0-1.01.01.01.01.00.00.01.01.

5、01.00.00.00.00.01.0-1.01.01.01.00.00.00.01.01.0-1.01.00.01.00.00.01.01.0-1.01.00.01.00.00.01.0-1.01.01.01.00.00.00.01.0-1.0-1.01.01.01.00.00.01.0-1.01.01.00.00.0-1.00.00.0-1.01.0-1.01.00.0-1.00.00.0-1.0-1.01.00.01.0-1.00.00.0-1.0-1.01.00.01.0-1.00.00.0-1.0

6、1.0-1.01.00.0-1.00.00.0-1.0-1.0-1.01.01.0-1.00.00.0-1.01.01.00.00.00.01.00.01.01.01.01.00.00.01.00.0-1.01.0-1.00.01.00.01.00.0-1.01.0-1.00.01.00.01.00.01.01.01.01.00.00.01.00.01.01.0-1.01.01.00.01.00.0-1.0-1.0-1.00.00.00.0-1.00.01.0-1.0-1.01.00.00.0-1.00.0

7、-1.0-1.01.00.01.00.0-1.00.0-1.0-1.01.00.01.00.0-1.00.01.0-1.0-1.01.00.00.0-1.00.01.0-1.01.01.01.00.0-1.00.0你可以看到有36行x,y,z,tu,tv,nx,ny,nz数据。每三行构成一个三角形,一共12个三角形构成一个立方体。数据格式非常简单,可以不加修改被读取到顶点缓存。值得注意的是,有些3D建模工具以不同的顺序输出数据,例如顺时针方向和逆时针方向坐标系统,你需要记住DirectX10默认为左手坐标系

8、,所以模型数据也必须加以匹配。留心这些区别,确保你的转换程序将数据转换为正确的格式/顺序。Modelclass.h本教程中我们需要对ModelClass做一点小的修改使之可以绘制来自于文本文件中的3D模型。//////////////////////////////////////////////////////////////////////////////////Filename:modelclass.h//

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

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

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