Beispiel #1
0
        public void Dispose()
        {
            MediaPlayer.CloseVideo();

            MediaPlayer     = null;
            DisplayUGUI     = null;
            FinishedPlaying = null;
            m_GGraph.Dispose();
        }
Beispiel #2
0
        public async void CreateAVObject(GGraph gGraph, string videoName, bool autoOpen, bool autoStart, bool loop, float volume)
        {
            m_GGraph = gGraph;

            string assetPathName = GlobalPath.Hoftix.GetAVObejct_PrefabAsset(videoName);

            LoadAssetCallbacks loadAsset = await CentorPivot.This.GetComponent <ResourceComponent>().LoadAsset(assetPathName, AssetCategory.FGUI);

            if (loadAsset.LoadAssetStatus == LoadAssetStatus.Failed)
            {
                Log.Info(loadAsset.ErrorMessage, LogCategory.Resource);
                return;
            }

            GameObject @object = UnityEngine.Object.Instantiate((GameObject)loadAsset.Target);

            @object.GetComponent <RectTransform>().sizeDelta = new Vector2(GRoot.inst.width, GRoot.inst.height);
            @object.GetComponent <RectTransform>().pivot     = new Vector2(0, 1);
            @object.transform.localPosition    = new Vector3(0, 0, 0);
            @object.transform.localScale       = new Vector3(1, 1, 1);
            @object.transform.localEulerAngles = new Vector3(0, 0, 0);

            ReferenceCollector collector = @object.gameObject.GetComponent <ReferenceCollector>();

            MediaPlayer = collector.Get <GameObject>("MediaPlayer").GetComponent <MediaPlayer>();

            DisplayUGUI = collector.Get <GameObject>("DisplayUGUI").GetComponent <DisplayUGUI>();

            MediaPlayer.m_AutoOpen  = autoOpen;
            MediaPlayer.m_AutoStart = autoStart;
            MediaPlayer.m_Loop      = loop;
            MediaPlayer.m_Volume    = volume;
            MediaPlayer.Events.AddListener(OnMediaPlayerEvent);

            m_GGraph.SetNativeObject(new GoWrapper(@object));

            if (ResourceComponent.This == null)
            {
                Log.Error("ResourceOnly is un exist");
            }
            else
            {
                ResourceComponent.This.UnloadAsset(loadAsset.Target, AssetCategory.FGUI);
            }
        }