当我单击网站上的AR快速浏览图标时,它没有显示3D模型,并且收到消息“无法打开对象”。 USDZ当前托管在Google存储桶中。问题可能出在托管USDZ的方式上吗?如果可以的话,有没有建议我托管USDZ文件的地方?
答案 0 :(得分:1)
我将答案发布在这里,因为这个问题是我遇到的第一个Google结果:
在完全按照Apple文档的建议引用usdz
文件时,AR按钮会呈现在预告图像的顶部。单击链接的图像时,Safari打开“快速查看”屏幕,但显示消息“无法打开对象”。弹出。但是,当我直接通过其URL访问usdz
文件时,AR模型的确可以正确呈现。
问题是整个站点都受到配置有.htaccess
文件的HTTP Basic Auth的保护。显然,Safari将不会使用现有会话来访问usdz
文件,因此无法加载该文件。
就我而言,它有助于从站点中删除HTTP Basic Auth保护。该网站公开访问后,便可以毫无问题地加载AR模型。
答案 1 :(得分:0)
将USDZ文件托管在Google存储桶中应该可以正常工作,只要正确设置了存储桶的权限即可访问该文件。如果出于任何原因无法打开USDZ文件,Safari会显示“无法打开对象”消息,而我还没有找到一种方法来轻松获取更多细节。
您是否尝试过直接从Safari访问USDZ文件网址?如果链接,权限等都正确,它将在浏览器中显示为zip文件。
此外,通过在Mac上使用URL下载USDZ文件,并确保该文件在Finder中的“快速查找”中按预期显示,来确保USDZ文件本身没有问题。
如果您可以分享代码外观和尝试过的内容的更多详细信息,将很有帮助。我用于测试的最小代码如下,它在Google Storage中可以正常工作。
<html>
<body>
<a href="example.usdz" rel="ar">
<img src="example.png"/>
</a>
</body>
</html>
答案 2 :(得分:0)
嵌入到USDZ文件的链接以直接使用AR场景。
以下是用于多个usdz文件的代码:
<html>
<head>
<meta charset="utf-8">
<title>Augmented Reality</title>
</head>
<body>
<div>
<a href="yourDirectory/ar_pixar_file_01.usdz" rel="ar">
<img src="ar_image_01.png" alt="AR Image" width="360" height="240">
</a>
<a href="yourDirectory/ar_pixar_file_02.usdz" rel="ar">
<img src="ar_image_02.png" alt="AR Image" width="360" height="240">
</a>
<a href="yourDirectory/ar_pixar_file_03.usdz" rel="ar">
<img src="ar_image_03.png" alt="AR Image" width="360" height="240">
</a>
</div>
</body>
</html>
此代码段中最重要的部分是
rel="ar"
属性,表示该图像上的链接引用的是可用于iOS AR Viewer的内容。