AMP

重要提示:此文档不适用于您当前选择的格式故事

amp-3d-gltf

描述

显示 GL 传输格式 (gITF) 3D 模型。

 

必需脚本

<script async custom-element="amp-3d-gltf" src="https://cdn.ampproject.org/v0/amp-3d-gltf-0.1.js"></script>

用法

amp-3d-gltf 组件显示 gITF 格式的 3D 模型。

你必须使用支持 WebGL 的浏览器才能显示 3D 模型。

示例

<amp-3d-gltf
  layout="responsive"
  width="320"
  height="240"
  alpha="true"
  antialiasing="true"
  src="path/to/model.glb"
></amp-3d-gltf>

兼容性

该组件支持 glTF 2.0,但有以下例外情况

  • 嵌入式相机
  • 动画

设置 CORS 标头

amp-3d-gltf 组件请求 gltf 文件时,它会从 https://<random>.ampproject.net 向源发起获取请求。在 src 端点的响应标头中设置 access-control-allow-origin:*.ampproject.net,以避免从 AMP 缓存提供时出现 CORS 问题。使用通配符来处理 <random> 子域组件。

属性

src

src 属性指定 gltf 文件的位置。

alpha(可选)

使用 alpha 属性指定画布背景的行为。此属性采用布尔值。要启用透明而不是默认的白色,请将该值设置为 true

antialiasing(可选)

使用 antialiasing 属性指定是否启用抗锯齿。要启用抗锯齿,请将该值设置为 true。

clearColor(可选)

clearColor 属性指定 CSS 颜色,例如 #FF8C00。此颜色填充画布上的空白区域。

maxPixelRatio(可选)

maxPixelRatio 属性指定 pixelRatio 渲染选项的上限。它默认为 window.devicePixelRatio

autoRotate(可选)

使用 autoRotate 属性启用围绕模型中心的自动旋转。要启用旋转,请将该值设置为 trueautorotate 默认为 false

enableZoom(可选)

使用 enableZoom 属性禁用模型的放大和缩小。要禁用缩放,请将该值设置为 falseautorotate 默认为 true

title(可选)

为该组件定义一个 title 属性,以传播到基础的 <iframe> 元素。默认值为 "GLTF 3D 模型"

操作

setModelRotation

setModelRotation 操作指定模型的旋转。旋转顺序为 ZYX。

  • 使用 xy 和/或 z 参数指定 x、y 和/或 z 轴的旋转值。此操作接受 0 到 1 之间的数字。它默认为先前的值。
  • 使用 xMinxMaxyMinyMax 和/或 zMinzMax 参数指定以弧度为单位的旋转角度。使用最小值和最大值来定义目标范围。角度范围默认为 0 / pi * 2

以下操作会在触发时将组件的 x 轴旋转更改为 1.57。

setModelRotation((x = 0.5), (xMin = 0), (xMax = 3.14))

样式

以下是样式方面的一些注意事项

  • alpha 属性指定透明度。
  • clearColor 属性指定背景颜色(如果不是透明的)。
  • 如果您没有指定背景颜色,amp-3d-gltf 默认为白色背景。

验证

请参阅 AMP 验证器规范中的 amp-3d-gltf 规则

需要更多帮助?

您已经阅读此文档十几次了,但它并没有真正涵盖您的所有问题?也许其他人也有同感:在 Stack Overflow 上联系他们。

前往 Stack Overflow
发现错误或缺少功能?

AMP 项目强烈鼓励您的参与和贡献!我们希望您成为我们开源社区的持续参与者,但我们也欢迎您为自己特别关注的问题做出一次性贡献。

前往 GitHub