public static void FinalizeLibrary() { /* 初期化カウンタの更新 */ CriAtomPlugin.initializationCount--; if (CriAtomPlugin.initializationCount < 0) { Debug.LogError("[CRIWARE] ERROR: Atom library is already finalized."); return; } if (CriAtomPlugin.initializationCount != 0) { return; } /* CriAtomListener の共有ネイティブリスナーを破棄 */ CriAtomListener.DestroySharedNativeListener(); /* CriAtomServerのインスタンスを破棄 */ CriAtomServer.DestroyInstance(); /* ライブラリの終了 */ CriAtomPlugin.criAtomUnity_Finalize(); /* 依存ライブラリの終了 */ CriFsPlugin.FinalizeLibrary(); }
protected virtual void SetInitialParameters() { this.use3dPositioning = this.use3dPositioning; /* ここで必要に応じて3Dソースが設定される */ CriAtomListener listener = CriAtomListener.instance; if (listener != null) { this.player.Set3dListener(listener.internalListener); } this.lastPosition = this.transform.position; this.source.SetPosition(this.lastPosition.x, this.lastPosition.y, this.lastPosition.z); this.source.Update(); this.player.SetVolume(this._volume); this.player.SetPitch(this._pitch); }
public static void InitializeLibrary() { /* 初期化カウンタの更新 */ CriAtomPlugin.initializationCount++; if (CriAtomPlugin.initializationCount != 1) { return; } /* シーン実行前に初期化済みの場合は終了させる */ if (CriAtomPlugin.IsLibraryInitialized() == true) { CriAtomPlugin.FinalizeLibrary(); CriAtomPlugin.initializationCount = 1; } /* 初期化パラメータが設定済みかどうかを確認 */ if (CriAtomPlugin.isConfigured == false) { Debug.Log("[CRIWARE] Atom initialization parameters are not configured. " + "Initializes Atom by default parameters."); } /* 依存ライブラリの初期化 */ CriFsPlugin.InitializeLibrary(); /* ライブラリの初期化 */ CriAtomPlugin.criAtomUnity_Initialize(); /* CriAtomServerのインスタンスを生成 */ #if UNITY_EDITOR /* ゲームプレビュー時のみ生成する */ if (UnityEngine.Application.isPlaying) { CriAtomServer.CreateInstance(); } #else CriAtomServer.CreateInstance(); #endif /* CriAtomListenerが存在しない場合のためのダミーリスナーを生成 */ CriAtomListener.CreateDummyNativeListener(); }
public static void FinalizeLibrary() { /* 初期化カウンタの更新 */ CriAtomPlugin.initializationCount--; if (CriAtomPlugin.initializationCount < 0) { CriAtomPlugin.initializationCount = 0; if (CriAtomPlugin.IsLibraryInitialized() == false) { return; } } if (CriAtomPlugin.initializationCount != 0) { return; } /* CriAtomListenerが存在しない場合のためのダミーリスナーを破棄 */ CriAtomListener.DestroyDummyNativeListener(); /* CriAtomServerのインスタンスを破棄 */ CriAtomServer.DestroyInstance(); /* 未破棄のDisposableを破棄 */ CriDisposableObjectManager.CallOnModuleFinalization(CriDisposableObjectManager.ModuleType.Atom); /* ユーザエフェクトインタフェースのリストをクリア */ if (effectInterfaceList != null) { effectInterfaceList.Clear(); effectInterfaceList = null; } /* ライブラリの終了 */ CriAtomPlugin.criAtomUnity_Finalize(); /* 依存ライブラリの終了 */ CriFsPlugin.FinalizeLibrary(); }
public static void InitializeLibrary() { /* 初期化カウンタの更新 */ CriAtomPlugin.initializationCount++; if (CriAtomPlugin.initializationCount != 1) { return; } /* CriWareInitializerが実行済みかどうかを確認 */ bool initializerWorking = CriWareInitializer.IsInitialized(); if (initializerWorking == false) { Debug.Log("[CRIWARE] CriWareInitializer is not working. " + "Initializes Atom by default parameters."); } /* 依存ライブラリの初期化 */ CriFsPlugin.InitializeLibrary(); /* ライブラリの初期化 */ CriAtomPlugin.criAtomUnity_Initialize(); /* CriAtomServerのインスタンスを生成 */ #if UNITY_EDITOR /* ゲームプレビュー時のみ生成する */ if (UnityEngine.Application.isPlaying) { CriAtomServer.CreateInstance(); } #else CriAtomServer.CreateInstance(); #endif /* CriAtomListener の共有ネイティブリスナーを生成 */ CriAtomListener.CreateSharedNativeListener(); }