java - jMonkeyEngine OBJ 文件没有按预期出现

标签 java java-3d jmonkeyengine 3d-modelling 3d-model

My Artist 在 3d studio Max 中创建了一个 3d 鞋模型作为 FBX。如下图所示。

3d Shoe model snapshot of FBX file

我在我的程序中使用了 jMonkeyEngine,它不支持 FBX 文件,所以我将 FBX 导出到 wavefront OBJ 文件,3d studio max 也给了我相应的 mtl 文件。

所以当我将导出的 obj 模型加载到我使用 jMonkeyEngine 作为库的程序中时,它看起来不像真正的鞋子,上面没有任何纹理。

3d shoe Model snapshot of OBJ file

程序还显示一个警告

WARNING: OBJ mesh style_7-geom-0 doesnt contain normals! It might not display correctly

我的simpleInitApp方法

Spatial myModel = assetManager.loadModel("/Textures/Shoes/style_7.obj");
    myModel.scale(0.09f);
    rootNode.attachChild(myModel);

OBJ文件和 Material 文件都在同一个目录下。所以我认为根据文档 jMonkeyEngine 直接从 OBJ 所在的同一目录加载 Material 。

如果你愿意,我可以在这里上传 OBJ 文件和 Material 文件以及所有需要的图像。

我的绝对目标是在 JmonkeyEngine 中显示相同的模型,如屏幕截图 1 所示。

我错过了什么? 我做错了什么?

2013 年 7 月 16 日更新

OBJ Model Material File Resources

谢谢

最佳答案

您的 3D 模型看起来不那么 3D 的原因是模型未使用法线导出。法线允许 3D 引擎进行着色(这使它看起来实际上是 3D)。没有法线,引擎无法计算进行着色所需的角度,您可以在运行时通过 doing the math dynamically 计算它们或者仅导出带有法线的模型(首选)。

关于java - jMonkeyEngine OBJ 文件没有按预期出现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17661045/

相关文章:

java - 使用 ROME 获取 SyndEntry 的 XML 字符串值

java - JTextPane仅在第一行正确设置字符属性

eclipse - 带有 jMonkeyEngine 的小程序?

java - 如何使用 jmonkeyengine3 (或者可能是另一个库)找到 3D 空间中两条线的交点?

java - Java3D 改变形状的颜色

java - JMonkey 3 资源缓存

java - 我可以将 jar 添加到 Maven 2 构建类路径而不安装它们吗?

Java opengl 立方体渲染

Java 3D 代码给出 java.lang.UnsatisfiedLinkError

Java : howto resolve java. lang.UnsatisfiedLinkError : no J3D in java. 库.path