图片/全景图
相关参考:Scene API / 动态创建内容
Web 插件当前提供两类常用静态图像能力:
- 普通图片对象
- 全景图对象
普通图片
创建图片
js
const image = await api.createImage('https://your.domain.com/banner.png');
await api.add(image);也可以传 ArrayBuffer:
js
const response = await fetch('/assets/banner.png');
const buffer = await response.arrayBuffer();
const image = await api.createImage(buffer);
await api.add(image);设置位置和缩放
js
await api.setPosition(image, 0, 0.5, 0);
await api.setScale(image, 1.2, 1.2, 1.2);基础事件
图片对象可点击,可以监听:
js
await api.on('click', (event) => {
console.log(event);
}, image);全景图
创建全景图
js
const panorama = await api.createPanorama(
'https://your.domain.com/panorama.jpg',
64,
);
await api.add(panorama);第二个参数 segments 用于控制几何细分度,通常不需要太大。默认64。
全景图不支持点击事件
但支持位置、缩放和旋转。
图片和全景图的区别
| 类型 | 常见用途 |
|---|---|
| 图片 | 海报、贴片、UI 化元素、2D 内容 |
| 全景图 | Web3D 背景、沉浸式场景包裹 |
图片规范
只支持常见图片格式 - jpeg/jpg/png/gif
注意:只支持sRGB颜色空间的图片。一般情况下PS导出都是此配置。
Web3D 背景补充
如果场景编辑器中没有显式配置全景背景,运行时会补一个默认背景容器。因此:
- 你可以用场景编辑器里的全景图做主背景
- 也可以在运行时再创建并替换全景对象
推荐做法
- UI 型图片优先做成独立对象,方便宿主层控制显隐和点击。
- 大图资源优先做 CDN,并确保 CORS 正确。