c# - 在 c# 应用程序中图案化 3d 模型的最佳解决方案

标签 c# opengl 3d

我精通 C# 并使用 OpenGL,但不是 3D 专家,所以请提供您的报价和针对我的以下问题的最佳实践:

我想要的 Windows 应用程序应该加载 3d 模型(例如房间的 3d 模型)并使用用户选择的 Material 图案(例如特定的墙壁和屋顶的特定部分)图案化房间的指定部分。由于我的模型因项目而异,我认为在 3dMax 或此类 3d 建模软件中创建模型并在应用程序中动态加载它可能是最好的,但我不知道它是否可能,如果是,如何我是否指定我希望在 C# 应用程序中对它们进行模式化的部分,以及如何对它们进行模式化。

请为我提供一些要搜索的主题、最佳实践,任何能帮助我弄清楚的事情都是值得赞赏的。

问候

最佳答案

总的来说,您所描述的是正确的方法,只需要在这里和那里指定一点。您必须先回答几个问题:

  1. 您需要自己创建模型吗?或者可以从互联网上免费下载模型吗?这个问题实际上是:“你需要一些特别到无法找到免费模型的东西吗”?提供免费 3d 模型的站点之一是:http://thefree3dmodels.com/
  2. 如果您需要创建模型 - 您是否拥有 3dStudio 的许可证?学生可以用吗?如果不是 - Blender可能是您的首选应用程序。请注意,您需要一些时间来熟悉该应用程序。
  3. 您想使用什么图书馆?您提到过您熟悉 OpenGL。我相信将 OpenGL 与 C#/.NET 应用程序一起使用的最佳方法是使用 OpenTK .您也可以考虑使用 XNA还是很瘦。 DirectX 上的托管包装器 - SlimDX

在屏幕上显示模型应该很容易。您会很容易地在 Internet 上找到很多说明如何实现该目标的教程。完成此操作后,您唯一需要考虑的就是更改模型的属性,以便将新纹理(图案)应用于模型。您还可以更改其他一些属性,例如 Material 的颜色和属性(如某些库所称)。

关于c# - 在 c# 应用程序中图案化 3d 模型的最佳解决方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12227849/

相关文章:

c++ - 3d 相机 - 如何改变相机方向?

python - 尝试使用 pygame OpenGL 绘制平面 3D 网格时不断出现错误 1282 'invalid operation'

c# - SQL可能会造成循环或多级联路径

c# - 从 IEnumerable 初始化字典的最有效方法是什么?

c# - 如何编写模拟不同用户的测试?

opengl - 如何为 glDrawElements() 指定每个图元的颜色

opengl - 重新调整后对整个场景进行抗锯齿处理

c# - 从 Controller 下载Spire.doc文档进行查看

c++ - OpenGL命令的执行顺序

javascript - Google 模型查看器 AR