|
@@ -37,7 +37,7 @@ import config from "@/utils/config";
|
|
|
import browser from "@/utils/browser";
|
|
|
import { useApp } from "@/app";
|
|
|
import { useWxShared } from "@/hooks/useWxshared";
|
|
|
-
|
|
|
+import { useAudio } from "@/hooks/useAudio";
|
|
|
import { useI18n, getLocale } from "@/i18n";
|
|
|
const { t } = useI18n({ useScope: "global" });
|
|
|
|
|
@@ -46,7 +46,6 @@ initWxShare();
|
|
|
|
|
|
const coverInfo = ref({});
|
|
|
|
|
|
-
|
|
|
const store = useStore();
|
|
|
const show = ref(false);
|
|
|
const workEnable = ref(true);
|
|
@@ -114,7 +113,12 @@ onMounted(async () => {
|
|
|
);
|
|
|
}
|
|
|
|
|
|
- store.commit("scene/setCurrentScene", firstScene || data.scenes[0]);
|
|
|
+ // 所有audio入口
|
|
|
+
|
|
|
+ const currentSceneData = firstScene || data.scenes[0];
|
|
|
+ // debugger;
|
|
|
+ store.dispatch("audio/initNormalBGM", data.backgroundMusic.ossPath);
|
|
|
+ store.commit("scene/setCurrentScene", currentSceneData);
|
|
|
|
|
|
// 过滤空分组
|
|
|
let ttt = data.catalogRoot.filter((item) => {
|
|
@@ -187,56 +191,63 @@ onMounted(async () => {
|
|
|
},
|
|
|
passQueryParameters: true,
|
|
|
});
|
|
|
- coverInfo.value = data.coverInfo || {};
|
|
|
- app.Scene.lock();
|
|
|
- //如果不需要开场封面就直接渲染
|
|
|
- if (!coverInfo.value?.isShowCover) {
|
|
|
- app.render();
|
|
|
- }
|
|
|
-
|
|
|
- if (isHavePano) {
|
|
|
- app.Scene.on("sceneReady", () => {
|
|
|
- if (app.krpanoDom) {
|
|
|
- let defaultMask = `%SWFPATH%/skin/masking_${lang}.png`;
|
|
|
+ if (app) {
|
|
|
+ coverInfo.value = data.coverInfo || {};
|
|
|
+ app.Scene.lock();
|
|
|
+ //如果不需要开场封面就直接渲染
|
|
|
+ if (!coverInfo.value?.isShowCover) {
|
|
|
+ app.render();
|
|
|
+ }
|
|
|
|
|
|
- if (earthMask.value) {
|
|
|
- app.krpanoDom.set(`hotspot[nadirlogo].url`, defaultMask);
|
|
|
- app.krpanoDom.set(
|
|
|
- `hotspot[nadirlogo].visible`,
|
|
|
- Boolean(earthMask.value.isShow)
|
|
|
- );
|
|
|
+ if (isHavePano) {
|
|
|
+ app.Scene.on("sceneReady", () => {
|
|
|
+ if (app.krpanoDom) {
|
|
|
+ let defaultMask = `%SWFPATH%/skin/masking_${lang}.png`;
|
|
|
+
|
|
|
+ if (earthMask.value) {
|
|
|
+ app.krpanoDom.set(`hotspot[nadirlogo].url`, defaultMask);
|
|
|
+ app.krpanoDom.set(
|
|
|
+ `hotspot[nadirlogo].visible`,
|
|
|
+ Boolean(earthMask.value.isShow)
|
|
|
+ );
|
|
|
+
|
|
|
+ if (earthMask.value.icon) {
|
|
|
+ app.krpanoDom.set(
|
|
|
+ `hotspot[nadirlogo].url`,
|
|
|
+ earthMask.value.icon
|
|
|
+ );
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
- if (earthMask.value.icon) {
|
|
|
- app.krpanoDom.set(`hotspot[nadirlogo].url`, earthMask.value.icon);
|
|
|
+ if (skyMask.value) {
|
|
|
+ app.krpanoDom.set(`hotspot[peaklogo].url`, defaultMask);
|
|
|
+ app.krpanoDom.set(
|
|
|
+ `hotspot[peaklogo].visible`,
|
|
|
+ Boolean(skyMask.value.isShow)
|
|
|
+ );
|
|
|
+ if (skyMask.value.icon) {
|
|
|
+ app.krpanoDom.set(`hotspot[peaklogo].url`, skyMask.value.icon);
|
|
|
+ }
|
|
|
}
|
|
|
- }
|
|
|
|
|
|
- if (skyMask.value) {
|
|
|
- app.krpanoDom.set(`hotspot[peaklogo].url`, defaultMask);
|
|
|
app.krpanoDom.set(
|
|
|
- `hotspot[peaklogo].visible`,
|
|
|
- Boolean(skyMask.value.isShow)
|
|
|
+ `layer[webvr_exitbutton].html`,
|
|
|
+ t("common.exit_vr")
|
|
|
);
|
|
|
- if (skyMask.value.icon) {
|
|
|
- app.krpanoDom.set(`hotspot[peaklogo].url`, skyMask.value.icon);
|
|
|
- }
|
|
|
}
|
|
|
|
|
|
- app.krpanoDom.set(
|
|
|
- `layer[webvr_exitbutton].html`,
|
|
|
- t("common.exit_vr")
|
|
|
- );
|
|
|
- }
|
|
|
-
|
|
|
- let hotspots = [];
|
|
|
- if (currentScene.value.someData) {
|
|
|
- hotspots =
|
|
|
- typeof currentScene.value.someData == "string"
|
|
|
- ? JSON.parse(currentScene.value.someData).hotspots
|
|
|
- : currentScene.value.someData.hotspots;
|
|
|
- }
|
|
|
- app.Tags.initHotspot(hotspots, false);
|
|
|
- });
|
|
|
+ let hotspots = [];
|
|
|
+ if (currentScene.value.someData) {
|
|
|
+ hotspots =
|
|
|
+ typeof currentScene.value.someData == "string"
|
|
|
+ ? JSON.parse(currentScene.value.someData).hotspots
|
|
|
+ : currentScene.value.someData.hotspots;
|
|
|
+ }
|
|
|
+ app.Tags.initHotspot(hotspots, false);
|
|
|
+ });
|
|
|
+ }
|
|
|
+ const { initDefaultAudio } = useAudio();
|
|
|
+ initDefaultAudio();
|
|
|
}
|
|
|
});
|
|
|
});
|