gpt4 book ai didi

c# - 如何在 XNA 3.1 中导出模型的 3D "screenshot"?

转载 作者:太空宇宙 更新时间:2023-11-03 16:39:23 27 4
gpt4 key购买 nike

我的程序使用 XNA 3.1 生成静态 3D 场景。场景是使用输入参数创建的,每次都不同。

我需要将最终场景导出为某种 3D 对象,以便我们的合作伙伴可以在他们的系统上本地查看它。它们对任何格式开放,只要有足够小的查看器(不是全套 3dMax 或 Maya!)他们希望能够放大和缩小以及旋转场景。

在 XNA 中有没有像 SaveMesh() 这样简单的东西?我应该使用什么文件格式(OBJ?FBX?X?)

VS2008、C#、XNA 3.1

最佳答案

据我所知,XNA 在游戏中使用模型方面非常有限。在 Content Pipeline 导入模型后,这基本上就是您得到的。您可以随心所欲地平移、缩放和旋转模型,仅此而已。

我认为我们需要有关此项目目标的更多详细信息。您有什么理由不能只编译程序并将其提供给他们,使用游戏本身作为场景的查看器?如果不需要将场景导出到模型文件(即,如果这纯粹是为了检查),那么这似乎是最简单的解决方案。您甚至可以保存您想要的特定场景的状态,这样您的合作伙伴就不必重新输入适当的输入值。

但是,如果您尝试编译不同结构的模型网格并将其导出为 3D 模型文件格式,则 XNA 不是您的选择工具。它用于制作游戏,而不是 3D 建模。

如果您打算尝试建立一种在游戏中操纵模型的方法,您可以查看 this tutorial on custom model structures to override XNA's Model class , 但是,我警告你——我之前已经通读过这个,但没有办法导出。老实说,我认为 XNA 设计人员从未考虑过以模型数据格式导出场景(再次声明:游戏框架,而不是建模框架)。

最后,如果您的结构足够简单,请考虑使用顶点声明按程序将模型拼接在一起。我会警告您——这并不好玩,尤其是如果您没有在图形设备上直接使用图元的经验。如果您设法使用顶点和索引缓冲区创建您的结构,您可能能够想出一种方法来序列化并将其保存为 .x 或 .fbx 文件格式。此时您基本上是在编写自己的 3D 建模程序。这将是非常困难的。

关于c# - 如何在 XNA 3.1 中导出模型的 3D "screenshot"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8127939/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com