UNPKG

@polygonjs/polygonjs

Version:

node-based WebGL 3D engine https://polygonjs.com

38 lines (32 loc) 1.01 kB
/** * Exports the input as USDZ * * @remarks */ import {ExporterSopNode, BaseExporterSopParamsConfig} from './_BaseExporter'; import {USDZExporter} from 'three/examples/jsm/exporters/USDZExporter'; import {SopExporter} from '../../poly/registers/nodes/types/Sop'; class ExporterUSDZSopParamsConfig extends BaseExporterSopParamsConfig {} const ParamsConfig = new ExporterUSDZSopParamsConfig(); export class ExporterUSDZSopNode extends ExporterSopNode<ExporterUSDZSopParamsConfig> { override paramsConfig = ParamsConfig; static override type() { return SopExporter.EXPORTER_USDZ; } fileExtension() { return 'usdz'; } createBlob(): Promise<Blob> { return new Promise(async (resolve) => { const sceneData = await this._prepareScene(); if (!sceneData) { return; } const {scene, objects} = sceneData; const exporter = new USDZExporter(); const result = await exporter.parseAsync(scene); console.log(result); this._handleResult(result, objects, resolve); }); } }