.net - 3D 世界中最通用的轴方向是什么?

标签 .net 3d xna orientation axes

我正在创建一个为 3D 世界生成数据的 .NET 库,但它本身不进行任何渲染。它落在 XNA、DirectX、OpenGL 等上以根据数据呈现它(最终编码器执行此操作)。我想以最有意义的格式提供世界数据。在 XNA 中,“Z”进入屏幕,“X”从左到右,“Y”从上到下(根据我的测试)。我可以以同样的格式提供世界数据,但我不想让它依赖于 XNA。这是轴方向最常见的格式吗?我总是将事物想象成“Z”上下,“Y”进入屏幕,所以我打算以这种格式提供世界数据,并在我的 XNA Bootstrap 中转换它,但如果没有其他人使用带有该方向的数据,那么像那样传递它似乎很愚蠢。

非常感谢任何建议。谢谢。

另外,世界数据基本上是地形数据,所以它有一个逻辑结构,应该是上下 - 山脉等

最佳答案

没有“通用”坐标系。

OpenGL 通常默认使用右手。默认情况下,Direct3D 通常使用左手坐标系。但是,两者都可以处理左手或右手坐标系。然而,即便如此,仍有多种方法可以将世界坐标转换为 View ,并且不同的系统使用不同的约定。

如果您正在制作将生成模型的东西,并希望它被任何底层系统使用,它可能会使您的库更有用,因为它能够让用户-提供坐标系,并使用它构建。进行转换相对简单。

关于.net - 3D 世界中最通用的轴方向是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8390242/

相关文章:

c# - 如何让一个方法接受两种类型的数据作为参数?

graphics - BlackBerry - 图像 3D 变换

C#多态与克隆

.net - 使用 .NET VB 或 C# 中的 acrobat.tlb 从 .pdf 中提取完整的带连字符的单词

.net - HashSet 与 List 性能对比

c++ - 寻找鼠标下的物体

c# - 为什么这种碰撞检测方法没有击中所有物体?

c# - 使用 Json.NET 序列化 XNA 矩形

c# - 为什么在使用 read() 后从 c# 中的控制台为 readLine() 获取空值

android - 在 Android web 应用程序中实现 coverflow UI