diff --git a/Assets/FishNet.meta b/Assets/FishNet.meta index 970e7b9..81da149 100644 --- a/Assets/FishNet.meta +++ b/Assets/FishNet.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 1c10e8242689baa4795de57f9ef42ec3 +guid: 4bbdfd51d4aa3a44ea6f20e7a150ed80 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Assets/FishNet/Example/Prefabs/NetworkManager.prefab b/Assets/FishNet/Example/Prefabs/NetworkManager.prefab index fce3e55..42b9e4e 100644 --- a/Assets/FishNet/Example/Prefabs/NetworkManager.prefab +++ b/Assets/FishNet/Example/Prefabs/NetworkManager.prefab @@ -29,6 +29,7 @@ Transform: m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 m_Children: - {fileID: 4393252310584637084} m_Father: {fileID: 0} @@ -46,12 +47,13 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d2c95dfde7d73b54dbbdc23155d35d36, type: 3} m_Name: m_EditorClassIdentifier: - _logging: {fileID: 0} - _spawnablePrefabs: {fileID: 11400000, guid: ec64eb18c93ab344892891f33edbf82a, type: 2} _refreshDefaultPrefabs: 0 _runInBackground: 1 _dontDestroyOnLoad: 1 + _objectPool: {fileID: 0} _persistence: 0 + _logging: {fileID: 0} + _spawnablePrefabs: {fileID: 11400000, guid: ec64eb18c93ab344892891f33edbf82a, type: 2} --- !u!114 &934570884 MonoBehaviour: m_ObjectHideFlags: 0 @@ -64,6 +66,9 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 7d331f979d46e8e4a9fc90070c596d44, type: 3} m_Name: m_EditorClassIdentifier: + _useNetworkLod: 0 + _levelOfDetailDistances: [] + _updateHostVisibility: 1 _defaultConditions: - {fileID: 11400000, guid: 2033f54fd2794464bae08fa5a55c8996, type: 2} --- !u!114 &7443408887813606060 @@ -88,113 +93,91 @@ PrefabInstance: m_Modification: m_TransformParent: {fileID: 7443408887813606049} m_Modifications: - - target: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, - type: 3} + - target: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, type: 3} propertyPath: m_Pivot.x value: 0 objectReference: {fileID: 0} - - target: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, - type: 3} + - target: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, type: 3} propertyPath: m_Pivot.y value: 0 objectReference: {fileID: 0} - - target: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, - type: 3} + - target: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, type: 3} propertyPath: m_RootOrder value: 0 objectReference: {fileID: 0} - - target: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, - type: 3} + - target: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, type: 3} propertyPath: m_AnchorMax.x value: 0 objectReference: {fileID: 0} - - target: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, - type: 3} + - target: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, type: 3} propertyPath: m_AnchorMax.y value: 0 objectReference: {fileID: 0} - - target: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, - type: 3} + - target: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, type: 3} propertyPath: m_AnchorMin.x value: 0 objectReference: {fileID: 0} - - target: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, - type: 3} + - target: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, type: 3} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - - target: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, - type: 3} + - target: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, type: 3} propertyPath: m_SizeDelta.x value: 0 objectReference: {fileID: 0} - - target: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, - type: 3} + - target: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, type: 3} propertyPath: m_SizeDelta.y value: 0 objectReference: {fileID: 0} - - target: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, - type: 3} + - target: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - - target: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, - type: 3} + - target: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - - target: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, - type: 3} + - target: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - - target: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, - type: 3} + - target: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - - target: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, - type: 3} + - target: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - - target: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, - type: 3} + - target: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - - target: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, - type: 3} + - target: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - - target: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, - type: 3} + - target: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, type: 3} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - - target: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, - type: 3} + - target: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, type: 3} propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} - - target: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, - type: 3} + - target: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, type: 3} propertyPath: m_LocalEulerAnglesHint.x value: 0 objectReference: {fileID: 0} - - target: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, - type: 3} + - target: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, type: 3} propertyPath: m_LocalEulerAnglesHint.y value: 0 objectReference: {fileID: 0} - - target: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, - type: 3} + - target: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, type: 3} propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} - - target: {fileID: 4393252310969058995, guid: 0570b6f7f713dc44a90463654bbcd8d0, - type: 3} + - target: {fileID: 4393252310969058995, guid: 0570b6f7f713dc44a90463654bbcd8d0, type: 3} propertyPath: m_Name value: NetworkHudCanvas objectReference: {fileID: 0} @@ -202,7 +185,6 @@ PrefabInstance: m_SourcePrefab: {fileID: 100100000, guid: 0570b6f7f713dc44a90463654bbcd8d0, type: 3} --- !u!224 &4393252310584637084 stripped RectTransform: - m_CorrespondingSourceObject: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, - type: 3} + m_CorrespondingSourceObject: {fileID: 4393252310969058990, guid: 0570b6f7f713dc44a90463654bbcd8d0, type: 3} m_PrefabInstance: {fileID: 2130063410} m_PrefabAsset: {fileID: 0} diff --git a/Assets/FishNet/Plugins/FishyFacepunch.meta b/Assets/FishNet/Plugins/FishyFacepunch.meta new file mode 100644 index 0000000..407a83d --- /dev/null +++ b/Assets/FishNet/Plugins/FishyFacepunch.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: c11e7223b052ece4cbb66d2cf012cb04 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/FishNet/Plugins/FishyFacepunch/CHANGELOG.txt b/Assets/FishNet/Plugins/FishyFacepunch/CHANGELOG.txt new file mode 100644 index 0000000..de9f6c5 --- /dev/null +++ b/Assets/FishNet/Plugins/FishyFacepunch/CHANGELOG.txt @@ -0,0 +1,30 @@ +2.1.1 + - Added deinitializer to FishyFacepunch. + +2.1.0 + - Fixed ClientId 32767 not found error when being used with Multipass. + +2.0.0 + - FishNetworking 2.0.0 support. + +1.3.1 + - FishNetworking 1.3.1 Support + +1.3.0 + - Removed obsolete methods + - FishNetworking 1.3.0 Support + +1.2.0 + - Removed GC (Full Credits to Punfish - Thank you) + - Removed obsolete method + +1.1.1 + - FishNetworking 0.1.5.Nightly.10 Support + +1.1.0 + - Support for client hosted games (needs two separated steam accounts, to test) - Thank to Punfish + - Organized folder structure + - Removed ChannelData + +1.0.0 + - Initial release. \ No newline at end of file diff --git a/Assets/FishNet/Plugins/FishyFacepunch/CHANGELOG.txt.meta b/Assets/FishNet/Plugins/FishyFacepunch/CHANGELOG.txt.meta new file mode 100644 index 0000000..a047178 --- /dev/null +++ b/Assets/FishNet/Plugins/FishyFacepunch/CHANGELOG.txt.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: cf7010bd3b524434c8cefe4534247875 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/FishNet/Plugins/FishyFacepunch/Core.meta b/Assets/FishNet/Plugins/FishyFacepunch/Core.meta new file mode 100644 index 0000000..169ed19 --- /dev/null +++ b/Assets/FishNet/Plugins/FishyFacepunch/Core.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: fc9c8228eea0edc4eb3428086998d364 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/FishNet/Plugins/FishyFacepunch/Core/BidirectionalDictionary.cs b/Assets/FishNet/Plugins/FishyFacepunch/Core/BidirectionalDictionary.cs new file mode 100644 index 0000000..d235e2c --- /dev/null +++ b/Assets/FishNet/Plugins/FishyFacepunch/Core/BidirectionalDictionary.cs @@ -0,0 +1,92 @@ +using System.Collections; +using System.Collections.Generic; + +namespace FishyFacepunch +{ + public class BidirectionalDictionary : IEnumerable + { + private Dictionary t1ToT2Dict = new Dictionary(); + private Dictionary t2ToT1Dict = new Dictionary(); + + public IEnumerable FirstTypes => t1ToT2Dict.Keys; + public IEnumerable SecondTypes => t2ToT1Dict.Keys; + + public IEnumerator GetEnumerator() => t1ToT2Dict.GetEnumerator(); + + public int Count => t1ToT2Dict.Count; + + public Dictionary First => t1ToT2Dict; + public Dictionary Second => t2ToT1Dict; + + public void Add(T1 key, T2 value) + { + if (t1ToT2Dict.ContainsKey(key)) + { + Remove(key); + } + + t1ToT2Dict[key] = value; + t2ToT1Dict[value] = key; + } + + public void Add(T2 key, T1 value) + { + if (t2ToT1Dict.ContainsKey(key)) + { + Remove(key); + } + + t2ToT1Dict[key] = value; + t1ToT2Dict[value] = key; + } + + public T2 Get(T1 key) => t1ToT2Dict[key]; + + public T1 Get(T2 key) => t2ToT1Dict[key]; + + public bool TryGetValue(T1 key, out T2 value) => t1ToT2Dict.TryGetValue(key, out value); + + public bool TryGetValue(T2 key, out T1 value) => t2ToT1Dict.TryGetValue(key, out value); + + public bool Contains(T1 key) => t1ToT2Dict.ContainsKey(key); + + public bool Contains(T2 key) => t2ToT1Dict.ContainsKey(key); + + public void Remove(T1 key) + { + if (Contains(key)) + { + T2 val = t1ToT2Dict[key]; + t1ToT2Dict.Remove(key); + t2ToT1Dict.Remove(val); + } + } + public void Remove(T2 key) + { + if (Contains(key)) + { + T1 val = t2ToT1Dict[key]; + t1ToT2Dict.Remove(val); + t2ToT1Dict.Remove(key); + } + } + + public T1 this[T2 key] + { + get => t2ToT1Dict[key]; + set + { + Add(key, value); + } + } + + public T2 this[T1 key] + { + get => t1ToT2Dict[key]; + set + { + Add(key, value); + } + } + } +} \ No newline at end of file diff --git a/Assets/FishNet/Plugins/FishyFacepunch/Core/BidirectionalDictionary.cs.meta b/Assets/FishNet/Plugins/FishyFacepunch/Core/BidirectionalDictionary.cs.meta new file mode 100644 index 0000000..3bd09e8 --- /dev/null +++ b/Assets/FishNet/Plugins/FishyFacepunch/Core/BidirectionalDictionary.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 336587b490f535a4aa3b1618c9ebac55 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/FishNet/Plugins/FishyFacepunch/Core/ClientHostSocket.cs b/Assets/FishNet/Plugins/FishyFacepunch/Core/ClientHostSocket.cs new file mode 100644 index 0000000..2727871 --- /dev/null +++ b/Assets/FishNet/Plugins/FishyFacepunch/Core/ClientHostSocket.cs @@ -0,0 +1,126 @@ +#if !FishyFacepunch +using FishNet.Transporting; +using FishyFacepunch.Server; +using System; +using System.Collections.Concurrent; +using System.Collections.Generic; + +namespace FishyFacepunch.Client +{ + /// + /// Creates a fake client connection to interact with the ServerSocket when acting as host. + /// + public class ClientHostSocket : CommonSocket + { + #region Private. + /// + /// Socket for the server. + /// + private ServerSocket _server; + /// + /// Incomimg data. + /// + private Queue _incoming = new Queue(); + #endregion + + /// + /// Checks to set localCLient started. + /// + internal void CheckSetStarted() + { + //Check to set as started. + if (_server != null && base.GetLocalConnectionState() == LocalConnectionState.Starting) + { + if (_server.GetLocalConnectionState() == LocalConnectionState.Started) + SetLocalConnectionState(LocalConnectionState.Started, false); + } + } + + /// + /// Starts the client connection. + /// + /// + /// + /// + /// + internal bool StartConnection(ServerSocket serverSocket) + { + _server = serverSocket; + _server.SetClientHostSocket(this); + if (_server.GetLocalConnectionState() != LocalConnectionState.Started) + return false; + + SetLocalConnectionState(LocalConnectionState.Starting, false); + return true; + } + + /// + /// Sets a new connection state. + /// + protected override void SetLocalConnectionState(LocalConnectionState connectionState, bool server) + { + base.SetLocalConnectionState(connectionState, server); + if (connectionState == LocalConnectionState.Started) + _server.OnClientHostState(true); + else + _server.OnClientHostState(false); + } + + /// + /// Stops the local socket. + /// + internal bool StopConnection() + { + if (base.GetLocalConnectionState() == LocalConnectionState.Stopped || base.GetLocalConnectionState() == LocalConnectionState.Stopping) + return false; + + base.ClearQueue(_incoming); + //Immediately set stopped since no real connection exists. + SetLocalConnectionState(LocalConnectionState.Stopping, false); + SetLocalConnectionState(LocalConnectionState.Stopped, false); + _server.SetClientHostSocket(null); + + return true; + } + + /// + /// Iterations data received. + /// + internal void IterateIncoming() + { + if (base.GetLocalConnectionState() != LocalConnectionState.Started) + return; + + while (_incoming.Count > 0) + { + LocalPacket packet = _incoming.Dequeue(); + ArraySegment segment = new ArraySegment(packet.Data, 0, packet.Length); + base.Transport.HandleClientReceivedDataArgs(new ClientReceivedDataArgs(segment, (Channel)packet.Channel, Transport.Index)); + packet.Dispose(); + } + } + + /// + /// Called when the server sends the local client data. + /// + internal void ReceivedFromLocalServer(LocalPacket packet) + { + _incoming.Enqueue(packet); + } + + /// + /// Queues data to be sent to server. + /// + internal void SendToServer(byte channelId, ArraySegment segment) + { + if (base.GetLocalConnectionState() != LocalConnectionState.Started) + return; + if (_server.GetLocalConnectionState() != LocalConnectionState.Started) + return; + + LocalPacket packet = new LocalPacket(segment, channelId); + _server.ReceivedFromClientHost(packet); + } + } +} +#endif // !DISABLESTEAMWORKS \ No newline at end of file diff --git a/Assets/FishNet/Plugins/FishyFacepunch/Core/ClientHostSocket.cs.meta b/Assets/FishNet/Plugins/FishyFacepunch/Core/ClientHostSocket.cs.meta new file mode 100644 index 0000000..9e94555 --- /dev/null +++ b/Assets/FishNet/Plugins/FishyFacepunch/Core/ClientHostSocket.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 112bec8b5281832468d85543d0b6e31c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/FishNet/Plugins/FishyFacepunch/Core/ClientSocket.cs b/Assets/FishNet/Plugins/FishyFacepunch/Core/ClientSocket.cs new file mode 100644 index 0000000..151c9d1 --- /dev/null +++ b/Assets/FishNet/Plugins/FishyFacepunch/Core/ClientSocket.cs @@ -0,0 +1,238 @@ +#if !FishyFacepunch +using FishNet.Managing.Logging; +using FishNet.Transporting; +using Steamworks; +using Steamworks.Data; +using System; +using System.Threading; +using System.Threading.Tasks; +using UnityEngine; + +namespace FishyFacepunch.Client +{ + public class ClientSocket : CommonSocket + { + #region Private. + /// + /// SteamId for host. + /// + private SteamId _hostSteamID = 0; + /// + /// Socket to use. + /// + private Connection HostConnection => HostConnectionManager.Connection; + + /// + /// Use the internal connection manager from steam. + /// + private FishyConnectionManager HostConnectionManager; + + /// + /// Task used to check for timeout. + /// + private CancellationTokenSource cancelToken; + private TaskCompletionSource connectedComplete; + private TimeSpan ConnectionTimeout; + + /// + /// Task used to check for timeout. + /// + private bool _Error = false; + + #endregion + + /// + /// Initializes this for use. + /// + /// + internal override void Initialize(Transport t) + { + base.Initialize(t); + } + + /// + /// Starts the client connection. + /// + /// + /// + /// + /// + internal async void StartConnection(string address, ushort port) + { + cancelToken = new CancellationTokenSource(); + SteamNetworkingSockets.OnConnectionStatusChanged += OnConnectionStatusChanged; + ConnectionTimeout = TimeSpan.FromSeconds(Math.Max(1, base.Transport.GetTimeout(false))); + + SetLocalConnectionState(LocalConnectionState.Starting, false); + + try + { + if (SteamClient.IsValid) + { + connectedComplete = new TaskCompletionSource(); + if (!IsValidAddress(address)) + { + _hostSteamID = UInt64.Parse(address); + HostConnectionManager = SteamNetworkingSockets.ConnectRelay(_hostSteamID); + } + else + { + HostConnectionManager = SteamNetworkingSockets.ConnectNormal(NetAddress.From(address, port)); + } + HostConnectionManager.ForwardMessage = OnMessageReceived; + Task connectedCompleteTask = connectedComplete.Task; + Task timeOutTask = Task.Delay(ConnectionTimeout, cancelToken.Token); + + if (await Task.WhenAny(connectedCompleteTask, timeOutTask) != connectedCompleteTask) + { + if (cancelToken.IsCancellationRequested) + { + if (base.Transport.NetworkManager.CanLog(LoggingType.Error)) + Debug.LogError($"The connection attempt was cancelled."); + } + else if (timeOutTask.IsCompleted) + { + if (base.Transport.NetworkManager.CanLog(LoggingType.Error)) + Debug.LogError($"Connection to {address} timed out."); + StopConnection(); + } + SetLocalConnectionState(LocalConnectionState.Stopped, false); + } + } + else + { + if (base.Transport.NetworkManager.CanLog(LoggingType.Error)) + Debug.LogError("SteamWorks not initialized"); + SetLocalConnectionState(LocalConnectionState.Stopped, false); + } + } + catch (FormatException) + { + if (base.Transport.NetworkManager.CanLog(LoggingType.Error)) + Debug.LogError($"Connection string was not in the right format. Did you enter a SteamId?"); + SetLocalConnectionState(LocalConnectionState.Stopped, false); + _Error = true; + } + catch (Exception ex) + { + if (base.Transport.NetworkManager.CanLog(LoggingType.Error)) + Debug.LogError(ex.Message); + SetLocalConnectionState(LocalConnectionState.Stopped, false); + _Error = true; + } + finally + { + if (_Error) + { + if (base.Transport.NetworkManager.CanLog(LoggingType.Error)) + Debug.LogError("Connection failed."); + SetLocalConnectionState(LocalConnectionState.Stopped, false); + } + } + } + + /// + /// Called when local connection state changes. + /// + private void OnConnectionStatusChanged(Connection conn, ConnectionInfo info) + { + if (info.State == ConnectionState.Connected) + { + SetLocalConnectionState(LocalConnectionState.Started, false); + connectedComplete.SetResult(connectedComplete.Task); + } + else if (info.State == ConnectionState.ClosedByPeer || info.State == ConnectionState.ProblemDetectedLocally) + { + if (base.Transport.NetworkManager.CanLog(LoggingType.Common)) + Debug.Log($"Connection was closed by peer, {info.EndReason}"); + StopConnection(); + } + else + { + if (base.Transport.NetworkManager.CanLog(LoggingType.Common)) + Debug.Log($"Connection state changed: {info.State.ToString()} - {info.EndReason}"); + } + } + + /// + /// Stops the local socket. + /// + internal bool StopConnection() + { + if (base.GetLocalConnectionState() == LocalConnectionState.Stopped || base.GetLocalConnectionState() == LocalConnectionState.Stopping) + return false; + + SetLocalConnectionState(LocalConnectionState.Stopping, false); + + cancelToken?.Cancel(); + + //Reset callback. + SteamNetworkingSockets.OnConnectionStatusChanged -= OnConnectionStatusChanged; + + if (HostConnectionManager != null) + { + if (base.Transport.NetworkManager.CanLog(LoggingType.Common)) + Debug.Log("Sending Disconnect message"); + HostConnection.Close(false, 0, "Graceful disconnect"); + HostConnectionManager = null; + } + + SetLocalConnectionState(LocalConnectionState.Stopped, false); + + return true; + } + + /// + /// Iterations data received. + /// + internal void IterateIncoming() + { + if (base.GetLocalConnectionState() != LocalConnectionState.Started) + return; + + HostConnectionManager.Receive(MAX_MESSAGES); + } + + private void OnMessageReceived(IntPtr dataPtr, int size) + { + (byte[] data, int ch) = ProcessMessage(dataPtr, size); + base.Transport.HandleClientReceivedDataArgs(new ClientReceivedDataArgs(new ArraySegment(data), (Channel)ch, Transport.Index)); + } + + /// + /// Queues data to be sent to server. + /// + /// + /// + internal void SendToServer(byte channelId, ArraySegment segment) + { + if (base.GetLocalConnectionState() != LocalConnectionState.Started) + return; + + Result res = base.Send(HostConnection, segment, channelId); + if (res == Result.NoConnection || res == Result.InvalidParam) + { + if (base.Transport.NetworkManager.CanLog(LoggingType.Common)) + Debug.Log($"Connection to server was lost."); + StopConnection(); + } + else if (res != Result.OK) + { + if (base.Transport.NetworkManager.CanLog(LoggingType.Error)) + Debug.LogError($"Could not send: {res.ToString()}"); + } + } + + /// + /// Sends queued data to server. + /// + internal void IterateOutgoing() + { + if (base.GetLocalConnectionState() != LocalConnectionState.Started) + return; + + HostConnection.Flush(); + } + } +} +#endif // !DISABLESTEAMWORKS \ No newline at end of file diff --git a/Assets/FishNet/Plugins/FishyFacepunch/Core/ClientSocket.cs.meta b/Assets/FishNet/Plugins/FishyFacepunch/Core/ClientSocket.cs.meta new file mode 100644 index 0000000..ebb2a90 --- /dev/null +++ b/Assets/FishNet/Plugins/FishyFacepunch/Core/ClientSocket.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c5c258174868ee54cb570bef71c82404 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/FishNet/Plugins/FishyFacepunch/Core/CommonSocket.cs b/Assets/FishNet/Plugins/FishyFacepunch/Core/CommonSocket.cs new file mode 100644 index 0000000..7d7bd7d --- /dev/null +++ b/Assets/FishNet/Plugins/FishyFacepunch/Core/CommonSocket.cs @@ -0,0 +1,177 @@ +#if !FishyFacepunch +using FishNet.Managing.Logging; +using FishNet.Transporting; +using Steamworks; +using Steamworks.Data; +using System; +using System.Collections.Generic; +using System.Net; +using System.Runtime.InteropServices; +using UnityEngine; + +namespace FishyFacepunch +{ + + public abstract class CommonSocket + { + + #region Public. + /// + /// Current ConnectionState. + /// + private LocalConnectionState _connectionState = LocalConnectionState.Stopped; + /// + /// Returns the current ConnectionState. + /// + /// + internal LocalConnectionState GetLocalConnectionState() + { + return _connectionState; + } + /// + /// Sets a new connection state. + /// + /// + protected virtual void SetLocalConnectionState(LocalConnectionState connectionState, bool asServer) + { + //If state hasn't changed. + if (connectionState == _connectionState) + return; + + _connectionState = connectionState; + if (asServer) + Transport.HandleServerConnectionState(new ServerConnectionStateArgs(connectionState, Transport.Index)); + else + Transport.HandleClientConnectionState(new ClientConnectionStateArgs(connectionState, Transport.Index)); + } + #endregion + + #region Protected. + /// + /// Transport controlling this socket. + /// + protected Transport Transport = null; + /// + /// Pointers for received messages per connection. + /// + protected IntPtr[] MessagePointers = new IntPtr[MAX_MESSAGES]; + /// + /// Buffer used to receive data. + /// + protected byte[] InboundBuffer = null; + #endregion + + #region Const. + /// + /// Maximum number of messages which can be received per connection. + /// + protected const int MAX_MESSAGES = 256; + #endregion + + internal void ClearQueue(Queue lpq) + { + while (lpq.Count > 0) + { + LocalPacket lp = lpq.Dequeue(); + lp.Dispose(); + } + } + /// + /// Initializes this for use. + /// + /// + internal virtual void Initialize(Transport t) + { + Transport = t; + //Get whichever channel has max MTU and resize buffer. + int maxMTU = Transport.GetMTU(0); + maxMTU = Math.Max(maxMTU, Transport.GetMTU(1)); + InboundBuffer = new byte[maxMTU]; + } + + /// + /// Check if this is a valid address to start a p2p or c2s session. + /// + /// + /// + protected bool IsValidAddress(string address) + { + //If address is required then make sure it can be parsed. + if (!string.IsNullOrEmpty(address)) + { + if (!IPAddress.TryParse(address, out IPAddress result)) + { + return false; + } + else + { + return true; + } + } + else + { + return false; + } + } + + /// + /// Sends data over the steamConnection. + /// + /// + /// + /// + /// + protected Result Send(Connection conn, ArraySegment segment, byte channelId) + { + /* Have to resize array to include channel index + * if array isn't large enough to fit it. This is because + * we don't know what channel data comes in on so + * the channel has to be packed into the data sent. + * Odds of the array having to resize are extremely low + * so while this is not ideal, it's still very low risk. */ + if ((segment.Array.Length - 1) <= (segment.Offset + segment.Count)) + { + byte[] arr = segment.Array; + Array.Resize(ref arr, arr.Length + 1); + arr[arr.Length - 1] = channelId; + } + //If large enough just increase the segment and set the channel byte. + else + { + segment.Array[segment.Offset + segment.Count] = channelId; + } + //Make a new segment so count is right. + segment = new ArraySegment(segment.Array, segment.Offset, segment.Count + 1); + + GCHandle pinnedArray = GCHandle.Alloc(segment.Array, GCHandleType.Pinned); + IntPtr pData = pinnedArray.AddrOfPinnedObject() + segment.Offset; + + SendType sendFlag = (channelId == (byte)Channel.Unreliable) ? SendType.Unreliable : SendType.Reliable; + Result result = conn.SendMessage(pData, segment.Count, sendFlag); + if (result != Result.OK) + { + if (Transport.NetworkManager.CanLog(LoggingType.Warning)) + Debug.LogWarning($"Send issue: {result}"); + } + + pinnedArray.Free(); + return result; + } + + /// + /// Returns a message from the steam network. + /// + /// + /// + /// + protected (byte[], int) ProcessMessage(IntPtr ptrs, int size) + { + byte[] managedArray = new byte[size]; + Marshal.Copy(ptrs, managedArray, 0, size); + int channel = managedArray[managedArray.Length - 1]; + Array.Resize(ref managedArray, managedArray.Length - 1); + return (managedArray, channel); + } + } +} +#endif \ No newline at end of file diff --git a/Assets/FishNet/Plugins/FishyFacepunch/Core/CommonSocket.cs.meta b/Assets/FishNet/Plugins/FishyFacepunch/Core/CommonSocket.cs.meta new file mode 100644 index 0000000..34fb757 --- /dev/null +++ b/Assets/FishNet/Plugins/FishyFacepunch/Core/CommonSocket.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 3bc85d49720cf5844bf19af677e4f5f5 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/FishNet/Plugins/FishyFacepunch/Core/FishyConnectionManager.cs b/Assets/FishNet/Plugins/FishyFacepunch/Core/FishyConnectionManager.cs new file mode 100644 index 0000000..e05b936 --- /dev/null +++ b/Assets/FishNet/Plugins/FishyFacepunch/Core/FishyConnectionManager.cs @@ -0,0 +1,12 @@ +using Steamworks; +using System; + +public class FishyConnectionManager : ConnectionManager +{ + public Action ForwardMessage; + + public override void OnMessage(IntPtr data, int size, long messageNum, long recvTime, int channel) + { + ForwardMessage(data, size); + } +} \ No newline at end of file diff --git a/Assets/FishNet/Plugins/FishyFacepunch/Core/FishyConnectionManager.cs.meta b/Assets/FishNet/Plugins/FishyFacepunch/Core/FishyConnectionManager.cs.meta new file mode 100644 index 0000000..e04a569 --- /dev/null +++ b/Assets/FishNet/Plugins/FishyFacepunch/Core/FishyConnectionManager.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 4200e3c1bd9ce214baf0cc323ef78429 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/FishNet/Plugins/FishyFacepunch/Core/FishySocketManager.cs b/Assets/FishNet/Plugins/FishyFacepunch/Core/FishySocketManager.cs new file mode 100644 index 0000000..58a8908 --- /dev/null +++ b/Assets/FishNet/Plugins/FishyFacepunch/Core/FishySocketManager.cs @@ -0,0 +1,13 @@ +using Steamworks; +using Steamworks.Data; +using System; + +public class FishySocketManager : SocketManager +{ + public Action ForwardMessage; + + public override void OnMessage(Connection connection, NetIdentity identity, IntPtr data, int size, long messageNum, long recvTime, int channel) + { + ForwardMessage(connection, data, size); + } +} \ No newline at end of file diff --git a/Assets/FishNet/Plugins/FishyFacepunch/Core/FishySocketManager.cs.meta b/Assets/FishNet/Plugins/FishyFacepunch/Core/FishySocketManager.cs.meta new file mode 100644 index 0000000..4567fed --- /dev/null +++ b/Assets/FishNet/Plugins/FishyFacepunch/Core/FishySocketManager.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 1180bddcdfeaad44e80261cedd2b806d +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/FishNet/Plugins/FishyFacepunch/Core/LocalPacket.cs b/Assets/FishNet/Plugins/FishyFacepunch/Core/LocalPacket.cs new file mode 100644 index 0000000..e48887d --- /dev/null +++ b/Assets/FishNet/Plugins/FishyFacepunch/Core/LocalPacket.cs @@ -0,0 +1,25 @@ +using FishNet.Utility.Performance; +using System; + +namespace FishyFacepunch +{ + internal struct LocalPacket + { + public byte[] Data; + public int Length; + public byte Channel; + public LocalPacket(ArraySegment data, byte channel) + { + Data = ByteArrayPool.Retrieve(data.Count); + Length = data.Count; + Buffer.BlockCopy(data.Array, data.Offset, Data, 0, Length); + Channel = channel; + } + + public void Dispose() + { + if (Data != null) + ByteArrayPool.Store(Data); + } + } +} diff --git a/Assets/FishNet/Plugins/FishyFacepunch/Core/LocalPacket.cs.meta b/Assets/FishNet/Plugins/FishyFacepunch/Core/LocalPacket.cs.meta new file mode 100644 index 0000000..1e83600 --- /dev/null +++ b/Assets/FishNet/Plugins/FishyFacepunch/Core/LocalPacket.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c1e0f33bdfade44489a2decb96d23c72 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/FishNet/Plugins/FishyFacepunch/Core/ServerSocket.cs b/Assets/FishNet/Plugins/FishyFacepunch/Core/ServerSocket.cs new file mode 100644 index 0000000..622bafa --- /dev/null +++ b/Assets/FishNet/Plugins/FishyFacepunch/Core/ServerSocket.cs @@ -0,0 +1,425 @@ +#if !FishyFacepunch +using FishNet.Managing.Logging; +using FishNet.Transporting; +using FishyFacepunch.Client; +using Steamworks; +using Steamworks.Data; +using System; +using System.Collections.Generic; +using UnityEngine; + +namespace FishyFacepunch.Server +{ + public class ServerSocket : CommonSocket + { + #region Public. + /// + /// Gets the current ConnectionState of a remote client on the server. + /// + /// ConnectionId to get ConnectionState for. + internal RemoteConnectionState GetConnectionState(int connectionId) + { + //Remote clients can only have Started or Stopped states since we cannot know in between. + if (_steamConnections.Second.ContainsKey(connectionId)) + return RemoteConnectionState.Started; + else + return RemoteConnectionState.Stopped; + } + #endregion + + #region Private. + /// + /// SteamConnections for ConnectionIds. + /// + private BidirectionalDictionary _steamConnections = new BidirectionalDictionary(); + /// + /// SteamIds for ConnectionIds. + /// + private BidirectionalDictionary _steamIds = new BidirectionalDictionary(); + /// + /// Maximum number of remote connections. + /// + private int _maximumClients; + /// + /// Next Id to use for a connection. + /// + private int _nextConnectionId; + /// + /// Socket for the connection. + /// + private FishySocketManager _socket; + /// + /// ConnectionIds which can be reused. + /// + private Queue _cachedConnectionIds = new Queue(); + /// + /// Contains state of the client host. True is started, false is stopped. + /// + private bool _clientHostStarted = false; + /// + /// Packets received from local client. + /// + private Queue _clientHostIncoming = new Queue(); + /// + /// Socket for client host. Will be null if not being used. + /// + private ClientHostSocket _clientHost; + #endregion + + /// + /// Initializes this for use. + /// + /// + internal override void Initialize(Transport t) + { + base.Initialize(t); + } + + /// + /// Resets the socket if invalid. + /// + internal void ResetInvalidSocket() + { + /* Force connection state to stopped if listener is invalid. + * Not sure if steam may change this internally so better + * safe than sorry and check before trying to connect + * rather than being stuck in the incorrect state. */ + if (_socket == default) + base.SetLocalConnectionState(LocalConnectionState.Stopped, true); + } + /// + /// Starts the server. + /// + internal bool StartConnection(string address, ushort port, int maximumClients) + { + SteamNetworkingSockets.OnConnectionStatusChanged += OnRemoteConnectionState; + + SetMaximumClients(maximumClients); + _nextConnectionId = 0; + _cachedConnectionIds.Clear(); + + base.SetLocalConnectionState(LocalConnectionState.Starting, true); + + if (_socket != null) + { + _socket?.Close(); + _socket = default; + } + +#if UNITY_SERVER + _socket = SteamNetworkingSockets.CreateNormalSocket(NetAddress.From(address, port)); +#else + _socket = SteamNetworkingSockets.CreateRelaySocket(); +#endif + _socket.ForwardMessage = OnMessageReceived; + + base.SetLocalConnectionState(LocalConnectionState.Started, true); + + return true; + } + + /// + /// Stops the local socket. + /// + internal bool StopConnection() + { + if (base.GetLocalConnectionState() == LocalConnectionState.Stopped) + return false; + + base.SetLocalConnectionState(LocalConnectionState.Stopping, true); + + if (_socket != null) + { + SteamNetworkingSockets.OnConnectionStatusChanged -= OnRemoteConnectionState; + _socket?.Close(); + _socket = default; + } + + base.SetLocalConnectionState(LocalConnectionState.Stopped, true); + + return true; + } + + /// + /// Stops a remote client from the server, disconnecting the client. + /// + /// ConnectionId of the client to disconnect. + internal bool StopConnection(int connectionId) + { + if (connectionId == FishyFacepunch.CLIENT_HOST_ID) + { + if (_clientHost != null) + { + _clientHost.StopConnection(); + return true; + } + else + { + return false; + } + + } + else + { + if (_steamConnections.Second.TryGetValue(connectionId, out Connection steamConn)) + { + return StopConnection(connectionId, steamConn); + } + else + { + if (base.Transport.NetworkManager.CanLog(LoggingType.Error)) + Debug.LogError($"Steam connection not found for connectionId {connectionId}."); + return false; + } + } + } + /// + /// Stops a remote client from the server, disconnecting the client. + /// + /// + /// + private bool StopConnection(int connectionId, Connection socket) + { + socket.Close(false, 0, "Graceful disconnect"); + _steamConnections.Remove(connectionId); + _steamIds.Remove(connectionId); + if (base.Transport.NetworkManager.CanLog(LoggingType.Common)) + Debug.Log($"Client with ConnectionID {connectionId} disconnected."); + base.Transport.HandleRemoteConnectionState(new RemoteConnectionStateArgs(RemoteConnectionState.Stopped, connectionId, Transport.Index)); + _cachedConnectionIds.Enqueue(connectionId); + + return true; + } + + /// + /// Called when a remote connection state changes. + /// + private void OnRemoteConnectionState(Connection conn, ConnectionInfo info) + { + ulong clientSteamID = info.Identity.SteamId; + if (info.State == ConnectionState.Connecting) + { + if (_steamConnections.Count >= _maximumClients) + { + if (base.Transport.NetworkManager.CanLog(LoggingType.Common)) + Debug.Log($"Incoming connection {clientSteamID} was rejected because would exceed the maximum connection count."); + + conn.Close(false, 0, "Max Connection Count"); + return; + } + + Result res; + + if ((res = conn.Accept()) == Result.OK) + { + if (base.Transport.NetworkManager.CanLog(LoggingType.Common)) + Debug.Log($"Accepting connection {clientSteamID}"); + } + else + { + if (base.Transport.NetworkManager.CanLog(LoggingType.Common)) + Debug.Log($"Connection {clientSteamID} could not be accepted: {res.ToString()}"); + } + } + else if (info.State == ConnectionState.Connected) + { + int connectionId = (_cachedConnectionIds.Count > 0) ? _cachedConnectionIds.Dequeue() : _nextConnectionId++; + _steamConnections.Add(conn, connectionId); + _steamIds.Add(clientSteamID, connectionId); + + if (base.Transport.NetworkManager.CanLog(LoggingType.Common)) + Debug.Log($"Client with SteamID {clientSteamID} connected. Assigning connection id {connectionId}"); + base.Transport.HandleRemoteConnectionState(new RemoteConnectionStateArgs(RemoteConnectionState.Started, connectionId, Transport.Index)); + } + else if (info.State == ConnectionState.ClosedByPeer || info.State == ConnectionState.ProblemDetectedLocally) + { + if (_steamConnections.TryGetValue(conn, out int connId)) + { + StopConnection(connId, conn); + } + } + else + { + if (base.Transport.NetworkManager.CanLog(LoggingType.Common)) + Debug.Log($"Connection {clientSteamID} state changed: {info.State.ToString()}"); + } + } + + + /// + /// Allows for Outgoing queue to be iterated. + /// + internal void IterateOutgoing() + { + if (base.GetLocalConnectionState() != LocalConnectionState.Started) + return; + + foreach (Connection conn in _steamConnections.FirstTypes) + { + conn.Flush(); + } + } + + /// + /// Iterates the Incoming queue. + /// + /// + internal void IterateIncoming() + { + //Stopped or trying to stop. + if (base.GetLocalConnectionState() == LocalConnectionState.Stopped || base.GetLocalConnectionState() == LocalConnectionState.Stopping) + return; + + //Iterate local client packets first. + while (_clientHostIncoming.Count > 0) + { + LocalPacket packet = _clientHostIncoming.Dequeue(); + ArraySegment segment = new ArraySegment(packet.Data, 0, packet.Length); + base.Transport.HandleServerReceivedDataArgs(new ServerReceivedDataArgs(segment, (Channel)packet.Channel, FishyFacepunch.CLIENT_HOST_ID, Transport.Index)); + packet.Dispose(); + } + + _socket.Receive(MAX_MESSAGES); + } + + private void OnMessageReceived(Connection conn, IntPtr dataPtr, int size) + { + (byte[] data, int ch) = ProcessMessage(dataPtr, size); + base.Transport.HandleServerReceivedDataArgs(new ServerReceivedDataArgs(new ArraySegment(data), (Channel)ch, _steamConnections[conn], Transport.Index)); + } + + /// + /// Sends data to a client. + /// + /// + /// + /// + internal void SendToClient(byte channelId, ArraySegment segment, int connectionId) + { + if (base.GetLocalConnectionState() != LocalConnectionState.Started) + return; + + //Check if sending local client first, send and exit if so. + if (connectionId == FishyFacepunch.CLIENT_HOST_ID) + { + if (_clientHost != null) + { + LocalPacket packet = new LocalPacket(segment, channelId); + _clientHost.ReceivedFromLocalServer(packet); + } + return; + } + + if (_steamConnections.TryGetValue(connectionId, out Connection steamConn)) + { + Result res = base.Send(steamConn, segment, channelId); + + if (res == Result.NoConnection || res == Result.InvalidParam) + { + if (base.Transport.NetworkManager.CanLog(LoggingType.Common)) + Debug.Log($"Connection to {connectionId} was lost."); + StopConnection(connectionId, steamConn); + } + else if (res != Result.OK) + { + if (base.Transport.NetworkManager.CanLog(LoggingType.Error)) + Debug.LogError($"Could not send: {res.ToString()}"); + } + } + else + { + if (base.Transport.NetworkManager.CanLog(LoggingType.Error)) + Debug.LogError($"ConnectionId {connectionId} does not exist, data will not be sent."); + } + } + + /// + /// Gets the address of a remote connection Id. + /// + /// + /// + internal string GetConnectionAddress(int connectionId) + { + if (_steamIds.TryGetValue(connectionId, out SteamId steamId)) + { + return steamId.ToString(); + } + else + { + if (base.Transport.NetworkManager.CanLog(LoggingType.Error)) + Debug.LogError($"ConnectionId {connectionId} is invalid; address cannot be returned."); + + return string.Empty; + } + } + + + /// + /// Sets maximum number of clients allowed to connect to the server. If applied at runtime and clients exceed this value existing clients will stay connected but new clients may not connect. + /// + /// + internal void SetMaximumClients(int value) + { + _maximumClients = Math.Min(value, FishyFacepunch.CLIENT_HOST_ID - 1); + } + internal int GetMaximumClients() + { + return _maximumClients; + } + + #region ClientHost (local client). + /// + /// Sets ClientHost value. + /// + /// + internal void SetClientHostSocket(ClientHostSocket socket) + { + _clientHost = socket; + } + /// + /// Called when the local client stops. + /// + internal void OnClientHostState(bool started) + { + + _clientHostStarted = started; + FishyFacepunch ff = (FishyFacepunch)base.Transport; + SteamId steamId = new SteamId() + { + Value = ff.LocalUserSteamID + }; + + //If not started flush incoming from local client. + if (!started && _clientHostStarted) + { + base.ClearQueue(_clientHostIncoming); + base.Transport.HandleRemoteConnectionState(new RemoteConnectionStateArgs(RemoteConnectionState.Stopped, FishyFacepunch.CLIENT_HOST_ID, Transport.Index)); + _steamIds.Remove(steamId); + } + //If started. + else if (started) + { + _steamIds[steamId] = FishyFacepunch.CLIENT_HOST_ID; + base.Transport.HandleRemoteConnectionState(new RemoteConnectionStateArgs(RemoteConnectionState.Started, FishyFacepunch.CLIENT_HOST_ID, Transport.Index)); + } + + _clientHostStarted = started; + } + + /// + /// Queues a received packet from the local client. + /// + internal void ReceivedFromClientHost(LocalPacket packet) + { + if (!_clientHostStarted) + { + packet.Dispose(); + return; + } + + _clientHostIncoming.Enqueue(packet); + } + #endregion + } +} +#endif // !DISABLESTEAMWORKS \ No newline at end of file diff --git a/Assets/FishNet/Plugins/FishyFacepunch/Core/ServerSocket.cs.meta b/Assets/FishNet/Plugins/FishyFacepunch/Core/ServerSocket.cs.meta new file mode 100644 index 0000000..cdfb777 --- /dev/null +++ b/Assets/FishNet/Plugins/FishyFacepunch/Core/ServerSocket.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: a0f5d2e6e0da6a244a3fa589e4f6bba2 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/FishNet/Plugins/FishyFacepunch/FishyFacepunch.cs b/Assets/FishNet/Plugins/FishyFacepunch/FishyFacepunch.cs new file mode 100644 index 0000000..2ae2a05 --- /dev/null +++ b/Assets/FishNet/Plugins/FishyFacepunch/FishyFacepunch.cs @@ -0,0 +1,518 @@ +#if !FishyFacepunch +using FishNet.Managing; +using FishNet.Transporting; +using Steamworks; +using System; +using UnityEngine; + +namespace FishyFacepunch +{ + public class FishyFacepunch : Transport + { + ~FishyFacepunch() + { + Shutdown(); + } + + #region Public. + [System.NonSerialized] + public ulong LocalUserSteamID; + #endregion + + #region Serialized. + /// + /// Steam application Id. + /// + [Tooltip("Steam application Id.")] + [SerializeField] + private uint _steamAppID = 480; + + [Header("Server")] + /// + /// Address server should bind to. + /// + [Tooltip("Address server should bind to.")] + [SerializeField] + private string _serverBindAddress = string.Empty; + /// + /// Port to use. + /// + [Tooltip("Port to use.")] + [SerializeField] + private ushort _port = 27015; + /// + /// Maximum number of players which may be connected at once. + /// + [Tooltip("Maximum number of players which may be connected at once.")] + [Range(1, ushort.MaxValue)] + [SerializeField] + private ushort _maximumClients = 16; + + [Header("Client")] + /// + /// Address client should connect to. + /// + [Tooltip("Address client should connect to.")] + [SerializeField] + private string _clientAddress = string.Empty; + + [Tooltip("Timeout for connecting in seconds.")] + [SerializeField] + private int _timeout = 25; + #endregion + + #region Private. + /// + /// MTUs for each channel. + /// + private int[] _mtus; + /// + /// Client for the transport. + /// + private Client.ClientSocket _client = new Client.ClientSocket(); + /// + /// Client when acting as host. + /// + private Client.ClientHostSocket _clientHost = new Client.ClientHostSocket(); + /// + /// Server for the transport. + /// + private Server.ServerSocket _server = new Server.ServerSocket(); + #endregion + + #region Const. + /// + /// Id to use for client when acting as host. + /// + internal const int CLIENT_HOST_ID = short.MaxValue; + #endregion + + #region Initialization and Unity. + public override void Initialize(NetworkManager networkManager, int transportIndex) + { + base.Initialize(networkManager, transportIndex); + + CreateChannelData(); + +#if !UNITY_SERVER + SteamClient.Init(_steamAppID, true); + SteamNetworking.AllowP2PPacketRelay(true); +#endif + _clientHost.Initialize(this); + _client.Initialize(this); + _server.Initialize(this); + } + + private void OnDestroy() + { + Shutdown(); + } + + private void Update() + { + _clientHost.CheckSetStarted(); + } + #endregion + + #region Setup. + /// + /// Creates ChannelData for the transport. + /// + private void CreateChannelData() + { + _mtus = new int[2] + { + 1048576, + 1200 + }; + } + + /// + /// Tries to initialize steam network access. + /// + private void InitializeRelayNetworkAccess() + { +#if !UNITY_SERVER + SteamNetworkingUtils.InitRelayNetworkAccess(); + LocalUserSteamID = Steamworks.SteamClient.SteamId.Value; +#endif + } + #endregion + + #region ConnectionStates. + /// + /// Gets the IP address of a remote connection Id. + /// + /// + /// + public override string GetConnectionAddress(int connectionId) + { + return _server.GetConnectionAddress(connectionId); + } + /// + /// Called when a connection state changes for the local client. + /// + public override event Action OnClientConnectionState; + /// + /// Called when a connection state changes for the local server. + /// + public override event Action OnServerConnectionState; + /// + /// Called when a connection state changes for a remote client. + /// + public override event Action OnRemoteConnectionState; + /// + /// Gets the current local ConnectionState. + /// + /// True if getting ConnectionState for the server. + public override LocalConnectionState GetConnectionState(bool server) + { + if (server) + return _server.GetLocalConnectionState(); + else + return _client.GetLocalConnectionState(); + } + /// + /// Gets the current ConnectionState of a remote client on the server. + /// + /// ConnectionId to get ConnectionState for. + public override RemoteConnectionState GetConnectionState(int connectionId) + { + return _server.GetConnectionState(connectionId); + } + /// + /// Handles a ConnectionStateArgs for the local client. + /// + /// + public override void HandleClientConnectionState(ClientConnectionStateArgs connectionStateArgs) + { + OnClientConnectionState?.Invoke(connectionStateArgs); + } + /// + /// Handles a ConnectionStateArgs for the local server. + /// + /// + public override void HandleServerConnectionState(ServerConnectionStateArgs connectionStateArgs) + { + OnServerConnectionState?.Invoke(connectionStateArgs); + } + /// + /// Handles a ConnectionStateArgs for a remote client. + /// + /// + public override void HandleRemoteConnectionState(RemoteConnectionStateArgs connectionStateArgs) + { + OnRemoteConnectionState?.Invoke(connectionStateArgs); + } + #endregion + + #region Iterating. + /// + /// Processes data received by the socket. + /// + /// True to process data received on the server. + public override void IterateIncoming(bool server) + { + if (server) + { + _server.IterateIncoming(); + + } + else + { + _client.IterateIncoming(); + _clientHost.IterateIncoming(); + } + } + + /// + /// Processes data to be sent by the socket. + /// + /// True to process data received on the server. + public override void IterateOutgoing(bool server) + { + if (server) + _server.IterateOutgoing(); + else + _client.IterateOutgoing(); + } + #endregion + + #region ReceivedData. + /// + /// Called when client receives data. + /// + public override event Action OnClientReceivedData; + /// + /// Handles a ClientReceivedDataArgs. + /// + /// + public override void HandleClientReceivedDataArgs(ClientReceivedDataArgs receivedDataArgs) + { + OnClientReceivedData?.Invoke(receivedDataArgs); + } + /// + /// Called when server receives data. + /// + public override event Action OnServerReceivedData; + /// + /// Handles a ClientReceivedDataArgs. + /// + /// + public override void HandleServerReceivedDataArgs(ServerReceivedDataArgs receivedDataArgs) + { + OnServerReceivedData?.Invoke(receivedDataArgs); + } + #endregion + + #region Sending. + /// + /// Sends to the server or all clients. + /// + /// Channel to use. + /// /// Data to send. + public override void SendToServer(byte channelId, ArraySegment segment) + { + _client.SendToServer(channelId, segment); + _clientHost.SendToServer(channelId, segment); + } + /// + /// Sends data to a client. + /// + /// + /// + /// + public override void SendToClient(byte channelId, ArraySegment segment, int connectionId) + { + _server.SendToClient(channelId, segment, connectionId); + } + #endregion + + #region Configuration. + /// + /// Returns the maximum number of clients allowed to connect to the server. If the transport does not support this method the value -1 is returned. + /// + /// + public override int GetMaximumClients() + { + return _server.GetMaximumClients(); + } + /// + /// Sets maximum number of clients allowed to connect to the server. If applied at runtime and clients exceed this value existing clients will stay connected but new clients may not connect. + /// + /// + public override void SetMaximumClients(int value) + { + _server.SetMaximumClients(value); + } + /// + /// Sets which address the client will connect to. + /// + /// + public override void SetClientAddress(string address) + { + _clientAddress = address; + } + public override void SetServerBindAddress(string address, IPAddressType addressType) + { + _serverBindAddress = address; + } + /// + /// Sets which port to use. + /// + /// + public override void SetPort(ushort port) + { + _port = port; + } + /// + /// Returns the adjusted timeout as float + /// + /// + public override float GetTimeout(bool asServer) + { + return _timeout; + } + #endregion + + #region Start and stop. + /// + /// Starts the local server or client using configured settings. + /// + /// True to start server. + public override bool StartConnection(bool server) + { + Debug.Log("StartConnection fishy server: " + server); + + if (server) + return StartServer(); + else + return StartClient(_clientAddress); + } + + /// + /// Stops the local server or client. + /// + /// True to stop server. + public override bool StopConnection(bool server) + { + if (server) + return StopServer(); + else + return StopClient(); + } + + /// + /// Stops a remote client from the server, disconnecting the client. + /// + /// ConnectionId of the client to disconnect. + /// True to abrutly stp the client socket without waiting socket thread. + public override bool StopConnection(int connectionId, bool immediately) + { + return StopClient(connectionId, immediately); + } + + /// + /// Stops both client and server. + /// + public override void Shutdown() + { + //Stops client then server connections. + StopConnection(false); + StopConnection(true); + } + + #region Privates. + /// + /// Starts server. + /// + /// True if there were no blocks. A true response does not promise a socket will or has connected. + private bool StartServer() + { + bool clientRunning = false; +#if !UNITY_SERVER + if (!SteamClient.IsValid) + { + Debug.LogError("Steam Facepunch not initialized. Server could not be started."); + return false; + } + //if (_client.GetLocalConnectionState() != LocalConnectionState.Stopped) + //{ + // Debug.LogError("Server cannot run while client is running."); + // return false; + //} + + clientRunning = (_client.GetLocalConnectionState() != LocalConnectionState.Stopped); + /* If remote _client is running then stop it + * and start the client host variant. */ + if (clientRunning) + _client.StopConnection(); +#endif + + _server.ResetInvalidSocket(); + if (_server.GetLocalConnectionState() != LocalConnectionState.Stopped) + { + Debug.LogError("Server is already running."); + return false; + } + InitializeRelayNetworkAccess(); + + bool result = _server.StartConnection(_serverBindAddress, _port, _maximumClients); + + //If need to restart client. + if (result && clientRunning) + StartConnection(false); + + return result; + } + + /// + /// Stops server. + /// + private bool StopServer() + { + return _server.StopConnection(); + } + + /// + /// Starts the client. + /// + /// + /// True if there were no blocks. A true response does not promise a socket will or has connected. + private bool StartClient(string address) + { + if (!SteamClient.IsValid) + { + Debug.LogError("Steam Facepunch not initialized. Client could not be started."); + return false; + } + + //If not acting as a host. + if (_server.GetLocalConnectionState() == LocalConnectionState.Stopped) + { + if (_client.GetLocalConnectionState() != LocalConnectionState.Stopped) + { + Debug.LogError("Client is already running."); + return false; + } + //Stop client host if running. + if (_clientHost.GetLocalConnectionState() != LocalConnectionState.Stopped) + _clientHost.StopConnection(); + //Initialize. + InitializeRelayNetworkAccess(); + + _client.StartConnection(address, _port); + } + //Acting as host. + else + { + _clientHost.StartConnection(_server); + } + + return true; + } + + /// + /// Stops the client. + /// + private bool StopClient() + { + bool result = false; + result |= _client.StopConnection(); + result |= _clientHost.StopConnection(); + return result; + } + + /// + /// Stops a remote client on the server. + /// + /// + /// True to abrutly stp the client socket without waiting socket thread. + private bool StopClient(int connectionId, bool immediately) + { + return _server.StopConnection(connectionId); + } + #endregion + #endregion + + #region Channels. + /// + /// Gets the MTU for a channel. This should take header size into consideration. + /// For example, if MTU is 1200 and a packet header for this channel is 10 in size, this method should return 1190. + /// + /// + /// + public override int GetMTU(byte channel) + { + if (channel >= _mtus.Length) + { + Debug.LogError($"Channel {channel} is out of bounds."); + return 0; + } + + return _mtus[channel]; + } + #endregion + } +} +#endif // !DISABLESTEAMWORKS \ No newline at end of file diff --git a/Assets/FishNet/Plugins/FishyFacepunch/FishyFacepunch.cs.meta b/Assets/FishNet/Plugins/FishyFacepunch/FishyFacepunch.cs.meta new file mode 100644 index 0000000..6482ab5 --- /dev/null +++ b/Assets/FishNet/Plugins/FishyFacepunch/FishyFacepunch.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 9da90c29836670c49809661c5c09cd5d +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/FishNet/Plugins/FishyFacepunch/SteamManager.cs b/Assets/FishNet/Plugins/FishyFacepunch/SteamManager.cs new file mode 100644 index 0000000..0ad7e4e --- /dev/null +++ b/Assets/FishNet/Plugins/FishyFacepunch/SteamManager.cs @@ -0,0 +1,144 @@ +using FishNet; +using FishNet.Transporting; +using Steamworks; +using System; +using System.Net; +using UnityEngine; + +public class SteamManager : MonoBehaviour +{ + #region Serialized. + [Header("Steam Settings")] + /// + /// Steam application Id. + /// + [Tooltip("Steam application Id.")] + [SerializeField] + private uint _steamAppID = 480; + + /// + /// SSteam Mod Directory. + /// + [Tooltip("Steam Mod Directory.")] + [SerializeField] + private string _modDir = string.Empty; + + /// + /// Steam Game Description. + /// + [Tooltip("Steam Game Description.")] + [SerializeField] + private string _gameDesc = string.Empty; + + /// + /// Steam version. + /// + [Tooltip("Steam version.")] + [SerializeField] + private string _version = string.Empty; + + [Header("Server Settings")] + /// + /// Servername. + /// + [Tooltip("Server Name")] + [SerializeField] + private string _serverName = string.Empty; + + /// + /// Server Password. + /// + [Tooltip("Server Password.")] + [SerializeField] + private string _password = string.Empty; + + /// + /// Steam Server Query Port. + /// + [Tooltip("Server Query Port.")] + [SerializeField] + private ushort _queryPort = 27016; + + /// + /// Server VAC Secure. + /// + [Tooltip("Server VAC Secure.")] + [SerializeField] + private bool _vac = true; + + /// + /// Server as Dedicated Server. + /// + [Tooltip("Server as Dedicated Server.")] + [SerializeField] + private bool _ds = true; + #endregion + + void Start() + { +#if UNITY_SERVER + InstanceFinder.ServerManager.StartConnection(); + InstanceFinder.ServerManager.OnServerConnectionState += OnServerConnectionState; +#endif + } + + private void OnServerConnectionState(FishNet.Transporting.ServerConnectionStateArgs state) + { + if (state.ConnectionState == FishNet.Transporting.LocalConnectionState.Started) + { + var serverInit = new SteamServerInit(_modDir, _gameDesc) + { + IpAddress = IPAddress.Parse(InstanceFinder.TransportManager.Transport.GetServerBindAddress(IPAddressType.IPv4)), + GamePort = InstanceFinder.TransportManager.Transport.GetPort(), + QueryPort = _queryPort, + Secure = _vac, + DedicatedServer = _ds, + VersionString = _version, + }; + serverInit.WithRandomSteamPort(); + + try + { + SteamServer.Init(1280590, serverInit, true); + SteamServer.ServerName = _serverName; + SteamServer.MaxPlayers = InstanceFinder.TransportManager.Transport.GetMaximumClients(); + SteamServer.Passworded = !string.IsNullOrEmpty(_password); + + SteamServer.DedicatedServer = _ds; + SteamServer.AutomaticHeartbeats = true; + + SteamServer.LogOnAnonymous(); + + SteamServer.OnSteamServersConnected += OnSteamServersConnected; + SteamServer.OnSteamServersDisconnected += OnSteamServersDisconnected; + SteamServer.OnSteamServerConnectFailure += OnSteamServerConnectFailure; + + if (!SteamServer.IsValid) + { + Debug.LogWarning("Couldn't initialize server"); + return; + } + } + catch (Exception ex) + { + Debug.LogError("Couldn't initialize Steam server (" + ex.Message + ")"); + Application.Quit(); + } + } + } + + private void OnSteamServersConnected() + { + Debug.Log("Dedicated Server connected to Steam successfully"); + } + + private void OnSteamServerConnectFailure(Result result, bool stilltrying) + { + Debug.Log("Dedicated Server failed to connect to Steam"); + } + + private void OnSteamServersDisconnected(Result result) + { + Debug.Log("Dedicated Server got logged out of Steam"); + } +} diff --git a/Assets/FishNet/Plugins/FishyFacepunch/SteamManager.cs.meta b/Assets/FishNet/Plugins/FishyFacepunch/SteamManager.cs.meta new file mode 100644 index 0000000..2c5bd58 --- /dev/null +++ b/Assets/FishNet/Plugins/FishyFacepunch/SteamManager.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 1b5f291225ca7c4459871c80128b5172 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/FishNet/Plugins/FishyFacepunch/VERSION.txt b/Assets/FishNet/Plugins/FishyFacepunch/VERSION.txt new file mode 100644 index 0000000..7c32728 --- /dev/null +++ b/Assets/FishNet/Plugins/FishyFacepunch/VERSION.txt @@ -0,0 +1 @@ +2.1.1 \ No newline at end of file diff --git a/Assets/FishNet/Plugins/FishyFacepunch/VERSION.txt.meta b/Assets/FishNet/Plugins/FishyFacepunch/VERSION.txt.meta new file mode 100644 index 0000000..a6eeb74 --- /dev/null +++ b/Assets/FishNet/Plugins/FishyFacepunch/VERSION.txt.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 1db9d679a4e8b8d4c9d5ab6cb2d3ad0f +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Materials/AlienMats/Flesh_graph_0/Flesh_graph_dissolve_vert.mat b/Assets/Materials/AlienMats/Flesh_graph_0/Flesh_graph_dissolve_vert.mat index ccdc121..8235b2a 100644 --- a/Assets/Materials/AlienMats/Flesh_graph_0/Flesh_graph_dissolve_vert.mat +++ b/Assets/Materials/AlienMats/Flesh_graph_0/Flesh_graph_dissolve_vert.mat @@ -230,7 +230,7 @@ Material: - _StencilWriteMaskDepth: 8 - _StencilWriteMaskDistortionVec: 4 - _StencilWriteMaskGBuffer: 14 - - _StencilWriteMaskMV: 40 + - _StencilWriteMaskMV: 42 - _SubsurfaceMask: 1 - _SupportDecals: 1 - _SurfaceType: 0 diff --git a/Assets/Materials/FlashlightLit.mat b/Assets/Materials/FlashlightLit.mat index f11e585..4fb19a9 100644 --- a/Assets/Materials/FlashlightLit.mat +++ b/Assets/Materials/FlashlightLit.mat @@ -206,7 +206,7 @@ Material: - _StencilWriteMask: 6 - _StencilWriteMaskDepth: 8 - _StencilWriteMaskGBuffer: 14 - - _StencilWriteMaskMV: 40 + - _StencilWriteMaskMV: 42 - _SubsurfaceMask: 1 - _SupportDecals: 1 - _SurfaceType: 0 diff --git a/Assets/Materials/Levels/Level0/CeilLightMaterial.mat b/Assets/Materials/Levels/Level0/CeilLightMaterial.mat index 354b23f..715777f 100644 --- a/Assets/Materials/Levels/Level0/CeilLightMaterial.mat +++ b/Assets/Materials/Levels/Level0/CeilLightMaterial.mat @@ -206,7 +206,7 @@ Material: - _StencilWriteMask: 6 - _StencilWriteMaskDepth: 8 - _StencilWriteMaskGBuffer: 14 - - _StencilWriteMaskMV: 40 + - _StencilWriteMaskMV: 42 - _SubsurfaceMask: 1 - _SupportDecals: 1 - _SurfaceType: 0 diff --git a/Assets/Adobe.meta b/Assets/Packages/Adobe.meta similarity index 100% rename from Assets/Adobe.meta rename to Assets/Packages/Adobe.meta diff --git a/Assets/Adobe/Substance3DForUnity.meta b/Assets/Packages/Adobe/Substance3DForUnity.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity.meta rename to Assets/Packages/Adobe/Substance3DForUnity.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Adobe.Substance.Editor.asmdef b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Adobe.Substance.Editor.asmdef similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Adobe.Substance.Editor.asmdef rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Adobe.Substance.Editor.asmdef diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Adobe.Substance.Editor.asmdef.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Adobe.Substance.Editor.asmdef.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Adobe.Substance.Editor.asmdef.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Adobe.Substance.Editor.asmdef.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Assets.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Assets.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Assets.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Assets.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Assets/Logo_128.png b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Assets/Logo_128.png similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Assets/Logo_128.png rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Assets/Logo_128.png diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Assets/Logo_128.png.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Assets/Logo_128.png.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Assets/Logo_128.png.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Assets/Logo_128.png.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Assets/Logo_16.png b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Assets/Logo_16.png similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Assets/Logo_16.png rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Assets/Logo_16.png diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Assets/Logo_16.png.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Assets/Logo_16.png.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Assets/Logo_16.png.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Assets/Logo_16.png.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Assets/Logo_256.png b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Assets/Logo_256.png similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Assets/Logo_256.png rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Assets/Logo_256.png diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Assets/Logo_256.png.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Assets/Logo_256.png.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Assets/Logo_256.png.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Assets/Logo_256.png.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Assets/Logo_32.png b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Assets/Logo_32.png similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Assets/Logo_32.png rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Assets/Logo_32.png diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Assets/Logo_32.png.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Assets/Logo_32.png.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Assets/Logo_32.png.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Assets/Logo_32.png.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Assets/Logo_64.png b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Assets/Logo_64.png similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Assets/Logo_64.png rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Assets/Logo_64.png diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Assets/Logo_64.png.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Assets/Logo_64.png.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Assets/Logo_64.png.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Assets/Logo_64.png.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Assets/S_3DCummunityAssets_18_N.png b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Assets/S_3DCummunityAssets_18_N.png similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Assets/S_3DCummunityAssets_18_N.png rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Assets/S_3DCummunityAssets_18_N.png diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Assets/S_3DCummunityAssets_18_N.png.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Assets/S_3DCummunityAssets_18_N.png.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Assets/S_3DCummunityAssets_18_N.png.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Assets/S_3DCummunityAssets_18_N.png.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Assets/S_3DHeart_18_N_nudged.png b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Assets/S_3DHeart_18_N_nudged.png similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Assets/S_3DHeart_18_N_nudged.png rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Assets/S_3DHeart_18_N_nudged.png diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Assets/S_3DHeart_18_N_nudged.png.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Assets/S_3DHeart_18_N_nudged.png.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Assets/S_3DHeart_18_N_nudged.png.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Assets/S_3DHeart_18_N_nudged.png.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/Extensions.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Extensions.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/Extensions.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Extensions.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/Extensions/PhysicalSizeExtension.cs b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Extensions/PhysicalSizeExtension.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/Extensions/PhysicalSizeExtension.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Extensions/PhysicalSizeExtension.cs diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/Extensions/PhysicalSizeExtension.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Extensions/PhysicalSizeExtension.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/Extensions/PhysicalSizeExtension.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Extensions/PhysicalSizeExtension.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/Extensions/SubstanceGraphSOExtensions.cs b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Extensions/SubstanceGraphSOExtensions.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/Extensions/SubstanceGraphSOExtensions.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Extensions/SubstanceGraphSOExtensions.cs diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/Extensions/SubstanceGraphSOExtensions.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Extensions/SubstanceGraphSOExtensions.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/Extensions/SubstanceGraphSOExtensions.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Extensions/SubstanceGraphSOExtensions.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/GUIContent.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/GUIContent.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/GUIContent.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/GUIContent.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/GUIContent/SubstanceInputGUIContent.cs b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/GUIContent/SubstanceInputGUIContent.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/GUIContent/SubstanceInputGUIContent.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/GUIContent/SubstanceInputGUIContent.cs diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/GUIContent/SubstanceInputGUIContent.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/GUIContent/SubstanceInputGUIContent.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/GUIContent/SubstanceInputGUIContent.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/GUIContent/SubstanceInputGUIContent.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/GUIContent/SubstanceNumericalInputGUIContent.cs b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/GUIContent/SubstanceNumericalInputGUIContent.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/GUIContent/SubstanceNumericalInputGUIContent.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/GUIContent/SubstanceNumericalInputGUIContent.cs diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/GUIContent/SubstanceNumericalInputGUIContent.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/GUIContent/SubstanceNumericalInputGUIContent.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/GUIContent/SubstanceNumericalInputGUIContent.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/GUIContent/SubstanceNumericalInputGUIContent.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/Importer.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Importer.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/Importer.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Importer.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/Importer/SubstanceImporter.cs b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Importer/SubstanceImporter.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/Importer/SubstanceImporter.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Importer/SubstanceImporter.cs diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/Importer/SubstanceImporter.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Importer/SubstanceImporter.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/Importer/SubstanceImporter.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Importer/SubstanceImporter.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/Importer/SubstanceImporterEditor.cs b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Importer/SubstanceImporterEditor.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/Importer/SubstanceImporterEditor.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Importer/SubstanceImporterEditor.cs diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/Importer/SubstanceImporterEditor.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Importer/SubstanceImporterEditor.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/Importer/SubstanceImporterEditor.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Importer/SubstanceImporterEditor.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/Package.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Package.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/Package.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Package.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/Package/UnityPackageInfo.cs b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Package/UnityPackageInfo.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/Package/UnityPackageInfo.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Package/UnityPackageInfo.cs diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/Package/UnityPackageInfo.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Package/UnityPackageInfo.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/Package/UnityPackageInfo.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Package/UnityPackageInfo.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/Project Settings Editor.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Project Settings Editor.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/Project Settings Editor.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Project Settings Editor.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/Project Settings Editor/Extensions.cs b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Project Settings Editor/Extensions.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/Project Settings Editor/Extensions.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Project Settings Editor/Extensions.cs diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/Project Settings Editor/Extensions.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Project Settings Editor/Extensions.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/Project Settings Editor/Extensions.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Project Settings Editor/Extensions.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/Project Settings Editor/SubstanceEditorSettingsProvider.cs b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Project Settings Editor/SubstanceEditorSettingsProvider.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/Project Settings Editor/SubstanceEditorSettingsProvider.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Project Settings Editor/SubstanceEditorSettingsProvider.cs diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/Project Settings Editor/SubstanceEditorSettingsProvider.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Project Settings Editor/SubstanceEditorSettingsProvider.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/Project Settings Editor/SubstanceEditorSettingsProvider.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Project Settings Editor/SubstanceEditorSettingsProvider.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/Project Settings Editor/SubstanceEditorSettingsSO.cs b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Project Settings Editor/SubstanceEditorSettingsSO.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/Project Settings Editor/SubstanceEditorSettingsSO.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Project Settings Editor/SubstanceEditorSettingsSO.cs diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/Project Settings Editor/SubstanceEditorSettingsSO.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Project Settings Editor/SubstanceEditorSettingsSO.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/Project Settings Editor/SubstanceEditorSettingsSO.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Project Settings Editor/SubstanceEditorSettingsSO.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawer.cs b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawer.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawer.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawer.cs diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawer.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawer.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawer.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawer.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerFloat.cs b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerFloat.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerFloat.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerFloat.cs diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerFloat.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerFloat.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerFloat.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerFloat.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerFloat2.cs b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerFloat2.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerFloat2.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerFloat2.cs diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerFloat2.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerFloat2.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerFloat2.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerFloat2.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerFloat3.cs b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerFloat3.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerFloat3.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerFloat3.cs diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerFloat3.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerFloat3.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerFloat3.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerFloat3.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerFloat4.cs b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerFloat4.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerFloat4.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerFloat4.cs diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerFloat4.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerFloat4.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerFloat4.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerFloat4.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerInt.cs b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerInt.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerInt.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerInt.cs diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerInt.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerInt.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerInt.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerInt.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerInt2.cs b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerInt2.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerInt2.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerInt2.cs diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerInt2.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerInt2.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerInt2.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerInt2.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerInt3.cs b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerInt3.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerInt3.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerInt3.cs diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerInt3.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerInt3.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerInt3.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerInt3.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerInt4.cs b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerInt4.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerInt4.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerInt4.cs diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerInt4.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerInt4.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerInt4.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerInt4.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerString.cs b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerString.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerString.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerString.cs diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerString.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerString.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerString.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerString.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerTexture.cs b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerTexture.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerTexture.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerTexture.cs diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerTexture.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerTexture.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerTexture.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/PropertyDrawers/SubstanceInputDrawerTexture.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/SubstanceEditorEngine.cs b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/SubstanceEditorEngine.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/SubstanceEditorEngine.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/SubstanceEditorEngine.cs diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/SubstanceEditorEngine.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/SubstanceEditorEngine.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/SubstanceEditorEngine.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/SubstanceEditorEngine.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/SubstanceFileEditor.cs b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/SubstanceFileEditor.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/SubstanceFileEditor.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/SubstanceFileEditor.cs diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/SubstanceFileEditor.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/SubstanceFileEditor.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/SubstanceFileEditor.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/SubstanceFileEditor.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/SubstanceGraphSOEditor.cs b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/SubstanceGraphSOEditor.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/SubstanceGraphSOEditor.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/SubstanceGraphSOEditor.cs diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/SubstanceGraphSOEditor.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/SubstanceGraphSOEditor.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/SubstanceGraphSOEditor.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/SubstanceGraphSOEditor.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/Utilities.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Utilities.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/Utilities.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Utilities.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/AssetCreationUtils.cs b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/AssetCreationUtils.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/AssetCreationUtils.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/AssetCreationUtils.cs diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/AssetCreationUtils.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/AssetCreationUtils.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/AssetCreationUtils.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/AssetCreationUtils.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/EditorDrawUtilities.cs b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/EditorDrawUtilities.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/EditorDrawUtilities.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/EditorDrawUtilities.cs diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/EditorDrawUtilities.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/EditorDrawUtilities.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/EditorDrawUtilities.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/EditorDrawUtilities.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/EditorTools.cs b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/EditorTools.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/EditorTools.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/EditorTools.cs diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/EditorTools.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/EditorTools.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/EditorTools.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/EditorTools.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/GraphInputsGroupingHelper.cs b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/GraphInputsGroupingHelper.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/GraphInputsGroupingHelper.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/GraphInputsGroupingHelper.cs diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/GraphInputsGroupingHelper.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/GraphInputsGroupingHelper.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/GraphInputsGroupingHelper.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/GraphInputsGroupingHelper.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/NamingExtensions.cs b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/NamingExtensions.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/NamingExtensions.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/NamingExtensions.cs diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/NamingExtensions.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/NamingExtensions.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/NamingExtensions.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/NamingExtensions.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/SubstanceBuildUtils.cs b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/SubstanceBuildUtils.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/SubstanceBuildUtils.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/SubstanceBuildUtils.cs diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/SubstanceBuildUtils.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/SubstanceBuildUtils.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/SubstanceBuildUtils.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/SubstanceBuildUtils.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/SubstanceFileExtensions.cs b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/SubstanceFileExtensions.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/SubstanceFileExtensions.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/SubstanceFileExtensions.cs diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/SubstanceFileExtensions.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/SubstanceFileExtensions.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/SubstanceFileExtensions.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/SubstanceFileExtensions.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/TextureUtils.cs b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/TextureUtils.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/TextureUtils.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/TextureUtils.cs diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/TextureUtils.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/TextureUtils.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/TextureUtils.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Scripts/Utilities/TextureUtils.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Settings.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Settings.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Settings.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Settings.meta diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Settings/SubstanceEditorSettings.asset b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Settings/SubstanceEditorSettings.asset similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Settings/SubstanceEditorSettings.asset rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Settings/SubstanceEditorSettings.asset diff --git a/Assets/Adobe/Substance3DForUnity/Editor/Settings/SubstanceEditorSettings.asset.meta b/Assets/Packages/Adobe/Substance3DForUnity/Editor/Settings/SubstanceEditorSettings.asset.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Editor/Settings/SubstanceEditorSettings.asset.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Editor/Settings/SubstanceEditorSettings.asset.meta diff --git a/Assets/Adobe/Substance3DForUnity/HOWTO.pdf b/Assets/Packages/Adobe/Substance3DForUnity/HOWTO.pdf similarity index 100% rename from Assets/Adobe/Substance3DForUnity/HOWTO.pdf rename to Assets/Packages/Adobe/Substance3DForUnity/HOWTO.pdf diff --git a/Assets/Adobe/Substance3DForUnity/HOWTO.pdf.meta b/Assets/Packages/Adobe/Substance3DForUnity/HOWTO.pdf.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/HOWTO.pdf.meta rename to Assets/Packages/Adobe/Substance3DForUnity/HOWTO.pdf.meta diff --git a/Assets/Adobe/Substance3DForUnity/README.md b/Assets/Packages/Adobe/Substance3DForUnity/README.md similarity index 100% rename from Assets/Adobe/Substance3DForUnity/README.md rename to Assets/Packages/Adobe/Substance3DForUnity/README.md diff --git a/Assets/Adobe/Substance3DForUnity/README.md.meta b/Assets/Packages/Adobe/Substance3DForUnity/README.md.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/README.md.meta rename to Assets/Packages/Adobe/Substance3DForUnity/README.md.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Adobe.Substance.asmdef b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Adobe.Substance.asmdef similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Adobe.Substance.asmdef rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Adobe.Substance.asmdef diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Adobe.Substance.asmdef.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Adobe.Substance.asmdef.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Adobe.Substance.asmdef.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Adobe.Substance.asmdef.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/Arm64.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/Arm64.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/Arm64.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/Arm64.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/Arm64/libsbsario.so b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/Arm64/libsbsario.so similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/Arm64/libsbsario.so rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/Arm64/libsbsario.so diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/Arm64/libsbsario.so.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/Arm64/libsbsario.so.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/Arm64/libsbsario.so.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/Arm64/libsbsario.so.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libalg.a b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libalg.a similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libalg.a rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libalg.a diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libalg.a.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libalg.a.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libalg.a.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libalg.a.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libalgcompression.a b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libalgcompression.a similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libalgcompression.a rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libalgcompression.a diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libalgcompression.a.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libalgcompression.a.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libalgcompression.a.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libalgcompression.a.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libintegrations_common.a b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libintegrations_common.a similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libintegrations_common.a rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libintegrations_common.a diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libintegrations_common.a.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libintegrations_common.a.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libintegrations_common.a.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libintegrations_common.a.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libintegrations_renderer.a b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libintegrations_renderer.a similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libintegrations_renderer.a rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libintegrations_renderer.a diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libintegrations_renderer.a.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libintegrations_renderer.a.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libintegrations_renderer.a.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libintegrations_renderer.a.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libintegrations_system.a b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libintegrations_system.a similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libintegrations_system.a rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libintegrations_system.a diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libintegrations_system.a.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libintegrations_system.a.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libintegrations_system.a.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libintegrations_system.a.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libpfxlinkercommon.a b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libpfxlinkercommon.a similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libpfxlinkercommon.a rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libpfxlinkercommon.a diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libpfxlinkercommon.a.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libpfxlinkercommon.a.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libpfxlinkercommon.a.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libpfxlinkercommon.a.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libsbsario.a b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libsbsario.a similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libsbsario.a rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libsbsario.a diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libsbsario.a.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libsbsario.a.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libsbsario.a.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libsbsario.a.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libsbsario_details.a b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libsbsario_details.a similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libsbsario_details.a rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libsbsario_details.a diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libsbsario_details.a.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libsbsario_details.a.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libsbsario_details.a.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libsbsario_details.a.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libsubstance_framework.a b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libsubstance_framework.a similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libsubstance_framework.a rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libsubstance_framework.a diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libsubstance_framework.a.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libsubstance_framework.a.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libsubstance_framework.a.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libsubstance_framework.a.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libsubstance_linker.a b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libsubstance_linker.a similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libsubstance_linker.a rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libsubstance_linker.a diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libsubstance_linker.a.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libsubstance_linker.a.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libsubstance_linker.a.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libsubstance_linker.a.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libsubstance_neon_blend.a b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libsubstance_neon_blend.a similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libsubstance_neon_blend.a rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libsubstance_neon_blend.a diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libsubstance_neon_blend.a.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libsubstance_neon_blend.a.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libsubstance_neon_blend.a.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libsubstance_neon_blend.a.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libtinyxml.a b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libtinyxml.a similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libtinyxml.a rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libtinyxml.a diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libtinyxml.a.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libtinyxml.a.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libtinyxml.a.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/iOS/libtinyxml.a.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/libsbsario.dylib b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/libsbsario.dylib similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/libsbsario.dylib rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/libsbsario.dylib diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/libsbsario.dylib.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/libsbsario.dylib.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/libsbsario.dylib.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/libsbsario.dylib.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/libsbsario.so b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/libsbsario.so similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/libsbsario.so rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/libsbsario.so diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/libsbsario.so.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/libsbsario.so.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/libsbsario.so.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/libsbsario.so.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_linker.8.dylib b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_linker.8.dylib similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_linker.8.dylib rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_linker.8.dylib diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_linker.8.dylib.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_linker.8.dylib.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_linker.8.dylib.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_linker.8.dylib.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_linker.dylib b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_linker.dylib similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_linker.dylib rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_linker.dylib diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_linker.dylib.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_linker.dylib.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_linker.dylib.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_linker.dylib.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_linker.so b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_linker.so similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_linker.so rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_linker.so diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_linker.so.8 b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_linker.so.8 similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_linker.so.8 rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_linker.so.8 diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_linker.so.8.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_linker.so.8.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_linker.so.8.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_linker.so.8.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_linker.so.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_linker.so.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_linker.so.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_linker.so.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_mtl_blend.dylib b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_mtl_blend.dylib similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_mtl_blend.dylib rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_mtl_blend.dylib diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_mtl_blend.dylib.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_mtl_blend.dylib.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_mtl_blend.dylib.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_mtl_blend.dylib.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_ogl3_blend.so b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_ogl3_blend.so similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_ogl3_blend.so rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_ogl3_blend.so diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_ogl3_blend.so.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_ogl3_blend.so.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_ogl3_blend.so.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/libsubstance_ogl3_blend.so.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/sbsario.dll b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/sbsario.dll similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/sbsario.dll rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/sbsario.dll diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/sbsario.dll.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/sbsario.dll.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/sbsario.dll.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/sbsario.dll.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/substance_d3d11pc_blend.dll b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/substance_d3d11pc_blend.dll similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/substance_d3d11pc_blend.dll rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/substance_d3d11pc_blend.dll diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/substance_d3d11pc_blend.dll.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/substance_d3d11pc_blend.dll.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/substance_d3d11pc_blend.dll.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/substance_d3d11pc_blend.dll.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/substance_linker.dll b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/substance_linker.dll similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/substance_linker.dll rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/substance_linker.dll diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/substance_linker.dll.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/substance_linker.dll.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/substance_linker.dll.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/substance_linker.dll.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/substance_sse2_blend.dll b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/substance_sse2_blend.dll similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/substance_sse2_blend.dll rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/substance_sse2_blend.dll diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Plugins/substance_sse2_blend.dll.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/substance_sse2_blend.dll.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Plugins/substance_sse2_blend.dll.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Plugins/substance_sse2_blend.dll.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Runtime.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Runtime.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Runtime.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Runtime.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Runtime/Adobe.Substance.Runtime.asmdef b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Runtime/Adobe.Substance.Runtime.asmdef similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Runtime/Adobe.Substance.Runtime.asmdef rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Runtime/Adobe.Substance.Runtime.asmdef diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Runtime/Adobe.Substance.Runtime.asmdef.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Runtime/Adobe.Substance.Runtime.asmdef.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Runtime/Adobe.Substance.Runtime.asmdef.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Runtime/Adobe.Substance.Runtime.asmdef.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Runtime/Scripts.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Runtime/Scripts.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Runtime/Scripts.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Runtime/Scripts.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Runtime/Scripts/SubstanceRuntime.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Runtime/Scripts/SubstanceRuntime.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Runtime/Scripts/SubstanceRuntime.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Runtime/Scripts/SubstanceRuntime.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Runtime/Scripts/SubstanceRuntime.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Runtime/Scripts/SubstanceRuntime.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Runtime/Scripts/SubstanceRuntime.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Runtime/Scripts/SubstanceRuntime.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Runtime/Scripts/SubstanceRuntimeGraph.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Runtime/Scripts/SubstanceRuntimeGraph.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Runtime/Scripts/SubstanceRuntimeGraph.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Runtime/Scripts/SubstanceRuntimeGraph.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Runtime/Scripts/SubstanceRuntimeGraph.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Runtime/Scripts/SubstanceRuntimeGraph.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Runtime/Scripts/SubstanceRuntimeGraph.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Runtime/Scripts/SubstanceRuntimeGraph.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Engine.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Engine.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Engine.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Engine.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Engine.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Engine.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Engine.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Engine.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Exceptions.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Exceptions.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Exceptions.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Exceptions.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Exceptions/SubstanceException.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Exceptions/SubstanceException.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Exceptions/SubstanceException.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Exceptions/SubstanceException.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Exceptions/SubstanceException.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Exceptions/SubstanceException.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Exceptions/SubstanceException.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Exceptions/SubstanceException.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/DataInternalNumeric.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/DataInternalNumeric.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/DataInternalNumeric.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/DataInternalNumeric.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/DataInternalNumeric.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/DataInternalNumeric.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/DataInternalNumeric.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/DataInternalNumeric.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/Enums.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/Enums.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/Enums.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/Enums.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/Enums/ErrorCode.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/Enums/ErrorCode.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/Enums/ErrorCode.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/Enums/ErrorCode.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/Enums/ErrorCode.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/Enums/ErrorCode.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/Enums/ErrorCode.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/Enums/ErrorCode.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/Enums/HVFlip.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/Enums/HVFlip.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/Enums/HVFlip.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/Enums/HVFlip.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/Enums/HVFlip.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/Enums/HVFlip.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/Enums/HVFlip.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/Enums/HVFlip.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/Enums/ImageFormat.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/Enums/ImageFormat.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/Enums/ImageFormat.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/Enums/ImageFormat.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/Enums/ImageFormat.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/Enums/ImageFormat.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/Enums/ImageFormat.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/Enums/ImageFormat.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/Enums/nativevaluetype.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/Enums/nativevaluetype.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/Enums/nativevaluetype.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/Enums/nativevaluetype.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/Enums/nativevaluetype.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/Enums/nativevaluetype.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/Enums/nativevaluetype.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/Enums/nativevaluetype.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativeDataImage.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativeDataImage.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativeDataImage.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativeDataImage.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativeDataImage.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativeDataImage.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativeDataImage.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativeDataImage.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativeInputVisibility.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativeInputVisibility.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativeInputVisibility.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativeInputVisibility.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativeInputVisibility.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativeInputVisibility.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativeInputVisibility.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativeInputVisibility.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativeOutputFormat.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativeOutputFormat.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativeOutputFormat.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativeOutputFormat.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativeOutputFormat.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativeOutputFormat.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativeOutputFormat.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativeOutputFormat.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativePhysicalSize.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativePhysicalSize.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativePhysicalSize.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativePhysicalSize.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativePhysicalSize.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativePhysicalSize.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativePhysicalSize.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativePhysicalSize.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativePreset.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativePreset.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativePreset.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativePreset.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativePreset.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativePreset.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativePreset.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativePreset.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativeThumbnail.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativeThumbnail.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativeThumbnail.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativeThumbnail.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativeThumbnail.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativeThumbnail.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativeThumbnail.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/NativeThumbnail.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/nativeNumericInputDesc.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/nativeNumericInputDesc.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/nativeNumericInputDesc.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/nativeNumericInputDesc.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/nativeNumericInputDesc.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/nativeNumericInputDesc.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/nativeNumericInputDesc.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/nativeNumericInputDesc.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/nativegraph.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/nativegraph.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/nativegraph.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/nativegraph.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/nativegraph.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/nativegraph.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/nativegraph.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/nativegraph.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/nativeinputdesc.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/nativeinputdesc.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/nativeinputdesc.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/nativeinputdesc.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/nativeinputdesc.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/nativeinputdesc.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/nativeinputdesc.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/nativeinputdesc.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/nativeoutputdesc.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/nativeoutputdesc.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/nativeoutputdesc.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/nativeoutputdesc.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/nativeoutputdesc.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/nativeoutputdesc.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/nativeoutputdesc.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/MarshalStructs/nativeoutputdesc.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/NativeMethods.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/NativeMethods.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/NativeMethods.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/NativeMethods.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/NativeMethods.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/NativeMethods.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/NativeMethods.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/NativeMethods.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Profile.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Profile.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Profile.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Profile.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Profile/ProfileUtils.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Profile/ProfileUtils.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Profile/ProfileUtils.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Profile/ProfileUtils.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Profile/ProfileUtils.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Profile/ProfileUtils.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Profile/ProfileUtils.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Profile/ProfileUtils.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Render Pipelines.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Render Pipelines.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Render Pipelines.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Render Pipelines.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Render Pipelines/PluginPipelines.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Render Pipelines/PluginPipelines.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Render Pipelines/PluginPipelines.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Render Pipelines/PluginPipelines.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Render Pipelines/PluginPipelines.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Render Pipelines/PluginPipelines.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Render Pipelines/PluginPipelines.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Render Pipelines/PluginPipelines.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/SubstanceNativeGraph.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/SubstanceNativeGraph.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/SubstanceNativeGraph.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/SubstanceNativeGraph.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/SubstanceNativeGraph.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/SubstanceNativeGraph.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/SubstanceNativeGraph.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/SubstanceNativeGraph.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Enums.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Enums.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Enums.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Enums.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Enums/ShuffleIndex.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Enums/ShuffleIndex.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Enums/ShuffleIndex.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Enums/ShuffleIndex.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Enums/ShuffleIndex.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Enums/ShuffleIndex.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Enums/ShuffleIndex.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Enums/ShuffleIndex.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Enums/SubstanceValueType.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Enums/SubstanceValueType.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Enums/SubstanceValueType.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Enums/SubstanceValueType.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Enums/SubstanceValueType.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Enums/SubstanceValueType.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Enums/SubstanceValueType.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Enums/SubstanceValueType.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Enums/SubstanceWidgetType.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Enums/SubstanceWidgetType.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Enums/SubstanceWidgetType.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Enums/SubstanceWidgetType.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Enums/SubstanceWidgetType.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Enums/SubstanceWidgetType.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Enums/SubstanceWidgetType.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Enums/SubstanceWidgetType.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Enums/TextureFlip.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Enums/TextureFlip.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Enums/TextureFlip.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Enums/TextureFlip.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Enums/TextureFlip.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Enums/TextureFlip.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Enums/TextureFlip.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Enums/TextureFlip.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/ISubstanceInputDescNumerical.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/ISubstanceInputDescNumerical.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/ISubstanceInputDescNumerical.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/ISubstanceInputDescNumerical.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/ISubstanceInputDescNumerical.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/ISubstanceInputDescNumerical.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/ISubstanceInputDescNumerical.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/ISubstanceInputDescNumerical.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalFloat.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalFloat.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalFloat.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalFloat.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalFloat.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalFloat.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalFloat.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalFloat.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalFloat2.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalFloat2.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalFloat2.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalFloat2.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalFloat2.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalFloat2.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalFloat2.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalFloat2.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalFloat3.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalFloat3.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalFloat3.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalFloat3.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalFloat3.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalFloat3.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalFloat3.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalFloat3.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalFloat4.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalFloat4.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalFloat4.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalFloat4.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalFloat4.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalFloat4.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalFloat4.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalFloat4.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalInt.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalInt.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalInt.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalInt.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalInt.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalInt.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalInt.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalInt.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalInt2.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalInt2.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalInt2.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalInt2.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalInt2.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalInt2.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalInt2.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalInt2.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalInt3.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalInt3.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalInt3.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalInt3.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalInt3.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalInt3.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalInt3.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalInt3.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalInt4.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalInt4.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalInt4.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalInt4.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalInt4.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalInt4.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalInt4.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescNumericalInt4.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescription.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescription.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescription.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescription.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescription.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescription.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescription.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Descriptions/SubstanceInputDescription.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/ISubstanceInput.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/ISubstanceInput.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/ISubstanceInput.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/ISubstanceInput.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/ISubstanceInput.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/ISubstanceInput.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/ISubstanceInput.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/ISubstanceInput.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/SubstanceInputFactory.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/SubstanceInputFactory.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/SubstanceInputFactory.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/SubstanceInputFactory.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/SubstanceInputFactory.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/SubstanceInputFactory.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/SubstanceInputFactory.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/SubstanceInputFactory.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputFloat.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputFloat.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputFloat.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputFloat.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputFloat.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputFloat.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputFloat.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputFloat.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputFloat2.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputFloat2.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputFloat2.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputFloat2.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputFloat2.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputFloat2.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputFloat2.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputFloat2.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputFloat3.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputFloat3.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputFloat3.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputFloat3.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputFloat3.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputFloat3.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputFloat3.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputFloat3.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputFloat4.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputFloat4.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputFloat4.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputFloat4.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputFloat4.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputFloat4.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputFloat4.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputFloat4.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputFont.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputFont.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputFont.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputFont.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputFont.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputFont.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputFont.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputFont.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputInt.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputInt.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputInt.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputInt.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputInt.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputInt.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputInt.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputInt.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputInt2.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputInt2.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputInt2.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputInt2.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputInt2.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputInt2.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputInt2.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputInt2.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputInt3.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputInt3.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputInt3.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputInt3.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputInt3.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputInt3.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputInt3.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputInt3.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputInt4.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputInt4.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputInt4.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputInt4.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputInt4.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputInt4.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputInt4.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputInt4.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputString.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputString.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputString.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputString.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputString.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputString.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputString.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputString.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputTexture.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputTexture.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputTexture.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputTexture.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputTexture.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputTexture.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputTexture.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInputTexture.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInvalidInput.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInvalidInput.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInvalidInput.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInvalidInput.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInvalidInput.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInvalidInput.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInvalidInput.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Inputs/Values/SubstanceInvalidInput.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Outputs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Outputs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Outputs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Outputs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Outputs/SubstanceOutputDescription.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Outputs/SubstanceOutputDescription.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Outputs/SubstanceOutputDescription.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Outputs/SubstanceOutputDescription.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Outputs/SubstanceOutputDescription.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Outputs/SubstanceOutputDescription.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Outputs/SubstanceOutputDescription.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Outputs/SubstanceOutputDescription.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Outputs/SubstanceOutputTexture.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Outputs/SubstanceOutputTexture.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Outputs/SubstanceOutputTexture.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Outputs/SubstanceOutputTexture.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Outputs/SubstanceOutputTexture.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Outputs/SubstanceOutputTexture.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Outputs/SubstanceOutputTexture.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Outputs/SubstanceOutputTexture.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Outputs/SubstanceVirtualOutputCreateInfo.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Outputs/SubstanceVirtualOutputCreateInfo.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Outputs/SubstanceVirtualOutputCreateInfo.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Outputs/SubstanceVirtualOutputCreateInfo.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Outputs/SubstanceVirtualOutputCreateInfo.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Outputs/SubstanceVirtualOutputCreateInfo.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Outputs/SubstanceVirtualOutputCreateInfo.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/Outputs/SubstanceVirtualOutputCreateInfo.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/SubstanceFileRawData.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/SubstanceFileRawData.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/SubstanceFileRawData.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/SubstanceFileRawData.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/SubstanceFileRawData.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/SubstanceFileRawData.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/SubstanceFileRawData.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/SubstanceFileRawData.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/SubstanceFileSO.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/SubstanceFileSO.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/SubstanceFileSO.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/SubstanceFileSO.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/SubstanceFileSO.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/SubstanceFileSO.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/SubstanceFileSO.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/SubstanceFileSO.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/SubstanceGraphSO.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/SubstanceGraphSO.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/SubstanceGraphSO.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/SubstanceGraphSO.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/SubstanceGraphSO.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/SubstanceGraphSO.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/SubstanceGraphSO.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Unity Objects/SubstanceGraphSO.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/DLLHelper.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/DLLHelper.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/DLLHelper.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/DLLHelper.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/DLLHelper.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/DLLHelper.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/DLLHelper.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/DLLHelper.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/EnumExtensions.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/EnumExtensions.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/EnumExtensions.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/EnumExtensions.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/EnumExtensions.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/EnumExtensions.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/EnumExtensions.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/EnumExtensions.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/Globals.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/Globals.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/Globals.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/Globals.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/Globals.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/Globals.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/Globals.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/Globals.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/MaterialUtils.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/MaterialUtils.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/MaterialUtils.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/MaterialUtils.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/MaterialUtils.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/MaterialUtils.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/MaterialUtils.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/MaterialUtils.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/PathUtils.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/PathUtils.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/PathUtils.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/PathUtils.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/PathUtils.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/PathUtils.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/PathUtils.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/PathUtils.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/PlatformUtils.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/PlatformUtils.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/PlatformUtils.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/PlatformUtils.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/PlatformUtils.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/PlatformUtils.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/PlatformUtils.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/PlatformUtils.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/RenderingUtils.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/RenderingUtils.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/RenderingUtils.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/RenderingUtils.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/RenderingUtils.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/RenderingUtils.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/RenderingUtils.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/RenderingUtils.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/TextureExtensions.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/TextureExtensions.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/TextureExtensions.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/TextureExtensions.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/TextureExtensions.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/TextureExtensions.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/TextureExtensions.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/TextureExtensions.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/TextureOutputExtensions.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/TextureOutputExtensions.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/TextureOutputExtensions.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/TextureOutputExtensions.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/TextureOutputExtensions.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/TextureOutputExtensions.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/TextureOutputExtensions.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/TextureOutputExtensions.cs.meta diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/Version.cs b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/Version.cs similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/Version.cs rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/Version.cs diff --git a/Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/Version.cs.meta b/Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/Version.cs.meta similarity index 100% rename from Assets/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/Version.cs.meta rename to Assets/Packages/Adobe/Substance3DForUnity/Runtime/Scripts/Utilities/Version.cs.meta diff --git a/Assets/Scenes/Experimentation/MultiplayerScenes/MultiplayerTesting.unity b/Assets/Scenes/Experimentation/MultiplayerScenes/MultiplayerTesting.unity index 439a5c3..5e5727d 100644 --- a/Assets/Scenes/Experimentation/MultiplayerScenes/MultiplayerTesting.unity +++ b/Assets/Scenes/Experimentation/MultiplayerScenes/MultiplayerTesting.unity @@ -26,7 +26,7 @@ RenderSettings: m_AmbientIntensity: 1 m_AmbientMode: 0 m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} - m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0} + m_SkyboxMaterial: {fileID: 0} m_HaloStrength: 0.5 m_FlareStrength: 1 m_FlareFadeSpeed: 3 @@ -38,7 +38,7 @@ RenderSettings: m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} - m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} + m_IndirectSpecularColor: {r: 262.3369, g: 325.0498, b: 430.21924, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: @@ -133,6 +133,7 @@ GameObject: m_Component: - component: {fileID: 536475511} - component: {fileID: 536475510} + - component: {fileID: 536475512} m_Layer: 0 m_Name: Directional Light m_TagString: Untagged @@ -152,7 +153,7 @@ Light: m_Type: 1 m_Shape: 0 m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1} - m_Intensity: 1 + m_Intensity: 100000 m_Range: 10 m_SpotAngle: 30 m_InnerSpotAngle: 21.80208 @@ -192,12 +193,12 @@ Light: m_Bits: 4294967295 m_RenderingLayerMask: 1 m_Lightmapping: 4 - m_LightShadowCasterMode: 0 + m_LightShadowCasterMode: 2 m_AreaSize: {x: 1, y: 1} m_BounceIntensity: 1 m_ColorTemperature: 6570 - m_UseColorTemperature: 0 - m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} + m_UseColorTemperature: 1 + m_BoundingSphereOverride: {x: 5.04e-43, y: -4.8180275, z: 5.04e-43, w: -3.7384548} m_UseBoundingSphereOverride: 0 m_UseViewFrustumForShadowCasterCull: 1 m_ShadowRadius: 0 @@ -217,6 +218,185 @@ Transform: m_Father: {fileID: 0} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0} +--- !u!114 &536475512 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 536475509} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7a68c43fe1f2a47cfa234b5eeaa98012, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Intensity: 100000 + m_EnableSpotReflector: 1 + m_LuxAtDistance: 1 + m_InnerSpotPercent: 0 + m_SpotIESCutoffPercent: 100 + m_LightDimmer: 1 + m_VolumetricDimmer: 1 + m_LightUnit: 2 + m_FadeDistance: 10000 + m_VolumetricFadeDistance: 10000 + m_AffectDiffuse: 1 + m_AffectSpecular: 1 + m_NonLightmappedOnly: 0 + m_ShapeWidth: 0.5 + m_ShapeHeight: 0.5 + m_AspectRatio: 1 + m_ShapeRadius: 0.025 + m_SoftnessScale: 1 + m_UseCustomSpotLightShadowCone: 0 + m_CustomSpotLightShadowCone: 30 + m_MaxSmoothness: 0.99 + m_ApplyRangeAttenuation: 1 + m_DisplayAreaLightEmissiveMesh: 0 + m_AreaLightCookie: {fileID: 0} + m_IESPoint: {fileID: 0} + m_IESSpot: {fileID: 0} + m_IncludeForRayTracing: 1 + m_AreaLightShadowCone: 120 + m_UseScreenSpaceShadows: 0 + m_InteractsWithSky: 1 + m_AngularDiameter: 0.5 + m_FlareSize: 2 + m_FlareTint: {r: 1, g: 1, b: 1, a: 1} + m_FlareFalloff: 4 + m_SurfaceTexture: {fileID: 0} + m_SurfaceTint: {r: 1, g: 1, b: 1, a: 1} + m_Distance: 1.5e+11 + m_UseRayTracedShadows: 0 + m_NumRayTracingSamples: 4 + m_FilterTracedShadow: 1 + m_FilterSizeTraced: 16 + m_SunLightConeAngle: 0.5 + m_LightShadowRadius: 0.5 + m_SemiTransparentShadow: 0 + m_ColorShadow: 1 + m_DistanceBasedFiltering: 0 + m_EvsmExponent: 15 + m_EvsmLightLeakBias: 0 + m_EvsmVarianceBias: 0.00001 + m_EvsmBlurPasses: 0 + m_LightlayersMask: 1 + m_LinkShadowLayers: 1 + m_ShadowNearPlane: 0.1 + m_BlockerSampleCount: 24 + m_FilterSampleCount: 16 + m_MinFilterSize: 0.1 + m_KernelSize: 5 + m_LightAngle: 1 + m_MaxDepthBias: 0.001 + m_ShadowResolution: + m_Override: 512 + m_UseOverride: 1 + m_Level: 0 + m_ShadowDimmer: 1 + m_VolumetricShadowDimmer: 1 + m_ShadowFadeDistance: 10000 + m_UseContactShadow: + m_Override: 0 + m_UseOverride: 1 + m_Level: 0 + m_RayTracedContactShadow: 0 + m_ShadowTint: {r: 0, g: 0, b: 0, a: 1} + m_PenumbraTint: 0 + m_NormalBias: 0.75 + m_SlopeBias: 0.5 + m_ShadowUpdateMode: 0 + m_AlwaysDrawDynamicShadows: 0 + m_UpdateShadowOnLightMovement: 0 + m_CachedShadowTranslationThreshold: 0.01 + m_CachedShadowAngularThreshold: 0.5 + m_BarnDoorAngle: 90 + m_BarnDoorLength: 0.05 + m_preserveCachedShadow: 0 + m_OnDemandShadowRenderOnPlacement: 1 + m_ShadowCascadeRatios: + - 0.05 + - 0.2 + - 0.3 + m_ShadowCascadeBorders: + - 0.2 + - 0.2 + - 0.2 + - 0.2 + m_ShadowAlgorithm: 0 + m_ShadowVariant: 0 + m_ShadowPrecision: 0 + useOldInspector: 0 + useVolumetric: 1 + featuresFoldout: 1 + m_AreaLightEmissiveMeshShadowCastingMode: 0 + m_AreaLightEmissiveMeshMotionVectorGenerationMode: 0 + m_AreaLightEmissiveMeshLayer: -1 + m_Version: 11 + m_ObsoleteShadowResolutionTier: 1 + m_ObsoleteUseShadowQualitySettings: 0 + m_ObsoleteCustomShadowResolution: 512 + m_ObsoleteContactShadows: 0 + m_PointlightHDType: 0 + m_SpotLightShape: 0 + m_AreaLightShape: 0 +--- !u!1001 &1265515619 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 7443408887813606049, guid: 0b650fca685f2eb41a86538aa883e4c1, type: 3} + propertyPath: m_RootOrder + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7443408887813606049, guid: 0b650fca685f2eb41a86538aa883e4c1, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7443408887813606049, guid: 0b650fca685f2eb41a86538aa883e4c1, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7443408887813606049, guid: 0b650fca685f2eb41a86538aa883e4c1, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7443408887813606049, guid: 0b650fca685f2eb41a86538aa883e4c1, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7443408887813606049, guid: 0b650fca685f2eb41a86538aa883e4c1, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7443408887813606049, guid: 0b650fca685f2eb41a86538aa883e4c1, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7443408887813606049, guid: 0b650fca685f2eb41a86538aa883e4c1, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7443408887813606049, guid: 0b650fca685f2eb41a86538aa883e4c1, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7443408887813606049, guid: 0b650fca685f2eb41a86538aa883e4c1, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7443408887813606049, guid: 0b650fca685f2eb41a86538aa883e4c1, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7443408887813606051, guid: 0b650fca685f2eb41a86538aa883e4c1, type: 3} + propertyPath: m_Name + value: NetworkManager + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 0b650fca685f2eb41a86538aa883e4c1, type: 3} --- !u!1 &1860232849 GameObject: m_ObjectHideFlags: 0