/// <summary> /// Draw the Image preview. /// </summary> public override void OnPreviewGUI(Rect drawArea, GUIStyle background) { DisplayUGUI rawImage = target as DisplayUGUI; Texture tex = rawImage.mainTexture; if (tex == null) { return; } // Create the texture rectangle that is centered inside rect. Rect outerRect = drawArea; Matrix4x4 m = GUI.matrix; // Flip the image vertically if (rawImage.HasValidTexture()) { if (rawImage.Player.TextureProducer.RequiresVerticalFlip()) { GUIUtility.ScaleAroundPivot(new Vector2(1f, -1f), new Vector2(0f, outerRect.y + (outerRect.height / 2f))); } } EditorGUI.DrawTextureTransparent(outerRect, tex, ScaleMode.ScaleToFit); //, outer.width / outer.height); //SpriteDrawUtility.DrawSprite(tex, rect, outer, rawImage.uvRect, rawImage.canvasRenderer.GetColor()); GUI.matrix = m; }
void InitUI() { disPlayUGUI = transform.Find("AVPro Video").GetComponent <DisplayUGUI>(); loadPlayer = GameObject.Find("MediaPlayer").GetComponent <MediaPlayer>(); disPlayUGUI._mediaPlayer = loadPlayer; Button[] btns = transform.GetComponentsInChildren <Button>(); for (int i = 0; i < btns.Length; i++) { BtnArgs args = new BtnArgs(i + 1, btns[i].gameObject); btns[i].onClick.AddListener(() => { OnClickBtn(args); }); } audioSlider = transform.Find("audioSlider").GetComponent <Slider>(); audioSlider.value = 1; audioSlider.onValueChanged.AddListener(delegate { loadPlayer.Control.SetVolume(audioSlider.value); }); _videoSeekSlider = transform.Find("VideoSeekSlider").GetComponent <Slider>(); _bufferedSliderRect = _videoSeekSlider.transform.Find("Buffered Area/Fill").GetComponent <RectTransform>(); _bufferedSliderImage = _bufferedSliderRect.GetComponent <Image>(); }
private void InitDisplayPnl() { if (displayPnl == null) { if (displayCanvas == null) { displayCanvas = new GameObject("VideoDisplayCanvas").AddComponent <Canvas>(); displayCanvas.renderMode = RenderMode.ScreenSpaceCamera; var scale = displayCanvas.gameObject.AddComponent <CanvasScaler>(); scale.matchWidthOrHeight = Framework.UIModule.DefaultMatchRatio(false); scale.uiScaleMode = CanvasScaler.ScaleMode.ScaleWithScreenSize; scale.referenceResolution = Framework.Driver.Instance.Config._uiResolution; LayerTools.SetLayer(displayCanvas.gameObject, (int)canvasLayer); } displayPnl = new GameObject("VideoDisplayPnl").AddComponent <DisplayUGUI>(); displayPnl.transform.SetParent(displayCanvas.transform, false); LayerTools.SetLayer(displayPnl.gameObject, (int)canvasLayer); ResetDisplayPnl(); displayPnl.raycastTarget = false; displayPnl._scaleMode = ScaleMode.ScaleAndCrop; displayPnl._noDefaultDisplay = defaultTexture == null; if (defaultTexture != null) { displayPnl._defaultTexture = defaultTexture; displayPnl.enabled = false; } } displayPnl._mediaPlayer = CurMediaPlayer; }
private void UpdateVideosLayout() { GameObject canvasPanel = GameObject.Find("Canvas/Panel"); RectTransform canvasRectTransform = (canvasPanel) ? canvasPanel.GetComponent <RectTransform>() : null; if (canvasRectTransform) { Vector2 canvasSize = canvasRectTransform.sizeDelta; Vector2 halfCanvasSize = new Vector2(canvasSize.x * 0.5f, canvasSize.y * 0.5f); int iNumMovies = m_aAddedVideos.Count; int iNumColRows = Mathf.CeilToInt(Mathf.Sqrt(iNumMovies)); float fWidth = (1.0f / iNumColRows) * canvasSize.x; float fHeight = (1.0f / iNumColRows) * canvasSize.y; for (int i = 0; i < iNumMovies; ++i) { DisplayUGUI gui = m_aAddedVideos[i]; int x = i % iNumColRows; int y = i / iNumColRows; gui.rectTransform.anchoredPosition = new Vector2(((fWidth * x) - halfCanvasSize.x), ((fHeight * -y) + halfCanvasSize.y)); gui.rectTransform.sizeDelta = new Vector2(fWidth, fHeight); } } }
void Start() { vPlayer = gameObject.GetComponentInChildren <DisplayUGUI>(); vPlayer._mediaPlayer = MediaPlayerMgr; PicturePlayer = transform.Find("PicturePlayer").gameObject.GetComponent <RawImage>(); }
protected override void OnInitSkinDone() { base.OnInitSkinDone(); vPlayer = gameObject.GetComponentInChildren <DisplayUGUI>(); vPlayer._mediaPlayer = MediaPlayerMgr; PicturePlayer = skinTransform.Find("VideoPlayer/PicturePlayer").gameObject.GetComponent <RawImage>(); }
public void SetupTarget(DisplayUGUI target, Image background) { if (VideoComp != null) { VideoComp.MediaDisplay = target; VideoComp.MediaBackground = background; } }
//public string VideoPath; // Use this for initialization void Start() { if (playugui == null) { playugui = FindObjectOfType <DisplayUGUI>(); playcotorl = playugui._mediaPlayer; // playcotorl.OpenVideoFromFile(MediaPlayer.FileLocation.RelativeToStreamingAssetsFolder, VideoPath); } }
public void getTime() { if (playugui == null) { playugui = GetComponent <DisplayUGUI>(); playcotorl = playugui._mediaPlayer; playcotorl.m_Muted = true; playcotorl.OpenVideoFromFile(MediaPlayer.FileLocation.RelativeToStreamingAssetsFolder, VideoPath, false); playcotorl.Play(); } }
protected override void OnInitDone() { base.OnInitDone(); MediaPlayerMgr.m_Loop = true; vPlayer = gameObject.GetComponentInChildren <DisplayUGUI>(); vPlayer._mediaPlayer = MediaPlayerMgr; vPlayer._mediaPlayer = MediaPlayerMgr; MediaPlayerMgr.Events.AddListener(FinishVideo); VideoPlay(videoName); }
//---------------------------------- // LoadUIImages //---------------------------------- public void LoadUIMovies() { if (uiMovies.Length == 0) { return; } GameObject parentObj = new GameObject("Mediaplayers"); for (int i = 0; i < uiMovies.Length; i++) { if (uiMovies[i].fileName != "") { // create mediaplayer GameObject obj = new GameObject("mediaplayer_" + uiMovies[i].fileName); obj.transform.SetParent(parentObj.transform); MediaPlayer player = obj.AddComponent <MediaPlayer>(); player.m_Loop = uiMovies[i].loop; player.OpenVideoFromFile( MediaPlayer.FileLocation.AbsolutePathOrURL, rootDataPath + movieDirPath + uiMovies[i].fileName, false ); player.Events.AddListener(OnVideoEvent); // create displayui DisplayUGUI movie = uiMovies[i].obj.GetComponent <DisplayUGUI>(); if (movie == null) { movie = uiMovies[i].obj.AddComponent <DisplayUGUI>(); movie._noDefaultDisplay = false; movie._displayInEditor = false; movie.color = new Color(0, 0, 0, 0); movie._mediaPlayer = player; } else { movie._mediaPlayer = player; } mediaPlayer.Add(player); } } }
/// <summary> /// Info String drawn at the bottom of the Preview /// </summary> public override string GetInfoString() { DisplayUGUI rawImage = target as DisplayUGUI; string text = string.Empty; if (rawImage.HasValidTexture()) { text += string.Format("Video Size: {0}x{1}\n", Mathf.RoundToInt(Mathf.Abs(rawImage.mainTexture.width)), Mathf.RoundToInt(Mathf.Abs(rawImage.mainTexture.height))); } // Image size Text text += string.Format("Display Size: {0}x{1}", Mathf.RoundToInt(Mathf.Abs(rawImage.rectTransform.rect.width)), Mathf.RoundToInt(Mathf.Abs(rawImage.rectTransform.rect.height))); return text; }
public void AddVideoClicked() { ++m_NumVideosAdded; // New media player GameObject newMediaPlayerGameObject = new GameObject("AVPro MediaPlayer " + m_NumVideosAdded.ToString()); MediaPlayer newMediaPlayer = newMediaPlayerGameObject.AddComponent <MediaPlayer>(); newMediaPlayer.m_VideoPath = m_videoPath; newMediaPlayer.m_AutoStart = true; newMediaPlayer.m_Loop = true; newMediaPlayer.SetGuiPositionFromVideoIndex(m_NumVideosAdded - 1); newMediaPlayer.SetDebugGuiEnabled(m_NumVideosAdded < 5); // New uGUI object GameObject canvasPanel = GameObject.Find("Canvas/Panel"); if (canvasPanel != null) { // New game object, and make it a child of the canvas panel GameObject newGuiGameObject = new GameObject("AVPro Video uGUI " + m_NumVideosAdded.ToString()); newGuiGameObject.transform.parent = canvasPanel.transform; newGuiGameObject.SetActive(false); // Add the components newGuiGameObject.AddComponent <RectTransform>(); newGuiGameObject.AddComponent <CanvasRenderer>(); // Add the DisplayUGUI; DisplayUGUI newGuiObject = newGuiGameObject.AddComponent <DisplayUGUI>(); newGuiObject._mediaPlayer = newMediaPlayer; newGuiObject._keepAspectRatio = false; newGuiObject.rectTransform.localScale = Vector3.one; newGuiObject.rectTransform.pivot = new Vector2(0.0f, 1.0f); m_aAddedVideos.Add(newGuiObject); // Update layout UpdateVideosLayout(); } }
public void RemoveVideoClicked() { if (m_aAddedVideos.Count > 0) { // Pick a random element to remove int index = Random.Range(0, m_aAddedVideos.Count); DisplayUGUI gui = m_aAddedVideos[index]; // Stop and destroy the MediaPlayer if (gui._mediaPlayer != null) { gui._mediaPlayer.CloseVideo(); GameObject.Destroy(gui._mediaPlayer.gameObject); gui._mediaPlayer = null; } // Destroy the Display object GameObject.Destroy(gui.gameObject); // Update variables m_aAddedVideos.RemoveAt(index); m_NumVideosAdded--; } }
public void AddVideoClicked() { ++m_NumVideosAdded; // New media player GameObject newMediaPlayerGameObject = new GameObject("AVPro MediaPlayer " + m_NumVideosAdded.ToString()); MediaPlayer newMediaPlayer = newMediaPlayerGameObject.AddComponent <MediaPlayer>(); newMediaPlayer.m_Loop = true; newMediaPlayer.OpenVideoFromFile(m_videoLocation, m_videoPath, true); // New uGUI object GameObject canvasPanel = GameObject.Find("Canvas/Panel"); if (canvasPanel != null) { // New game object, and make it a child of the canvas panel GameObject newGuiGameObject = new GameObject("AVPro Video uGUI " + m_NumVideosAdded.ToString()); newGuiGameObject.transform.parent = canvasPanel.transform; newGuiGameObject.SetActive(false); // Add the components newGuiGameObject.AddComponent <RectTransform>(); newGuiGameObject.AddComponent <CanvasRenderer>(); // Add the DisplayUGUI; DisplayUGUI newGuiObject = newGuiGameObject.AddComponent <DisplayUGUI>(); newGuiObject._mediaPlayer = newMediaPlayer; newGuiObject._scaleMode = ScaleMode.StretchToFill; newGuiObject.rectTransform.localScale = Vector3.one; newGuiObject.rectTransform.pivot = new Vector2(0.0f, 1.0f); m_aAddedVideos.Add(newGuiObject); // Update layout UpdateVideosLayout(); } }
public override bool RequiresConstantRepaint() { DisplayUGUI rawImage = target as DisplayUGUI; return (rawImage != null && rawImage.HasValidTexture()); }
/// <summary> /// Allow the texture to be previewed. /// </summary> public override bool HasPreviewGUI() { DisplayUGUI rawImage = target as DisplayUGUI; return rawImage != null; }
public void SetDisplayPnl(DisplayUGUI displayPnl) { this.displayPnl = displayPnl; InitDisplayPnl(); }
private void Awake() { player = new GameObject("MediaPlyaer").AddComponent <MediaPlayer>(); _displayUgui = GameObject.Find("AVPro Video").GetComponent <DisplayUGUI>(); }
public override bool RequiresConstantRepaint() { DisplayUGUI displayComponent = target as DisplayUGUI; return(displayComponent != null && displayComponent.HasValidTexture()); }
public virtual void initialization() { animator = this.GetComponent <Animator>(); displayUGUI = GetComponentInChildren <DisplayUGUI>(); displayUGUI._mediaPlayer = FindObjectOfType <MediaPlayer>(); }
private void Awake() { videoPath = Application.dataPath + "/StreamingAssets/Videos/"; display = GetComponent <DisplayUGUI>(); }