使用XNA代码创建3D立方体模型

时间:2013-06-08 11:46:42

标签: c# 3d xna xna-4.0

我开始使用XNA编写3D游戏,我想制作一个可以根据高度,宽度和深度属性创建3D立方体的功能。我在Google上找不到类似的东西,这就是我在这里问的原因。

我希望函数返回一个Model类型变量(3D框)。

2 个答案:

答案 0 :(得分:1)

首先:我假设你想要一个长方体而不是一个立方体。立方体具有相同的高度,宽度和深度 - 始终如此。长方体是一个矩形棱柱。

第二:XNA不允许你动态创建“模型”类(或者,至少,不容易)。所以你有两个选择:

选项A :(简单修复)创建一个完美的1x1x1立方体模型,将其用于所有内容,但在绘图时,使用设置为高度/宽度/深度选择的Vector3进行缩放。

选项B :(毫无意义的困难方法)忘记XNA中关于3D模型的所有知识(特别是关于Model和ModelMesh类的部分),并构建 VertexPositionNormalTexture [] VertexArray int [] IndexArray 并使用 BasicEffect 对象和 device.DrawUserIndexedPrimitives(PrimitiveType.TriangleList,...)

呈现它

如果选择选项B,请注意一个合适的长方体有8个顶点和12个三角形(36个索引)

答案 1 :(得分:-1)

阅读此处的前3个教程:

http://rbwhitaker.wikidot.com/3d-tutorials