JavaFX 将 material 应用于导入的 X3D 模型
JavaFX apply material to imported X3D-Model
我正在像这样使用 InteractiveMesh X3DModelImporter 加载 Node[]
对象
Node[] model = importer.getImport();
Map<String, PhongMaterial> mapTexs = importer.getNamedMaterials();
但是我无法将 PhongMaterials 应用到检索到的对象,因为它是一个节点数组并且 Node/Group 没有 setMaterial
。我也很好奇如何处理多个 material。现在我刚从 Blender 导入了一个绿色的 2x2x0.5 盒子,但是更复杂的模型呢?
不幸的是,我在 API 文档中找不到任何信息。
这原来是一个与 Blender 相关的问题,而不是 JavaFX/InteractiveMesh。我发现使用 InteractiveMesh 网站上的 x3d 文件可以完美地工作(material 隐式应用于模型)。显然,当导出为 x3d 时,Blender 无法导出应用的 material。当使用 .obj 和相应的导入器时,material 出现了!
我正在像这样使用 InteractiveMesh X3DModelImporter 加载 Node[]
对象
Node[] model = importer.getImport();
Map<String, PhongMaterial> mapTexs = importer.getNamedMaterials();
但是我无法将 PhongMaterials 应用到检索到的对象,因为它是一个节点数组并且 Node/Group 没有 setMaterial
。我也很好奇如何处理多个 material。现在我刚从 Blender 导入了一个绿色的 2x2x0.5 盒子,但是更复杂的模型呢?
不幸的是,我在 API 文档中找不到任何信息。
这原来是一个与 Blender 相关的问题,而不是 JavaFX/InteractiveMesh。我发现使用 InteractiveMesh 网站上的 x3d 文件可以完美地工作(material 隐式应用于模型)。显然,当导出为 x3d 时,Blender 无法导出应用的 material。当使用 .obj 和相应的导入器时,material 出现了!