I updated everything to the latest Unity Editor. Also realized I had the wrong shaders on my hairs, those are fixed and the hairs look MUCH better!
		
			
				
	
	
		
			62 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
			
		
		
	
	
			62 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
using System;
 | 
						|
 | 
						|
using UnityEditor;
 | 
						|
using UnityEditor.VersionControl;
 | 
						|
 | 
						|
using Unity.PlasticSCM.Editor.AssetUtils;
 | 
						|
 | 
						|
namespace Unity.PlasticSCM.Editor.AssetMenu
 | 
						|
{
 | 
						|
    internal class ProjectViewAssetSelection : AssetOperations.IAssetSelection
 | 
						|
    {
 | 
						|
        internal ProjectViewAssetSelection(Action assetSelectionChangedAction)
 | 
						|
        {
 | 
						|
            mAssetSelectionChangedAction = assetSelectionChangedAction;
 | 
						|
 | 
						|
            Selection.selectionChanged += SelectionChanged;
 | 
						|
        }
 | 
						|
 | 
						|
        internal void Dispose()
 | 
						|
        {
 | 
						|
            Selection.selectionChanged -= SelectionChanged;
 | 
						|
        }
 | 
						|
 | 
						|
        void SelectionChanged()
 | 
						|
        {
 | 
						|
            // Selection.selectionChanged gets triggered on both
 | 
						|
            // project view and scene view. We only want to trigger
 | 
						|
            // the action if user selects on project view (has assets)
 | 
						|
            if (HasSelectedAssets())
 | 
						|
                mAssetSelectionChangedAction();
 | 
						|
        }
 | 
						|
 | 
						|
        AssetList AssetOperations.IAssetSelection.GetSelectedAssets()
 | 
						|
        {
 | 
						|
            if (Selection.assetGUIDs.Length == 0)
 | 
						|
                return new AssetList();
 | 
						|
 | 
						|
            AssetList result = new AssetList();
 | 
						|
 | 
						|
            foreach (string guid in Selection.assetGUIDs)
 | 
						|
            {
 | 
						|
                string assetPath = AssetsPath.GetFullPath.ForGuid(guid);
 | 
						|
 | 
						|
                if (string.IsNullOrEmpty(assetPath))
 | 
						|
                    continue;
 | 
						|
 | 
						|
                result.Add(new Asset(assetPath));
 | 
						|
            }
 | 
						|
 | 
						|
            return result;
 | 
						|
        }
 | 
						|
 | 
						|
        bool HasSelectedAssets()
 | 
						|
        {
 | 
						|
            // Objects in project view have GUIDs, objects in scene view don't
 | 
						|
            return Selection.assetGUIDs.Length > 0;
 | 
						|
        }
 | 
						|
 | 
						|
        Action mAssetSelectionChangedAction;
 | 
						|
    }
 | 
						|
}
 |