public override void OnPreviewSettings() { _renderMode = (RenderMode)EditorGUILayout.EnumPopup(_renderMode); if (_viewPreview != null) { RenderFlags flags = IsGL() ? 0 : RenderFlags.FlipY; if (_renderMode == RenderMode.Normal) { _viewPreview.SetFlags(flags); } else if (_renderMode == RenderMode.Wireframe) { _viewPreview.SetFlags(flags | RenderFlags.Wireframe); } else if (_renderMode == RenderMode.Batches) { _viewPreview.SetFlags(flags | RenderFlags.ColorBatches); } else if (_renderMode == RenderMode.Overdraw) { _viewPreview.SetFlags(flags | RenderFlags.Overdraw); } } }
private void CreateViewIcon() { try { FrameworkElement root = GetRootIcon(); _viewIcon = Noesis.GUI.CreateView(root); _viewIcon.SetFlags(IsGL() ? 0 : RenderFlags.FlipY); _commands.Clear(); NoesisRenderer.RegisterView(_viewIcon, _commands); Graphics.ExecuteCommandBuffer(_commands); } catch (System.Exception e) { UnityEngine.Debug.LogException(e); } }
private void CreatePreviewView() { try { NoesisXaml xaml = (NoesisXaml)target; FrameworkElement root = xaml.Load() as FrameworkElement; _viewPreview = Noesis.GUI.CreateView(root); _viewPreview.SetFlags(IsGL() ? 0 : RenderFlags.FlipY); NoesisRenderer.RegisterView(_viewPreview, _commands); Graphics.ExecuteCommandBuffer(_commands); _commands.Clear(); } catch (System.Exception e) { UnityEngine.Debug.LogException(e); } }
private void CreatePreviewGUIView() { try { NoesisXaml xaml = (NoesisXaml)target; FrameworkElement root = xaml.Load() as FrameworkElement; View.RenderFlags flags = DeviceIsD3D() ? View.RenderFlags.FlipY : 0; if (root != null) { _viewPreviewGUI = Noesis.GUI.CreateView(root); _viewPreviewGUI.SetFlags(flags); NoesisRenderer.RegisterView(_viewPreviewGUI); } } catch (System.Exception e) { UnityEngine.Debug.LogException(e); } }
private void CreateView(FrameworkElement content) { if (_uiView == null) { // Send settings for the internal device, created by the first view NoesisRenderer.SetRenderSettings(); _uiView = new Noesis.View(content); _uiView.SetTessellationMaxPixelError(_tessellationMaxPixelError); _uiView.SetFlags(_renderFlags); _commands.name = ""; NoesisRenderer.RegisterView(_uiView, _commands); Graphics.ExecuteCommandBuffer(_commands); _commands.Clear(); #if UNITY_EDITOR UnityEditor.AssemblyReloadEvents.beforeAssemblyReload += DestroyView; #endif } }
private void CreatePreviewGUIView() { // Avoid logging parse errors twice by muting them when generating thumbnails NoesisUnity.MuteLog(); try { NoesisXaml xaml = (NoesisXaml)target; FrameworkElement root = xaml.Load() as FrameworkElement; _viewPreviewGUI = Noesis.GUI.CreateView(root); _viewPreviewGUI.SetFlags(IsGL() ? 0 : RenderFlags.FlipY); NoesisRenderer.RegisterView(_viewPreviewGUI, _commands); Graphics.ExecuteCommandBuffer(_commands); _commands.Clear(); } catch (System.Exception e) { UnityEngine.Debug.LogException(e); } NoesisUnity.UnmuteLog(); }