(A-Frame)本地 gltf 不会加载;无法读取未定义的属性“切片”

Posted

技术标签:

【中文标题】(A-Frame)本地 gltf 不会加载;无法读取未定义的属性“切片”【英文标题】:(A-Frame) local gltf wont load; Cannot read property 'slice' of undefined 【发布时间】:2017-11-25 15:54:03 【问题描述】:

我从 A-Frame School 获取代码,其中加载了 gltf 模型。然后我从 Khronos this box 加载了示例模型并尝试加载它,但我收到此错误(多次)

GLTFLoader.js:979 Uncaught (in promise) TypeError: Cannot read property 'slice' of undefined
at GLTFLoader.js:979
at i (GLTFLoader.js:570)
at GLTFLoader.js:975
at <anonymous>

我可以加载 .obj 模型并尝试了模型的多个版本,但总是出现错误。 示例代码在本地工作,这意味着它正确加载模型,从 aframe cdn 获取它。

这是完成的代码

<!DOCTYPE html>
<html>
  <head>
    <title>glTF Model</title>
    <meta name="description" content="glTF Model">
    <script src="https://rawgit.com/aframevr/aframe/b395ea0/dist/aframe-master.min.js"></script>
  </head>
  <body>
    <a-scene>
      <a-assets>
        <a-asset-item id="boxModel" src="Box.gltf"></a-asset-item>
      </a-assets>          
      <a-gltf-model src="#boxModel"></a-gltf-model>
    </a-scene>
  </body>
</html>  

【问题讨论】:

【参考方案1】:

这些模型位于 2.0 文件夹中,这意味着您需要 glTF v2.0 加载器。 A-Frame 0.5.0/0.6.0 支持 glTF v1。但 glTF v2 将在 A-Frame 0.7.0 中得到支持,但你可以使用来自 Don McCurdy 的gltf-model-next

https://github.com/donmccurdy/aframe-extras/blob/master/src/loaders/gltf-model-next.js

或者您可以从 1.0 文件夹中获取不同的模型:https://github.com/KhronosGroup/glTF-Sample-Models/tree/master/1.0

【讨论】:

【参考方案2】:

将 Aframe 版本替换为:

&lt;script src="https://aframe.io/releases/0.7.1/aframe.min.js"&gt;&lt;/script&gt;

【讨论】:

以上是关于(A-Frame)本地 gltf 不会加载;无法读取未定义的属性“切片”的主要内容,如果未能解决你的问题,请参考以下文章

GLTF 不渲染,卡在蓝色加载屏幕

html A-FRAME OBJ,MTL和GLTF SIMPLE DEMO

AFrame gltf 加载器无法识别我的资产

A-frame 将 zip 包转换为 glb 用于草图工厂模型

无法加载 GLTF 对象

gltf 动画不使用平面着色器