我对java 3d很陌生。我遇到过这样的情况,我想加载现成的任何物体的三维模型作为一个例子鞋在三维建模软件,如3d工作室max或玛雅在我的java程序,更新其纹理或颜色属性等,然后渲染它,然后显示更新的模型给最终用户。
因此,我问所有的3d专家,我应该如何前进,以实现我的目标?哪些输入应该加载到我的程序中?我如何更新加载的模型,呈现它并向最终用户显示更新的模型?
在简单的故事中,我想让我的用户能够通过他们的交互来修改3d模型,他们提供了鞋类的3d模型,例如默认颜色和纹理&一些字段,比如鞋底颜色,如果他们选择红色,那么加载的3d模型的鞋底是红色的(即更新),然后用红色的橡胶鞋底而不是默认的颜色鞋来显示给最终用户。
请建议我完成我的目标。
发布于 2013-02-14 21:42:57
首先,复杂的对象通常是使用一些3D编辑软件创建的,比如Blender或。这些程序可以将对象输出到几种不同的文件格式,其中最常见的是.obj文件格式:
另一种常见的格式是.3ds,在我的经验中,它的工作量远远超过了它的价值。他们确实为Java3D制作了一个Java3D文件加载器,该页面可以在这里找到:
我给您的建议是只使用.obj文件格式,使用起来要容易得多。您也可以为它制作自己的解析器,这并不像听起来那么难。这样,您就可以确切地了解如何将对象加载到环境中。Java附带了它自己的解析器,关于如何使用它的说明如下:
在使用这种文件格式时,我在使用Blender导出的文件时遇到了很多问题,不幸的是,它们可能已经修复了这个问题,但我不确定。当我过去做更多的3D东西时,我只是用艺术的错觉,甚至知道搅拌机是一个更强大的。搅拌机可以在Mac上运行,但在适当的设置下,在windows上运行则要平滑得多。祝好运!如果您需要一些示例代码,请告诉我,我非常乐意为您发布一些示例代码。
幻象艺术:
搅拌机:
I‘我不知道你想让用户如何改变对象。如果你想要他们能够改变颜色,或鞋的类型或诸如此类的事情,这不是什么大不了的。如果您希望用户能够更改花边长度或更改实际对象的结构,则需要对3D结构有深入的了解。如果你想改变颜色,只要改变材料。如果你想要改变鞋的类型,只需加载一个不同的鞋对象。希望这对你有帮助。
在评论中,你也谈到纹理映射,根据我的经验,在搅拌机上做比在“幻象艺术”中要容易得多。我可能会用搅拌机来完成这个任务:
约翰
发布于 2013-02-14 13:00:53
我想你只是想让用户选择不同的纹理/颜色,对吧?
然后看一看Java3D教程,例如这个:http://www.java3d.org/tutorial.html
我进一步猜你的鞋实际上是两部分的模型,也就是鞋底应该有另一种颜色,而其他的可能会有不同的纹理,对吗?
在这种情况下,您需要2个模型/形状,每个模型/形状都有自己的外观。然后,例如,改变鞋底的外观,如通过分配不同的材料或改变材料的颜色。
https://stackoverflow.com/questions/14856328
复制相似问题