NWD (FBX) 到 SVF 的转换 - 在 Forge Viewer 中找不到纹理

问题描述

我们最近发现了将 NWD 文件(带有 FBX)转换为 SVF 的问题。它曾经在四月之前完美运行。我们仍然引用它工作时使用的相同 Forge 库。

问题是转换后的 SVF 文件没有在模型元素上显示纹理,因为我们的查看器要求提供名为

的纹理文件
"navis_example_file_svf_tex_mod.jpg" 

而我们从bucket下载的对应资源是

"navis_example_file.jpg"

我们已经断言模型清单包含“navis_example_file.jpg”而没有“_svf_tex_mod”后缀。

但是,我们在与模型相关的 Materials.json 中发现了对“navis_example_file_svf_tex_mod.jpg”的引用。我们使模型显示纹理的解决方法是更改​​ Materials.json 中的引用以匹配 jpg 文件

用于上传/转换/下载 SVF 模型的 API 是否有任何更改可能导致此问题?

服务器端环境:Autodesk.Forge 1.9.0 (Nuget)

我们在整个流程中使用 EMEA 地区,使用以下端点:

  • BucketsApi(GetBucketDetailsAsync、CreateBucketAsync、GetBucketsAsync)
  • DerivativesApi(GetManifestAsync、TranslateAsync)
  • ObjectsApi(UploadobjectAsync、UploadChunkAsync)

客户端环境: Forge 查看器 (7.40)。

  • 初始化查看器:
Autodesk.Viewing.InitializerOptions =

{ env: 'Local',useADP: false,useConsolidation: true,useCredentials: true }

加载模型:

this.viewer.loadModel("svf urn from our own server")

更新

我们尝试直接从 Autodesk 服务器加载模型并且它可以工作,这与我们下载衍生产品的离线版本相反。我们在下面使用了这些设置。在这种情况下,纹理都具有“svf_tex_mod”后缀。

const AUTODESK_ENVIRONMENT_OPTIONS: Autodesk.Viewing.InitializerOptions = {
  env: 'AutodeskProduction',accesstoken: "<Access token here>",};

...

Autodesk.Viewing.Document.load('urn:<URN here>',successCallback,...);

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)