Git Product home page Git Product logo

shaderqu / assetlens Goto Github PK

View Code? Open in Web Editor NEW
50.0 4.0 6.0 1.39 MB

Asset Lens : Unity asset reference management utility working in background. 에디터 백그라운드에서 관리되는 유니티 에셋 파일 레퍼런스 데이터 도구.

Home Page: https://discord.gg/h9WPFRNFBY

License: MIT License

C# 99.99% Shell 0.01%
unity asset reference unity3d unity3d-plugin assetlens lens asset-lens

assetlens's Introduction

@shaderqu

About Me

👋 Hello, there!

  • Game Development Generalist
  • Programming, Technical Art, Hardsurface Modeling, System Design
  • Rendering Enthusiast

Skills

  • Languages: C++, C#, Python, Go, Rust, ActionScript 3, MaxScripts
  • Engines: Unreal, Unity, LithTech (Jupyter)
  • Techniques: Hardsurface Modeling (3ds Max) & Texturing (Substance)
  • Tools: IDA, OllyDbg, 3ds Max, Substance, Blender 3D

Problem Solving

solved.ac

assetlens's People

Contributors

github-actions[bot] avatar shaderqu avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

assetlens's Issues

[Performance] Change Inspector Lens' data reading logic to asynchronous.

Is your feature request related to a problem? Please describe.
읽어야 할 캐시 파일이 크거나 복잡한 경우 에디터 프리징으로 느껴질 수 있음

Describe the solution you'd like
A clear and concise description of what you want to happen.

Describe alternatives you've considered
Async로직으로 읽고, 읽기가 끝나면 콜백으로 넘겨주기

Additional context
Add any other context or screenshots about the feature request here.

Lightmap 데이터에 연결되는 Texture, Cubemap들의 레퍼런스 링크 탐지가 불가능

LightingData, Scene 어디에서도 데이터를 찾을 수 없음

LightingWindow or LightingEditor 에 갖고있는 LightingWindowLightmapPreviewTab 인스턴스에서 다음과 같이 Baked Lightmaps 에 대한 데이터를 확인함

    public void OnGUI(Rect position)
    {
      this.InitSettings();
      this.m_LightmapSettings.Update();
      this.LightmapListGUI(LightmapSettings.lightmaps, LightmapVisualizationUtility.GetRealtimeGITextures(GITextureType.Irradiance));
    }

SerializedObjectNotCreatableException: Object at index 0 is null

Reproducable in 2021.2.0b6.3225 when installing plugin.

SerializedObjectNotCreatableException: Object at index 0 is null
UnityEditor.Editor.CreateSerializedObject () (at <546f0b4bf62b499b9c2fc3a4870e3de2>:0)
UnityEditor.Editor.GetSerializedObjectInternal () (at <546f0b4bf62b499b9c2fc3a4870e3de2>:0)
UnityEditor.Editor.get_serializedObject () (at <546f0b4bf62b499b9c2fc3a4870e3de2>:0)
AssetLens.Reference.ReferenceSettingInspector.OnEnable () (at Library/PackageCache/[email protected]/Editor/Reference/Inspector/ReferenceSettingInspector.cs:25)```

씬 관련 유니티 도구 대응

네비게이션 베이크, 라이팅 베이크 도중 기존 리소스를 제거하고 생성하는 과정에서 Safe Delete Manager가 트리거되는 이슈.
삭제하고 계속 진행시 문제 없이 작동

missing script가 있는 프리팹을 클릭하면 에러가 발생합니다

0.0.9 버전을 사용하고 있습니다.

Reference Viewer 윈도우를 연 상태로
missing script가 있는 프리팹을 클릭하면 에러가 발생합니다.

NullReferenceException: Object reference not set to an instance of an object
RV.ReferenceWindow.OnGUI () (at Library/PackageCache/[email protected]/Editor/Visualize/ReferenceWindow.cs:105)
UnityEditor.HostView.InvokeOnGUI (UnityEngine.Rect onGUIPosition, UnityEngine.Rect viewRect) (at <8c48e4bc2ff34638b69095cbb65e2e27>:0)
UnityEditor.DockArea.DrawView (UnityEngine.Rect viewRect, UnityEngine.Rect dockAreaRect) (at <8c48e4bc2ff34638b69095cbb65e2e27>:0)
UnityEditor.DockArea.OldOnGUI () (at <8c48e4bc2ff34638b69095cbb65e2e27>:0)
UnityEngine.UIElements.IMGUIContainer.DoOnGUI (UnityEngine.Event evt, UnityEngine.Matrix4x4 parentTransform, UnityEngine.Rect clippingRect, System.Boolean isComputingLayout, UnityEngine.Rect layoutSize, System.Action onGUIHandler, System.Boolean canAffectFocus) (at <0050475d167947ea9f166ad030caa84f>:0)
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr, Boolean&)

영문화 계획이 있으신지 궁금합니다

Reference를 사내 프로젝트에 적용해보고자 하는데 한국어 사용자가 아닌 사람들이 많은 탓에 고민중입니다.
메뉴나 각종 문구에 한글로 적힌 문장들을 영문화시킬 계획이 있으신가요?

그리고 계획이 있으시다면 부족한 영어 실력이지만 영문화에 코드기여를 해보고 싶습니다.

temporal PackageSelectionObject causes arguement exception.

Documentation

ArgumentException: Empty path name is not legal.

System.IO.StreamReader..ctor (System.String path, System.Text.Encoding encoding, System.Boolean detectEncodingFromByteOrderMarks, System.Int32 bufferSize, System.Boolean checkHost) (at <695d1cc93cca45069c528c15c9fdd749>:0)
System.IO.StreamReader..ctor (System.String path, System.Text.Encoding encoding, System.Boolean detectEncodingFromByteOrderMarks, System.Int32 bufferSize) (at <695d1cc93cca45069c528c15c9fdd749>:0)
System.IO.StreamReader..ctor (System.String path, System.Boolean detectEncodingFromByteOrderMarks) (at <695d1cc93cca45069c528c15c9fdd749>:0)
System.IO.StreamReader..ctor (System.String path) (at <695d1cc93cca45069c528c15c9fdd749>:0)
(wrapper remoting-invoke-with-check) System.IO.StreamReader..ctor(string)
System.IO.File.ReadAllText (System.String path) (at <695d1cc93cca45069c528c15c9fdd749>:0)
AssetLens.Reference.RefData.New (System.String guid) (at Packages/calci.unity.assetlens/Editor/Reference/Model/RefData.cs:112)
AssetLens.Reference.RefData.Get (System.String guid) (at Packages/calci.unity.assetlens/Editor/Reference/Model/RefData.cs:101)
AssetLens.Reference.ReferenceWindow.CollectData () (at Packages/calci.unity.assetlens/Editor/Reference/Visualize/ReferenceWindow.cs:192)
AssetLens.Reference.ReferenceWindow.OnGUI () (at Packages/calci.unity.assetlens/Editor/Reference/Visualize/ReferenceWindow.cs:50)
UnityEditor.HostView.InvokeOnGUI (UnityEngine.Rect onGUIPosition, UnityEngine.Rect viewRect) (at <cb5f6353539a46708761eca227df3590>:0)
UnityEditor.DockArea.DrawView (UnityEngine.Rect viewRect, UnityEngine.Rect dockAreaRect) (at <cb5f6353539a46708761eca227df3590>:0)
UnityEditor.DockArea.OldOnGUI () (at <cb5f6353539a46708761eca227df3590>:0)
UnityEngine.UIElements.IMGUIContainer.DoOnGUI (UnityEngine.Event evt, UnityEngine.Matrix4x4 parentTransform, UnityEngine.Rect clippingRect, System.Boolean isComputingLayout, UnityEngine.Rect layoutSize, System.Action onGUIHandler, System.Boolean canAffectFocus) (at <432323cb268c47d2a6f4dd832d1a1c97>:0)
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr, Boolean&)
ArgumentException: Empty path name is not legal.
System.IO.StreamReader..ctor (System.String path, System.Text.Encoding encoding, System.Boolean detectEncodingFromByteOrderMarks, System.Int32 bufferSize, System.Boolean checkHost) (at <695d1cc93cca45069c528c15c9fdd749>:0)
System.IO.StreamReader..ctor (System.String path, System.Text.Encoding encoding, System.Boolean detectEncodingFromByteOrderMarks, System.Int32 bufferSize) (at <695d1cc93cca45069c528c15c9fdd749>:0)
System.IO.StreamReader..ctor (System.String path, System.Boolean detectEncodingFromByteOrderMarks) (at <695d1cc93cca45069c528c15c9fdd749>:0)
System.IO.StreamReader..ctor (System.String path) (at <695d1cc93cca45069c528c15c9fdd749>:0)
(wrapper remoting-invoke-with-check) System.IO.StreamReader..ctor(string)
System.IO.File.ReadAllText (System.String path) (at <695d1cc93cca45069c528c15c9fdd749>:0)
AssetLens.Reference.RefData.New (System.String guid) (at Packages/calci.unity.assetlens/Editor/Reference/Model/RefData.cs:112)
AssetLens.Reference.RefData.Get (System.String guid) (at Packages/calci.unity.assetlens/Editor/Reference/Model/RefData.cs:101)
AssetLens.Reference.ReferenceWindow.CollectData () (at Packages/calci.unity.assetlens/Editor/Reference/Visualize/ReferenceWindow.cs:192)
AssetLens.Reference.ReferenceWindow.OnGUI () (at Packages/calci.unity.assetlens/Editor/Reference/Visualize/ReferenceWindow.cs:50)
UnityEditor.HostView.InvokeOnGUI (UnityEngine.Rect onGUIPosition, UnityEngine.Rect viewRect) (at <cb5f6353539a46708761eca227df3590>:0)
UnityEditor.DockArea.DrawView (UnityEngine.Rect viewRect, UnityEngine.Rect dockAreaRect) (at <cb5f6353539a46708761eca227df3590>:0)
UnityEditor.DockArea.OldOnGUI () (at <cb5f6353539a46708761eca227df3590>:0)
UnityEngine.UIElements.IMGUIContainer.DoOnGUI (UnityEngine.Event evt, UnityEngine.Matrix4x4 parentTransform, UnityEngine.Rect clippingRect, System.Boolean isComputingLayout, UnityEngine.Rect layoutSize, System.Action onGUIHandler, System.Boolean canAffectFocus) (at <432323cb268c47d2a6f4dd832d1a1c97>:0)
UnityEngine.UIElements.IMGUIContainer.HandleIMGUIEvent (UnityEngine.Event e, UnityEngine.Matrix4x4 worldTransform, UnityEngine.Rect clippingRect, System.Action onGUIHandler, System.Boolean canAffectFocus) (at <432323cb268c47d2a6f4dd832d1a1c97>:0)
UnityEngine.UIElements.IMGUIContainer.DoIMGUIRepaint () (at <432323cb268c47d2a6f4dd832d1a1c97>:0)
UnityEngine.UIElements.UIR.RenderChainCommand.ExecuteNonDrawMesh (UnityEngine.UIElements.UIR.DrawParams drawParams, System.Single pixelsPerPoint, System.Exception& immediateException) (at <432323cb268c47d2a6f4dd832d1a1c97>:0)
Rethrow as ImmediateModeException
UnityEngine.UIElements.UIR.RenderChain.Render () (at <432323cb268c47d2a6f4dd832d1a1c97>:0)
UnityEngine.UIElements.UIRRepaintUpdater.Update () (at <432323cb268c47d2a6f4dd832d1a1c97>:0)
UnityEngine.UIElements.VisualTreeUpdater.UpdateVisualTreePhase (UnityEngine.UIElements.VisualTreeUpdatePhase phase) (at <432323cb268c47d2a6f4dd832d1a1c97>:0)
UnityEngine.UIElements.Panel.UpdateForRepaint () (at <432323cb268c47d2a6f4dd832d1a1c97>:0)
UnityEngine.UIElements.Panel.Repaint (UnityEngine.Event e) (at <432323cb268c47d2a6f4dd832d1a1c97>:0)
UnityEngine.UIElements.UIElementsUtility.DoDispatch (UnityEngine.UIElements.BaseVisualElementPanel panel) (at <432323cb268c47d2a6f4dd832d1a1c97>:0)
UnityEngine.UIElements.UIElementsUtility.UnityEngine.UIElements.IUIElementsUtility.ProcessEvent (System.Int32 instanceID, System.IntPtr nativeEventPtr, System.Boolean& eventHandled) (at <432323cb268c47d2a6f4dd832d1a1c97>:0)
UnityEngine.UIElements.UIEventRegistration.ProcessEvent (System.Int32 instanceID, System.IntPtr nativeEventPtr) (at <432323cb268c47d2a6f4dd832d1a1c97>:0)
UnityEngine.UIElements.UIEventRegistration+<>c.<.cctor>b__1_2 (System.Int32 i, System.IntPtr ptr) (at <432323cb268c47d2a6f4dd832d1a1c97>:0)
UnityEngine.GUIUtility.ProcessEvent (System.Int32 instanceID, System.IntPtr nativeEventPtr, System.Boolean& result) (at <9ff04fda545c4aacb8dab659ad40b2f4>:0)

[UX] Setting Button at Top Bar in Reference Window

Is your feature request related to a problem? Please describe.
레퍼런스 뷰어 에디터 윈도우에 설정 버튼 추가

Describe the solution you'd like
A clear and concise description of what you want to happen.

Describe alternatives you've considered
빠르게 설정을 열기 위한 버튼

Additional context
Add any other context or screenshots about the feature request here.

Unity 2020.2.6f1에서 v0.3.1으로 버전업시 컴파일 에러가 발생

Describe the bug
Unity 2020.2.6f1을 사용중입니다만, v0.2.5에서 v0.2.6을 포함한 이후 버전들로 업데이트시 컴파일 에러가 발생합니다.
아마도 UIToolkit 관련부분에서 에러가 발생하는 것 같습니다.

Library\PackageCache\[email protected]\Editor\Reference\Visualize\ReferenceInspectorGUI.cs(116,25): error CS0117: 'EditorGUILayout' does not contain a definition for 'LinkButton'

Library\PackageCache\[email protected]\Editor\EditorWindow\ReferenceViewer.cs(67,36): error CS1061: 'ScrollView' does not contain a definition for 'horizontalScrollerVisibility' and no accessible extension method 'horizontalScrollerVisibility' accepting a first argument of type 'ScrollView' could be found (are you missing a using directive or an assembly reference?)

Library\PackageCache\[email protected]\Editor\EditorWindow\ReferenceViewer.cs(67,67): error CS0103: The name 'ScrollerVisibility' does not exist in the current context

Library\PackageCache\[email protected]\Editor\EditorWindow\ReferenceViewer.cs(68,31): error CS1061: 'ScrollView' does not contain a definition for 'horizontalScrollerVisibility' and no accessible extension method 'horizontalScrollerVisibility' accepting a first argument of type 'ScrollView' could be found (are you missing a using directive or an assembly reference?)

Library\PackageCache\[email protected]\Editor\EditorWindow\ReferenceViewer.cs(68,62): error CS0103: The name 'ScrollerVisibility' does not exist in the current context

Library\PackageCache\[email protected]\Editor\Reference\Core\ReferenceUtil.cs(210,16): error CS1501: No overload for method 'Contains' takes 2 arguments

Library\PackageCache\[email protected]\Editor\Reference\Core\ReferenceMenuItems.cs(196,49): error CS0103: The name 'RequestScriptCompilationOptions' does not exist in the current context

To Reproduce
Steps to reproduce the behavior:
Unity 2020.2.6f1에서 Package Manager를 이용해 v0.2.5->v0.3.1로 업데이트를 시도했으나 컴파일 에러 발생.
다른 버전도 확인해본 결과 v0.2.6부터 컴파일 에러가 발생.

Expected behavior
컴파일 에러가 발생하지 않을 것.

Screenshots
If applicable, add screenshots to help explain your problem.
image

Desktop (please complete the following information):

  • OS: Windows 10

Duplication with Ctrl + D causes FileNotFoundException

FileNotFoundException: Could not find file "C:\Projects\Unity Engine\Portfolio\AutoChessFramework\ACF.Unity\Assets\Content\C_Materials\ACF_DefaultMaterial 1.mat"
System.IO.FileStream..ctor (System.String path, System.IO.FileMode mode, System.IO.FileAccess access, System.IO.FileShare share, System.Int32 bufferSize, System.Boolean anonymous, System.IO.FileOptions options) (at :0)
System.IO.FileStream..ctor (System.String path, System.IO.FileMode mode, System.IO.FileAccess access, System.IO.FileShare share, System.Int32 bufferSize, System.IO.FileOptions options) (at :0)
(wrapper remoting-invoke-with-check) System.IO.FileStream..ctor(string,System.IO.FileMode,System.IO.FileAccess,System.IO.FileShare,int,System.IO.FileOptions)
System.IO.StreamReader..ctor (System.String path, System.Text.Encoding encoding, System.Boolean detectEncodingFromByteOrderMarks, System.Int32 bufferSize) (at :0)
System.IO.StreamReader..ctor (System.String path, System.Text.Encoding encoding, System.Boolean detectEncodingFromByteOrderMarks) (at :0)
(wrapper remoting-invoke-with-check) System.IO.StreamReader..ctor(string,System.Text.Encoding,bool)
System.IO.File.InternalReadAllText (System.String path, System.Text.Encoding encoding) (at :0)
System.IO.File.ReadAllText (System.String path) (at :0)
AssetLens.Reference.RefData.New (System.String guid) (at Library/PackageCache/com.calci.assetlens@db0dfc21ba/Editor/Reference/Model/RefData.cs:125)
AssetLens.Reference.RefData.Get (System.String guid) (at Library/PackageCache/com.calci.assetlens@db0dfc21ba/Editor/Reference/Model/RefData.cs:114)
AssetLens.Reference.ReferenceCallback.OnWillDeleteAsset (System.String assetPath, UnityEditor.RemoveAssetOptions options) (at Library/PackageCache/com.calci.assetlens@db0dfc21ba/Editor/Reference/Callback/ReferenceCallback.cs:34)
UnityEngine.Debug:LogException(Exception)
AssetLens.Reference.ReferenceCallback:OnWillDeleteAsset(String, RemoveAssetOptions) (at Library/PackageCache/com.calci.assetlens@db0dfc21ba/Editor/Reference/Callback/ReferenceCallback.cs:61)
AssetLens.Reference.ReferenceModification:OnWillDeleteAsset(String, RemoveAssetOptions) (at Library/PackageCache/com.calci.assetlens@db0dfc21ba/Editor/Reference/Callback/ReferenceModification.cs:9)
UnityEditor.EditorApplication:Internal_CallGlobalEventHandler()

An exception that occurs when generating data with missing object references.

System.IO.Path.InsecureGetFullPath (System.String path) (at <31c0f51ac5a24a22ba784db24f4ba023>:0)
System.IO.Path.GetFullPath (System.String path) (at <31c0f51ac5a24a22ba784db24f4ba023>:0)
System.IO.FileInfo..ctor (System.String originalPath, System.String fullPath, System.String fileName, System.Boolean isNormalized) (at <31c0f51ac5a24a22ba784db24f4ba023>:0)
System.IO.FileInfo..ctor (System.String fileName) (at <31c0f51ac5a24a22ba784db24f4ba023>:0)
(wrapper remoting-invoke-with-check) System.IO.FileInfo..ctor(string)
AssetLens.Reference.RefData.UpdateObjectData () (at Library/PackageCache/[email protected]/Editor/Reference/Model/RefData.cs:113)
AssetLens.Reference.RefData.Get (System.String guid) (at Library/PackageCache/[email protected]/Editor/Reference/Model/RefData.cs:144)
AssetLens.Reference.RefData.New (System.String guid) (at Library/PackageCache/[email protected]/Editor/Reference/Model/RefData.cs:170)
AssetLens.Reference.RefData.New (System.String guid) (at Library/PackageCache/[email protected]/Editor/Reference/Model/RefData.cs:190)
AssetLens.UI.ReferenceViewer.DecideMode () (at Library/PackageCache/[email protected]/Editor/UI/EditorWindow/ReferenceViewer.cs:521)
AssetLens.UI.ReferenceViewer.UpdateData () (at Library/PackageCache/[email protected]/Editor/UI/EditorWindow/ReferenceViewer.cs:383)
AssetLens.UI.ReferenceViewer.OnSelectionChange () (at Library/PackageCache/[email protected]/Editor/UI/EditorWindow/ReferenceViewer.cs:143)
UnityEditor.HostView.OnSelectionChange () (at <0cde216a590a4d6fbc3d7db7ac203c5d>:0)

An exception that occurs when the viewer window is open at the timing of the domain reloading by accessing an element that has not yet been initialized.

AssetLens.UI.ReferenceViewer.SetMessage () (at C:/Projects/Unity Engine/Package Development/AssetLens/Packages/com.calci.assetlens/Editor/UI/EditorWindow/ReferenceViewer.cs:261)
AssetLens.UI.ReferenceViewer.UpdateData () (at C:/Projects/Unity Engine/Package Development/AssetLens/Packages/com.calci.assetlens/Editor/UI/EditorWindow/ReferenceViewer.cs:420)
AssetLens.UI.ReferenceViewer.OnFocus () (at C:/Projects/Unity Engine/Package Development/AssetLens/Packages/com.calci.assetlens/Editor/UI/EditorWindow/ReferenceViewer.cs:147)
UnityEditor.HostView.RegisterSelectedPane (System.Boolean sendEvents) (at <0cde216a590a4d6fbc3d7db7ac203c5d>:0)
UnityEditor.HostView.OnEnable () (at <0cde216a590a4d6fbc3d7db7ac203c5d>:0)
UnityEditor.DockArea.OnEnable () (at <0cde216a590a4d6fbc3d7db7ac203c5d>:0)

[UI/UX] Workspace for UI Toolkit compatibility

Is your feature request related to a problem? Please describe.
버전별 UI Toolkit USS 대응을 위한 워크스페이스 구현

Describe the solution you'd like
자체 확장자의 포맷으로 작업하되, Stylesheet Importer를 재사용하여 부분적으로 파싱할 수 있도록 프로세서 구현

Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.

Additional context
Add any other context or screenshots about the feature request here.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.