问题标签 [modelio]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
swift - 使用包加载 MDLAsset 的目标文件
我正在尝试加载 .obj 文件以MDLAsset
在 macOS Swift 应用程序中创建对象。最初,我是这样创建资产的:
显然,当应用程序处于生产状态时,这将不起作用 - 因此,根据这个SO 答案,我尝试将 .obj 文件添加到包中,然后加载它,如下所示:
但是,我不断收到以下错误:
我确保为每个人设置读/写权限。
我究竟做错了什么?或者,是否有另一种方式来加载此资产?看起来好像MDLAsset
需要一个 URL 才能对其进行初始化:https ://developer.apple.com/documentation/modelio/mdlasset
ios - SceneKit:如何从 Google Poly 为相同的 OBJ 文件重新创建照明?
目标是为此 OBJ 文件重新创建照明:https ://poly.google.com/view/cKryD9VnDEZ
将 OBJ 文件加载到 SceneKit 的代码(可以从上面的链接下载文件):
到目前为止尝试的选项:
1) 默认环境光照比 Google Poly 光照更刺眼。移除环境照明会使一切变得过于平坦。
2) 使用四个方向灯:一前一后,一下,一上模型。所有灯光都倾斜以指向模型。这是最好的,但仍然留下了一些在 Google Polymer 上看不到的阴影和更粗糙的区域。
3) 在选项#2 中添加了另外两个灯,这次在左侧和右侧添加了灯。这个比选项 2 更糟糕,因为额外的灯与四个现有的灯相结合,并对模型进行了粉刷。
以下建议后更新:
代码现在实现了环境光和定向光。
由于某种原因,将定向光添加到相机节点与场景根节点没有任何区别。
灯光代码如下。
有两个问题:
1) 在截图 1 中,胸部右侧太亮,没有边缘。胸部最左边的脸太黑了。光线最好的脸在中间。如何让所有面孔的照明都像这样(或者更好地匹配 Google Poly 照明)?
2) 在屏幕截图 2 中,定向光似乎没有效果。您如何确保模型的背面与正面一样轻,并采用建议的一种环境光和一种定向光的架构?
代码:
ios - 来自服务器 URL 的 .obj 文件不起作用
我需要从服务器 URL 导入 3D 模型,但它不能正常工作。这是我的代码:
...在此处崩溃object
。
export - 将 StarUML 项目导出到 Modelio
谁能告诉我如何将 StarUML 项目导出到 Modelio 环境,Modelio 似乎比 StarUML 更好,但如果无法导出,我还有很大的工作要做。请帮忙 !!!
swift - 使用 SceneKit 和模型 I/O 中的多个子对象、纹理、材质将 .obj 加载到 .scn?
我目前正在使用 Apple 的 SceneKit/Model I/O 中的大型 .obj 文件,其中包含多个对象,每个对象都有单独的纹理和材质。这意味着我不能像许多其他表单帖子所建议的那样将单个纹理应用于文件。有没有很好的方法来导入材质和纹理?
我的 obj mtl 和 jpg 都在一个目录中,我也将 scn 场景放在该目录中。
代码当前遵循此设计,我从其各自的位置访问它,将其加载到 MDLAsset 中,然后将其放置到 SCNScene 中,然后将其保存回文件中,以便稍后在代码中加载。
MDLAsset.loadTextures 函数没有文档,只会导致内存泄漏,因此在本文发布时,它不是一个选项。手动打开模型并点击转换为 SCNScene 也不起作用,因为我仍然丢失了材料。此外,我希望这在代码中实现自动化,以允许在运行时下载和转换模型。
似乎没有内置的方法可以做到这一点,除了在代码中手工制作每个纹理和材料,当它只有一个完整的纹理时这很容易,但这个模型可能有 100 种不同的材料。看起来它需要我手动解析 obj/mtl,然后手动创建和分配材料。这似乎完全不合理,我认为一定有更好的方法,我不知道。
uml - jHipster UML,Modelio 的无效类型异常
我正在尝试从 .xmi Modelio UML 文件中生成 jHipster 上的实体,出现此错误:
发生错误:WrongTypeException 错误消息:JHipster 不支持“ELong”类型。
swift - 无法使用 Xcode 上的 ModelIO 库通过脚本快速加载 USDZ 文件的纹理
我在我的 Xcode 项目中添加了一个 USDZ 文件。USDZ 文件在我的 Mac 上打开的 Xcode 项目中正常显示,但是,当我尝试使用 modelIO 库通过代码加载它时,它会加载网格,但不会加载纹理。
在下面的快照中有一个我尝试加载的蜜蜂模型。第二个是蜜蜂和飞机,蜜蜂纹理没有渲染,而飞机纹理加载没有问题。我还将 USDZ 文件转换为 scn 文件,它工作正常。我认为问题不在于文件,而是我使用的代码无法正确加载 USDZ 文件。我正在尝试通过代码加载 USDZ 文件,而我使用的库并不重要。如果您有其他建议,我愿意倾听。
我使用以下代码加载我的模型:
这里有一些快照来展示我得到的结果: - 来自我 Mac 上 Xcode 查看器的快照,成功地显示了带有纹理的蜜蜂:
- 手机、蜜蜂和飞机上的应用程序快照,蜜蜂纹理不可见:
- 在 Xcode 控制台上,我收到以下错误日志:
我在这里缺少什么将模型文件(包括纹理)完全加载到我的场景中?