xr-frame加载模型、多个视频后导致微信崩溃进入安全模式
在项目中使用XR-FRAME,js动态加载GLTF和多个视频纹理到面片上,视频贴图并用shader进行了透明度的处理。在PC上微信开发者工具无异常,可正常显示。但手机上只要进入这个页面就崩溃(已将日志上传,时间大概是16:30分左右)。 部分代码:
async beginAnimation(scene, rootNode) {
let hangmuModel = scene.createElement(xrFrameSystem.XRGLTF, { model: "hangmu", "anim-autoplay": "", position: "0 0 0", scale: "1 1 1", rotation: "0 0 0" });
rootNode.addChild(hangmuModel);
const dengtaVT = scene.assets.getAsset('video-texture', 'dengta')
const videoTsbsMatDengTa = scene.createMaterial(
scene.assets.getAsset('effect', 'video-tsbs'),
{ u_baseColorMap: dengtaVT._texture }
);
scene.assets.addAsset('material', 'video-tsbs-mat-dengta', videoTsbsMatDengTa);
let dengtaPlane = scene.createElement(xrFrameSystem.XRMesh,
{
geometry: "plane",
position: "0 0 113",
scale: "198 1 108",
rotation: "-90 0 0",
material: "video-tsbs-mat-dengta"
}
);
rootNode.addChild(dengtaPlane);
dengtaVT.play()
const haiVT = scene.assets.getAsset('video-texture', 'hai')
const videoTsbsMatHai = scene.createMaterial(
scene.assets.getAsset('effect', 'video-tsbs'),
{ u_baseColorMap: haiVT._texture }
);
scene.assets.addAsset('material', 'video-tsbs-mat-hai', videoTsbsMatHai);
let haiPlane = scene.createElement(xrFrameSystem.XRMesh,
{
geometry: "plane",
position: "0 0 112",
scale: "198 1 108",
rotation: "-90 0 0",
material: "video-tsbs-mat-hai"
}
);
rootNode.addChild(haiPlane);
haiVT.play()
}
已上传完整的代码片段。 iPhone手机: [图片][图片]