Managed DirectX +C# 开发(入门篇)(七)

本文详细介绍了在C#中使用Managed DirectX创建和加载3D模型,特别是Mesh对象的使用,包括Box、Cylinder、Sphere和Torus等基本形状的创建,以及从外部.X文件读取Mesh的方法,涉及材质、纹理的处理和DrawSubset方法的解释。
摘要由CSDN通过智能技术生成
  
第六章 Mesh对象
一、什么是Mesh?
前面已经接触过Mesh类,在这里则对它进行详细介绍
Mesh可以用来储存任何类型的图形数据,但主要用来封装复杂的模型。Mesh类同样也有一些用来提高渲染物体性能的方法。使用Mesh可以从外部文件读入3D的模型文件,比如MaYa文件,这样就可以在3D Max或MaYa等软件中做好模型,然后读入程序。
Mesh对象内部也包含了很多几何体的模型。
Mesh对象包位于Direct3D扩展库(D3DX Direct3D Extensions library)中。注意添加对Direct3DX.dll程序集的引用。
Mesh类有三个构造函数。Mesh类有几个静态方法用来创建或加载不同的模型。
 
所有的Mesh对象都包含了一个顶点缓冲和一个索引缓存,除此之外,他还包含了一个属性缓冲(attribute buffer)。
二、使用Mesh
在前面,已经使用以下方法建立了Mesh对象:
 private Mesh mesh = null;
mesh = Mesh.Box(device,2.0f,2.0f,2.0f);
 这样就建立了一个长宽高都为2的立方体。
 
如果创建一个圆柱或园台或园锥则是这样的:
mesh = Mesh.Cylinder(device,2.0f,2.0f,2.0f,36,36);
第二和第三个参数Radius1,Radius2 表示圆柱体的下底面和上底面半径,必须为非负;第四个参数Length 表示圆柱体在Z方向的高度;第五个参数Slices 表示沿中心轴的片段数量,第六个参数Stacks 表示沿主轴的“
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值