nesrak1 / UABEA

c# uabe for newer versions of unity
MIT License
1.16k stars 149 forks source link

Crash when viewing scene #263

Closed Kinetic1000 closed 1 year ago

Kinetic1000 commented 1 year ago

System.NullReferenceException: Object reference not set to an instance of an object. at UABEAvalonia.AssetWorkspace.GetBaseField(AssetContainer cont) in D:\a\UABEA\UABEA\UABEAvalonia\Workspace\AssetWorkspace.cs:line 346 at UABEAvalonia.AssetDataTreeView.LoadComponent(AssetContainer container) in D:\a\UABEA\UABEA\UABEAvalonia\Controls\AssetDataTreeView.cs:line 182 at UABEAvalonia.GameObjectViewWindow.GameObjectTreeViewSelectionChanged(Object sender, SelectionChangedEventArgs e) in D:\a\UABEA\UABEA\UABEAvalonia\Forms\GameObjectViewWindow.axaml.cs:line 93 at Avalonia.Interactivity.EventRoute.RaiseEventImpl(RoutedEventArgs e) in //src/Avalonia.Base/Interactivity/EventRoute.cs:line 149 at Avalonia.Interactivity.EventRoute.RaiseEvent(Interactive source, RoutedEventArgs e) in //src/Avalonia.Base/Interactivity/EventRoute.cs:line 79 at Avalonia.Interactivity.Interactive.RaiseEvent(RoutedEventArgs e) in //src/Avalonia.Base/Interactivity/Interactive.cs:line 126 at Avalonia.Collections.AvaloniaList1.NotifyAdd(T item, Int32 index) in /_/src/Avalonia.Base/Collections/AvaloniaList.cs:line 704 at Avalonia.Collections.AvaloniaList1.System.Collections.IList.Add(Object value) in //src/Avalonia.Base/Collections/AvaloniaList.cs:line 561 at Avalonia.Controls.TreeView.SelectSingleItem(Object item) in //src/Avalonia.Controls/TreeView.cs:line 308 at Avalonia.Controls.TreeView.UpdateSelectionFromContainer(Control container, Boolean select, Boolean rangeModifier, Boolean toggleModifier, Boolean rightButton) in //src/Avalonia.Controls/TreeView.cs:line 669 at Avalonia.Controls.TreeView.UpdateSelectionFromEventSource(Object eventSource, Boolean select, Boolean rangeModifier, Boolean toggleModifier, Boolean rightButton) in //src/Avalonia.Controls/TreeView.cs:line 838 at Avalonia.Controls.TreeView.OnPointerPressed(PointerPressedEventArgs e) in //src/Avalonia.Controls/TreeView.cs:line 616 at Avalonia.Reactive.LightweightObservableBase`1.PublishNext(T value) in //src/Avalonia.Base/Reactive/LightweightObservableBase.cs:line 143 at Avalonia.Interactivity.EventRoute.RaiseEventImpl(RoutedEventArgs e) in //src/Avalonia.Base/Interactivity/EventRoute.cs:line 146 at Avalonia.Interactivity.EventRoute.RaiseEvent(Interactive source, RoutedEventArgs e) in //src/Avalonia.Base/Interactivity/EventRoute.cs:line 79 at Avalonia.Interactivity.Interactive.RaiseEvent(RoutedEventArgs e) in //src/Avalonia.Base/Interactivity/Interactive.cs:line 126 at Avalonia.Input.MouseDevice.MouseDown(IMouseDevice device, UInt64 timestamp, IInputElement root, Point p, PointerPointProperties properties, KeyModifiers inputModifiers, IInputElement hitTest) in //src/Avalonia.Base/Input/MouseDevice.cs:line 144 at Avalonia.Input.MouseDevice.ProcessRawEvent(RawPointerEventArgs e) in //src/Avalonia.Base/Input/MouseDevice.cs:line 53 at Avalonia.Input.InputManager.ProcessInput(RawInputEventArgs e) in //src/Avalonia.Base/Input/InputManager.cs:line 37 at Avalonia.Controls.TopLevel.HandleInput(RawInputEventArgs e) in //src/Avalonia.Controls/TopLevel.cs:line 651 at Avalonia.Win32.WindowImpl.AppWndProc(IntPtr hWnd, UInt32 msg, IntPtr wParam, IntPtr lParam) in //src/Windows/Avalonia.Win32/WindowImpl.AppWndProc.cs:line 814 at Avalonia.Win32.WindowImpl.WndProc(IntPtr hWnd, UInt32 msg, IntPtr wParam, IntPtr lParam) in //src/Windows/Avalonia.Win32/WindowImpl.WndProc.cs:line 26 at Avalonia.Win32.Interop.UnmanagedMethods.DispatchMessage(MSG& lpmsg) at Avalonia.Win32.Win32Platform.RunLoop(CancellationToken cancellationToken) in //src/Windows/Avalonia.Win32/Win32Platform.cs:line 215 at Avalonia.Threading.Dispatcher.MainLoop(CancellationToken cancellationToken) in //src/Avalonia.Base/Threading/Dispatcher.cs:line 61 at Avalonia.Controls.ApplicationLifetimes.ClassicDesktopStyleApplicationLifetime.Start(String[] args) in //src/Avalonia.Controls/ApplicationLifetimes/ClassicDesktopStyleApplicationLifetime.cs:line 122 at Avalonia.ClassicDesktopStyleApplicationLifetimeExtensions.StartWithClassicDesktopLifetime(AppBuilder builder, String[] args, ShutdownMode shutdownMode) in /_/src/Avalonia.Controls/ApplicationLifetimes/ClassicDesktopStyleApplicationLifetime.cs:line 214 at UABEAvalonia.Program.Main(String[] args) in D:\a\UABEA\UABEA\UABEAvalonia\Program.cs:line 53

nesrak1 commented 1 year ago

Unity version? Is this a bundle or assets file? Please check you're on latest nightly since it looks like the stack trace is off by a few lines.

Kinetic1000 commented 1 year ago
  1. 2020.3.18f1
  2. bundle file
  3. just redownloaded and the same issue still occurs
nesrak1 commented 1 year ago

Can you paste an updated crash log?

Kinetic1000 commented 1 year ago

System.NullReferenceException: Object reference not set to an instance of an object. at UABEAvalonia.AssetWorkspace.GetBaseField(AssetContainer cont) in D:\a\UABEA\UABEA\UABEAvalonia\Workspace\AssetWorkspace.cs:line 346 at UABEAvalonia.AssetDataTreeView.LoadComponent(AssetContainer container) in D:\a\UABEA\UABEA\UABEAvalonia\Controls\AssetDataTreeView.cs:line 182 at UABEAvalonia.GameObjectViewWindow.GameObjectTreeViewSelectionChanged(Object sender, SelectionChangedEventArgs e) in D:\a\UABEA\UABEA\UABEAvalonia\Forms\GameObjectViewWindow.axaml.cs:line 93 at Avalonia.Interactivity.EventRoute.RaiseEventImpl(RoutedEventArgs e) in //src/Avalonia.Base/Interactivity/EventRoute.cs:line 149 at Avalonia.Interactivity.EventRoute.RaiseEvent(Interactive source, RoutedEventArgs e) in //src/Avalonia.Base/Interactivity/EventRoute.cs:line 79 at Avalonia.Interactivity.Interactive.RaiseEvent(RoutedEventArgs e) in //src/Avalonia.Base/Interactivity/Interactive.cs:line 126 at Avalonia.Collections.AvaloniaList1.NotifyAdd(T item, Int32 index) in /_/src/Avalonia.Base/Collections/AvaloniaList.cs:line 704 at Avalonia.Collections.AvaloniaList1.System.Collections.IList.Add(Object value) in //src/Avalonia.Base/Collections/AvaloniaList.cs:line 561 at Avalonia.Controls.TreeView.SelectSingleItem(Object item) in //src/Avalonia.Controls/TreeView.cs:line 308 at Avalonia.Controls.TreeView.UpdateSelectionFromContainer(Control container, Boolean select, Boolean rangeModifier, Boolean toggleModifier, Boolean rightButton) in //src/Avalonia.Controls/TreeView.cs:line 669 at Avalonia.Controls.TreeView.UpdateSelectionFromEventSource(Object eventSource, Boolean select, Boolean rangeModifier, Boolean toggleModifier, Boolean rightButton) in //src/Avalonia.Controls/TreeView.cs:line 838 at Avalonia.Controls.TreeView.OnPointerPressed(PointerPressedEventArgs e) in //src/Avalonia.Controls/TreeView.cs:line 616 at Avalonia.Reactive.LightweightObservableBase`1.PublishNext(T value) in //src/Avalonia.Base/Reactive/LightweightObservableBase.cs:line 143 at Avalonia.Interactivity.EventRoute.RaiseEventImpl(RoutedEventArgs e) in //src/Avalonia.Base/Interactivity/EventRoute.cs:line 146 at Avalonia.Interactivity.EventRoute.RaiseEvent(Interactive source, RoutedEventArgs e) in //src/Avalonia.Base/Interactivity/EventRoute.cs:line 79 at Avalonia.Interactivity.Interactive.RaiseEvent(RoutedEventArgs e) in //src/Avalonia.Base/Interactivity/Interactive.cs:line 126 at Avalonia.Input.MouseDevice.MouseDown(IMouseDevice device, UInt64 timestamp, IInputElement root, Point p, PointerPointProperties properties, KeyModifiers inputModifiers, IInputElement hitTest) in //src/Avalonia.Base/Input/MouseDevice.cs:line 144 at Avalonia.Input.MouseDevice.ProcessRawEvent(RawPointerEventArgs e) in //src/Avalonia.Base/Input/MouseDevice.cs:line 53 at Avalonia.Input.InputManager.ProcessInput(RawInputEventArgs e) in //src/Avalonia.Base/Input/InputManager.cs:line 37 at Avalonia.Controls.TopLevel.HandleInput(RawInputEventArgs e) in //src/Avalonia.Controls/TopLevel.cs:line 651 at Avalonia.Win32.WindowImpl.AppWndProc(IntPtr hWnd, UInt32 msg, IntPtr wParam, IntPtr lParam) in //src/Windows/Avalonia.Win32/WindowImpl.AppWndProc.cs:line 814 at Avalonia.Win32.WindowImpl.WndProc(IntPtr hWnd, UInt32 msg, IntPtr wParam, IntPtr lParam) in //src/Windows/Avalonia.Win32/WindowImpl.WndProc.cs:line 26 at Avalonia.Win32.Interop.UnmanagedMethods.DispatchMessage(MSG& lpmsg) at Avalonia.Win32.Win32Platform.RunLoop(CancellationToken cancellationToken) in //src/Windows/Avalonia.Win32/Win32Platform.cs:line 215 at Avalonia.Threading.Dispatcher.MainLoop(CancellationToken cancellationToken) in //src/Avalonia.Base/Threading/Dispatcher.cs:line 61 at Avalonia.Controls.ApplicationLifetimes.ClassicDesktopStyleApplicationLifetime.Start(String[] args) in //src/Avalonia.Controls/ApplicationLifetimes/ClassicDesktopStyleApplicationLifetime.cs:line 122 at Avalonia.ClassicDesktopStyleApplicationLifetimeExtensions.StartWithClassicDesktopLifetime(AppBuilder builder, String[] args, ShutdownMode shutdownMode) in /_/src/Avalonia.Controls/ApplicationLifetimes/ClassicDesktopStyleApplicationLifetime.cs:line 214 at UABEAvalonia.Program.Main(String[] args) in D:\a\UABEA\UABEA\UABEAvalonia\Program.cs:line 53

nesrak1 commented 1 year ago

It looks like it can't find a component attached to a GameObject. I'm guessing you modified a GameObject's components to point towards a non-existent asset which is the only way I can see this happening (components are always on the same file afaik so it can't be a dependency that needs to be loaded.) I've updated the code (redownload nightly) to hopefully show an error instead of crashing when no component is found.

Kinetic1000 commented 1 year ago

yep that fixed it