diff --git a/3d/Assets/AVProVideo/Editor/Scripts/MediaReferenceEditor.cs b/3d/Assets/AVProVideo/Editor/Scripts/MediaReferenceEditor.cs index 2242850..6d19abb 100644 --- a/3d/Assets/AVProVideo/Editor/Scripts/MediaReferenceEditor.cs +++ b/3d/Assets/AVProVideo/Editor/Scripts/MediaReferenceEditor.cs @@ -294,6 +294,8 @@ namespace RenderHeads.Media.AVProVideo.Editor GL.sRGBWrite = false; RenderTexture rt2 = null; + + Material materialResolve = new Material(Shader.Find(VideoRender.Shader_Resolve)); VideoRender.SetupVerticalFlipMaterial(materialResolve, _thumbnailPlayer.RequiresVerticalFlip()); VideoRender.SetupAlphaPackedMaterial(materialResolve, _thumbnailPlayer.GetTextureAlphaPacking()); @@ -316,6 +318,7 @@ namespace RenderHeads.Media.AVProVideo.Editor Material.DestroyImmediate(materialResolve); materialResolve = null; + Texture2D readTexture = new Texture2D(128, 128, TextureFormat.RGBA32, true, false); Helper.GetReadableTexture(rt2, readTexture); MediaReference mediaRef = (this.targets[_targetIndex]) as MediaReference; diff --git a/3d/Assets/AVProVideo/Editor/Scripts/RecentMenu.cs b/3d/Assets/AVProVideo/Editor/Scripts/RecentMenu.cs index 106640c..d3186d1 100644 --- a/3d/Assets/AVProVideo/Editor/Scripts/RecentMenu.cs +++ b/3d/Assets/AVProVideo/Editor/Scripts/RecentMenu.cs @@ -195,7 +195,7 @@ namespace RenderHeads.Media.AVProVideo.Editor string path = items[i]; // Slashes in path must be replaced as they cause the menu to create submenuts string itemName = ReplaceSlashes(path); - // TODO: shorten if itemName too long + menu.AddItem(new GUIContent(prefix + itemName), false, Callback_Select, new RecentMenuItemData(path, propPath, propMediaSource, autoLoadMedia)); } if (items.Count > 0) diff --git a/3d/Assets/AVProVideo/Runtime/Scripts/Components/DisplayIMGUI.cs b/3d/Assets/AVProVideo/Runtime/Scripts/Components/DisplayIMGUI.cs index 252ed3a..a347f6a 100644 --- a/3d/Assets/AVProVideo/Runtime/Scripts/Components/DisplayIMGUI.cs +++ b/3d/Assets/AVProVideo/Runtime/Scripts/Components/DisplayIMGUI.cs @@ -245,7 +245,7 @@ namespace RenderHeads.Media.AVProVideo Rect rect = GetAreaRect(); - // TODO: change this to a material-only path so we only have a single drawing path + if (_material != null) { // TODO: Only setup material when needed diff --git a/3d/Assets/AVProVideo/Runtime/Scripts/Components/MediaPlayer_ExtractFrame.cs b/3d/Assets/AVProVideo/Runtime/Scripts/Components/MediaPlayer_ExtractFrame.cs index 341f42e..8b3feb8 100644 --- a/3d/Assets/AVProVideo/Runtime/Scripts/Components/MediaPlayer_ExtractFrame.cs +++ b/3d/Assets/AVProVideo/Runtime/Scripts/Components/MediaPlayer_ExtractFrame.cs @@ -21,7 +21,7 @@ namespace RenderHeads.Media.AVProVideo { _playerInterface.Update(); - // TODO: check if Seeking has completed! Then we don't have to wait + // If frame has changed we can continue // NOTE: this will never happen because GL.IssuePlugin.Event is never called in this loop diff --git a/3d/Assets/AVProVideo/Runtime/Scripts/Internal/Helper.cs b/3d/Assets/AVProVideo/Runtime/Scripts/Internal/Helper.cs index dd284e4..341a15b 100644 --- a/3d/Assets/AVProVideo/Runtime/Scripts/Internal/Helper.cs +++ b/3d/Assets/AVProVideo/Runtime/Scripts/Internal/Helper.cs @@ -285,7 +285,7 @@ namespace RenderHeads.Media.AVProVideo Orientation result = Orientation.Landscape; if (t != null) { - // TODO: check that the Portrait and PortraitFlipped are the right way around + if (t[0] == 0f && t[1]== 1f && t[2] == -1f && t[3] == 0f) { result = Orientation.Portrait;