手动写一个模型是非常麻烦的,这就是为什么需要美工来做3D模型,美工利用各种可视化的软件如:3DSmax, maya, Blender等等,那样方便做出各种3d模型。如果手工设置,直接编程出来的话,工作量会相当大,甚至不一定能做出我们想要的模型,但是理论上这是可能的,所以我们看看如何做。
属性表
当模型的mesh被优化,那么它会如下排序:
属性表就是一个D3DXATTRIBUTERANGE的数组:
Cloning
拷贝一个模型mesh到另外一个模型mesh中:
如下,拷贝meshSys到temp容器。
手动创建一个空的Mesh (DSDXCreateMesh)
如下:但是那么需要手动来填写相关属性,会非常麻烦;这就是为什么需要可视化工具来做3d模型。
使用范例:
D3DVERTEXELEMENT9 elements[] =
{
{0, 0, D3DDECLTYPE_FLOAT3, D3DDECLMETHOD_DEFAULT, D3DDECLUSAGE_POSITION, 0},
{0, 12, D3DDECLTYPE_FLOAT3, D3DDECLMETHOD_DEFAULT, D3DDECLUSAGE_NORMAL, 0},
{0, 24, D3DDECLTYPE_FLOAT2, D3DDECLMETHOD_DEFAULT, D3DDECLUSAGE_TEXCOORD, 0},
D3DDECL_END()
};
ID3DXMesh* mesh = 0;
HR(D3DXCreateMesh(12, 24, D3DXMESH_MANAGED, elements,
gd3dDevice, &mesh));//创建一个空的3D模型。
然后手动填写其中相关的属性,那么理论上就可以做出各种3D模型。当然只是理论上罢了。
分享到:
相关推荐
计算机图形学-基于3D图形开发技术
计算机图形学实验,用TURBO C 2.0编程。编写一个两维坐标表示的图形,转变为三坐标多边图形,并使3D多边形旋转起来,并且使3D图形背面的线消隐
第2章 Direct3D程序设计基础 CreateDevice 演示Direct3D程序的基本框架,以及如何创建Direct3D对象和Direct3D设备对象。
游戏和图形学的3d数学入门教程pdf格式 此教程是英文版,对英文基础较好的朋友会有更大帮助。感觉有些外文书籍翻译 的并不好。
游戏和图形学的3D数学入门教程 3D数学基础:图形与游戏开发 中文版资料,非常值得阅读!
计算机图形学3D图形基本程序入门,内容简单,很容易懂!
这些是计算机图形学经典图形学3D模型,使用的是obj的格式 斯坦福龙、斯坦福兔子 、弥勒佛 、犹他茶壶等等
中文名:3D游戏与计算机图形学中的数学方法 英文名:Mathematics for 3D Game Programming and Computer Graphics 3Ed 中文版为扫描版,翻译较早,无目录;英文为第三版,完美pdf,文字可选择,插图全彩,附带目录。...
计算机图形学的实验,这里提供模型代码,若有修改可以在代码中截取。
3D图形学入门 3D图形学入门 3D图形学入门 3D图形学入门
用Direct3D绘制简单图形,详细介绍
演示Direct3D程序的基本框架,以及如何创建Direct3D对象和Direct3D设备对象。 第3章 坐标系与基本图元 1、VertexBuffer 演示使用顶点缓冲区对象绘制基本图元。 2、BasicPrimitive 演示Direct3D中6种基本图元的绘制...
vs2010中c#调用directx 9.0 direct3d画二维图形的方法,文档中包括详细的配置,以及初始化等操作。需要自己下载directx 9.0的sdk并安装。 在c#工程中,我添加了两个panel,按下对应的button会画出两个对称的三角形
用direct3d绘制线和文字
演示全屏幕显示模式Direct3D程序的开发,主要是创建全屏显示模式的Direct3D设备。因为程序运行在全屏模式下,所以不能像运行在窗口模式下那样,通过单击标题栏上的“关闭”按钮来关闭程序,可以通过单击键盘上的...
3D计算机图形学 学3D必备
游戏艺术中的2D图形和3D模型(PDG)
3D计算机图形学(OpenGL版).pdf--作者:巴斯(中文版)
根据计算机图形学的基本原理绘制的雪人程序,有在linux平台的makefile
《游戏和图形学的 3D 数学入门教程》,英文名《3D Math Primer for graphics and game development》,作者 Fletcher Dunn、lan Parberry,大小 22 Mb,本书是为英文版。内容简介: This book is about 3D math, the...