From 3db7c2bf38744d799c3a0d95b1648af8b2c5f6bf Mon Sep 17 00:00:00 2001 From: Fernando Cortez Date: Fri, 5 Apr 2024 18:01:19 -0400 Subject: [PATCH 01/57] refactorings to support Multiplayer SDK session creation & joining by session code --- .../ConnectionManagement/ConnectionManager.cs | 10 ++- .../ConnectionManagement/ConnectionMethod.cs | 51 +++++++----- .../ConnectionState/ClientConnectingState.cs | 5 +- .../ConnectionState/ConnectionState.cs | 8 +- .../ConnectionState/OfflineState.cs | 10 ++- .../ConnectionState/StartingHostState.cs | 5 +- ...Unity.BossRoom.ConnectionManagement.asmdef | 5 +- .../Gameplay/GameState/ClientMainMenuState.cs | 6 +- .../Gameplay/UI/Lobby/LobbyListItemUI.cs | 10 ++- .../Gameplay/UI/Lobby/LobbyUIMediator.cs | 44 +++++++--- .../Gameplay/Unity.BossRoom.Gameplay.asmdef | 4 +- .../Lobbies/LobbyServiceFacade.cs | 42 ++++++++-- .../Messages/LobbyListFetchedMessage.cs | 6 +- .../Unity.BossRoom.UnityServices.asmdef | 5 +- .../Utilities/Net/UnityRelayUtilities.cs | 82 ------------------- .../Utilities/Net/UnityRelayUtilities.cs.meta | 3 - .../package.json | 3 +- Packages/manifest.json | 3 +- Packages/packages-lock.json | 53 ++++-------- 19 files changed, 161 insertions(+), 194 deletions(-) delete mode 100644 Packages/com.unity.multiplayer.samples.coop/Utilities/Net/UnityRelayUtilities.cs delete mode 100644 Packages/com.unity.multiplayer.samples.coop/Utilities/Net/UnityRelayUtilities.cs.meta diff --git a/Assets/Scripts/ConnectionManagement/ConnectionManager.cs b/Assets/Scripts/ConnectionManagement/ConnectionManager.cs index 22068b3753..ebec6a0952 100644 --- a/Assets/Scripts/ConnectionManagement/ConnectionManager.cs +++ b/Assets/Scripts/ConnectionManagement/ConnectionManager.cs @@ -153,9 +153,10 @@ void OnServerStopped(bool _) // we don't need this parameter as the ConnectionSt m_CurrentState.OnServerStopped(); } - public void StartClientLobby(string playerName) + // Note: MultiplayerSDK refactoring + public void StartClientLobby(string sessionCode, string playerName) { - m_CurrentState.StartClientLobby(playerName); + m_CurrentState.StartClientLobby(sessionCode, playerName); } public void StartClientIp(string playerName, string ipaddress, int port) @@ -163,9 +164,10 @@ public void StartClientIp(string playerName, string ipaddress, int port) m_CurrentState.StartClientIP(playerName, ipaddress, port); } - public void StartHostLobby(string playerName) + // Note: MultiplayerSDK refactoring + public void StartHostLobby(string sessionCode, string playerName) { - m_CurrentState.StartHostLobby(playerName); + m_CurrentState.StartHostLobby(sessionCode, playerName); } public void StartHostIp(string playerName, string ipaddress, int port) diff --git a/Assets/Scripts/ConnectionManagement/ConnectionMethod.cs b/Assets/Scripts/ConnectionManagement/ConnectionMethod.cs index 3a0b6087d0..e904e1f98e 100644 --- a/Assets/Scripts/ConnectionManagement/ConnectionMethod.cs +++ b/Assets/Scripts/ConnectionManagement/ConnectionMethod.cs @@ -1,13 +1,9 @@ -using System; using System.Threading.Tasks; using Unity.BossRoom.UnityServices.Lobbies; using Unity.BossRoom.Utils; using Unity.Netcode.Transports.UTP; -using Unity.Networking.Transport.Relay; using Unity.Services.Authentication; using Unity.Services.Core; -using Unity.Services.Relay; -using Unity.Services.Relay.Models; using UnityEngine; namespace Unity.BossRoom.ConnectionManagement @@ -121,46 +117,57 @@ public override async Task SetupHostConnectionAsync() } } + // Note: MultiplayerSDK refactoring /// /// UTP's Relay connection setup using the Lobby integration /// class ConnectionMethodRelay : ConnectionMethodBase { LobbyServiceFacade m_LobbyServiceFacade; - LocalLobby m_LocalLobby; + /*LocalLobby m_LocalLobby;*/ - public ConnectionMethodRelay(LobbyServiceFacade lobbyServiceFacade, LocalLobby localLobby, ConnectionManager connectionManager, ProfileManager profileManager, string playerName) + string m_SessionName; + bool m_IsPrivate = true; + + public ConnectionMethodRelay(string sessionName, LobbyServiceFacade lobbyServiceFacade, LocalLobby localLobby, ConnectionManager connectionManager, ProfileManager profileManager, string playerName) : base(connectionManager, profileManager, playerName) { + m_SessionName = sessionName; m_LobbyServiceFacade = lobbyServiceFacade; - m_LocalLobby = localLobby; + /*m_LocalLobby = localLobby;*/ m_ConnectionManager = connectionManager; } + // Note: MultiplayerSDK refactoring public override async Task SetupClientConnectionAsync() { Debug.Log("Setting up Unity Relay client"); + // TODO: where to grab name SetConnectionPayload(GetPlayerId(), m_PlayerName); - if (m_LobbyServiceFacade.CurrentUnityLobby == null) + // don't need this either? + /*if (m_LobbyServiceFacade.CurrentUnityLobby == null) { throw new Exception("Trying to start relay while Lobby isn't set"); } - Debug.Log($"Setting Unity Relay client with join code {m_LocalLobby.RelayJoinCode}"); + Debug.Log($"Setting Unity Relay client with join code {m_LocalLobby.RelayJoinCode}");*/ - // Create client joining allocation from join code + // don't need to do, relay allocation handled by service + /*// Create client joining allocation from join code var joinedAllocation = await RelayService.Instance.JoinAllocationAsync(m_LocalLobby.RelayJoinCode); Debug.Log($"client: {joinedAllocation.ConnectionData[0]} {joinedAllocation.ConnectionData[1]}, " + $"host: {joinedAllocation.HostConnectionData[0]} {joinedAllocation.HostConnectionData[1]}, " + - $"client: {joinedAllocation.AllocationId}"); - - await m_LobbyServiceFacade.UpdatePlayerDataAsync(joinedAllocation.AllocationId.ToString(), m_LocalLobby.RelayJoinCode); + $"client: {joinedAllocation.AllocationId}");*/ + /*await m_LobbyServiceFacade.UpdatePlayerDataAsync(joinedAllocation.AllocationId.ToString(), m_LocalLobby.RelayJoinCode);*/ + await m_LobbyServiceFacade.TryJoinLobbyAsync(m_SessionName/*, lobbyCode*/); + + // TODO: do we need this? // Configure UTP with allocation - var utp = (UnityTransport)m_ConnectionManager.NetworkManager.NetworkConfig.NetworkTransport; - utp.SetRelayServerData(new RelayServerData(joinedAllocation, k_DtlsConnType)); + /*var utp = (UnityTransport)m_ConnectionManager.NetworkManager.NetworkConfig.NetworkTransport; + utp.SetRelayServerData(new RelayServerData(joinedAllocation, k_DtlsConnType));*/ } public override async Task<(bool success, bool shouldTryAgain)> SetupClientReconnectionAsync() @@ -182,13 +189,14 @@ public override async Task SetupClientConnectionAsync() return (success, true); // return a success if reconnecting to lobby returns a lobby } + // Note: MultiplayerSDK refactoring public override async Task SetupHostConnectionAsync() { Debug.Log("Setting up Unity Relay host"); SetConnectionPayload(GetPlayerId(), m_PlayerName); // Need to set connection payload for host as well, as host is a client too - // Create relay allocation + /*// Create relay allocation Allocation hostAllocation = await RelayService.Instance.CreateAllocationAsync(m_ConnectionManager.MaxConnectedPlayers, region: null); var joinCode = await RelayService.Instance.GetJoinCodeAsync(hostAllocation.AllocationId); @@ -199,13 +207,18 @@ public override async Task SetupHostConnectionAsync() // next line enables lobby and relay services integration await m_LobbyServiceFacade.UpdateLobbyDataAndUnlockAsync(); - await m_LobbyServiceFacade.UpdatePlayerDataAsync(hostAllocation.AllocationIdBytes.ToString(), joinCode); + await m_LobbyServiceFacade.UpdatePlayerDataAsync(hostAllocation.AllocationIdBytes.ToString(), joinCode);*/ - // Setup UTP with relay connection info + // TODO: needed? + /*// Setup UTP with relay connection info var utp = (UnityTransport)m_ConnectionManager.NetworkManager.NetworkConfig.NetworkTransport; utp.SetRelayServerData(new RelayServerData(hostAllocation, k_DtlsConnType)); // This is with DTLS enabled for a secure connection - Debug.Log($"Created relay allocation with join code {m_LocalLobby.RelayJoinCode}"); + Debug.Log($"Created relay allocation with join code {m_LocalLobby.RelayJoinCode}");*/ + + var lobbyCreationAttempt = await m_LobbyServiceFacade.TryCreateLobbyAsync(m_SessionName, m_ConnectionManager.MaxConnectedPlayers, m_IsPrivate); + + Debug.Log($"{lobbyCreationAttempt.Success} lobbyCreationAttempt.Lobby.Id: {lobbyCreationAttempt.Lobby.Id} lobbyCreationAttempt.Lobby.Code {lobbyCreationAttempt.Lobby.Code}"); } } } diff --git a/Assets/Scripts/ConnectionManagement/ConnectionState/ClientConnectingState.cs b/Assets/Scripts/ConnectionManagement/ConnectionState/ClientConnectingState.cs index fc2fd12e4b..c66908e431 100644 --- a/Assets/Scripts/ConnectionManagement/ConnectionState/ClientConnectingState.cs +++ b/Assets/Scripts/ConnectionManagement/ConnectionState/ClientConnectingState.cs @@ -62,11 +62,12 @@ internal async Task ConnectClientAsync() // Setup NGO with current connection method await m_ConnectionMethod.SetupClientConnectionAsync(); + // Note: MultiplayerSDK refactoring // NGO's StartClient launches everything - if (!m_ConnectionManager.NetworkManager.StartClient()) + /*if (!m_ConnectionManager.NetworkManager.StartClient()) { throw new Exception("NetworkManager StartClient failed"); - } + }*/ } catch (Exception e) { diff --git a/Assets/Scripts/ConnectionManagement/ConnectionState/ConnectionState.cs b/Assets/Scripts/ConnectionManagement/ConnectionState/ConnectionState.cs index eed9a87dad..56f7592c72 100644 --- a/Assets/Scripts/ConnectionManagement/ConnectionState/ConnectionState.cs +++ b/Assets/Scripts/ConnectionManagement/ConnectionState/ConnectionState.cs @@ -27,12 +27,14 @@ public virtual void OnClientDisconnect(ulong clientId) { } public virtual void OnServerStarted() { } public virtual void StartClientIP(string playerName, string ipaddress, int port) { } - - public virtual void StartClientLobby(string playerName) { } + + // Note: MultiplayerSDK refactoring + public virtual void StartClientLobby(string sessionCode, string playerName) { } public virtual void StartHostIP(string playerName, string ipaddress, int port) { } - public virtual void StartHostLobby(string playerName) { } + // Note: MultiplayerSDK refactoring + public virtual void StartHostLobby(string sessionCode, string playerName) { } public virtual void OnUserRequestedShutdown() { } diff --git a/Assets/Scripts/ConnectionManagement/ConnectionState/OfflineState.cs b/Assets/Scripts/ConnectionManagement/ConnectionState/OfflineState.cs index 34dc047df0..e5ecc8141d 100644 --- a/Assets/Scripts/ConnectionManagement/ConnectionState/OfflineState.cs +++ b/Assets/Scripts/ConnectionManagement/ConnectionState/OfflineState.cs @@ -43,9 +43,10 @@ public override void StartClientIP(string playerName, string ipaddress, int port m_ConnectionManager.ChangeState(m_ConnectionManager.m_ClientConnecting.Configure(connectionMethod)); } - public override void StartClientLobby(string playerName) + // Note: MultiplayerSDK refactoring + public override void StartClientLobby(string sessionCode, string playerName) { - var connectionMethod = new ConnectionMethodRelay(m_LobbyServiceFacade, m_LocalLobby, m_ConnectionManager, m_ProfileManager, playerName); + var connectionMethod = new ConnectionMethodRelay(sessionCode, m_LobbyServiceFacade, m_LocalLobby, m_ConnectionManager, m_ProfileManager, playerName); m_ConnectionManager.m_ClientReconnecting.Configure(connectionMethod); m_ConnectionManager.ChangeState(m_ConnectionManager.m_ClientConnecting.Configure(connectionMethod)); } @@ -56,9 +57,10 @@ public override void StartHostIP(string playerName, string ipaddress, int port) m_ConnectionManager.ChangeState(m_ConnectionManager.m_StartingHost.Configure(connectionMethod)); } - public override void StartHostLobby(string playerName) + // Note: MultiplayerSDK refactoring + public override void StartHostLobby(string sessionCode, string playerName) { - var connectionMethod = new ConnectionMethodRelay(m_LobbyServiceFacade, m_LocalLobby, m_ConnectionManager, m_ProfileManager, playerName); + var connectionMethod = new ConnectionMethodRelay(sessionCode, m_LobbyServiceFacade, m_LocalLobby, m_ConnectionManager, m_ProfileManager, playerName); m_ConnectionManager.ChangeState(m_ConnectionManager.m_StartingHost.Configure(connectionMethod)); } } diff --git a/Assets/Scripts/ConnectionManagement/ConnectionState/StartingHostState.cs b/Assets/Scripts/ConnectionManagement/ConnectionState/StartingHostState.cs index 9008ade098..55763cb18e 100644 --- a/Assets/Scripts/ConnectionManagement/ConnectionState/StartingHostState.cs +++ b/Assets/Scripts/ConnectionManagement/ConnectionState/StartingHostState.cs @@ -63,17 +63,18 @@ public override void OnServerStopped() StartHostFailed(); } + // Note: MultiplayerSDK refactoring async void StartHost() { try { await m_ConnectionMethod.SetupHostConnectionAsync(); - // NGO's StartHost launches everything + /*// NGO's StartHost launches everything if (!m_ConnectionManager.NetworkManager.StartHost()) { StartHostFailed(); - } + }*/ } catch (Exception) { diff --git a/Assets/Scripts/ConnectionManagement/Unity.BossRoom.ConnectionManagement.asmdef b/Assets/Scripts/ConnectionManagement/Unity.BossRoom.ConnectionManagement.asmdef index 0d83eed239..38d9fd85d9 100644 --- a/Assets/Scripts/ConnectionManagement/Unity.BossRoom.ConnectionManagement.asmdef +++ b/Assets/Scripts/ConnectionManagement/Unity.BossRoom.ConnectionManagement.asmdef @@ -9,10 +9,9 @@ "Unity.Services.Core", "Unity.Services.Authentication", "Unity.BossRoom.Utils", - "Unity.Services.Lobbies", "Unity.Networking.Transport", "VContainer", - "Unity.Services.Relay" + "Unity.Services.Multiplayer" ], "includePlatforms": [], "excludePlatforms": [], @@ -23,4 +22,4 @@ "defineConstraints": [], "versionDefines": [], "noEngineReferences": false -} +} \ No newline at end of file diff --git a/Assets/Scripts/Gameplay/GameState/ClientMainMenuState.cs b/Assets/Scripts/Gameplay/GameState/ClientMainMenuState.cs index 53da328aed..2cf1fd5172 100644 --- a/Assets/Scripts/Gameplay/GameState/ClientMainMenuState.cs +++ b/Assets/Scripts/Gameplay/GameState/ClientMainMenuState.cs @@ -5,7 +5,6 @@ using Unity.BossRoom.UnityServices.Lobbies; using Unity.BossRoom.Utils; using Unity.Services.Authentication; -using Unity.Services.Core; using UnityEngine; using UnityEngine.UI; using VContainer; @@ -97,10 +96,11 @@ private void OnAuthSignIn() Debug.Log($"Signed in. Unity Player ID {AuthenticationService.Instance.PlayerId}"); - m_LocalUser.ID = AuthenticationService.Instance.PlayerId; + // Note: MultiplayerSDK refactoring + //m_LocalUser.ID = AuthenticationService.Instance.PlayerId; // The local LobbyUser object will be hooked into UI before the LocalLobby is populated during lobby join, so the LocalLobby must know about it already when that happens. - m_LocalLobby.AddUser(m_LocalUser); + //m_LocalLobby.AddUser(m_LocalUser); } private void OnSignInFailed() diff --git a/Assets/Scripts/Gameplay/UI/Lobby/LobbyListItemUI.cs b/Assets/Scripts/Gameplay/UI/Lobby/LobbyListItemUI.cs index 62733cda31..1c1ed65fb9 100644 --- a/Assets/Scripts/Gameplay/UI/Lobby/LobbyListItemUI.cs +++ b/Assets/Scripts/Gameplay/UI/Lobby/LobbyListItemUI.cs @@ -1,11 +1,13 @@ using System; using TMPro; using Unity.BossRoom.UnityServices.Lobbies; +using Unity.Services.Multiplayer; using UnityEngine; using VContainer; namespace Unity.BossRoom.Gameplay.UI { + // Note: MultiplayerSDK refactoring /// /// An individual Lobby UI in the list of available lobbies /// @@ -16,14 +18,14 @@ public class LobbyListItemUI : MonoBehaviour [Inject] LobbyUIMediator m_LobbyUIMediator; - LocalLobby m_Data; + ISessionInfo m_Data; - public void SetData(LocalLobby data) + public void SetData(ISessionInfo data) { m_Data = data; - m_lobbyNameText.SetText(data.LobbyName); - m_lobbyCountText.SetText($"{data.PlayerCount}/{data.MaxPlayerCount}"); + m_lobbyNameText.SetText(data.Name); + m_lobbyCountText.SetText($"{data.MaxPlayers - data.AvailableSlots}/{data.MaxPlayers}"); } public void OnClick() diff --git a/Assets/Scripts/Gameplay/UI/Lobby/LobbyUIMediator.cs b/Assets/Scripts/Gameplay/UI/Lobby/LobbyUIMediator.cs index d79d7645bb..d9104c1c3e 100644 --- a/Assets/Scripts/Gameplay/UI/Lobby/LobbyUIMediator.cs +++ b/Assets/Scripts/Gameplay/UI/Lobby/LobbyUIMediator.cs @@ -1,4 +1,5 @@ using System; +using PlasticGui.WorkspaceWindow.Topbar; using Unity.BossRoom.Gameplay.Configuration; using TMPro; using Unity.BossRoom.ConnectionManagement; @@ -6,11 +7,13 @@ using Unity.BossRoom.UnityServices.Auth; using Unity.BossRoom.UnityServices.Lobbies; using Unity.Services.Core; +using Unity.Services.Multiplayer; using UnityEngine; using VContainer; namespace Unity.BossRoom.Gameplay.UI { + // Note: MultiplayerSDK refactoring public class LobbyUIMediator : MonoBehaviour { [SerializeField] CanvasGroup m_CanvasGroup; @@ -32,6 +35,8 @@ public class LobbyUIMediator : MonoBehaviour ISubscriber m_ConnectStatusSubscriber; const string k_DefaultLobbyName = "no-name"; + + ISession _session; [Inject] void InjectDependenciesAndInitialize( @@ -72,8 +77,8 @@ void OnDestroy() } } + // Note: MultiplayerSDK refactoring //Lobby and Relay calls done from UI - public async void CreateLobbyRequest(string lobbyName, bool isPrivate) { // before sending request to lobby service, populate an empty lobby name, if necessary @@ -92,9 +97,16 @@ public async void CreateLobbyRequest(string lobbyName, bool isPrivate) return; } - var lobbyCreationAttempt = await m_LobbyServiceFacade.TryCreateLobbyAsync(lobbyName, m_ConnectionManager.MaxConnectedPlayers, isPrivate); + // don't create lobby here just yet, advance state machine instead + /*// create lobby + var lobbyCreationAttempt = await m_LobbyServiceFacade.TryCreateLobbyAsync(lobbyName, m_ConnectionManager.MaxConnectedPlayers, isPrivate);*/ + m_ConnectionManager.StartHostLobby(lobbyName, m_LocalUser.DisplayName); + + UnblockUIAfterLoadingIsComplete(); + return; - if (lobbyCreationAttempt.Success) + //if loby created, start host + /*if (lobbyCreationAttempt.Success) { m_LocalUser.IsHost = true; m_LobbyServiceFacade.SetRemoteLobby(lobbyCreationAttempt.Lobby); @@ -105,7 +117,7 @@ public async void CreateLobbyRequest(string lobbyName, bool isPrivate) else { UnblockUIAfterLoadingIsComplete(); - } + }*/ } public async void QueryLobbiesRequest(bool blockUI) @@ -136,6 +148,7 @@ public async void QueryLobbiesRequest(bool blockUI) } } + // Note: MultiplayerSDK refactoring public async void JoinLobbyWithCodeRequest(string lobbyCode) { BlockUIWhileLoadingIsInProgress(); @@ -147,8 +160,13 @@ public async void JoinLobbyWithCodeRequest(string lobbyCode) UnblockUIAfterLoadingIsComplete(); return; } - - var result = await m_LobbyServiceFacade.TryJoinLobbyAsync(null, lobbyCode); + + // TODO: need to unblock the UI elsewhere? + + m_ConnectionManager.StartClientLobby(lobbyCode, m_LocalUser.DisplayName); + return; + + /*var result = await m_LobbyServiceFacade.TryJoinLobbyAsync(null, lobbyCode); if (result.Success) { @@ -157,10 +175,11 @@ public async void JoinLobbyWithCodeRequest(string lobbyCode) else { UnblockUIAfterLoadingIsComplete(); - } + }*/ } - public async void JoinLobbyRequest(LocalLobby lobby) + // Note: MultiplayerSDK refactoring + public async void JoinLobbyRequest(ISessionInfo sessionInfo) { BlockUIWhileLoadingIsInProgress(); @@ -172,7 +191,10 @@ public async void JoinLobbyRequest(LocalLobby lobby) return; } - var result = await m_LobbyServiceFacade.TryJoinLobbyAsync(lobby.LobbyID, lobby.LobbyCode); + //m_ConnectionManager.StartClientLobby(sessionInfo., m_LocalUser.DisplayName); + + // for now! + /*var result = await m_LobbyServiceFacade.TryJoinLobbyAsync(lobby.LobbyID, lobby.LobbyCode); if (result.Success) { @@ -181,7 +203,7 @@ public async void JoinLobbyRequest(LocalLobby lobby) else { UnblockUIAfterLoadingIsComplete(); - } + }*/ } public async void QuickJoinRequest() @@ -213,7 +235,7 @@ void OnJoinedLobby(Unity.Services.Lobbies.Models.Lobby remoteLobby) m_LobbyServiceFacade.SetRemoteLobby(remoteLobby); Debug.Log($"Joined lobby with code: {m_LocalLobby.LobbyCode}, Internal Relay Join Code{m_LocalLobby.RelayJoinCode}"); - m_ConnectionManager.StartClientLobby(m_LocalUser.DisplayName); + m_ConnectionManager.StartClientLobby(string.Empty, m_LocalUser.DisplayName); } //show/hide UI diff --git a/Assets/Scripts/Gameplay/Unity.BossRoom.Gameplay.asmdef b/Assets/Scripts/Gameplay/Unity.BossRoom.Gameplay.asmdef index 8987372d11..2ae5c8c381 100644 --- a/Assets/Scripts/Gameplay/Unity.BossRoom.Gameplay.asmdef +++ b/Assets/Scripts/Gameplay/Unity.BossRoom.Gameplay.asmdef @@ -9,7 +9,6 @@ "Unity.Services.Core", "Unity.Services.Authentication", "Unity.Services.Relay", - "Unity.Services.Lobbies", "Unity.Networking.Transport", "Unity.BossRoom.Infrastructure", "Unity.BossRoom.UnityServices", @@ -22,7 +21,8 @@ "VContainer", "Unity.BossRoom.VisualEffects", "Unity.BossRoom.CameraUtils", - "Unity.Multiplayer.Tools.NetworkSimulator.Runtime" + "Unity.Multiplayer.Tools.NetworkSimulator.Runtime", + "Unity.Services.Multiplayer" ], "includePlatforms": [], "excludePlatforms": [], diff --git a/Assets/Scripts/UnityServices/Lobbies/LobbyServiceFacade.cs b/Assets/Scripts/UnityServices/Lobbies/LobbyServiceFacade.cs index a07e643cca..4569eac2c5 100644 --- a/Assets/Scripts/UnityServices/Lobbies/LobbyServiceFacade.cs +++ b/Assets/Scripts/UnityServices/Lobbies/LobbyServiceFacade.cs @@ -5,6 +5,7 @@ using Unity.Services.Authentication; using Unity.Services.Lobbies; using Unity.Services.Lobbies.Models; +using Unity.Services.Multiplayer; using Unity.Services.Wire.Internal; using UnityEngine; using VContainer; @@ -12,6 +13,7 @@ namespace Unity.BossRoom.UnityServices.Lobbies { + // Note: MultiplayerSDK refactoring /// /// An abstraction layer between the direct calls into the Lobby API and the outcomes you actually want. /// @@ -43,6 +45,8 @@ public class LobbyServiceFacade : IDisposable, IStartable LobbyEventConnectionState m_LobbyEventConnectionState = LobbyEventConnectionState.Unknown; + public ISession CurrentSession; + public void Start() { m_ServiceScope = m_ParentScope.CreateChild(builder => @@ -123,10 +127,11 @@ public void EndTracking() } } + // Note: MultiplayerSDK refactoring /// /// Attempt to create a new lobby and then join it. /// - public async Task<(bool Success, Lobby Lobby)> TryCreateLobbyAsync(string lobbyName, int maxPlayers, bool isPrivate) + public async Task<(bool Success, ISession Lobby)> TryCreateLobbyAsync(string lobbyName, int maxPlayers, bool isPrivate) { if (!m_RateLimitHost.CanCall) { @@ -136,7 +141,14 @@ public void EndTracking() try { - var lobby = await m_LobbyApiInterface.CreateLobby(AuthenticationService.Instance.PlayerId, lobbyName, maxPlayers, isPrivate, m_LocalUser.GetDataForUnityServices(), null); + var lobby = /*await m_LobbyApiInterface.CreateLobby(AuthenticationService.Instance.PlayerId, lobbyName, maxPlayers, isPrivate, m_LocalUser.GetDataForUnityServices(), null);*/ + await MultiplayerService.Instance.CreateSessionAsync(new CreateSessionOptions(2) + { + Name = lobbyName, + IsPrivate = isPrivate, + Password = null,//string.IsNullOrEmpty(Password) ? null : Password, + IsLocked = false, //Todos + }.WithRelayConnection()); return (true, lobby); } catch (LobbyServiceException e) @@ -154,21 +166,31 @@ public void EndTracking() return (false, null); } + // Note: MultiplayerSDK refactoring /// /// Attempt to join an existing lobby. Will try to join via code, if code is null - will try to join via ID. /// - public async Task<(bool Success, Lobby Lobby)> TryJoinLobbyAsync(string lobbyId, string lobbyCode) + public async Task<(bool Success, ISession Lobby)> TryJoinLobbyAsync(string lobbyId/*, string lobbyCode*/) { if (!m_RateLimitJoin.CanCall || - (lobbyId == null && lobbyCode == null)) + (lobbyId == null/* && lobbyCode == null*/)) { Debug.LogWarning("Join Lobby hit the rate limit."); return (false, null); } + Debug.Log($"joinning session with lobby code {lobbyId}"); + try { - if (!string.IsNullOrEmpty(lobbyCode)) + var session = await MultiplayerService.Instance.JoinSessionByCodeAsync(lobbyId, + new JoinSessionOptions() + { + /*Password = string.IsNullOrEmpty(Password) ? null : Password, + PlayerProperties = PlayerData*/ + }); + return (true, session); + /*if (!string.IsNullOrEmpty(lobbyCode)) { var lobby = await m_LobbyApiInterface.JoinLobbyByCode(AuthenticationService.Instance.PlayerId, lobbyCode, m_LocalUser.GetDataForUnityServices()); return (true, lobby); @@ -177,7 +199,7 @@ public void EndTracking() { var lobby = await m_LobbyApiInterface.JoinLobbyById(AuthenticationService.Instance.PlayerId, lobbyId, m_LocalUser.GetDataForUnityServices()); return (true, lobby); - } + }*/ } catch (LobbyServiceException e) { @@ -317,6 +339,7 @@ async void UnsubscribeToJoinedLobbyAsync() } } + // Note: MultiplayerSDK refactoring /// /// Used for getting the list of all active lobbies, without needing full info for each. /// @@ -330,8 +353,11 @@ public async Task RetrieveAndPublishLobbyListAsync() try { - var response = await m_LobbyApiInterface.QueryAllLobbies(); - m_LobbyListFetchedPub.Publish(new LobbyListFetchedMessage(LocalLobby.CreateLocalLobbies(response))); + /*var response = await m_LobbyApiInterface.QueryAllLobbies();*/ + var queryResults = await MultiplayerService.Instance.QuerySessionsAsync(new() + { + }); + m_LobbyListFetchedPub.Publish(new LobbyListFetchedMessage(queryResults.Sessions/*LocalLobby.CreateLocalLobbies(response)*/)); } catch (LobbyServiceException e) { diff --git a/Assets/Scripts/UnityServices/Lobbies/Messages/LobbyListFetchedMessage.cs b/Assets/Scripts/UnityServices/Lobbies/Messages/LobbyListFetchedMessage.cs index e1879e0159..15e58aacff 100644 --- a/Assets/Scripts/UnityServices/Lobbies/Messages/LobbyListFetchedMessage.cs +++ b/Assets/Scripts/UnityServices/Lobbies/Messages/LobbyListFetchedMessage.cs @@ -1,12 +1,14 @@ using System.Collections.Generic; +using Unity.Services.Multiplayer; namespace Unity.BossRoom.UnityServices.Lobbies { + // Note: MultiplayerSDK refactoring public struct LobbyListFetchedMessage { - public readonly IReadOnlyList LocalLobbies; + public readonly IList LocalLobbies; - public LobbyListFetchedMessage(List localLobbies) + public LobbyListFetchedMessage(IList localLobbies) { LocalLobbies = localLobbies; } diff --git a/Assets/Scripts/UnityServices/Unity.BossRoom.UnityServices.asmdef b/Assets/Scripts/UnityServices/Unity.BossRoom.UnityServices.asmdef index b5c8c57535..4af8b2fde7 100644 --- a/Assets/Scripts/UnityServices/Unity.BossRoom.UnityServices.asmdef +++ b/Assets/Scripts/UnityServices/Unity.BossRoom.UnityServices.asmdef @@ -4,11 +4,10 @@ "references": [ "Unity.Services.Core", "Unity.Services.Authentication", - "Unity.Services.Lobbies", - "Unity.Services.Relay", "Unity.Services.Wire.Internal", "Unity.BossRoom.Infrastructure", - "VContainer" + "VContainer", + "Unity.Services.Multiplayer" ], "includePlatforms": [], "excludePlatforms": [], diff --git a/Packages/com.unity.multiplayer.samples.coop/Utilities/Net/UnityRelayUtilities.cs b/Packages/com.unity.multiplayer.samples.coop/Utilities/Net/UnityRelayUtilities.cs deleted file mode 100644 index f792fe1d2f..0000000000 --- a/Packages/com.unity.multiplayer.samples.coop/Utilities/Net/UnityRelayUtilities.cs +++ /dev/null @@ -1,82 +0,0 @@ -using System; -using System.Linq; -using System.Threading.Tasks; -using UnityEngine; -using Unity.Services.Relay; -using Unity.Services.Relay.Models; - -namespace Unity.Multiplayer.Samples.BossRoom -{ - public static class UnityRelayUtilities - { - const string k_KDtlsConnType = "dtls"; - - /// - /// Deprecated, please see updated ConnectionManager sample code for an example on how to connect to Relay - /// - /// - /// - /// - /// - /// - public static async Task<(string ipv4address, ushort port, byte[] allocationIdBytes, byte[] connectionData, byte[] key, string joinCode)> - AllocateRelayServerAndGetJoinCode(int maxConnections, string region = null) - { - Allocation allocation; - string joinCode; - - try - { - allocation = await RelayService.Instance.CreateAllocationAsync(maxConnections, region); - } - catch (Exception exception) - { - throw new Exception($"Creating allocation request has failed: \n {exception.Message}"); - } - - Debug.Log($"server: connection data: {allocation.ConnectionData[0]} {allocation.ConnectionData[1]}, allocation ID:{allocation.AllocationId}, region:{allocation.Region}"); - - try - { - joinCode = await RelayService.Instance.GetJoinCodeAsync(allocation.AllocationId); - } - catch (Exception exception) - { - throw new Exception($"Creating join code request has failed: \n {exception.Message}"); - } - - var dtlsEndpoint = allocation.ServerEndpoints.First(e => e.ConnectionType == k_KDtlsConnType); - return (dtlsEndpoint.Host, (ushort)dtlsEndpoint.Port, allocation.AllocationIdBytes, - allocation.ConnectionData, allocation.Key, joinCode); - } - - /// - /// Deprecated, please see updated ConnectionManager sample code for an example on how to connect to Relay - /// - /// - /// - /// - /// - public static async Task<(string ipv4address, ushort port, byte[] allocationIdBytes, Guid allocationId, byte[] connectionData, byte[] hostConnectionData, byte[] key)> - JoinRelayServerFromJoinCode(string joinCode) - { - JoinAllocation allocation; - try - { - allocation = await RelayService.Instance.JoinAllocationAsync(joinCode); - } - catch (Exception exception) - { - throw new Exception($"Creating join code request has failed: \n {exception.Message}"); - } - - Debug.Log($"client: {allocation.ConnectionData[0]} {allocation.ConnectionData[1]}"); - Debug.Log($"host: {allocation.HostConnectionData[0]} {allocation.HostConnectionData[1]}"); - Debug.Log($"client: {allocation.AllocationId}"); - - var dtlsEndpoint = allocation.ServerEndpoints.First(e => e.ConnectionType == k_KDtlsConnType); - return (dtlsEndpoint.Host, (ushort)dtlsEndpoint.Port, allocation.AllocationIdBytes, allocation.AllocationId, - allocation.ConnectionData, allocation.HostConnectionData, allocation.Key); - } - } -} diff --git a/Packages/com.unity.multiplayer.samples.coop/Utilities/Net/UnityRelayUtilities.cs.meta b/Packages/com.unity.multiplayer.samples.coop/Utilities/Net/UnityRelayUtilities.cs.meta deleted file mode 100644 index 5f7c5d785d..0000000000 --- a/Packages/com.unity.multiplayer.samples.coop/Utilities/Net/UnityRelayUtilities.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 4022140b8f4a4975976098b76e62e4eb -timeCreated: 1629198174 \ No newline at end of file diff --git a/Packages/com.unity.multiplayer.samples.coop/package.json b/Packages/com.unity.multiplayer.samples.coop/package.json index 789b298e26..028108dd0a 100644 --- a/Packages/com.unity.multiplayer.samples.coop/package.json +++ b/Packages/com.unity.multiplayer.samples.coop/package.json @@ -9,7 +9,6 @@ "dependencies": { "com.unity.learn.iet-framework": "3.1.3", "com.unity.multiplayer.tools": "1.1.0", - "com.unity.netcode.gameobjects": "1.8.1", - "com.unity.services.relay": "1.0.5" + "com.unity.netcode.gameobjects": "1.8.1" } } \ No newline at end of file diff --git a/Packages/manifest.json b/Packages/manifest.json index 309648c17d..7a64ef08b4 100644 --- a/Packages/manifest.json +++ b/Packages/manifest.json @@ -15,8 +15,7 @@ "com.unity.postprocessing": "3.2.2", "com.unity.render-pipelines.universal": "14.0.9", "com.unity.services.authentication": "2.7.2", - "com.unity.services.lobby": "1.1.0", - "com.unity.services.relay": "1.0.5", + "com.unity.services.multiplayer": "0.2.0", "com.unity.test-framework": "1.1.33", "com.unity.textmeshpro": "3.0.6", "com.unity.timeline": "1.7.6", diff --git a/Packages/packages-lock.json b/Packages/packages-lock.json index 1594b10bf1..c3eaf6d974 100644 --- a/Packages/packages-lock.json +++ b/Packages/packages-lock.json @@ -123,8 +123,7 @@ "dependencies": { "com.unity.learn.iet-framework": "3.1.3", "com.unity.multiplayer.tools": "1.1.0", - "com.unity.netcode.gameobjects": "1.8.1", - "com.unity.services.relay": "1.0.5" + "com.unity.netcode.gameobjects": "1.8.1" } }, "com.unity.multiplayer.tools": { @@ -228,20 +227,20 @@ "url": "https://packages.unity.com" }, "com.unity.services.authentication": { - "version": "2.7.2", - "depth": 0, + "version": "3.1.0", + "depth": 1, "source": "registry", "dependencies": { "com.unity.nuget.newtonsoft-json": "3.2.1", - "com.unity.services.core": "1.10.1", + "com.unity.services.core": "1.12.0", "com.unity.modules.unitywebrequest": "1.0.0", "com.unity.ugui": "1.0.0" }, "url": "https://packages.unity.com" }, "com.unity.services.core": { - "version": "1.12.0", - "depth": 1, + "version": "1.12.4", + "depth": 2, "source": "registry", "dependencies": { "com.unity.modules.unitywebrequest": "1.0.0", @@ -250,29 +249,31 @@ }, "url": "https://packages.unity.com" }, - "com.unity.services.lobby": { - "version": "1.1.0", + "com.unity.services.multiplayer": { + "version": "0.2.0", "depth": 0, "source": "registry", "dependencies": { - "com.unity.services.core": "1.8.2", "com.unity.modules.unitywebrequest": "1.0.0", "com.unity.modules.unitywebrequestassetbundle": "1.0.0", "com.unity.modules.unitywebrequestaudio": "1.0.0", "com.unity.modules.unitywebrequesttexture": "1.0.0", "com.unity.modules.unitywebrequestwww": "1.0.0", - "com.unity.nuget.newtonsoft-json": "3.0.2", - "com.unity.services.authentication": "2.1.1", - "com.unity.services.wire": "1.1.8" + "com.unity.nuget.newtonsoft-json": "3.2.1", + "com.unity.services.authentication": "3.1.0", + "com.unity.services.core": "1.12.1", + "com.unity.services.qos": "1.3.0", + "com.unity.services.wire": "1.2.3", + "com.unity.transport": "1.4.1" }, "url": "https://packages.unity.com" }, "com.unity.services.qos": { - "version": "1.2.1", + "version": "1.3.0", "depth": 1, "source": "registry", "dependencies": { - "com.unity.services.core": "1.4.0", + "com.unity.services.core": "1.12.4", "com.unity.modules.unitywebrequest": "1.0.0", "com.unity.nuget.newtonsoft-json": "3.0.2", "com.unity.services.authentication": "2.0.0", @@ -280,30 +281,12 @@ }, "url": "https://packages.unity.com" }, - "com.unity.services.relay": { - "version": "1.0.5", - "depth": 0, - "source": "registry", - "dependencies": { - "com.unity.services.core": "1.4.0", - "com.unity.services.authentication": "2.0.0", - "com.unity.services.qos": "1.1.0", - "com.unity.modules.unitywebrequest": "1.0.0", - "com.unity.modules.unitywebrequestassetbundle": "1.0.0", - "com.unity.modules.unitywebrequestaudio": "1.0.0", - "com.unity.modules.unitywebrequesttexture": "1.0.0", - "com.unity.modules.unitywebrequestwww": "1.0.0", - "com.unity.nuget.newtonsoft-json": "3.0.2", - "com.unity.transport": "1.3.0" - }, - "url": "https://packages.unity.com" - }, "com.unity.services.wire": { - "version": "1.2.2", + "version": "1.2.3", "depth": 1, "source": "registry", "dependencies": { - "com.unity.services.core": "1.11.0", + "com.unity.services.core": "1.12.4", "com.unity.nuget.newtonsoft-json": "3.2.1", "com.unity.services.authentication": "2.7.2" }, From 26791026503d27529d24c329ff3f39ab23569ca1 Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Fri, 18 Oct 2024 15:11:59 +0200 Subject: [PATCH 02/57] feat: upgrade MPS SDK to 1.0.0 --- Assets/Scripts/UnityServices/Lobbies/LobbyServiceFacade.cs | 5 +++-- Packages/manifest.json | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/Assets/Scripts/UnityServices/Lobbies/LobbyServiceFacade.cs b/Assets/Scripts/UnityServices/Lobbies/LobbyServiceFacade.cs index 4569eac2c5..2423cf338b 100644 --- a/Assets/Scripts/UnityServices/Lobbies/LobbyServiceFacade.cs +++ b/Assets/Scripts/UnityServices/Lobbies/LobbyServiceFacade.cs @@ -142,13 +142,14 @@ public void EndTracking() try { var lobby = /*await m_LobbyApiInterface.CreateLobby(AuthenticationService.Instance.PlayerId, lobbyName, maxPlayers, isPrivate, m_LocalUser.GetDataForUnityServices(), null);*/ - await MultiplayerService.Instance.CreateSessionAsync(new CreateSessionOptions(2) + await MultiplayerService.Instance.CreateSessionAsync(new SessionOptions() { + MaxPlayers = 2, Name = lobbyName, IsPrivate = isPrivate, Password = null,//string.IsNullOrEmpty(Password) ? null : Password, IsLocked = false, //Todos - }.WithRelayConnection()); + }.WithRelayNetwork()); return (true, lobby); } catch (LobbyServiceException e) diff --git a/Packages/manifest.json b/Packages/manifest.json index 7a64ef08b4..2cd374349b 100644 --- a/Packages/manifest.json +++ b/Packages/manifest.json @@ -15,7 +15,7 @@ "com.unity.postprocessing": "3.2.2", "com.unity.render-pipelines.universal": "14.0.9", "com.unity.services.authentication": "2.7.2", - "com.unity.services.multiplayer": "0.2.0", + "com.unity.services.multiplayer": "1.0.0", "com.unity.test-framework": "1.1.33", "com.unity.textmeshpro": "3.0.6", "com.unity.timeline": "1.7.6", From e953e8a855b2adfae129601f81c4f1e8eb2f13b5 Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Wed, 23 Oct 2024 15:17:36 +0200 Subject: [PATCH 03/57] feat: first batch conversion from Lobbies API to Multiplayer Services SDK --- .../ApplicationController.cs | 26 +- .../ConnectionManagement/ConnectionManager.cs | 10 +- .../ConnectionManagement/ConnectionMethod.cs | 73 +-- .../ConnectionState/ClientConnectedState.cs | 8 +- .../ConnectionState/ClientConnectingState.cs | 9 +- .../ConnectionState/ConnectionState.cs | 8 +- .../ConnectionState/HostingState.cs | 12 +- .../ConnectionState/OfflineState.cs | 24 +- .../ConnectionState/StartingHostState.cs | 13 +- .../Gameplay/GameState/ClientMainMenuState.cs | 10 +- .../Gameplay/UI/Lobby/LobbyCreationUI.cs | 2 +- .../Gameplay/UI/Lobby/LobbyJoiningUI.cs | 22 +- .../Gameplay/UI/Lobby/LobbyListItemUI.cs | 6 +- .../Gameplay/UI/Lobby/LobbyUIMediator.cs | 121 ++-- Assets/Scripts/Gameplay/UI/RoomNameBox.cs | 20 +- .../Gameplay/UI/UnityServicesUIHandler.cs | 2 +- .../Messages/UnityServiceErrorMessage.cs | 2 +- .../Lobbies/LobbyAPIInterface.cs | 138 ----- .../Lobbies/LobbyServiceFacade.cs | 577 ------------------ .../UnityServices/Lobbies/LocalLobby.cs | 274 --------- .../Messages/LobbyListFetchedMessage.cs | 16 - .../{Lobbies.meta => Sessions.meta} | 0 .../UnityServices/Sessions/LocalSession.cs | 255 ++++++++ .../LocalSession.cs.meta} | 0 .../LocalSessionUser.cs} | 254 ++++---- .../LocalSessionUser.cs.meta} | 0 .../{Lobbies => Sessions}/Messages.meta | 0 .../Messages/SessionListFetchedMessage.cs | 15 + .../SessionListFetchedMessage.cs.meta} | 0 .../Sessions/MultiplayerServicesFacade.cs | 460 ++++++++++++++ .../MultiplayerServicesFacade.cs.meta} | 0 .../Sessions/MultiplayerServicesInterface.cs | 106 ++++ .../MultiplayerServicesInterface.cs.meta} | 0 .../Runtime/ConnectionManagementTests.cs | 10 +- 34 files changed, 1117 insertions(+), 1356 deletions(-) delete mode 100644 Assets/Scripts/UnityServices/Lobbies/LobbyAPIInterface.cs delete mode 100644 Assets/Scripts/UnityServices/Lobbies/LobbyServiceFacade.cs delete mode 100644 Assets/Scripts/UnityServices/Lobbies/LocalLobby.cs delete mode 100644 Assets/Scripts/UnityServices/Lobbies/Messages/LobbyListFetchedMessage.cs rename Assets/Scripts/UnityServices/{Lobbies.meta => Sessions.meta} (100%) create mode 100644 Assets/Scripts/UnityServices/Sessions/LocalSession.cs rename Assets/Scripts/UnityServices/{Lobbies/LocalLobby.cs.meta => Sessions/LocalSession.cs.meta} (100%) rename Assets/Scripts/UnityServices/{Lobbies/LocalLobbyUser.cs => Sessions/LocalSessionUser.cs} (74%) rename Assets/Scripts/UnityServices/{Lobbies/LocalLobbyUser.cs.meta => Sessions/LocalSessionUser.cs.meta} (100%) rename Assets/Scripts/UnityServices/{Lobbies => Sessions}/Messages.meta (100%) create mode 100644 Assets/Scripts/UnityServices/Sessions/Messages/SessionListFetchedMessage.cs rename Assets/Scripts/UnityServices/{Lobbies/Messages/LobbyListFetchedMessage.cs.meta => Sessions/Messages/SessionListFetchedMessage.cs.meta} (100%) create mode 100644 Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs rename Assets/Scripts/UnityServices/{Lobbies/LobbyServiceFacade.cs.meta => Sessions/MultiplayerServicesFacade.cs.meta} (100%) create mode 100644 Assets/Scripts/UnityServices/Sessions/MultiplayerServicesInterface.cs rename Assets/Scripts/UnityServices/{Lobbies/LobbyAPIInterface.cs.meta => Sessions/MultiplayerServicesInterface.cs.meta} (100%) diff --git a/Assets/Scripts/ApplicationLifecycle/ApplicationController.cs b/Assets/Scripts/ApplicationLifecycle/ApplicationController.cs index 499701fc2c..6d92f27131 100644 --- a/Assets/Scripts/ApplicationLifecycle/ApplicationController.cs +++ b/Assets/Scripts/ApplicationLifecycle/ApplicationController.cs @@ -7,7 +7,7 @@ using Unity.BossRoom.Infrastructure; using Unity.BossRoom.UnityServices; using Unity.BossRoom.UnityServices.Auth; -using Unity.BossRoom.UnityServices.Lobbies; +using Unity.BossRoom.UnityServices.Sessions; using Unity.BossRoom.Utils; using Unity.Netcode; using UnityEngine; @@ -29,8 +29,8 @@ public class ApplicationController : LifetimeScope [SerializeField] NetworkManager m_NetworkManager; - LocalLobby m_LocalLobby; - LobbyServiceFacade m_LobbyServiceFacade; + LocalSession m_LocalSession; + MultiplayerServicesFacade m_MultiplayerServicesFacade; IDisposable m_Subscriptions; @@ -43,8 +43,8 @@ protected override void Configure(IContainerBuilder builder) //the following singletons represent the local representations of the lobby that we're in and the user that we are //they can persist longer than the lifetime of the UI in MainMenu where we set up the lobby that we create or join - builder.Register(Lifetime.Singleton); - builder.Register(Lifetime.Singleton); + builder.Register(Lifetime.Singleton); + builder.Register(Lifetime.Singleton); builder.Register(Lifetime.Singleton); @@ -69,19 +69,19 @@ protected override void Configure(IContainerBuilder builder) builder.RegisterInstance(new MessageChannel()).AsImplementedInterfaces(); //buffered message channels hold the latest received message in buffer and pass to any new subscribers - builder.RegisterInstance(new BufferedMessageChannel()).AsImplementedInterfaces(); + builder.RegisterInstance(new BufferedMessageChannel()).AsImplementedInterfaces(); //all the lobby service stuff, bound here so that it persists through scene loads builder.Register(Lifetime.Singleton); //a manager entity that allows us to do anonymous authentication with unity services //LobbyServiceFacade is registered as entrypoint because it wants a callback after container is built to do it's initialization - builder.RegisterEntryPoint(Lifetime.Singleton).AsSelf(); + builder.RegisterEntryPoint(Lifetime.Singleton).AsSelf(); } private void Start() { - m_LocalLobby = Container.Resolve(); - m_LobbyServiceFacade = Container.Resolve(); + m_LocalSession = Container.Resolve(); + m_MultiplayerServicesFacade = Container.Resolve(); var quitApplicationSub = Container.Resolve>(); @@ -103,9 +103,9 @@ protected override void OnDestroy() m_Subscriptions.Dispose(); } - if (m_LobbyServiceFacade != null) + if (m_MultiplayerServicesFacade != null) { - m_LobbyServiceFacade.EndTracking(); + m_MultiplayerServicesFacade.EndTracking(); } base.OnDestroy(); @@ -120,7 +120,7 @@ private IEnumerator LeaveBeforeQuit() // We want to quit anyways, so if anything happens while trying to leave the Lobby, log the exception then carry on try { - m_LobbyServiceFacade.EndTracking(); + m_MultiplayerServicesFacade.EndTracking(); } catch (Exception e) { @@ -135,7 +135,7 @@ private bool OnWantToQuit() { Application.wantsToQuit -= OnWantToQuit; - var canQuit = m_LocalLobby != null && string.IsNullOrEmpty(m_LocalLobby.LobbyID); + var canQuit = m_LocalSession != null && string.IsNullOrEmpty(m_LocalSession.SessionID); if (!canQuit) { StartCoroutine(LeaveBeforeQuit()); diff --git a/Assets/Scripts/ConnectionManagement/ConnectionManager.cs b/Assets/Scripts/ConnectionManagement/ConnectionManager.cs index ebec6a0952..d1e98e7b01 100644 --- a/Assets/Scripts/ConnectionManagement/ConnectionManager.cs +++ b/Assets/Scripts/ConnectionManagement/ConnectionManager.cs @@ -153,10 +153,9 @@ void OnServerStopped(bool _) // we don't need this parameter as the ConnectionSt m_CurrentState.OnServerStopped(); } - // Note: MultiplayerSDK refactoring - public void StartClientLobby(string sessionCode, string playerName) + public void StartClientSession(string playerName) { - m_CurrentState.StartClientLobby(sessionCode, playerName); + m_CurrentState.StartClientSession(playerName); } public void StartClientIp(string playerName, string ipaddress, int port) @@ -164,10 +163,9 @@ public void StartClientIp(string playerName, string ipaddress, int port) m_CurrentState.StartClientIP(playerName, ipaddress, port); } - // Note: MultiplayerSDK refactoring - public void StartHostLobby(string sessionCode, string playerName) + public void StartHostSession(string playerName) { - m_CurrentState.StartHostLobby(sessionCode, playerName); + m_CurrentState.StartHostSession(playerName); } public void StartHostIp(string playerName, string ipaddress, int port) diff --git a/Assets/Scripts/ConnectionManagement/ConnectionMethod.cs b/Assets/Scripts/ConnectionManagement/ConnectionMethod.cs index e904e1f98e..dda99f14a8 100644 --- a/Assets/Scripts/ConnectionManagement/ConnectionMethod.cs +++ b/Assets/Scripts/ConnectionManagement/ConnectionMethod.cs @@ -1,5 +1,5 @@ using System.Threading.Tasks; -using Unity.BossRoom.UnityServices.Lobbies; +using Unity.BossRoom.UnityServices.Sessions; using Unity.BossRoom.Utils; using Unity.Netcode.Transports.UTP; using Unity.Services.Authentication; @@ -17,20 +17,18 @@ public abstract class ConnectionMethodBase protected ConnectionManager m_ConnectionManager; readonly ProfileManager m_ProfileManager; protected readonly string m_PlayerName; - protected const string k_DtlsConnType = "dtls"; /// /// Setup the host connection prior to starting the NetworkManager /// /// public abstract Task SetupHostConnectionAsync(); - - + /// /// Setup the client connection prior to starting the NetworkManager /// /// - public abstract Task SetupClientConnectionAsync(); + public abstract void SetupClientConnectionAsync(); /// /// Setup the client for reconnection prior to reconnecting @@ -50,7 +48,7 @@ public ConnectionMethodBase(ConnectionManager connectionManager, ProfileManager protected void SetConnectionPayload(string playerId, string playerName) { - var payload = JsonUtility.ToJson(new ConnectionPayload() + var payload = JsonUtility.ToJson(new ConnectionPayload { playerId = playerId, playerName = playerName, @@ -96,7 +94,7 @@ public ConnectionMethodIP(string ip, ushort port, ConnectionManager connectionMa m_ConnectionManager = connectionManager; } - public override async Task SetupClientConnectionAsync() + public override void SetupClientConnectionAsync() { SetConnectionPayload(GetPlayerId(), m_PlayerName); var utp = (UnityTransport)m_ConnectionManager.NetworkManager.NetworkConfig.NetworkTransport; @@ -123,70 +121,43 @@ public override async Task SetupHostConnectionAsync() /// class ConnectionMethodRelay : ConnectionMethodBase { - LobbyServiceFacade m_LobbyServiceFacade; - /*LocalLobby m_LocalLobby;*/ + MultiplayerServicesFacade m_MultiplayerServicesFacade; - string m_SessionName; bool m_IsPrivate = true; - public ConnectionMethodRelay(string sessionName, LobbyServiceFacade lobbyServiceFacade, LocalLobby localLobby, ConnectionManager connectionManager, ProfileManager profileManager, string playerName) + public ConnectionMethodRelay(MultiplayerServicesFacade multiplayerServicesFacade, + ConnectionManager connectionManager, + ProfileManager profileManager, + string playerName) : base(connectionManager, profileManager, playerName) { - m_SessionName = sessionName; - m_LobbyServiceFacade = lobbyServiceFacade; - /*m_LocalLobby = localLobby;*/ + m_MultiplayerServicesFacade = multiplayerServicesFacade; m_ConnectionManager = connectionManager; } - // Note: MultiplayerSDK refactoring - public override async Task SetupClientConnectionAsync() + public override void SetupClientConnectionAsync() { - Debug.Log("Setting up Unity Relay client"); - - // TODO: where to grab name SetConnectionPayload(GetPlayerId(), m_PlayerName); - - // don't need this either? - /*if (m_LobbyServiceFacade.CurrentUnityLobby == null) - { - throw new Exception("Trying to start relay while Lobby isn't set"); - } - - Debug.Log($"Setting Unity Relay client with join code {m_LocalLobby.RelayJoinCode}");*/ - - // don't need to do, relay allocation handled by service - /*// Create client joining allocation from join code - var joinedAllocation = await RelayService.Instance.JoinAllocationAsync(m_LocalLobby.RelayJoinCode); - Debug.Log($"client: {joinedAllocation.ConnectionData[0]} {joinedAllocation.ConnectionData[1]}, " + - $"host: {joinedAllocation.HostConnectionData[0]} {joinedAllocation.HostConnectionData[1]}, " + - $"client: {joinedAllocation.AllocationId}");*/ - - /*await m_LobbyServiceFacade.UpdatePlayerDataAsync(joinedAllocation.AllocationId.ToString(), m_LocalLobby.RelayJoinCode);*/ - await m_LobbyServiceFacade.TryJoinLobbyAsync(m_SessionName/*, lobbyCode*/); - - // TODO: do we need this? - // Configure UTP with allocation - /*var utp = (UnityTransport)m_ConnectionManager.NetworkManager.NetworkConfig.NetworkTransport; - utp.SetRelayServerData(new RelayServerData(joinedAllocation, k_DtlsConnType));*/ } public override async Task<(bool success, bool shouldTryAgain)> SetupClientReconnectionAsync() { - if (m_LobbyServiceFacade.CurrentUnityLobby == null) + if (m_MultiplayerServicesFacade.CurrentUnitySession == null) { - Debug.Log("Lobby does not exist anymore, stopping reconnection attempts."); + Debug.Log("Session does not exist anymore, stopping reconnection attempts."); return (false, false); } + // TODO SESSIONS: // When using Lobby with Relay, if a user is disconnected from the Relay server, the server will notify the // Lobby service and mark the user as disconnected, but will not remove them from the lobby. They then have // some time to attempt to reconnect (defined by the "Disconnect removal time" parameter on the dashboard), // after which they will be removed from the lobby completely. // See https://docs.unity.com/lobby/reconnect-to-lobby.html - var lobby = await m_LobbyServiceFacade.ReconnectToLobbyAsync(); - var success = lobby != null; - Debug.Log(success ? "Successfully reconnected to Lobby." : "Failed to reconnect to Lobby."); - return (success, true); // return a success if reconnecting to lobby returns a lobby + var session = await m_MultiplayerServicesFacade.ReconnectToSessionAsync(); + var success = session != null; + Debug.Log(success ? "Successfully reconnected to Session." : "Failed to reconnect to Session."); + return (success, true); // return a success if reconnecting to session returns a session } // Note: MultiplayerSDK refactoring @@ -195,7 +166,7 @@ public override async Task SetupHostConnectionAsync() Debug.Log("Setting up Unity Relay host"); SetConnectionPayload(GetPlayerId(), m_PlayerName); // Need to set connection payload for host as well, as host is a client too - + /*// Create relay allocation Allocation hostAllocation = await RelayService.Instance.CreateAllocationAsync(m_ConnectionManager.MaxConnectedPlayers, region: null); var joinCode = await RelayService.Instance.GetJoinCodeAsync(hostAllocation.AllocationId); @@ -216,9 +187,9 @@ public override async Task SetupHostConnectionAsync() Debug.Log($"Created relay allocation with join code {m_LocalLobby.RelayJoinCode}");*/ - var lobbyCreationAttempt = await m_LobbyServiceFacade.TryCreateLobbyAsync(m_SessionName, m_ConnectionManager.MaxConnectedPlayers, m_IsPrivate); + // var lobbyCreationAttempt = await m_MultiplayerServicesFacade.TryCreateSessionAsync(m_SessionName, m_ConnectionManager.MaxConnectedPlayers, m_IsPrivate); - Debug.Log($"{lobbyCreationAttempt.Success} lobbyCreationAttempt.Lobby.Id: {lobbyCreationAttempt.Lobby.Id} lobbyCreationAttempt.Lobby.Code {lobbyCreationAttempt.Lobby.Code}"); + // Debug.Log($"{lobbyCreationAttempt.Success} lobbyCreationAttempt.Lobby.Id: {lobbyCreationAttempt.Session.Id} lobbyCreationAttempt.Lobby.Code {lobbyCreationAttempt.Session.Code}"); } } } diff --git a/Assets/Scripts/ConnectionManagement/ConnectionState/ClientConnectedState.cs b/Assets/Scripts/ConnectionManagement/ConnectionState/ClientConnectedState.cs index 9d4e0e0f1a..0ac5e31de0 100644 --- a/Assets/Scripts/ConnectionManagement/ConnectionState/ClientConnectedState.cs +++ b/Assets/Scripts/ConnectionManagement/ConnectionState/ClientConnectedState.cs @@ -1,4 +1,4 @@ -using Unity.BossRoom.UnityServices.Lobbies; +using Unity.BossRoom.UnityServices.Sessions; using UnityEngine; using VContainer; @@ -11,13 +11,13 @@ namespace Unity.BossRoom.ConnectionManagement class ClientConnectedState : OnlineState { [Inject] - protected LobbyServiceFacade m_LobbyServiceFacade; + protected MultiplayerServicesFacade m_MultiplayerServicesFacade; public override void Enter() { - if (m_LobbyServiceFacade.CurrentUnityLobby != null) + if (m_MultiplayerServicesFacade.CurrentUnitySession != null) { - m_LobbyServiceFacade.BeginTracking(); + m_MultiplayerServicesFacade.BeginTracking(); } } diff --git a/Assets/Scripts/ConnectionManagement/ConnectionState/ClientConnectingState.cs b/Assets/Scripts/ConnectionManagement/ConnectionState/ClientConnectingState.cs index c66908e431..d63bcca609 100644 --- a/Assets/Scripts/ConnectionManagement/ConnectionState/ClientConnectingState.cs +++ b/Assets/Scripts/ConnectionManagement/ConnectionState/ClientConnectingState.cs @@ -60,14 +60,7 @@ internal async Task ConnectClientAsync() try { // Setup NGO with current connection method - await m_ConnectionMethod.SetupClientConnectionAsync(); - - // Note: MultiplayerSDK refactoring - // NGO's StartClient launches everything - /*if (!m_ConnectionManager.NetworkManager.StartClient()) - { - throw new Exception("NetworkManager StartClient failed"); - }*/ + m_ConnectionMethod.SetupClientConnectionAsync(); } catch (Exception e) { diff --git a/Assets/Scripts/ConnectionManagement/ConnectionState/ConnectionState.cs b/Assets/Scripts/ConnectionManagement/ConnectionState/ConnectionState.cs index 56f7592c72..027862c968 100644 --- a/Assets/Scripts/ConnectionManagement/ConnectionState/ConnectionState.cs +++ b/Assets/Scripts/ConnectionManagement/ConnectionState/ConnectionState.cs @@ -28,13 +28,11 @@ public virtual void OnServerStarted() { } public virtual void StartClientIP(string playerName, string ipaddress, int port) { } - // Note: MultiplayerSDK refactoring - public virtual void StartClientLobby(string sessionCode, string playerName) { } + public virtual void StartClientSession(string playerName) { } public virtual void StartHostIP(string playerName, string ipaddress, int port) { } - - // Note: MultiplayerSDK refactoring - public virtual void StartHostLobby(string sessionCode, string playerName) { } + + public virtual void StartHostSession(string playerName) { } public virtual void OnUserRequestedShutdown() { } diff --git a/Assets/Scripts/ConnectionManagement/ConnectionState/HostingState.cs b/Assets/Scripts/ConnectionManagement/ConnectionState/HostingState.cs index b0645e21eb..7227fddba2 100644 --- a/Assets/Scripts/ConnectionManagement/ConnectionState/HostingState.cs +++ b/Assets/Scripts/ConnectionManagement/ConnectionState/HostingState.cs @@ -1,6 +1,6 @@ using System; using Unity.BossRoom.Infrastructure; -using Unity.BossRoom.UnityServices.Lobbies; +using Unity.BossRoom.UnityServices.Sessions; using Unity.Multiplayer.Samples.BossRoom; using Unity.Multiplayer.Samples.Utilities; using Unity.Netcode; @@ -16,7 +16,7 @@ namespace Unity.BossRoom.ConnectionManagement class HostingState : OnlineState { [Inject] - LobbyServiceFacade m_LobbyServiceFacade; + MultiplayerServicesFacade m_MultiplayerServicesFacade; [Inject] IPublisher m_ConnectionEventPublisher; @@ -29,9 +29,9 @@ public override void Enter() //may do this differently. SceneLoaderWrapper.Instance.LoadScene("CharSelect", useNetworkSceneManager: true); - if (m_LobbyServiceFacade.CurrentUnityLobby != null) + if (m_MultiplayerServicesFacade.CurrentUnitySession != null) { - m_LobbyServiceFacade.BeginTracking(); + m_MultiplayerServicesFacade.BeginTracking(); } } @@ -139,9 +139,9 @@ public override void ApprovalCheck(NetworkManager.ConnectionApprovalRequest requ response.Approved = false; response.Reason = JsonUtility.ToJson(gameReturnStatus); - if (m_LobbyServiceFacade.CurrentUnityLobby != null) + if (m_MultiplayerServicesFacade.CurrentUnitySession != null) { - m_LobbyServiceFacade.RemovePlayerFromLobbyAsync(connectionPayload.playerId); + m_MultiplayerServicesFacade.RemovePlayerFromSessionAsync(connectionPayload.playerId); } } diff --git a/Assets/Scripts/ConnectionManagement/ConnectionState/OfflineState.cs b/Assets/Scripts/ConnectionManagement/ConnectionState/OfflineState.cs index e5ecc8141d..dc40b0519d 100644 --- a/Assets/Scripts/ConnectionManagement/ConnectionState/OfflineState.cs +++ b/Assets/Scripts/ConnectionManagement/ConnectionState/OfflineState.cs @@ -1,6 +1,6 @@ using System; using Unity.BossRoom.ConnectionManagement; -using Unity.BossRoom.UnityServices.Lobbies; +using Unity.BossRoom.UnityServices.Sessions; using Unity.BossRoom.Utils; using Unity.Multiplayer.Samples.Utilities; using UnityEngine; @@ -16,17 +16,17 @@ namespace UUnity.BossRoom.ConnectionManagement class OfflineState : ConnectionState { [Inject] - LobbyServiceFacade m_LobbyServiceFacade; + MultiplayerServicesFacade m_MultiplayerServicesFacade; [Inject] ProfileManager m_ProfileManager; [Inject] - LocalLobby m_LocalLobby; + LocalSession m_LocalSession; const string k_MainMenuSceneName = "MainMenu"; public override void Enter() { - m_LobbyServiceFacade.EndTracking(); + m_MultiplayerServicesFacade.EndTracking(); m_ConnectionManager.NetworkManager.Shutdown(); if (SceneManager.GetActiveScene().name != k_MainMenuSceneName) { @@ -35,6 +35,12 @@ public override void Enter() } public override void Exit() { } + + public override void OnClientConnected(ulong _) + { + m_ConnectStatusPublisher.Publish(ConnectStatus.Success); + m_ConnectionManager.ChangeState(m_ConnectionManager.m_ClientConnecting); + } public override void StartClientIP(string playerName, string ipaddress, int port) { @@ -43,10 +49,9 @@ public override void StartClientIP(string playerName, string ipaddress, int port m_ConnectionManager.ChangeState(m_ConnectionManager.m_ClientConnecting.Configure(connectionMethod)); } - // Note: MultiplayerSDK refactoring - public override void StartClientLobby(string sessionCode, string playerName) + public override void StartClientSession(string playerName) { - var connectionMethod = new ConnectionMethodRelay(sessionCode, m_LobbyServiceFacade, m_LocalLobby, m_ConnectionManager, m_ProfileManager, playerName); + var connectionMethod = new ConnectionMethodRelay(m_MultiplayerServicesFacade, m_ConnectionManager, m_ProfileManager, playerName); m_ConnectionManager.m_ClientReconnecting.Configure(connectionMethod); m_ConnectionManager.ChangeState(m_ConnectionManager.m_ClientConnecting.Configure(connectionMethod)); } @@ -57,10 +62,9 @@ public override void StartHostIP(string playerName, string ipaddress, int port) m_ConnectionManager.ChangeState(m_ConnectionManager.m_StartingHost.Configure(connectionMethod)); } - // Note: MultiplayerSDK refactoring - public override void StartHostLobby(string sessionCode, string playerName) + public override void StartHostSession(string playerName) { - var connectionMethod = new ConnectionMethodRelay(sessionCode, m_LobbyServiceFacade, m_LocalLobby, m_ConnectionManager, m_ProfileManager, playerName); + var connectionMethod = new ConnectionMethodRelay(m_MultiplayerServicesFacade, m_ConnectionManager, m_ProfileManager, playerName); m_ConnectionManager.ChangeState(m_ConnectionManager.m_StartingHost.Configure(connectionMethod)); } } diff --git a/Assets/Scripts/ConnectionManagement/ConnectionState/StartingHostState.cs b/Assets/Scripts/ConnectionManagement/ConnectionState/StartingHostState.cs index 55763cb18e..8b9c45d1a7 100644 --- a/Assets/Scripts/ConnectionManagement/ConnectionState/StartingHostState.cs +++ b/Assets/Scripts/ConnectionManagement/ConnectionState/StartingHostState.cs @@ -1,6 +1,6 @@ using System; using Unity.BossRoom.Infrastructure; -using Unity.BossRoom.UnityServices.Lobbies; +using Unity.BossRoom.UnityServices.Sessions; using Unity.Multiplayer.Samples.BossRoom; using Unity.Netcode; using UnityEngine; @@ -15,9 +15,9 @@ namespace Unity.BossRoom.ConnectionManagement class StartingHostState : OnlineState { [Inject] - LobbyServiceFacade m_LobbyServiceFacade; + MultiplayerServicesFacade m_MultiplayerServicesFacade; [Inject] - LocalLobby m_LocalLobby; + LocalSession m_LocalSession; ConnectionMethodBase m_ConnectionMethod; public StartingHostState Configure(ConnectionMethodBase baseConnectionMethod) @@ -63,18 +63,11 @@ public override void OnServerStopped() StartHostFailed(); } - // Note: MultiplayerSDK refactoring async void StartHost() { try { await m_ConnectionMethod.SetupHostConnectionAsync(); - - /*// NGO's StartHost launches everything - if (!m_ConnectionManager.NetworkManager.StartHost()) - { - StartHostFailed(); - }*/ } catch (Exception) { diff --git a/Assets/Scripts/Gameplay/GameState/ClientMainMenuState.cs b/Assets/Scripts/Gameplay/GameState/ClientMainMenuState.cs index 2cf1fd5172..f3a022dc02 100644 --- a/Assets/Scripts/Gameplay/GameState/ClientMainMenuState.cs +++ b/Assets/Scripts/Gameplay/GameState/ClientMainMenuState.cs @@ -2,7 +2,7 @@ using Unity.BossRoom.Gameplay.Configuration; using Unity.BossRoom.Gameplay.UI; using Unity.BossRoom.UnityServices.Auth; -using Unity.BossRoom.UnityServices.Lobbies; +using Unity.BossRoom.UnityServices.Sessions; using Unity.BossRoom.Utils; using Unity.Services.Authentication; using UnityEngine; @@ -41,9 +41,9 @@ public class ClientMainMenuState : GameStateBehaviour [Inject] AuthenticationServiceFacade m_AuthServiceFacade; [Inject] - LocalLobbyUser m_LocalUser; + LocalSessionUser m_LocalUser; [Inject] - LocalLobby m_LocalLobby; + LocalSession m_LocalSession; [Inject] ProfileManager m_ProfileManager; @@ -135,9 +135,9 @@ async void OnProfileChanged() Debug.Log($"Signed in. Unity Player ID {AuthenticationService.Instance.PlayerId}"); // Updating LocalUser and LocalLobby - m_LocalLobby.RemoveUser(m_LocalUser); + m_LocalSession.RemoveUser(m_LocalUser); m_LocalUser.ID = AuthenticationService.Instance.PlayerId; - m_LocalLobby.AddUser(m_LocalUser); + m_LocalSession.AddUser(m_LocalUser); } public void OnStartClicked() diff --git a/Assets/Scripts/Gameplay/UI/Lobby/LobbyCreationUI.cs b/Assets/Scripts/Gameplay/UI/Lobby/LobbyCreationUI.cs index 4f21410ece..5ffcc09f6a 100644 --- a/Assets/Scripts/Gameplay/UI/Lobby/LobbyCreationUI.cs +++ b/Assets/Scripts/Gameplay/UI/Lobby/LobbyCreationUI.cs @@ -25,7 +25,7 @@ void EnableUnityRelayUI() public void OnCreateClick() { - m_LobbyUIMediator.CreateLobbyRequest(m_LobbyNameInputField.text, m_IsPrivate.isOn); + m_LobbyUIMediator.CreateSessionRequest(m_LobbyNameInputField.text, m_IsPrivate.isOn); } public void Show() diff --git a/Assets/Scripts/Gameplay/UI/Lobby/LobbyJoiningUI.cs b/Assets/Scripts/Gameplay/UI/Lobby/LobbyJoiningUI.cs index fdff41faa2..6426d7ae17 100644 --- a/Assets/Scripts/Gameplay/UI/Lobby/LobbyJoiningUI.cs +++ b/Assets/Scripts/Gameplay/UI/Lobby/LobbyJoiningUI.cs @@ -2,7 +2,7 @@ using System.Collections.Generic; using System.Text.RegularExpressions; using Unity.BossRoom.Infrastructure; -using Unity.BossRoom.UnityServices.Lobbies; +using Unity.BossRoom.UnityServices.Sessions; using UnityEngine; using UnityEngine.UI; using VContainer; @@ -28,7 +28,7 @@ public class LobbyJoiningUI : MonoBehaviour IObjectResolver m_Container; LobbyUIMediator m_LobbyUIMediator; UpdateRunner m_UpdateRunner; - ISubscriber m_LocalLobbiesRefreshedSub; + ISubscriber m_LocalLobbiesRefreshedSub; List m_LobbyListItems = new List(); @@ -58,7 +58,7 @@ void InjectDependenciesAndInitialize( IObjectResolver container, LobbyUIMediator lobbyUIMediator, UpdateRunner updateRunner, - ISubscriber localLobbiesRefreshedSub) + ISubscriber localLobbiesRefreshedSub) { m_Container = container; m_LobbyUIMediator = lobbyUIMediator; @@ -83,31 +83,31 @@ string SanitizeJoinCode(string dirtyString) public void OnJoinButtonPressed() { - m_LobbyUIMediator.JoinLobbyWithCodeRequest(SanitizeJoinCode(m_JoinCodeField.text)); + m_LobbyUIMediator.JoinSessionWithCodeRequest(SanitizeJoinCode(m_JoinCodeField.text)); } void PeriodicRefresh(float _) { //this is a soft refresh without needing to lock the UI and such - m_LobbyUIMediator.QueryLobbiesRequest(false); + m_LobbyUIMediator.QuerySessionRequest(false); } public void OnRefresh() { - m_LobbyUIMediator.QueryLobbiesRequest(true); + m_LobbyUIMediator.QuerySessionRequest(true); } - void UpdateUI(LobbyListFetchedMessage message) + void UpdateUI(SessionListFetchedMessage message) { - EnsureNumberOfActiveUISlots(message.LocalLobbies.Count); + EnsureNumberOfActiveUISlots(message.LocalSessions.Count); - for (var i = 0; i < message.LocalLobbies.Count; i++) + for (var i = 0; i < message.LocalSessions.Count; i++) { - var localLobby = message.LocalLobbies[i]; + var localLobby = message.LocalSessions[i]; m_LobbyListItems[i].SetData(localLobby); } - if (message.LocalLobbies.Count == 0) + if (message.LocalSessions.Count == 0) { m_EmptyLobbyListLabel.enabled = true; } diff --git a/Assets/Scripts/Gameplay/UI/Lobby/LobbyListItemUI.cs b/Assets/Scripts/Gameplay/UI/Lobby/LobbyListItemUI.cs index 1c1ed65fb9..f17f8d0893 100644 --- a/Assets/Scripts/Gameplay/UI/Lobby/LobbyListItemUI.cs +++ b/Assets/Scripts/Gameplay/UI/Lobby/LobbyListItemUI.cs @@ -1,6 +1,6 @@ using System; using TMPro; -using Unity.BossRoom.UnityServices.Lobbies; +using Unity.BossRoom.UnityServices.Sessions; using Unity.Services.Multiplayer; using UnityEngine; using VContainer; @@ -9,7 +9,7 @@ namespace Unity.BossRoom.Gameplay.UI { // Note: MultiplayerSDK refactoring /// - /// An individual Lobby UI in the list of available lobbies + /// An individual Lobby UI in the list of available lobbies` /// public class LobbyListItemUI : MonoBehaviour { @@ -30,7 +30,7 @@ public void SetData(ISessionInfo data) public void OnClick() { - m_LobbyUIMediator.JoinLobbyRequest(m_Data); + m_LobbyUIMediator.JoinSessionRequest(m_Data); } } } diff --git a/Assets/Scripts/Gameplay/UI/Lobby/LobbyUIMediator.cs b/Assets/Scripts/Gameplay/UI/Lobby/LobbyUIMediator.cs index d9104c1c3e..fb5889fad0 100644 --- a/Assets/Scripts/Gameplay/UI/Lobby/LobbyUIMediator.cs +++ b/Assets/Scripts/Gameplay/UI/Lobby/LobbyUIMediator.cs @@ -1,11 +1,10 @@ using System; -using PlasticGui.WorkspaceWindow.Topbar; using Unity.BossRoom.Gameplay.Configuration; using TMPro; using Unity.BossRoom.ConnectionManagement; using Unity.BossRoom.Infrastructure; using Unity.BossRoom.UnityServices.Auth; -using Unity.BossRoom.UnityServices.Lobbies; +using Unity.BossRoom.UnityServices.Sessions; using Unity.Services.Core; using Unity.Services.Multiplayer; using UnityEngine; @@ -13,7 +12,6 @@ namespace Unity.BossRoom.Gameplay.UI { - // Note: MultiplayerSDK refactoring public class LobbyUIMediator : MonoBehaviour { [SerializeField] CanvasGroup m_CanvasGroup; @@ -27,23 +25,23 @@ public class LobbyUIMediator : MonoBehaviour [SerializeField] GameObject m_LoadingSpinner; AuthenticationServiceFacade m_AuthenticationServiceFacade; - LobbyServiceFacade m_LobbyServiceFacade; - LocalLobbyUser m_LocalUser; - LocalLobby m_LocalLobby; + MultiplayerServicesFacade m_MultiplayerServicesFacade; + LocalSessionUser m_LocalUser; + LocalSession m_LocalSession; NameGenerationData m_NameGenerationData; ConnectionManager m_ConnectionManager; ISubscriber m_ConnectStatusSubscriber; - const string k_DefaultLobbyName = "no-name"; + const string k_DefaultSessionName = "no-name"; - ISession _session; + ISession m_Session; [Inject] void InjectDependenciesAndInitialize( AuthenticationServiceFacade authenticationServiceFacade, - LobbyServiceFacade lobbyServiceFacade, - LocalLobbyUser localUser, - LocalLobby localLobby, + MultiplayerServicesFacade multiplayerServicesFacade, + LocalSessionUser localUser, + LocalSession localSession, NameGenerationData nameGenerationData, ISubscriber connectStatusSub, ConnectionManager connectionManager @@ -52,8 +50,8 @@ ConnectionManager connectionManager m_AuthenticationServiceFacade = authenticationServiceFacade; m_NameGenerationData = nameGenerationData; m_LocalUser = localUser; - m_LobbyServiceFacade = lobbyServiceFacade; - m_LocalLobby = localLobby; + m_MultiplayerServicesFacade = multiplayerServicesFacade; + m_LocalSession = localSession; m_ConnectionManager = connectionManager; m_ConnectStatusSubscriber = connectStatusSub; RegenerateName(); @@ -71,25 +69,21 @@ void OnConnectStatus(ConnectStatus status) void OnDestroy() { - if (m_ConnectStatusSubscriber != null) - { - m_ConnectStatusSubscriber.Unsubscribe(OnConnectStatus); - } + m_ConnectStatusSubscriber?.Unsubscribe(OnConnectStatus); } - // Note: MultiplayerSDK refactoring - //Lobby and Relay calls done from UI - public async void CreateLobbyRequest(string lobbyName, bool isPrivate) + // Multiplayer Services SDK calls done from UI + public async void CreateSessionRequest(string sessionName, bool isPrivate) { - // before sending request to lobby service, populate an empty lobby name, if necessary - if (string.IsNullOrEmpty(lobbyName)) + // before sending request, populate an empty session name, if necessary + if (string.IsNullOrEmpty(sessionName)) { - lobbyName = k_DefaultLobbyName; + sessionName = k_DefaultSessionName; } BlockUIWhileLoadingIsInProgress(); - bool playerIsAuthorized = await m_AuthenticationServiceFacade.EnsurePlayerIsAuthorized(); + var playerIsAuthorized = await m_AuthenticationServiceFacade.EnsurePlayerIsAuthorized(); if (!playerIsAuthorized) { @@ -97,30 +91,12 @@ public async void CreateLobbyRequest(string lobbyName, bool isPrivate) return; } - // don't create lobby here just yet, advance state machine instead - /*// create lobby - var lobbyCreationAttempt = await m_LobbyServiceFacade.TryCreateLobbyAsync(lobbyName, m_ConnectionManager.MaxConnectedPlayers, isPrivate);*/ - m_ConnectionManager.StartHostLobby(lobbyName, m_LocalUser.DisplayName); + m_ConnectionManager.StartHostSession(m_LocalUser.DisplayName); UnblockUIAfterLoadingIsComplete(); - return; - - //if loby created, start host - /*if (lobbyCreationAttempt.Success) - { - m_LocalUser.IsHost = true; - m_LobbyServiceFacade.SetRemoteLobby(lobbyCreationAttempt.Lobby); - - Debug.Log($"Created lobby with ID: {m_LocalLobby.LobbyID} and code {m_LocalLobby.LobbyCode}"); - m_ConnectionManager.StartHostLobby(m_LocalUser.DisplayName); - } - else - { - UnblockUIAfterLoadingIsComplete(); - }*/ } - public async void QueryLobbiesRequest(bool blockUI) + public async void QuerySessionRequest(bool blockUI) { if (Unity.Services.Core.UnityServices.State != ServicesInitializationState.Initialized) { @@ -132,7 +108,7 @@ public async void QueryLobbiesRequest(bool blockUI) BlockUIWhileLoadingIsInProgress(); } - bool playerIsAuthorized = await m_AuthenticationServiceFacade.EnsurePlayerIsAuthorized(); + var playerIsAuthorized = await m_AuthenticationServiceFacade.EnsurePlayerIsAuthorized(); if (blockUI && !playerIsAuthorized) { @@ -140,7 +116,7 @@ public async void QueryLobbiesRequest(bool blockUI) return; } - await m_LobbyServiceFacade.RetrieveAndPublishLobbyListAsync(); + await m_MultiplayerServicesFacade.RetrieveAndPublishSessionListAsync(); if (blockUI) { @@ -148,12 +124,11 @@ public async void QueryLobbiesRequest(bool blockUI) } } - // Note: MultiplayerSDK refactoring - public async void JoinLobbyWithCodeRequest(string lobbyCode) + public async void JoinSessionWithCodeRequest(string sessionCode) { BlockUIWhileLoadingIsInProgress(); - bool playerIsAuthorized = await m_AuthenticationServiceFacade.EnsurePlayerIsAuthorized(); + var playerIsAuthorized = await m_AuthenticationServiceFacade.EnsurePlayerIsAuthorized(); if (!playerIsAuthorized) { @@ -161,29 +136,25 @@ public async void JoinLobbyWithCodeRequest(string lobbyCode) return; } - // TODO: need to unblock the UI elsewhere? - - m_ConnectionManager.StartClientLobby(lobbyCode, m_LocalUser.DisplayName); - return; + m_ConnectionManager.StartClientSession(m_LocalUser.DisplayName); - /*var result = await m_LobbyServiceFacade.TryJoinLobbyAsync(null, lobbyCode); + var result = await m_MultiplayerServicesFacade.TryJoinSessionAsync(sessionCode, null); if (result.Success) { - OnJoinedLobby(result.Lobby); + OnJoinedSession(result.Session); } else { UnblockUIAfterLoadingIsComplete(); - }*/ + } } - // Note: MultiplayerSDK refactoring - public async void JoinLobbyRequest(ISessionInfo sessionInfo) + public async void JoinSessionRequest(ISessionInfo sessionInfo) { BlockUIWhileLoadingIsInProgress(); - bool playerIsAuthorized = await m_AuthenticationServiceFacade.EnsurePlayerIsAuthorized(); + var playerIsAuthorized = await m_AuthenticationServiceFacade.EnsurePlayerIsAuthorized(); if (!playerIsAuthorized) { @@ -191,38 +162,39 @@ public async void JoinLobbyRequest(ISessionInfo sessionInfo) return; } - //m_ConnectionManager.StartClientLobby(sessionInfo., m_LocalUser.DisplayName); + m_ConnectionManager.StartClientSession(m_LocalUser.DisplayName); - // for now! - /*var result = await m_LobbyServiceFacade.TryJoinLobbyAsync(lobby.LobbyID, lobby.LobbyCode); + var result = await m_MultiplayerServicesFacade.TryJoinSessionAsync(null, sessionInfo.Id); if (result.Success) { - OnJoinedLobby(result.Lobby); + OnJoinedSession(result.Session); } else { UnblockUIAfterLoadingIsComplete(); - }*/ + } } public async void QuickJoinRequest() { BlockUIWhileLoadingIsInProgress(); - bool playerIsAuthorized = await m_AuthenticationServiceFacade.EnsurePlayerIsAuthorized(); + var playerIsAuthorized = await m_AuthenticationServiceFacade.EnsurePlayerIsAuthorized(); if (!playerIsAuthorized) { UnblockUIAfterLoadingIsComplete(); return; } - - var result = await m_LobbyServiceFacade.TryQuickJoinLobbyAsync(); + + m_ConnectionManager.StartHostSession(m_LocalUser.DisplayName); + + var result = await m_MultiplayerServicesFacade.TryQuickJoinSessionAsync(); if (result.Success) { - OnJoinedLobby(result.Lobby); + OnJoinedSession(result.Session); } else { @@ -230,12 +202,13 @@ public async void QuickJoinRequest() } } - void OnJoinedLobby(Unity.Services.Lobbies.Models.Lobby remoteLobby) + void OnJoinedSession(ISession remoteSession) { - m_LobbyServiceFacade.SetRemoteLobby(remoteLobby); + m_MultiplayerServicesFacade.SetRemoteSession(remoteSession); - Debug.Log($"Joined lobby with code: {m_LocalLobby.LobbyCode}, Internal Relay Join Code{m_LocalLobby.RelayJoinCode}"); - m_ConnectionManager.StartClientLobby(string.Empty, m_LocalUser.DisplayName); + Debug.Log($"Joined session with ID: {m_LocalSession.SessionID}"); + + m_ConnectionManager.StartClientSession(m_LocalUser.DisplayName); } //show/hide UI @@ -288,8 +261,8 @@ void BlockUIWhileLoadingIsInProgress() void UnblockUIAfterLoadingIsComplete() { - //this callback can happen after we've already switched to a different scene - //in that case the canvas group would be null + // this callback can happen after we've already switched to a different scene + // in that case the canvas group would be null if (m_CanvasGroup != null) { m_CanvasGroup.interactable = true; diff --git a/Assets/Scripts/Gameplay/UI/RoomNameBox.cs b/Assets/Scripts/Gameplay/UI/RoomNameBox.cs index 06525f6b3b..0fd0c9a1e3 100644 --- a/Assets/Scripts/Gameplay/UI/RoomNameBox.cs +++ b/Assets/Scripts/Gameplay/UI/RoomNameBox.cs @@ -1,6 +1,6 @@ using System; using TMPro; -using Unity.BossRoom.UnityServices.Lobbies; +using Unity.BossRoom.UnityServices.Sessions; using UnityEngine; using UnityEngine.UI; using VContainer; @@ -14,31 +14,31 @@ public class RoomNameBox : MonoBehaviour [SerializeField] Button m_CopyToClipboardButton; - LocalLobby m_LocalLobby; + LocalSession m_LocalSession; string m_LobbyCode; [Inject] - private void InjectDependencies(LocalLobby localLobby) + private void InjectDependencies(LocalSession localSession) { - m_LocalLobby = localLobby; - m_LocalLobby.changed += UpdateUI; + m_LocalSession = localSession; + m_LocalSession.changed += UpdateUI; } void Awake() { - UpdateUI(m_LocalLobby); + UpdateUI(m_LocalSession); } private void OnDestroy() { - m_LocalLobby.changed -= UpdateUI; + m_LocalSession.changed -= UpdateUI; } - private void UpdateUI(LocalLobby localLobby) + private void UpdateUI(LocalSession localSession) { - if (!string.IsNullOrEmpty(localLobby.LobbyCode)) + if (!string.IsNullOrEmpty(localSession.SessionCode)) { - m_LobbyCode = localLobby.LobbyCode; + m_LobbyCode = localSession.SessionCode; m_RoomNameText.text = $"Lobby Code: {m_LobbyCode}"; gameObject.SetActive(true); m_CopyToClipboardButton.gameObject.SetActive(true); diff --git a/Assets/Scripts/Gameplay/UI/UnityServicesUIHandler.cs b/Assets/Scripts/Gameplay/UI/UnityServicesUIHandler.cs index fba0fc3367..1b20af62ea 100644 --- a/Assets/Scripts/Gameplay/UI/UnityServicesUIHandler.cs +++ b/Assets/Scripts/Gameplay/UI/UnityServicesUIHandler.cs @@ -29,7 +29,7 @@ void ServiceErrorHandler(UnityServiceErrorMessage error) var errorMessage = error.Message; switch (error.AffectedService) { - case UnityServiceErrorMessage.Service.Lobby: + case UnityServiceErrorMessage.Service.Session: { HandleLobbyError(error); break; diff --git a/Assets/Scripts/UnityServices/Infrastructure/Messages/UnityServiceErrorMessage.cs b/Assets/Scripts/UnityServices/Infrastructure/Messages/UnityServiceErrorMessage.cs index f24733baa0..9ce807e7cd 100644 --- a/Assets/Scripts/UnityServices/Infrastructure/Messages/UnityServiceErrorMessage.cs +++ b/Assets/Scripts/UnityServices/Infrastructure/Messages/UnityServiceErrorMessage.cs @@ -7,7 +7,7 @@ public struct UnityServiceErrorMessage public enum Service { Authentication, - Lobby, + Session, } public string Title; diff --git a/Assets/Scripts/UnityServices/Lobbies/LobbyAPIInterface.cs b/Assets/Scripts/UnityServices/Lobbies/LobbyAPIInterface.cs deleted file mode 100644 index fc3e31808f..0000000000 --- a/Assets/Scripts/UnityServices/Lobbies/LobbyAPIInterface.cs +++ /dev/null @@ -1,138 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Threading.Tasks; -using Unity.Services.Lobbies; -using Unity.Services.Lobbies.Models; -using UnityEngine; - -namespace Unity.BossRoom.UnityServices.Lobbies -{ - /// - /// Wrapper for all the interactions with the Lobby API. - /// - public class LobbyAPIInterface - { - const int k_MaxLobbiesToShow = 16; // If more are necessary, consider retrieving paginated results or using filters. - - readonly List m_Filters; - readonly List m_Order; - - public LobbyAPIInterface() - { - // Filter for open lobbies only - m_Filters = new List() - { - new QueryFilter( - field: QueryFilter.FieldOptions.AvailableSlots, - op: QueryFilter.OpOptions.GT, - value: "0") - }; - - // Order by newest lobbies first - m_Order = new List() - { - new QueryOrder( - asc: false, - field: QueryOrder.FieldOptions.Created) - }; - } - - public async Task CreateLobby(string requesterUasId, string lobbyName, int maxPlayers, bool isPrivate, Dictionary hostUserData, Dictionary lobbyData) - { - CreateLobbyOptions createOptions = new CreateLobbyOptions - { - IsPrivate = isPrivate, - IsLocked = true, // locking the lobby at creation to prevent other players from joining before it is ready - Player = new Player(id: requesterUasId, data: hostUserData), - Data = lobbyData - }; - - return await LobbyService.Instance.CreateLobbyAsync(lobbyName, maxPlayers, createOptions); - } - - public async Task DeleteLobby(string lobbyId) - { - await LobbyService.Instance.DeleteLobbyAsync(lobbyId); - } - - public async Task JoinLobbyByCode(string requesterUasId, string lobbyCode, Dictionary localUserData) - { - JoinLobbyByCodeOptions joinOptions = new JoinLobbyByCodeOptions { Player = new Player(id: requesterUasId, data: localUserData) }; - return await LobbyService.Instance.JoinLobbyByCodeAsync(lobbyCode, joinOptions); - } - - public async Task JoinLobbyById(string requesterUasId, string lobbyId, Dictionary localUserData) - { - JoinLobbyByIdOptions joinOptions = new JoinLobbyByIdOptions { Player = new Player(id: requesterUasId, data: localUserData) }; - return await LobbyService.Instance.JoinLobbyByIdAsync(lobbyId, joinOptions); - } - - public async Task QuickJoinLobby(string requesterUasId, Dictionary localUserData) - { - var joinRequest = new QuickJoinLobbyOptions - { - Filter = m_Filters, - Player = new Player(id: requesterUasId, data: localUserData) - }; - - return await LobbyService.Instance.QuickJoinLobbyAsync(joinRequest); - } - - public async Task ReconnectToLobby(string lobbyId) - { - return await LobbyService.Instance.ReconnectToLobbyAsync(lobbyId); - } - - public async Task RemovePlayerFromLobby(string requesterUasId, string lobbyId) - { - try - { - await LobbyService.Instance.RemovePlayerAsync(lobbyId, requesterUasId); - } - catch (LobbyServiceException e) - when (e is { Reason: LobbyExceptionReason.PlayerNotFound }) - { - // If Player is not found, they have already left the lobby or have been kicked out. No need to throw here - } - } - - public async Task QueryAllLobbies() - { - QueryLobbiesOptions queryOptions = new QueryLobbiesOptions - { - Count = k_MaxLobbiesToShow, - Filters = m_Filters, - Order = m_Order - }; - - return await LobbyService.Instance.QueryLobbiesAsync(queryOptions); - } - - public async Task UpdateLobby(string lobbyId, Dictionary data, bool shouldLock) - { - UpdateLobbyOptions updateOptions = new UpdateLobbyOptions { Data = data, IsLocked = shouldLock }; - return await LobbyService.Instance.UpdateLobbyAsync(lobbyId, updateOptions); - } - - public async Task UpdatePlayer(string lobbyId, string playerId, Dictionary data, string allocationId, string connectionInfo) - { - UpdatePlayerOptions updateOptions = new UpdatePlayerOptions - { - Data = data, - AllocationId = allocationId, - ConnectionInfo = connectionInfo - }; - return await LobbyService.Instance.UpdatePlayerAsync(lobbyId, playerId, updateOptions); - } - - public async void SendHeartbeatPing(string lobbyId) - { - await LobbyService.Instance.SendHeartbeatPingAsync(lobbyId); - } - - public async Task SubscribeToLobby(string lobbyId, LobbyEventCallbacks eventCallbacks) - { - return await LobbyService.Instance.SubscribeToLobbyEventsAsync(lobbyId, eventCallbacks); - } - } -} diff --git a/Assets/Scripts/UnityServices/Lobbies/LobbyServiceFacade.cs b/Assets/Scripts/UnityServices/Lobbies/LobbyServiceFacade.cs deleted file mode 100644 index 2423cf338b..0000000000 --- a/Assets/Scripts/UnityServices/Lobbies/LobbyServiceFacade.cs +++ /dev/null @@ -1,577 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Threading.Tasks; -using Unity.BossRoom.Infrastructure; -using Unity.Services.Authentication; -using Unity.Services.Lobbies; -using Unity.Services.Lobbies.Models; -using Unity.Services.Multiplayer; -using Unity.Services.Wire.Internal; -using UnityEngine; -using VContainer; -using VContainer.Unity; - -namespace Unity.BossRoom.UnityServices.Lobbies -{ - // Note: MultiplayerSDK refactoring - /// - /// An abstraction layer between the direct calls into the Lobby API and the outcomes you actually want. - /// - public class LobbyServiceFacade : IDisposable, IStartable - { - [Inject] LifetimeScope m_ParentScope; - [Inject] UpdateRunner m_UpdateRunner; - [Inject] LocalLobby m_LocalLobby; - [Inject] LocalLobbyUser m_LocalUser; - [Inject] IPublisher m_UnityServiceErrorMessagePub; - [Inject] IPublisher m_LobbyListFetchedPub; - - const float k_HeartbeatPeriod = 8; // The heartbeat must be rate-limited to 5 calls per 30 seconds. We'll aim for longer in case periods don't align. - float m_HeartbeatTime = 0; - - LifetimeScope m_ServiceScope; - LobbyAPIInterface m_LobbyApiInterface; - - RateLimitCooldown m_RateLimitQuery; - RateLimitCooldown m_RateLimitJoin; - RateLimitCooldown m_RateLimitQuickJoin; - RateLimitCooldown m_RateLimitHost; - - public Lobby CurrentUnityLobby { get; private set; } - - ILobbyEvents m_LobbyEvents; - - bool m_IsTracking = false; - - LobbyEventConnectionState m_LobbyEventConnectionState = LobbyEventConnectionState.Unknown; - - public ISession CurrentSession; - - public void Start() - { - m_ServiceScope = m_ParentScope.CreateChild(builder => - { - builder.Register(Lifetime.Singleton); - }); - - m_LobbyApiInterface = m_ServiceScope.Container.Resolve(); - - //See https://docs.unity.com/lobby/rate-limits.html - m_RateLimitQuery = new RateLimitCooldown(1f); - m_RateLimitJoin = new RateLimitCooldown(3f); - m_RateLimitQuickJoin = new RateLimitCooldown(10f); - m_RateLimitHost = new RateLimitCooldown(3f); - } - - public void Dispose() - { - EndTracking(); - if (m_ServiceScope != null) - { - m_ServiceScope.Dispose(); - } - } - - public void SetRemoteLobby(Lobby lobby) - { - CurrentUnityLobby = lobby; - m_LocalLobby.ApplyRemoteData(lobby); - } - - /// - /// Initiates tracking of joined lobby's events. The host also starts sending heartbeat pings here. - /// - public void BeginTracking() - { - if (!m_IsTracking) - { - m_IsTracking = true; - SubscribeToJoinedLobbyAsync(); - - // Only the host sends heartbeat pings to the service to keep the lobby alive - if (m_LocalUser.IsHost) - { - m_HeartbeatTime = 0; - m_UpdateRunner.Subscribe(DoLobbyHeartbeat, 1.5f); - } - } - } - - /// - /// Ends tracking of joined lobby's events and leaves or deletes the lobby. The host also stops sending heartbeat pings here. - /// - public void EndTracking() - { - if (m_IsTracking) - { - m_IsTracking = false; - UnsubscribeToJoinedLobbyAsync(); - - // Only the host sends heartbeat pings to the service to keep the lobby alive - if (m_LocalUser.IsHost) - { - m_UpdateRunner.Unsubscribe(DoLobbyHeartbeat); - } - } - - if (CurrentUnityLobby != null) - { - if (m_LocalUser.IsHost) - { - DeleteLobbyAsync(); - } - else - { - LeaveLobbyAsync(); - } - } - } - - // Note: MultiplayerSDK refactoring - /// - /// Attempt to create a new lobby and then join it. - /// - public async Task<(bool Success, ISession Lobby)> TryCreateLobbyAsync(string lobbyName, int maxPlayers, bool isPrivate) - { - if (!m_RateLimitHost.CanCall) - { - Debug.LogWarning("Create Lobby hit the rate limit."); - return (false, null); - } - - try - { - var lobby = /*await m_LobbyApiInterface.CreateLobby(AuthenticationService.Instance.PlayerId, lobbyName, maxPlayers, isPrivate, m_LocalUser.GetDataForUnityServices(), null);*/ - await MultiplayerService.Instance.CreateSessionAsync(new SessionOptions() - { - MaxPlayers = 2, - Name = lobbyName, - IsPrivate = isPrivate, - Password = null,//string.IsNullOrEmpty(Password) ? null : Password, - IsLocked = false, //Todos - }.WithRelayNetwork()); - return (true, lobby); - } - catch (LobbyServiceException e) - { - if (e.Reason == LobbyExceptionReason.RateLimited) - { - m_RateLimitHost.PutOnCooldown(); - } - else - { - PublishError(e); - } - } - - return (false, null); - } - - // Note: MultiplayerSDK refactoring - /// - /// Attempt to join an existing lobby. Will try to join via code, if code is null - will try to join via ID. - /// - public async Task<(bool Success, ISession Lobby)> TryJoinLobbyAsync(string lobbyId/*, string lobbyCode*/) - { - if (!m_RateLimitJoin.CanCall || - (lobbyId == null/* && lobbyCode == null*/)) - { - Debug.LogWarning("Join Lobby hit the rate limit."); - return (false, null); - } - - Debug.Log($"joinning session with lobby code {lobbyId}"); - - try - { - var session = await MultiplayerService.Instance.JoinSessionByCodeAsync(lobbyId, - new JoinSessionOptions() - { - /*Password = string.IsNullOrEmpty(Password) ? null : Password, - PlayerProperties = PlayerData*/ - }); - return (true, session); - /*if (!string.IsNullOrEmpty(lobbyCode)) - { - var lobby = await m_LobbyApiInterface.JoinLobbyByCode(AuthenticationService.Instance.PlayerId, lobbyCode, m_LocalUser.GetDataForUnityServices()); - return (true, lobby); - } - else - { - var lobby = await m_LobbyApiInterface.JoinLobbyById(AuthenticationService.Instance.PlayerId, lobbyId, m_LocalUser.GetDataForUnityServices()); - return (true, lobby); - }*/ - } - catch (LobbyServiceException e) - { - if (e.Reason == LobbyExceptionReason.RateLimited) - { - m_RateLimitJoin.PutOnCooldown(); - } - else - { - PublishError(e); - } - } - - return (false, null); - } - - /// - /// Attempt to join the first lobby among the available lobbies that match the filtered onlineMode. - /// - public async Task<(bool Success, Lobby Lobby)> TryQuickJoinLobbyAsync() - { - if (!m_RateLimitQuickJoin.CanCall) - { - Debug.LogWarning("Quick Join Lobby hit the rate limit."); - return (false, null); - } - - try - { - var lobby = await m_LobbyApiInterface.QuickJoinLobby(AuthenticationService.Instance.PlayerId, m_LocalUser.GetDataForUnityServices()); - return (true, lobby); - } - catch (LobbyServiceException e) - { - if (e.Reason == LobbyExceptionReason.RateLimited) - { - m_RateLimitQuickJoin.PutOnCooldown(); - } - else - { - PublishError(e); - } - } - - return (false, null); - } - - void ResetLobby() - { - CurrentUnityLobby = null; - if (m_LocalUser != null) - { - m_LocalUser.ResetState(); - } - if (m_LocalLobby != null) - { - m_LocalLobby.Reset(m_LocalUser); - } - - // no need to disconnect Netcode, it should already be handled by Netcode's callback to disconnect - } - - void OnLobbyChanges(ILobbyChanges changes) - { - if (changes.LobbyDeleted) - { - Debug.Log("Lobby deleted"); - ResetLobby(); - EndTracking(); - } - else - { - Debug.Log("Lobby updated"); - changes.ApplyToLobby(CurrentUnityLobby); - m_LocalLobby.ApplyRemoteData(CurrentUnityLobby); - - // as client, check if host is still in lobby - if (!m_LocalUser.IsHost) - { - foreach (var lobbyUser in m_LocalLobby.LobbyUsers) - { - if (lobbyUser.Value.IsHost) - { - return; - } - } - - m_UnityServiceErrorMessagePub.Publish(new UnityServiceErrorMessage("Host left the lobby", "Disconnecting.", UnityServiceErrorMessage.Service.Lobby)); - EndTracking(); - // no need to disconnect Netcode, it should already be handled by Netcode's callback to disconnect - } - } - } - - void OnKickedFromLobby() - { - Debug.Log("Kicked from Lobby"); - ResetLobby(); - EndTracking(); - } - - void OnLobbyEventConnectionStateChanged(LobbyEventConnectionState lobbyEventConnectionState) - { - m_LobbyEventConnectionState = lobbyEventConnectionState; - Debug.Log($"LobbyEventConnectionState changed to {lobbyEventConnectionState}"); - } - - async void SubscribeToJoinedLobbyAsync() - { - var lobbyEventCallbacks = new LobbyEventCallbacks(); - lobbyEventCallbacks.LobbyChanged += OnLobbyChanges; - lobbyEventCallbacks.KickedFromLobby += OnKickedFromLobby; - lobbyEventCallbacks.LobbyEventConnectionStateChanged += OnLobbyEventConnectionStateChanged; - // The LobbyEventCallbacks object created here will now be managed by the Lobby SDK. The callbacks will be - // unsubscribed from when we call UnsubscribeAsync on the ILobbyEvents object we receive and store here. - m_LobbyEvents = await m_LobbyApiInterface.SubscribeToLobby(m_LocalLobby.LobbyID, lobbyEventCallbacks); - } - - async void UnsubscribeToJoinedLobbyAsync() - { - if (m_LobbyEvents != null && m_LobbyEventConnectionState != LobbyEventConnectionState.Unsubscribed) - { -#if UNITY_EDITOR - try - { - await m_LobbyEvents.UnsubscribeAsync(); - } - catch (WebSocketException e) - { - // This exception occurs in the editor when exiting play mode without first leaving the lobby. - // This is because Wire closes the websocket internally when exiting playmode in the editor. - Debug.Log(e.Message); - } -#else - await m_LobbyEvents.UnsubscribeAsync(); -#endif - } - } - - // Note: MultiplayerSDK refactoring - /// - /// Used for getting the list of all active lobbies, without needing full info for each. - /// - public async Task RetrieveAndPublishLobbyListAsync() - { - if (!m_RateLimitQuery.CanCall) - { - Debug.LogWarning("Retrieve Lobby list hit the rate limit. Will try again soon..."); - return; - } - - try - { - /*var response = await m_LobbyApiInterface.QueryAllLobbies();*/ - var queryResults = await MultiplayerService.Instance.QuerySessionsAsync(new() - { - }); - m_LobbyListFetchedPub.Publish(new LobbyListFetchedMessage(queryResults.Sessions/*LocalLobby.CreateLocalLobbies(response)*/)); - } - catch (LobbyServiceException e) - { - if (e.Reason == LobbyExceptionReason.RateLimited) - { - m_RateLimitQuery.PutOnCooldown(); - } - else - { - PublishError(e); - } - } - } - - public async Task ReconnectToLobbyAsync() - { - try - { - return await m_LobbyApiInterface.ReconnectToLobby(m_LocalLobby.LobbyID); - } - catch (LobbyServiceException e) - { - // If Lobby is not found and if we are not the host, it has already been deleted. No need to publish the error here. - if (e.Reason != LobbyExceptionReason.LobbyNotFound && !m_LocalUser.IsHost) - { - PublishError(e); - } - } - - return null; - } - - /// - /// Attempt to leave a lobby - /// - async void LeaveLobbyAsync() - { - string uasId = AuthenticationService.Instance.PlayerId; - try - { - await m_LobbyApiInterface.RemovePlayerFromLobby(uasId, m_LocalLobby.LobbyID); - } - catch (LobbyServiceException e) - { - // If Lobby is not found and if we are not the host, it has already been deleted. No need to publish the error here. - if (e.Reason != LobbyExceptionReason.LobbyNotFound && !m_LocalUser.IsHost) - { - PublishError(e); - } - } - finally - { - ResetLobby(); - } - - } - - public async void RemovePlayerFromLobbyAsync(string uasId) - { - if (m_LocalUser.IsHost) - { - try - { - await m_LobbyApiInterface.RemovePlayerFromLobby(uasId, m_LocalLobby.LobbyID); - } - catch (LobbyServiceException e) - { - PublishError(e); - } - } - else - { - Debug.LogError("Only the host can remove other players from the lobby."); - } - } - - async void DeleteLobbyAsync() - { - if (m_LocalUser.IsHost) - { - try - { - await m_LobbyApiInterface.DeleteLobby(m_LocalLobby.LobbyID); - } - catch (LobbyServiceException e) - { - PublishError(e); - } - finally - { - ResetLobby(); - } - } - else - { - Debug.LogError("Only the host can delete a lobby."); - } - } - - /// - /// Attempt to push a set of key-value pairs associated with the local player which will overwrite any existing - /// data for these keys. Lobby can be provided info about Relay (or any other remote allocation) so it can add - /// automatic disconnect handling. - /// - public async Task UpdatePlayerDataAsync(string allocationId, string connectionInfo) - { - if (!m_RateLimitQuery.CanCall) - { - return; - } - - try - { - var result = await m_LobbyApiInterface.UpdatePlayer(CurrentUnityLobby.Id, AuthenticationService.Instance.PlayerId, m_LocalUser.GetDataForUnityServices(), allocationId, connectionInfo); - - if (result != null) - { - CurrentUnityLobby = result; // Store the most up-to-date lobby now since we have it, instead of waiting for the next heartbeat. - } - } - catch (LobbyServiceException e) - { - if (e.Reason == LobbyExceptionReason.RateLimited) - { - m_RateLimitQuery.PutOnCooldown(); - } - else if (e.Reason != LobbyExceptionReason.LobbyNotFound && !m_LocalUser.IsHost) // If Lobby is not found and if we are not the host, it has already been deleted. No need to publish the error here. - { - PublishError(e); - } - } - } - - /// - /// Attempt to update the set of key-value pairs associated with a given lobby and unlocks it so clients can see it. - /// - public async Task UpdateLobbyDataAndUnlockAsync() - { - if (!m_RateLimitQuery.CanCall) - { - return; - } - - var localData = m_LocalLobby.GetDataForUnityServices(); - - var dataCurr = CurrentUnityLobby.Data; - if (dataCurr == null) - { - dataCurr = new Dictionary(); - } - - foreach (var dataNew in localData) - { - if (dataCurr.ContainsKey(dataNew.Key)) - { - dataCurr[dataNew.Key] = dataNew.Value; - } - else - { - dataCurr.Add(dataNew.Key, dataNew.Value); - } - } - - try - { - var result = await m_LobbyApiInterface.UpdateLobby(CurrentUnityLobby.Id, dataCurr, shouldLock: false); - - if (result != null) - { - CurrentUnityLobby = result; - } - } - catch (LobbyServiceException e) - { - if (e.Reason == LobbyExceptionReason.RateLimited) - { - m_RateLimitQuery.PutOnCooldown(); - } - else - { - PublishError(e); - } - } - } - - /// - /// Lobby requires a periodic ping to detect rooms that are still active, in order to mitigate "zombie" lobbies. - /// - void DoLobbyHeartbeat(float dt) - { - m_HeartbeatTime += dt; - if (m_HeartbeatTime > k_HeartbeatPeriod) - { - m_HeartbeatTime -= k_HeartbeatPeriod; - try - { - m_LobbyApiInterface.SendHeartbeatPing(CurrentUnityLobby.Id); - } - catch (LobbyServiceException e) - { - // If Lobby is not found and if we are not the host, it has already been deleted. No need to publish the error here. - if (e.Reason != LobbyExceptionReason.LobbyNotFound && !m_LocalUser.IsHost) - { - PublishError(e); - } - } - } - } - - void PublishError(LobbyServiceException e) - { - var reason = e.InnerException == null ? e.Message : $"{e.Message} ({e.InnerException.Message})"; // Lobby error type, then HTTP error type. - m_UnityServiceErrorMessagePub.Publish(new UnityServiceErrorMessage("Lobby Error", reason, UnityServiceErrorMessage.Service.Lobby, e)); - } - } -} diff --git a/Assets/Scripts/UnityServices/Lobbies/LocalLobby.cs b/Assets/Scripts/UnityServices/Lobbies/LocalLobby.cs deleted file mode 100644 index 2008e6af9a..0000000000 --- a/Assets/Scripts/UnityServices/Lobbies/LocalLobby.cs +++ /dev/null @@ -1,274 +0,0 @@ -using System; -using System.Collections.Generic; -using Unity.Services.Lobbies.Models; -using UnityEngine; - -namespace Unity.BossRoom.UnityServices.Lobbies -{ - /// - /// A local wrapper around a lobby's remote data, with additional functionality for providing that data to UI elements and tracking local player objects. - /// - [Serializable] - public sealed class LocalLobby - { - public event Action changed; - - /// - /// Create a list of new LocalLobbies from the result of a lobby list query. - /// - public static List CreateLocalLobbies(QueryResponse response) - { - var retLst = new List(); - foreach (var lobby in response.Results) - { - retLst.Add(Create(lobby)); - } - return retLst; - } - - public static LocalLobby Create(Lobby lobby) - { - var data = new LocalLobby(); - data.ApplyRemoteData(lobby); - return data; - } - - Dictionary m_LobbyUsers = new Dictionary(); - public Dictionary LobbyUsers => m_LobbyUsers; - - public struct LobbyData - { - public string LobbyID { get; set; } - public string LobbyCode { get; set; } - public string RelayJoinCode { get; set; } - public string LobbyName { get; set; } - public bool Private { get; set; } - public int MaxPlayerCount { get; set; } - - public LobbyData(LobbyData existing) - { - LobbyID = existing.LobbyID; - LobbyCode = existing.LobbyCode; - RelayJoinCode = existing.RelayJoinCode; - LobbyName = existing.LobbyName; - Private = existing.Private; - MaxPlayerCount = existing.MaxPlayerCount; - } - - public LobbyData(string lobbyCode) - { - LobbyID = null; - LobbyCode = lobbyCode; - RelayJoinCode = null; - LobbyName = null; - Private = false; - MaxPlayerCount = -1; - } - } - - LobbyData m_Data; - public LobbyData Data => new LobbyData(m_Data); - - public void AddUser(LocalLobbyUser user) - { - if (!m_LobbyUsers.ContainsKey(user.ID)) - { - DoAddUser(user); - OnChanged(); - } - } - - void DoAddUser(LocalLobbyUser user) - { - m_LobbyUsers.Add(user.ID, user); - user.changed += OnChangedUser; - } - - public void RemoveUser(LocalLobbyUser user) - { - DoRemoveUser(user); - OnChanged(); - } - - void DoRemoveUser(LocalLobbyUser user) - { - if (!m_LobbyUsers.ContainsKey(user.ID)) - { - Debug.LogWarning($"Player {user.DisplayName}({user.ID}) does not exist in lobby: {LobbyID}"); - return; - } - - m_LobbyUsers.Remove(user.ID); - user.changed -= OnChangedUser; - } - - void OnChangedUser(LocalLobbyUser user) - { - OnChanged(); - } - - void OnChanged() - { - changed?.Invoke(this); - } - - public string LobbyID - { - get => m_Data.LobbyID; - set - { - m_Data.LobbyID = value; - OnChanged(); - } - } - - public string LobbyCode - { - get => m_Data.LobbyCode; - set - { - m_Data.LobbyCode = value; - OnChanged(); - } - } - - public string RelayJoinCode - { - get => m_Data.RelayJoinCode; - set - { - m_Data.RelayJoinCode = value; - OnChanged(); - } - } - - public string LobbyName - { - get => m_Data.LobbyName; - set - { - m_Data.LobbyName = value; - OnChanged(); - } - } - - public bool Private - { - get => m_Data.Private; - set - { - m_Data.Private = value; - OnChanged(); - } - } - - public int PlayerCount => m_LobbyUsers.Count; - - public int MaxPlayerCount - { - get => m_Data.MaxPlayerCount; - set - { - m_Data.MaxPlayerCount = value; - OnChanged(); - } - } - - public void CopyDataFrom(LobbyData data, Dictionary currUsers) - { - m_Data = data; - - if (currUsers == null) - { - m_LobbyUsers = new Dictionary(); - } - else - { - List toRemove = new List(); - foreach (var oldUser in m_LobbyUsers) - { - if (currUsers.ContainsKey(oldUser.Key)) - { - oldUser.Value.CopyDataFrom(currUsers[oldUser.Key]); - } - else - { - toRemove.Add(oldUser.Value); - } - } - - foreach (var remove in toRemove) - { - DoRemoveUser(remove); - } - - foreach (var currUser in currUsers) - { - if (!m_LobbyUsers.ContainsKey(currUser.Key)) - { - DoAddUser(currUser.Value); - } - } - } - - OnChanged(); - } - - public Dictionary GetDataForUnityServices() => - new Dictionary() - { - {"RelayJoinCode", new DataObject(DataObject.VisibilityOptions.Public, RelayJoinCode)} - }; - - public void ApplyRemoteData(Lobby lobby) - { - var info = new LobbyData(); // Technically, this is largely redundant after the first assignment, but it won't do any harm to assign it again. - info.LobbyID = lobby.Id; - info.LobbyCode = lobby.LobbyCode; - info.Private = lobby.IsPrivate; - info.LobbyName = lobby.Name; - info.MaxPlayerCount = lobby.MaxPlayers; - - if (lobby.Data != null) - { - info.RelayJoinCode = lobby.Data.ContainsKey("RelayJoinCode") ? lobby.Data["RelayJoinCode"].Value : null; // By providing RelayCode through the lobby data with Member visibility, we ensure a client is connected to the lobby before they could attempt a relay connection, preventing timing issues between them. - } - else - { - info.RelayJoinCode = null; - } - - var lobbyUsers = new Dictionary(); - foreach (var player in lobby.Players) - { - if (player.Data != null) - { - if (LobbyUsers.ContainsKey(player.Id)) - { - lobbyUsers.Add(player.Id, LobbyUsers[player.Id]); - continue; - } - } - - // If the player isn't connected to Relay, get the most recent data that the lobby knows. - // (If we haven't seen this player yet, a new local representation of the player will have already been added by the LocalLobby.) - var incomingData = new LocalLobbyUser - { - IsHost = lobby.HostId.Equals(player.Id), - DisplayName = player.Data != null && player.Data.ContainsKey("DisplayName") ? player.Data["DisplayName"].Value : default, - ID = player.Id - }; - - lobbyUsers.Add(incomingData.ID, incomingData); - } - - CopyDataFrom(info, lobbyUsers); - } - - public void Reset(LocalLobbyUser localUser) - { - CopyDataFrom(new LobbyData(), new Dictionary()); - AddUser(localUser); - } - } -} diff --git a/Assets/Scripts/UnityServices/Lobbies/Messages/LobbyListFetchedMessage.cs b/Assets/Scripts/UnityServices/Lobbies/Messages/LobbyListFetchedMessage.cs deleted file mode 100644 index 15e58aacff..0000000000 --- a/Assets/Scripts/UnityServices/Lobbies/Messages/LobbyListFetchedMessage.cs +++ /dev/null @@ -1,16 +0,0 @@ -using System.Collections.Generic; -using Unity.Services.Multiplayer; - -namespace Unity.BossRoom.UnityServices.Lobbies -{ - // Note: MultiplayerSDK refactoring - public struct LobbyListFetchedMessage - { - public readonly IList LocalLobbies; - - public LobbyListFetchedMessage(IList localLobbies) - { - LocalLobbies = localLobbies; - } - } -} diff --git a/Assets/Scripts/UnityServices/Lobbies.meta b/Assets/Scripts/UnityServices/Sessions.meta similarity index 100% rename from Assets/Scripts/UnityServices/Lobbies.meta rename to Assets/Scripts/UnityServices/Sessions.meta diff --git a/Assets/Scripts/UnityServices/Sessions/LocalSession.cs b/Assets/Scripts/UnityServices/Sessions/LocalSession.cs new file mode 100644 index 0000000000..91cf33bb8e --- /dev/null +++ b/Assets/Scripts/UnityServices/Sessions/LocalSession.cs @@ -0,0 +1,255 @@ +using System; +using System.Collections.Generic; +using Unity.Services.Multiplayer; +using UnityEngine; + +namespace Unity.BossRoom.UnityServices.Sessions +{ + /// + /// A local wrapper around a session's remote data, with additional functionality for providing that data to UI elements and tracking local player objects. + /// + [Serializable] + public sealed class LocalSession + { + Dictionary m_SessionUsers = new(); + public Dictionary sessionUsers => m_SessionUsers; + + SessionData m_Data; + public SessionData Data => new(m_Data); + + public event Action changed; + + public string SessionID + { + get => m_Data.SessionID; + set + { + m_Data.SessionID = value; + OnChanged(); + } + } + + public string SessionCode + { + get => m_Data.SessionCode; + set + { + m_Data.SessionCode = value; + OnChanged(); + } + } + + public string RelayJoinCode + { + get => m_Data.RelayJoinCode; + set + { + m_Data.RelayJoinCode = value; + OnChanged(); + } + } + + public string SessionName + { + get => m_Data.SessionName; + set + { + m_Data.SessionName = value; + OnChanged(); + } + } + + public bool Private + { + get => m_Data.Private; + set + { + m_Data.Private = value; + OnChanged(); + } + } + + public int PlayerCount => m_SessionUsers.Count; + + public int MaxPlayerCount + { + get => m_Data.MaxPlayerCount; + set + { + m_Data.MaxPlayerCount = value; + OnChanged(); + } + } + + public struct SessionData + { + public string SessionID { get; set; } + public string SessionCode { get; set; } + public string RelayJoinCode { get; set; } + public string SessionName { get; set; } + public bool Private { get; set; } + public int MaxPlayerCount { get; set; } + + public SessionData(SessionData existing) + { + SessionID = existing.SessionID; + SessionCode = existing.SessionCode; + RelayJoinCode = existing.RelayJoinCode; + SessionName = existing.SessionName; + Private = existing.Private; + MaxPlayerCount = existing.MaxPlayerCount; + } + + public SessionData(string sessionCode) + { + SessionID = null; + SessionCode = sessionCode; + RelayJoinCode = null; + SessionName = null; + Private = false; + MaxPlayerCount = -1; + } + } + + public void AddUser(LocalSessionUser user) + { + if (!m_SessionUsers.ContainsKey(user.ID)) + { + DoAddUser(user); + OnChanged(); + } + } + + void DoAddUser(LocalSessionUser user) + { + m_SessionUsers.Add(user.ID, user); + user.changed += OnChangedUser; + } + + public void RemoveUser(LocalSessionUser user) + { + DoRemoveUser(user); + OnChanged(); + } + + void DoRemoveUser(LocalSessionUser user) + { + if (!m_SessionUsers.ContainsKey(user.ID)) + { + Debug.LogWarning($"Player {user.DisplayName}({user.ID}) does not exist in session: {SessionID}"); + return; + } + + m_SessionUsers.Remove(user.ID); + user.changed -= OnChangedUser; + } + + void OnChangedUser(LocalSessionUser user) + { + OnChanged(); + } + + void OnChanged() + { + changed?.Invoke(this); + } + + public void CopyDataFrom(SessionData data, Dictionary currUsers) + { + m_Data = data; + + if (currUsers == null) + { + m_SessionUsers = new Dictionary(); + } + else + { + List toRemove = new List(); + foreach (var oldUser in m_SessionUsers) + { + if (currUsers.ContainsKey(oldUser.Key)) + { + oldUser.Value.CopyDataFrom(currUsers[oldUser.Key]); + } + else + { + toRemove.Add(oldUser.Value); + } + } + + foreach (var remove in toRemove) + { + DoRemoveUser(remove); + } + + foreach (var currUser in currUsers) + { + if (!m_SessionUsers.ContainsKey(currUser.Key)) + { + DoAddUser(currUser.Value); + } + } + } + + OnChanged(); + } + + public Dictionary GetDataForUnityServices() => + new() + { + { "RelayJoinCode", new SessionProperty(RelayJoinCode) } + }; + + public void ApplyRemoteData(ISession session) + { + var info = new SessionData(); // Technically, this is largely redundant after the first assignment, but it won't do any harm to assign it again. + info.SessionID = session.Id; + info.SessionName = session.Name; + info.MaxPlayerCount = session.MaxPlayers; + + // TODO: PROPERTIES NOT PART OF ISESSION INFO, ONLY OF ISESSION! + info.SessionCode = session.Code; + info.Private = session.IsPrivate; + if (session.Properties != null) + { + info.RelayJoinCode = session.Properties.TryGetValue("RelayJoinCode", out var property) ? property.Value : null; // By providing RelayCode through the session properties with Member visibility, we ensure a client is connected to the session before they could attempt a relay connection, preventing timing issues between them. + } + else + { + info.RelayJoinCode = null; + } + + var localSessionUsers = new Dictionary(); + foreach (var player in session.Players) + { + if (player.Properties != null) + { + if (localSessionUsers.ContainsKey(player.Id)) + { + localSessionUsers.Add(player.Id, localSessionUsers[player.Id]); + continue; + } + } + + // If the player isn't connected to Relay, get the most recent data that the session knows. + // (If we haven't seen this player yet, a new local representation of the player will have already been added by the LocalSession.) + var incomingData = new LocalSessionUser + { + IsHost = session.Host.Equals(player.Id), + DisplayName = player.Properties != null && player.Properties.TryGetValue("DisplayName", out var property) ? property.Value : default, + ID = player.Id + }; + + localSessionUsers.Add(incomingData.ID, incomingData); + } + + CopyDataFrom(info, localSessionUsers); + } + + public void Reset(LocalSessionUser localUser) + { + CopyDataFrom(new SessionData(), new Dictionary()); + AddUser(localUser); + } + } +} diff --git a/Assets/Scripts/UnityServices/Lobbies/LocalLobby.cs.meta b/Assets/Scripts/UnityServices/Sessions/LocalSession.cs.meta similarity index 100% rename from Assets/Scripts/UnityServices/Lobbies/LocalLobby.cs.meta rename to Assets/Scripts/UnityServices/Sessions/LocalSession.cs.meta diff --git a/Assets/Scripts/UnityServices/Lobbies/LocalLobbyUser.cs b/Assets/Scripts/UnityServices/Sessions/LocalSessionUser.cs similarity index 74% rename from Assets/Scripts/UnityServices/Lobbies/LocalLobbyUser.cs rename to Assets/Scripts/UnityServices/Sessions/LocalSessionUser.cs index ec36764432..70a565a859 100644 --- a/Assets/Scripts/UnityServices/Lobbies/LocalLobbyUser.cs +++ b/Assets/Scripts/UnityServices/Sessions/LocalSessionUser.cs @@ -1,127 +1,127 @@ -using System; -using System.Collections.Generic; -using Unity.Services.Lobbies.Models; - -namespace Unity.BossRoom.UnityServices.Lobbies -{ - /// - /// Data for a local lobby user instance. This will update data and is observed to know when to push local user changes to the entire lobby. - /// - [Serializable] - public class LocalLobbyUser - { - public event Action changed; - - public LocalLobbyUser() - { - m_UserData = new UserData(isHost: false, displayName: null, id: null); - } - - public struct UserData - { - public bool IsHost { get; set; } - public string DisplayName { get; set; } - public string ID { get; set; } - - public UserData(bool isHost, string displayName, string id) - { - IsHost = isHost; - DisplayName = displayName; - ID = id; - } - } - - UserData m_UserData; - - public void ResetState() - { - m_UserData = new UserData(false, m_UserData.DisplayName, m_UserData.ID); - } - - /// - /// Used for limiting costly OnChanged actions to just the members which actually changed. - /// - [Flags] - public enum UserMembers - { - IsHost = 1, - DisplayName = 2, - ID = 4, - } - - UserMembers m_LastChanged; - - public bool IsHost - { - get { return m_UserData.IsHost; } - set - { - if (m_UserData.IsHost != value) - { - m_UserData.IsHost = value; - m_LastChanged = UserMembers.IsHost; - OnChanged(); - } - } - } - - public string DisplayName - { - get => m_UserData.DisplayName; - set - { - if (m_UserData.DisplayName != value) - { - m_UserData.DisplayName = value; - m_LastChanged = UserMembers.DisplayName; - OnChanged(); - } - } - } - - public string ID - { - get => m_UserData.ID; - set - { - if (m_UserData.ID != value) - { - m_UserData.ID = value; - m_LastChanged = UserMembers.ID; - OnChanged(); - } - } - } - - - public void CopyDataFrom(LocalLobbyUser lobby) - { - var data = lobby.m_UserData; - int lastChanged = // Set flags just for the members that will be changed. - (m_UserData.IsHost == data.IsHost ? 0 : (int)UserMembers.IsHost) | - (m_UserData.DisplayName == data.DisplayName ? 0 : (int)UserMembers.DisplayName) | - (m_UserData.ID == data.ID ? 0 : (int)UserMembers.ID); - - if (lastChanged == 0) // Ensure something actually changed. - { - return; - } - - m_UserData = data; - m_LastChanged = (UserMembers)lastChanged; - - OnChanged(); - } - - void OnChanged() - { - changed?.Invoke(this); - } - - public Dictionary GetDataForUnityServices() => - new Dictionary() - { - {"DisplayName", new PlayerDataObject(PlayerDataObject.VisibilityOptions.Member, DisplayName)}, - }; - } -} +using System; +using System.Collections.Generic; +using Unity.Services.Multiplayer; + +namespace Unity.BossRoom.UnityServices.Sessions +{ + /// + /// Data for a local session user instance. This will update data and is observed to know when to push local user changes to the entire session. + /// + [Serializable] + public class LocalSessionUser + { + UserData m_UserData; + + public event Action changed; + + public LocalSessionUser() + { + m_UserData = new UserData(isHost: false, displayName: null, id: null); + } + + public struct UserData + { + public bool IsHost { get; set; } + public string DisplayName { get; set; } + public string ID { get; set; } + + public UserData(bool isHost, string displayName, string id) + { + IsHost = isHost; + DisplayName = displayName; + ID = id; + } + } + + public void ResetState() + { + m_UserData = new UserData(false, m_UserData.DisplayName, m_UserData.ID); + } + + /// + /// Used for limiting costly OnChanged actions to just the members which actually changed. + /// + [Flags] + public enum UserMembers + { + IsHost = 1, + DisplayName = 2, + ID = 4, + } + + UserMembers m_LastChanged; + + public bool IsHost + { + get => m_UserData.IsHost; + set + { + if (m_UserData.IsHost != value) + { + m_UserData.IsHost = value; + m_LastChanged = UserMembers.IsHost; + OnChanged(); + } + } + } + + public string DisplayName + { + get => m_UserData.DisplayName; + set + { + if (m_UserData.DisplayName != value) + { + m_UserData.DisplayName = value; + m_LastChanged = UserMembers.DisplayName; + OnChanged(); + } + } + } + + public string ID + { + get => m_UserData.ID; + set + { + if (m_UserData.ID != value) + { + m_UserData.ID = value; + m_LastChanged = UserMembers.ID; + OnChanged(); + } + } + } + + + public void CopyDataFrom(LocalSessionUser session) + { + var data = session.m_UserData; + var lastChanged = // Set flags just for the members that will be changed. + (m_UserData.IsHost == data.IsHost ? 0 : (int)UserMembers.IsHost) | + (m_UserData.DisplayName == data.DisplayName ? 0 : (int)UserMembers.DisplayName) | + (m_UserData.ID == data.ID ? 0 : (int)UserMembers.ID); + + if (lastChanged == 0) // Ensure something actually changed. + { + return; + } + + m_UserData = data; + m_LastChanged = (UserMembers)lastChanged; + + OnChanged(); + } + + void OnChanged() + { + changed?.Invoke(this); + } + + public Dictionary GetDataForUnityServices() => + new() + { + { "DisplayName", new PlayerProperty(DisplayName, VisibilityPropertyOptions.Member) }, + }; + } +} diff --git a/Assets/Scripts/UnityServices/Lobbies/LocalLobbyUser.cs.meta b/Assets/Scripts/UnityServices/Sessions/LocalSessionUser.cs.meta similarity index 100% rename from Assets/Scripts/UnityServices/Lobbies/LocalLobbyUser.cs.meta rename to Assets/Scripts/UnityServices/Sessions/LocalSessionUser.cs.meta diff --git a/Assets/Scripts/UnityServices/Lobbies/Messages.meta b/Assets/Scripts/UnityServices/Sessions/Messages.meta similarity index 100% rename from Assets/Scripts/UnityServices/Lobbies/Messages.meta rename to Assets/Scripts/UnityServices/Sessions/Messages.meta diff --git a/Assets/Scripts/UnityServices/Sessions/Messages/SessionListFetchedMessage.cs b/Assets/Scripts/UnityServices/Sessions/Messages/SessionListFetchedMessage.cs new file mode 100644 index 0000000000..753eb31fde --- /dev/null +++ b/Assets/Scripts/UnityServices/Sessions/Messages/SessionListFetchedMessage.cs @@ -0,0 +1,15 @@ +using System.Collections.Generic; +using Unity.Services.Multiplayer; + +namespace Unity.BossRoom.UnityServices.Sessions +{ + public struct SessionListFetchedMessage + { + public readonly IList LocalSessions; + + public SessionListFetchedMessage(IList localSessions) + { + LocalSessions = localSessions; + } + } +} diff --git a/Assets/Scripts/UnityServices/Lobbies/Messages/LobbyListFetchedMessage.cs.meta b/Assets/Scripts/UnityServices/Sessions/Messages/SessionListFetchedMessage.cs.meta similarity index 100% rename from Assets/Scripts/UnityServices/Lobbies/Messages/LobbyListFetchedMessage.cs.meta rename to Assets/Scripts/UnityServices/Sessions/Messages/SessionListFetchedMessage.cs.meta diff --git a/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs b/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs new file mode 100644 index 0000000000..d9f289a676 --- /dev/null +++ b/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs @@ -0,0 +1,460 @@ +using System; +using System.Collections.Generic; +using System.Threading.Tasks; +using Unity.BossRoom.Infrastructure; +using Unity.Services.Authentication; +using Unity.Services.Multiplayer; +using UnityEngine; +using VContainer; +using VContainer.Unity; + +namespace Unity.BossRoom.UnityServices.Sessions +{ + /// + /// An abstraction layer between the direct calls into the Multiplayer Services SDK and the outcomes you actually want. + /// + public class MultiplayerServicesFacade : IDisposable, IStartable + { + [Inject] LifetimeScope m_ParentScope; + [Inject] UpdateRunner m_UpdateRunner; + [Inject] LocalSession m_LocalSession; + [Inject] LocalSessionUser m_LocalUser; + [Inject] IPublisher m_UnityServiceErrorMessagePub; + [Inject] IPublisher m_SessionListFetchedPub; + + LifetimeScope m_ServiceScope; + MultiplayerServicesInterface m_MultiplayerServicesInterface; + + RateLimitCooldown m_RateLimitQuery; + RateLimitCooldown m_RateLimitJoin; + RateLimitCooldown m_RateLimitQuickJoin; + RateLimitCooldown m_RateLimitHost; + + public ISession CurrentUnitySession { get; private set; } + + bool m_IsTracking; + + SessionEventConnectionState m_SessionEventConnectionState = SessionEventConnectionState.Unknown; + + public void Start() + { + m_ServiceScope = m_ParentScope.CreateChild(builder => + { + builder.Register(Lifetime.Singleton); + }); + + m_MultiplayerServicesInterface = m_ServiceScope.Container.Resolve(); + + //See https://docs.unity.com/lobby/rate-limits.html + m_RateLimitQuery = new RateLimitCooldown(1f); + m_RateLimitJoin = new RateLimitCooldown(3f); + m_RateLimitQuickJoin = new RateLimitCooldown(10f); + m_RateLimitHost = new RateLimitCooldown(3f); + } + + public void Dispose() + { + EndTracking(); + if (m_ServiceScope != null) + { + m_ServiceScope.Dispose(); + } + } + + public void SetRemoteSession(ISession session) + { + CurrentUnitySession = session; + m_LocalSession.ApplyRemoteData(session); + } + + /// + /// Initiates tracking of joined session's events. The host also starts sending heartbeat pings here. + /// + public void BeginTracking() + { + if (!m_IsTracking) + { + m_IsTracking = true; + SubscribeToJoinedSessionAsync(); + } + } + + /// + /// Ends tracking of joined session's events and leaves or deletes the session. The host also stops sending heartbeat pings here. + /// + public void EndTracking() + { + if (m_IsTracking) + { + m_IsTracking = false; + UnsubscribeFromJoinedSessionAsync(); + } + + if (CurrentUnitySession != null) + { + if (m_LocalUser.IsHost) + { + DeleteSessionAsync(); + } + else + { + LeaveSessionAsync(); + } + } + } + + /// + /// Attempt to create a new session and then join it. + /// + public async Task<(bool Success, ISession Session)> TryCreateSessionAsync(string sessionName, int maxPlayers, bool isPrivate) + { + if (!m_RateLimitHost.CanCall) + { + Debug.LogWarning("Create Session hit the rate limit."); + return (false, null); + } + + try + { + var session = await m_MultiplayerServicesInterface.CreateSession(AuthenticationService.Instance.PlayerId, + sessionName, + maxPlayers, + isPrivate, + m_LocalUser.GetDataForUnityServices(), + null); + return (true, session); + } + catch (SessionException e) + { + PublishError(e); + } + + return (false, null); + } + + /// + /// Attempt to join an existing session. Will try to join via code, if code is null - will try to join via ID. + /// + public async Task<(bool Success, ISession Session)> TryJoinSessionAsync(string sessionCode, string sessionId) + { + if (!m_RateLimitJoin.CanCall) + { + Debug.LogWarning("Join Session hit the rate limit."); + return (false, null); + } + + if (sessionId == null && sessionCode == null) + { + Debug.LogWarning("Cannot join a Session without a join code or session ID."); + return (false, null); + } + + Debug.Log($"Joining session with session code {sessionCode}"); + + try + { + if (!string.IsNullOrEmpty(sessionCode)) + { + var session = await m_MultiplayerServicesInterface.JoinSessionByCode(sessionCode, m_LocalUser.GetDataForUnityServices()); + return (true, session); + } + else + { + var session = await m_MultiplayerServicesInterface.JoinSessionById(sessionId, m_LocalUser.GetDataForUnityServices()); + return (true, session); + } + } + catch (SessionException e) + { + PublishError(e); + } + + return (false, null); + } + + /// + /// Attempt to join the first session among the available sessions that match the filtered onlineMode. + /// + public async Task<(bool Success, ISession Session)> TryQuickJoinSessionAsync() + { + if (!m_RateLimitQuickJoin.CanCall) + { + Debug.LogWarning("Quick Join Session hit the rate limit."); + return (false, null); + } + + try + { + var session = await m_MultiplayerServicesInterface.QuickJoinSession(m_LocalUser.GetDataForUnityServices()); + return (true, session); + } + catch (SessionException e) + { + PublishError(e); + } + + return (false, null); + } + + void ResetSession() + { + CurrentUnitySession = null; + m_LocalUser?.ResetState(); + m_LocalSession?.Reset(m_LocalUser); + // no need to disconnect Netcode, it should already be handled by Netcode's callback to disconnect + } + + void SubscribeToJoinedSessionAsync() + { + CurrentUnitySession.Changed += OnSessionChanged; + CurrentUnitySession.StateChanged += OnSessionStateChanged; + CurrentUnitySession.Deleted += OnSessionDeleted; + CurrentUnitySession.PlayerJoined += OnPlayerJoined; + CurrentUnitySession.PlayerLeft += OnPlayerLeft; + CurrentUnitySession.RemovedFromSession += OnRemovedFromSession; + CurrentUnitySession.PlayerPropertiesChanged += OnPlayerPropertiesChanged; + CurrentUnitySession.SessionPropertiesChanged += OnSessionPropertiesChanged; + } + + void UnsubscribeFromJoinedSessionAsync() + { + CurrentUnitySession.Changed -= OnSessionChanged; + CurrentUnitySession.StateChanged -= OnSessionStateChanged; + CurrentUnitySession.Deleted -= OnSessionDeleted; + CurrentUnitySession.PlayerJoined -= OnPlayerJoined; + CurrentUnitySession.PlayerLeft -= OnPlayerLeft; + CurrentUnitySession.RemovedFromSession -= OnRemovedFromSession; + CurrentUnitySession.PlayerPropertiesChanged -= OnPlayerPropertiesChanged; + CurrentUnitySession.SessionPropertiesChanged -= OnSessionPropertiesChanged; + } + + void OnSessionChanged() + { + Debug.Log("Session changed."); + m_LocalSession.ApplyRemoteData(CurrentUnitySession); + + // as client, check if host is still in lobby + if (!m_LocalUser.IsHost) + { + foreach (var lobbyUser in m_LocalSession.sessionUsers) + { + if (lobbyUser.Value.IsHost) + { + return; + } + } + + m_UnityServiceErrorMessagePub.Publish(new UnityServiceErrorMessage("Host left the session", "Disconnecting.", UnityServiceErrorMessage.Service.Session)); + EndTracking(); + // no need to disconnect Netcode, it should already be handled by Netcode's callback to disconnect + } + } + + void OnSessionStateChanged(SessionState sessionState) + { + switch (sessionState) + { + case SessionState.None: + break; + case SessionState.Connected: + Debug.Log("Session state changed: Session connected."); + break; + case SessionState.Disconnected: + Debug.Log("Session state changed: Session disconnected."); + break; + case SessionState.Deleted: + Debug.Log("Session state changed: Session deleted."); + break; + default: + throw new ArgumentOutOfRangeException(nameof(sessionState), sessionState, null); + } + } + + void OnSessionDeleted() + { + Debug.Log("Session deleted."); + ResetSession(); + EndTracking(); + } + + void OnPlayerJoined(string playerId) + { + Debug.Log($"Player joined: {playerId}"); + } + + void OnPlayerLeft(string playerId) + { + Debug.Log($"Player left: {playerId}"); + } + + void OnRemovedFromSession() + { + Debug.Log("Removed from Session."); + ResetSession(); + EndTracking(); + } + + void OnPlayerPropertiesChanged() + { + Debug.Log("Player properties changed."); + } + + void OnSessionPropertiesChanged() + { + Debug.Log("Session properties changed."); + } + + /// + /// Used for getting the list of all active sessions, without needing full info for each. + /// + public async Task RetrieveAndPublishSessionListAsync() + { + if (!m_RateLimitQuery.CanCall) + { + Debug.LogWarning("Retrieving the session list hit the rate limit. Will try again soon..."); + return; + } + + try + { + var queryResults = await m_MultiplayerServicesInterface.QuerySessions(); + m_SessionListFetchedPub.Publish(new SessionListFetchedMessage(queryResults.Sessions)); + } + catch (SessionException e) + { + PublishError(e); + } + } + + public async Task ReconnectToSessionAsync() + { + try + { + return await m_MultiplayerServicesInterface.ReconnectToSession(m_LocalSession.SessionID); + } + catch (SessionException e) + { + // If session is not found and if we are not the host, it has already been deleted. No need to publish the error here. + if (e.Error != SessionError.SessionNotFound && !m_LocalUser.IsHost) + { + PublishError(e); + } + } + + return null; + } + + /// + /// Attempt to leave a session + /// + async void LeaveSessionAsync() + { + try + { + await CurrentUnitySession.LeaveAsync(); + } + catch (SessionException e) + { + // If session is not found and if we are not the host, it has already been deleted. No need to publish the error here. + if (e.Error != SessionError.SessionNotFound && !m_LocalUser.IsHost) + { + PublishError(e); + } + } + finally + { + ResetSession(); + } + + } + + public async void RemovePlayerFromSessionAsync(string uasId) + { + if (m_LocalUser.IsHost) + { + try + { + await CurrentUnitySession.AsHost().RemovePlayerAsync(uasId); + } + catch (SessionException e) + { + PublishError(e); + } + } + else + { + Debug.LogError("Only the host can remove other players from the session."); + } + } + + async void DeleteSessionAsync() + { + if (m_LocalUser.IsHost) + { + try + { + await CurrentUnitySession.AsHost().DeleteAsync(); + } + catch (SessionException e) + { + PublishError(e); + } + finally + { + ResetSession(); + } + } + else + { + Debug.LogError("Only the host can delete a session."); + } + } + + /// + /// Attempt to update the set of key-value pairs associated with a given session and unlocks it so clients can see it. + /// + public async Task UpdateSessionPropertiesAndUnlockAsync() + { + if (!m_LocalUser.IsHost) + { + return; + } + + if (!m_RateLimitQuery.CanCall) + { + return; + } + + var localData = m_LocalSession.GetDataForUnityServices(); + + var dataCurr = (Dictionary)CurrentUnitySession.Properties ?? new Dictionary(); + + foreach (var dataNew in localData) + { + dataCurr[dataNew.Key] = dataNew.Value; + } + + try + { + CurrentUnitySession.AsHost().SetProperties(dataCurr); + await CurrentUnitySession.AsHost().SavePropertiesAsync(); + } + catch (SessionException e) + { + PublishError(e); + } + } + + void PublishError(SessionException e) + { + if (e.Error == SessionError.RateLimitExceeded) + { + m_RateLimitJoin.PutOnCooldown(); + return; + } + + var reason = e.InnerException == null ? e.Message : $"{e.Message} ({e.InnerException.Message})"; // Session error type, then HTTP error type. + m_UnityServiceErrorMessagePub.Publish(new UnityServiceErrorMessage("Session Error", reason, UnityServiceErrorMessage.Service.Session, e)); + } + } +} diff --git a/Assets/Scripts/UnityServices/Lobbies/LobbyServiceFacade.cs.meta b/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs.meta similarity index 100% rename from Assets/Scripts/UnityServices/Lobbies/LobbyServiceFacade.cs.meta rename to Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs.meta diff --git a/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesInterface.cs b/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesInterface.cs new file mode 100644 index 0000000000..e7540eafdc --- /dev/null +++ b/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesInterface.cs @@ -0,0 +1,106 @@ +using System; +using System.Collections.Generic; +using System.Threading.Tasks; +using Unity.Services.Multiplayer; +using UnityEngine; + +namespace Unity.BossRoom.UnityServices.Sessions +{ + /// + /// Wrapper for all the interactions with the Sessions API. + /// + public class MultiplayerServicesInterface + { + const int k_MaxSessionsToShow = 16; // If more are necessary, consider retrieving paginated results or using filters. + const int k_MaxPlayers = 8; + + readonly List m_FilterOptions; + readonly List m_SortOptions; + + public MultiplayerServicesInterface() + { + // Filter for open sessions only + m_FilterOptions = new List + { + new(FilterField.AvailableSlots, "0", FilterOperation.Greater) + }; + + // Order by newest sessions first + m_SortOptions = new List + { + new(SortOrder.Descending, SortField.CreationTime) + }; + } + + public async Task CreateSession(string requesterUasId, string sessionName, int maxPlayers, bool isPrivate, Dictionary playerProperties, Dictionary sessionProperties) + { + var sessionOptions = new SessionOptions + { + Name = sessionName, + MaxPlayers = maxPlayers, + IsPrivate = isPrivate, + IsLocked = true, + PlayerProperties = playerProperties, + SessionProperties = sessionProperties + }.WithRelayNetwork(); + + return await MultiplayerService.Instance.CreateSessionAsync(sessionOptions); + } + + public async Task JoinSessionByCode(string sessionCode, Dictionary localUserData) + { + var joinSessionOptions = new JoinSessionOptions + { + PlayerProperties = localUserData + }; + return await MultiplayerService.Instance.JoinSessionByCodeAsync(sessionCode,joinSessionOptions); + } + + public async Task JoinSessionById(string sessionId, Dictionary localUserData) + { + var joinSessionOptions = new JoinSessionOptions + { + PlayerProperties = localUserData + }; + return await MultiplayerService.Instance.JoinSessionByIdAsync(sessionId, joinSessionOptions); + } + + public async Task QuickJoinSession(Dictionary localUserData) + { + var quickJoinOptions = new QuickJoinOptions + { + Filters = m_FilterOptions, + CreateSession = true // create a Session if no matching Session was found + }; + + var sessionOptions = new SessionOptions + { + MaxPlayers = k_MaxPlayers, + PlayerProperties = localUserData + }.WithRelayNetwork(); + + return await MultiplayerService.Instance.MatchmakeSessionAsync(quickJoinOptions, sessionOptions); + } + + public async Task QuerySessions() + { + return await MultiplayerService.Instance.QuerySessionsAsync(new QuerySessionsOptions()); + } + + public async Task ReconnectToSession(string sessionId) + { + return await MultiplayerService.Instance.ReconnectToSessionAsync(sessionId); + } + + public async Task QueryAllSessions() + { + var querySessionOptions = new QuerySessionsOptions + { + Count = k_MaxSessionsToShow, + FilterOptions = m_FilterOptions, + SortOptions = m_SortOptions + }; + return await MultiplayerService.Instance.QuerySessionsAsync(querySessionOptions); + } + } +} diff --git a/Assets/Scripts/UnityServices/Lobbies/LobbyAPIInterface.cs.meta b/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesInterface.cs.meta similarity index 100% rename from Assets/Scripts/UnityServices/Lobbies/LobbyAPIInterface.cs.meta rename to Assets/Scripts/UnityServices/Sessions/MultiplayerServicesInterface.cs.meta diff --git a/Assets/Tests/Runtime/ConnectionManagementTests.cs b/Assets/Tests/Runtime/ConnectionManagementTests.cs index 91d05649ba..e036dca47a 100644 --- a/Assets/Tests/Runtime/ConnectionManagementTests.cs +++ b/Assets/Tests/Runtime/ConnectionManagementTests.cs @@ -5,7 +5,7 @@ using Unity.BossRoom.ConnectionManagement; using Unity.BossRoom.Infrastructure; using Unity.BossRoom.UnityServices; -using Unity.BossRoom.UnityServices.Lobbies; +using Unity.BossRoom.UnityServices.Sessions; using Unity.BossRoom.Utils; using Unity.Multiplayer.Samples.Utilities; using Unity.Netcode; @@ -39,11 +39,11 @@ protected override void Configure(IContainerBuilder builder) builder.RegisterInstance(new BufferedMessageChannel()).AsImplementedInterfaces(); builder.RegisterInstance(new MessageChannel()).AsImplementedInterfaces(); builder.RegisterInstance(new MessageChannel()).AsImplementedInterfaces(); - builder.RegisterInstance(new BufferedMessageChannel()).AsImplementedInterfaces(); - builder.Register(Lifetime.Singleton); - builder.Register(Lifetime.Singleton); + builder.RegisterInstance(new BufferedMessageChannel()).AsImplementedInterfaces(); + builder.Register(Lifetime.Singleton); + builder.Register(Lifetime.Singleton); builder.Register(Lifetime.Singleton); - builder.RegisterEntryPoint(Lifetime.Singleton).AsSelf(); + builder.RegisterEntryPoint(Lifetime.Singleton).AsSelf(); } } From 53a7b5b63dda718736975826e6ae13018bb4d13f Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Thu, 24 Oct 2024 13:25:36 +0200 Subject: [PATCH 04/57] feat: update exception handling --- .../Gameplay/UI/UnityServicesUIHandler.cs | 41 +++++--------- .../Sessions/MultiplayerServicesFacade.cs | 55 ++++++++++++------- 2 files changed, 48 insertions(+), 48 deletions(-) diff --git a/Assets/Scripts/Gameplay/UI/UnityServicesUIHandler.cs b/Assets/Scripts/Gameplay/UI/UnityServicesUIHandler.cs index 1b20af62ea..f87c359a17 100644 --- a/Assets/Scripts/Gameplay/UI/UnityServicesUIHandler.cs +++ b/Assets/Scripts/Gameplay/UI/UnityServicesUIHandler.cs @@ -2,7 +2,7 @@ using Unity.BossRoom.Infrastructure; using Unity.BossRoom.UnityServices; using Unity.BossRoom.Utils; -using Unity.Services.Lobbies; +using Unity.Services.Multiplayer; using UnityEngine; using VContainer; @@ -31,7 +31,7 @@ void ServiceErrorHandler(UnityServiceErrorMessage error) { case UnityServiceErrorMessage.Service.Session: { - HandleLobbyError(error); + HandleSessionError(error); break; } case UnityServiceErrorMessage.Service.Authentication: @@ -49,37 +49,24 @@ void ServiceErrorHandler(UnityServiceErrorMessage error) } } - void HandleLobbyError(UnityServiceErrorMessage error) + void HandleSessionError(UnityServiceErrorMessage error) { - var exception = error.OriginalException as LobbyServiceException; - if (exception != null) + if (error.OriginalException is AggregateException { InnerException: SessionException sessionException }) { - switch (exception.Reason) + switch (sessionException.Error) { - // If the error is one of the following, the player needs to know about it, so show in a popup message. Otherwise, the log in the console is sufficient. - case LobbyExceptionReason.ValidationError: - PopupManager.ShowPopupPanel("Validation Error", "Validation check failed on Lobby. Is the join code correctly formatted?"); + case SessionError.SessionNotFound: + PopupManager.ShowPopupPanel("Session Not Found", "Requested Session not found. The join code is incorrect or the Session has ended."); break; - case LobbyExceptionReason.LobbyNotFound: - PopupManager.ShowPopupPanel("Lobby Not Found", "Requested lobby not found. The join code is incorrect or the lobby has ended."); + case SessionError.NotAuthorized: + PopupManager.ShowPopupPanel("Session error", "Received HTTP error 401 Unauthorized from Session Service."); break; - case LobbyExceptionReason.LobbyConflict: - // LobbyConflict can have multiple causes. Let's add other solutions here if there's other situations that arise for this. - Debug.LogError($"Got service error {error.Message} with LobbyConflict. Possible conflict cause: Trying to play with two builds on the " + - $"same machine. Please change profile in-game or use command line arg '{ProfileManager.AuthProfileCommandLineArg} someName' to set a different auth profile.\n"); - PopupManager.ShowPopupPanel("Failed to join Lobby", "Failed to join Lobby due to a conflict. If trying to connect two local builds to the same lobby, they need to have different profiles. See logs for more details."); + case SessionError.MatchmakerAssignmentTimeout: // this can happen when using quick join + PopupManager.ShowPopupPanel("Session error", "Received HTTP error 408 Request timed out from Session Service."); break; - case LobbyExceptionReason.NoOpenLobbies: - PopupManager.ShowPopupPanel("Failed to join Lobby", "No accessible lobbies are currently available for quick-join."); - break; - case LobbyExceptionReason.LobbyFull: - PopupManager.ShowPopupPanel("Failed to join Lobby", "Lobby is full and can't accept more players."); - break; - case LobbyExceptionReason.Unauthorized: - PopupManager.ShowPopupPanel("Lobby error", "Received HTTP error 401 Unauthorized from Lobby Service."); - break; - case LobbyExceptionReason.RequestTimeOut: - PopupManager.ShowPopupPanel("Lobby error", "Received HTTP error 408 Request timed out from Lobby Service."); + case SessionError.Unknown: + default: + PopupManager.ShowPopupPanel("Unknown Error", sessionException.Message); break; } } diff --git a/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs b/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs index d9f289a676..90ca8b8e98 100644 --- a/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs +++ b/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs @@ -124,7 +124,7 @@ public void EndTracking() null); return (true, session); } - catch (SessionException e) + catch (Exception e) { PublishError(e); } @@ -164,7 +164,7 @@ public void EndTracking() return (true, session); } } - catch (SessionException e) + catch (Exception e) { PublishError(e); } @@ -188,7 +188,7 @@ public void EndTracking() var session = await m_MultiplayerServicesInterface.QuickJoinSession(m_LocalUser.GetDataForUnityServices()); return (true, session); } - catch (SessionException e) + catch (Exception e) { PublishError(e); } @@ -320,7 +320,7 @@ public async Task RetrieveAndPublishSessionListAsync() var queryResults = await m_MultiplayerServicesInterface.QuerySessions(); m_SessionListFetchedPub.Publish(new SessionListFetchedMessage(queryResults.Sessions)); } - catch (SessionException e) + catch (Exception e) { PublishError(e); } @@ -332,13 +332,9 @@ public async Task ReconnectToSessionAsync() { return await m_MultiplayerServicesInterface.ReconnectToSession(m_LocalSession.SessionID); } - catch (SessionException e) + catch (Exception e) { - // If session is not found and if we are not the host, it has already been deleted. No need to publish the error here. - if (e.Error != SessionError.SessionNotFound && !m_LocalUser.IsHost) - { - PublishError(e); - } + PublishError(e, true); } return null; @@ -353,13 +349,9 @@ async void LeaveSessionAsync() { await CurrentUnitySession.LeaveAsync(); } - catch (SessionException e) + catch (Exception e) { - // If session is not found and if we are not the host, it has already been deleted. No need to publish the error here. - if (e.Error != SessionError.SessionNotFound && !m_LocalUser.IsHost) - { - PublishError(e); - } + PublishError(e, true); } finally { @@ -376,7 +368,7 @@ public async void RemovePlayerFromSessionAsync(string uasId) { await CurrentUnitySession.AsHost().RemovePlayerAsync(uasId); } - catch (SessionException e) + catch (Exception e) { PublishError(e); } @@ -395,7 +387,7 @@ async void DeleteSessionAsync() { await CurrentUnitySession.AsHost().DeleteAsync(); } - catch (SessionException e) + catch (Exception e) { PublishError(e); } @@ -439,15 +431,36 @@ public async Task UpdateSessionPropertiesAndUnlockAsync() CurrentUnitySession.AsHost().SetProperties(dataCurr); await CurrentUnitySession.AsHost().SavePropertiesAsync(); } - catch (SessionException e) + catch (Exception e) { PublishError(e); } } - void PublishError(SessionException e) + void PublishError(Exception e, bool checkIfDeleted = false) { - if (e.Error == SessionError.RateLimitExceeded) + if (e is not AggregateException aggregateException) + { + m_UnityServiceErrorMessagePub.Publish(new UnityServiceErrorMessage("Session Error", e.Message, UnityServiceErrorMessage.Service.Session, e)); + return; + } + + if (aggregateException.InnerException is not SessionException sessionException) + { + m_UnityServiceErrorMessagePub.Publish(new UnityServiceErrorMessage("Session Error", e.Message, UnityServiceErrorMessage.Service.Session, e)); + return; + } + + // If session is not found and if we are not the host, it has already been deleted. No need to publish the error here. + if (checkIfDeleted) + { + if (sessionException.Error == SessionError.SessionNotFound && !m_LocalUser.IsHost) + { + return; + } + } + + if (sessionException.Error == SessionError.RateLimitExceeded) { m_RateLimitJoin.PutOnCooldown(); return; From 272d90d88c3addd6fbc522b81af941661583a4a0 Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Thu, 24 Oct 2024 14:53:23 +0200 Subject: [PATCH 05/57] fix: reintroduce client and host starting logic via NetworkManager when connecting via IP --- .../ConnectionState/ClientConnectingState.cs | 9 ++++++++- .../ConnectionState/StartingHostState.cs | 9 +++++++++ 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/Assets/Scripts/ConnectionManagement/ConnectionState/ClientConnectingState.cs b/Assets/Scripts/ConnectionManagement/ConnectionState/ClientConnectingState.cs index d63bcca609..48d690481b 100644 --- a/Assets/Scripts/ConnectionManagement/ConnectionState/ClientConnectingState.cs +++ b/Assets/Scripts/ConnectionManagement/ConnectionState/ClientConnectingState.cs @@ -59,8 +59,15 @@ internal async Task ConnectClientAsync() { try { - // Setup NGO with current connection method m_ConnectionMethod.SetupClientConnectionAsync(); + + if (m_ConnectionMethod is ConnectionMethodIP) + { + if (!m_ConnectionManager.NetworkManager.StartClient()) + { + throw new Exception("NetworkManager StartClient failed"); + } + } } catch (Exception e) { diff --git a/Assets/Scripts/ConnectionManagement/ConnectionState/StartingHostState.cs b/Assets/Scripts/ConnectionManagement/ConnectionState/StartingHostState.cs index 8b9c45d1a7..7eba97728c 100644 --- a/Assets/Scripts/ConnectionManagement/ConnectionState/StartingHostState.cs +++ b/Assets/Scripts/ConnectionManagement/ConnectionState/StartingHostState.cs @@ -68,6 +68,15 @@ async void StartHost() try { await m_ConnectionMethod.SetupHostConnectionAsync(); + + if (m_ConnectionMethod is ConnectionMethodIP) + { + // NGO's StartHost launches everything + if (!m_ConnectionManager.NetworkManager.StartHost()) + { + StartHostFailed(); + } + } } catch (Exception) { From e712f0b15ba2d5c85be030937cf7d1b1781a05ff Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Thu, 24 Oct 2024 15:13:50 +0200 Subject: [PATCH 06/57] fix: don't add user to local session when leaving the session --- Assets/Scripts/UnityServices/Sessions/LocalSession.cs | 1 - 1 file changed, 1 deletion(-) diff --git a/Assets/Scripts/UnityServices/Sessions/LocalSession.cs b/Assets/Scripts/UnityServices/Sessions/LocalSession.cs index 91cf33bb8e..5ccca50a44 100644 --- a/Assets/Scripts/UnityServices/Sessions/LocalSession.cs +++ b/Assets/Scripts/UnityServices/Sessions/LocalSession.cs @@ -249,7 +249,6 @@ public void ApplyRemoteData(ISession session) public void Reset(LocalSessionUser localUser) { CopyDataFrom(new SessionData(), new Dictionary()); - AddUser(localUser); } } } From f23621f551b52eb06e4ef4d857a25fa00047634e Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Thu, 24 Oct 2024 15:14:17 +0200 Subject: [PATCH 07/57] fix: don't create a locked session --- .../UnityServices/Sessions/MultiplayerServicesFacade.cs | 3 +-- .../UnityServices/Sessions/MultiplayerServicesInterface.cs | 4 ++-- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs b/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs index 90ca8b8e98..cb35e3bd79 100644 --- a/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs +++ b/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs @@ -116,8 +116,7 @@ public void EndTracking() try { - var session = await m_MultiplayerServicesInterface.CreateSession(AuthenticationService.Instance.PlayerId, - sessionName, + var session = await m_MultiplayerServicesInterface.CreateSession(sessionName, maxPlayers, isPrivate, m_LocalUser.GetDataForUnityServices(), diff --git a/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesInterface.cs b/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesInterface.cs index e7540eafdc..bb751cea30 100644 --- a/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesInterface.cs +++ b/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesInterface.cs @@ -32,14 +32,14 @@ public MultiplayerServicesInterface() }; } - public async Task CreateSession(string requesterUasId, string sessionName, int maxPlayers, bool isPrivate, Dictionary playerProperties, Dictionary sessionProperties) + public async Task CreateSession(string sessionName, int maxPlayers, bool isPrivate, Dictionary playerProperties, Dictionary sessionProperties) { var sessionOptions = new SessionOptions { Name = sessionName, MaxPlayers = maxPlayers, IsPrivate = isPrivate, - IsLocked = true, + IsLocked = false, PlayerProperties = playerProperties, SessionProperties = sessionProperties }.WithRelayNetwork(); From 9416fb2e528e0fc7fe6c25de5f727736d843be88 Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Fri, 25 Oct 2024 11:22:49 +0200 Subject: [PATCH 08/57] fix: create session logic --- .../Gameplay/UI/Lobby/LobbyUIMediator.cs | 28 ++++++++----------- 1 file changed, 12 insertions(+), 16 deletions(-) diff --git a/Assets/Scripts/Gameplay/UI/Lobby/LobbyUIMediator.cs b/Assets/Scripts/Gameplay/UI/Lobby/LobbyUIMediator.cs index fb5889fad0..14f7c4d45b 100644 --- a/Assets/Scripts/Gameplay/UI/Lobby/LobbyUIMediator.cs +++ b/Assets/Scripts/Gameplay/UI/Lobby/LobbyUIMediator.cs @@ -33,6 +33,7 @@ public class LobbyUIMediator : MonoBehaviour ISubscriber m_ConnectStatusSubscriber; const string k_DefaultSessionName = "no-name"; + const int k_MaxPlayers = 8; ISession m_Session; @@ -93,6 +94,10 @@ public async void CreateSessionRequest(string sessionName, bool isPrivate) m_ConnectionManager.StartHostSession(m_LocalUser.DisplayName); + var result = await m_MultiplayerServicesFacade.TryCreateSessionAsync(sessionName, k_MaxPlayers, isPrivate); + + HandleSessionJoinResult(result); + UnblockUIAfterLoadingIsComplete(); } @@ -140,14 +145,7 @@ public async void JoinSessionWithCodeRequest(string sessionCode) var result = await m_MultiplayerServicesFacade.TryJoinSessionAsync(sessionCode, null); - if (result.Success) - { - OnJoinedSession(result.Session); - } - else - { - UnblockUIAfterLoadingIsComplete(); - } + HandleSessionJoinResult(result); } public async void JoinSessionRequest(ISessionInfo sessionInfo) @@ -166,14 +164,7 @@ public async void JoinSessionRequest(ISessionInfo sessionInfo) var result = await m_MultiplayerServicesFacade.TryJoinSessionAsync(null, sessionInfo.Id); - if (result.Success) - { - OnJoinedSession(result.Session); - } - else - { - UnblockUIAfterLoadingIsComplete(); - } + HandleSessionJoinResult(result); } public async void QuickJoinRequest() @@ -192,6 +183,11 @@ public async void QuickJoinRequest() var result = await m_MultiplayerServicesFacade.TryQuickJoinSessionAsync(); + HandleSessionJoinResult(result); + } + + void HandleSessionJoinResult((bool Success, ISession Session) result) + { if (result.Success) { OnJoinedSession(result.Session); From c919ba8338f7c21fc839a091a7891d8c1b4c9cd3 Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Fri, 25 Oct 2024 14:33:51 +0200 Subject: [PATCH 09/57] feat: rename lobby to session in char selection prefab --- Assets/Scenes/CharSelect.unity | 4 +- .../GameState/ClientCharSelectState.cs | 112 +++++++++--------- .../GameState/NetworkCharSelection.cs | 22 ++-- .../GameState/ServerCharSelectState.cs | 54 ++++----- 4 files changed, 96 insertions(+), 96 deletions(-) diff --git a/Assets/Scenes/CharSelect.unity b/Assets/Scenes/CharSelect.unity index 927dab2cda..58e1d0c640 100644 --- a/Assets/Scenes/CharSelect.unity +++ b/Assets/Scenes/CharSelect.unity @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:fe57cffed60d9bfe7f42257a90c3d6a2240755dcaa4e10ae0c745f6fb4aecd66 -size 45820 +oid sha256:d8d33954123e1f21d88d8267ebc8097362995bab0f724e32de5226bc7c941054 +size 49148 diff --git a/Assets/Scripts/Gameplay/GameState/ClientCharSelectState.cs b/Assets/Scripts/Gameplay/GameState/ClientCharSelectState.cs index 199517d27b..c63b79cfb5 100644 --- a/Assets/Scripts/Gameplay/GameState/ClientCharSelectState.cs +++ b/Assets/Scripts/Gameplay/GameState/ClientCharSelectState.cs @@ -38,9 +38,9 @@ public class ClientCharSelectState : GameStateBehaviour [Tooltip("This is triggered when the player presses the \"Ready\" button")] string m_AnimationTriggerOnCharChosen = "BeginRevive"; - [Header("Lobby Seats")] + [Header("Session Seats")] [SerializeField] - [Tooltip("Collection of 8 portrait-boxes, one for each potential lobby member")] + [Tooltip("Collection of 8 portrait-boxes, one for each potential session member")] List m_PlayerSeats; [System.Serializable] @@ -60,7 +60,7 @@ public class ColorAndIndicator [Tooltip("Text element for the Ready button")] TextMeshProUGUI m_ReadyButtonText; - [Header("UI Elements for different lobby modes")] + [Header("UI Elements for different session modes")] [SerializeField] [Tooltip("UI elements to turn on when the player hasn't chosen their seat yet. Turned off otherwise!")] List m_UIElementsForNoSeatChosen; @@ -68,10 +68,10 @@ public class ColorAndIndicator [SerializeField] [Tooltip("UI elements to turn on when the player has locked in their seat choice (and is now waiting for other players to do the same). Turned off otherwise!")] List m_UIElementsForSeatChosen; - + [SerializeField] - [Tooltip("UI elements to turn on when the lobby is closed (and game is about to start). Turned off otherwise!")] - List m_UIElementsForLobbyEnding; + [Tooltip("UI elements to turn on when the session is closed (and game is about to start). Turned off otherwise!")] + List m_UIElementsForSessionEnding; [SerializeField] [Tooltip("UI elements to turn on when there's been a fatal error (and the client cannot proceed). Turned off otherwise!")] @@ -95,20 +95,20 @@ public class ColorAndIndicator Dictionary m_SpawnedCharacterGraphics = new Dictionary(); /// - /// Conceptual modes or stages that the lobby can be in. We don't actually - /// bother to keep track of what LobbyMode we're in at any given time; it's just + /// Conceptual modes or stages that the session can be in. We don't actually + /// bother to keep track of what SessionMode we're in at any given time; it's just /// an abstraction that makes it easier to configure which UI elements should - /// be enabled/disabled in each stage of the lobby. + /// be enabled/disabled in each stage of the session. /// - enum LobbyMode + enum SessionMode { ChooseSeat, // "Choose your seat!" stage SeatChosen, // "Waiting for other players!" stage - LobbyEnding, // "Get ready! Game is starting!" stage + SessionEnding, // "Get ready! Game is starting!" stage FatalError, // "Fatal Error" stage } - Dictionary> m_LobbyUIElementsByMode; + Dictionary> m_SessionUIElementsByMode; [Inject] ConnectionManager m_ConnectionManager; @@ -121,12 +121,12 @@ protected override void Awake() m_NetcodeHooks.OnNetworkSpawnHook += OnNetworkSpawn; m_NetcodeHooks.OnNetworkDespawnHook += OnNetworkDespawn; - m_LobbyUIElementsByMode = new Dictionary>() + m_SessionUIElementsByMode = new Dictionary>() { - { LobbyMode.ChooseSeat, m_UIElementsForNoSeatChosen }, - { LobbyMode.SeatChosen, m_UIElementsForSeatChosen }, - { LobbyMode.LobbyEnding, m_UIElementsForLobbyEnding }, - { LobbyMode.FatalError, m_UIElementsForFatalError }, + { SessionMode.ChooseSeat, m_UIElementsForNoSeatChosen }, + { SessionMode.SeatChosen, m_UIElementsForSeatChosen }, + { SessionMode.SessionEnding, m_UIElementsForSessionEnding }, + { SessionMode.FatalError, m_UIElementsForFatalError }, }; } @@ -148,7 +148,7 @@ protected override void Start() m_PlayerSeats[i].Initialize(i); } - ConfigureUIForLobbyMode(LobbyMode.ChooseSeat); + ConfigureUIForSessionMode(SessionMode.ChooseSeat); UpdateCharacterSelection(NetworkCharSelection.SeatState.Inactive); } @@ -156,8 +156,8 @@ void OnNetworkDespawn() { if (m_NetworkCharSelection) { - m_NetworkCharSelection.IsLobbyClosed.OnValueChanged -= OnLobbyClosedChanged; - m_NetworkCharSelection.LobbyPlayers.OnListChanged -= OnLobbyPlayerStateChanged; + m_NetworkCharSelection.IsSessionClosed.OnValueChanged -= OnSessionClosedChanged; + m_NetworkCharSelection.sessionPlayers.OnListChanged -= OnSessionPlayerStateChanged; } } @@ -169,8 +169,8 @@ void OnNetworkSpawn() } else { - m_NetworkCharSelection.IsLobbyClosed.OnValueChanged += OnLobbyClosedChanged; - m_NetworkCharSelection.LobbyPlayers.OnListChanged += OnLobbyPlayerStateChanged; + m_NetworkCharSelection.IsSessionClosed.OnValueChanged += OnSessionClosedChanged; + m_NetworkCharSelection.sessionPlayers.OnListChanged += OnSessionPlayerStateChanged; } } @@ -185,24 +185,24 @@ void OnAssignedPlayerNumber(int playerNum) void UpdatePlayerCount() { - int count = m_NetworkCharSelection.LobbyPlayers.Count; + int count = m_NetworkCharSelection.sessionPlayers.Count; var pstr = (count > 1) ? "players" : "player"; m_NumPlayersText.text = "" + count + " " + pstr + " connected"; } /// - /// Called by the server when any of the seats in the lobby have changed. (Including ours!) + /// Called by the server when any of the seats in the session have changed. (Including ours!) /// - void OnLobbyPlayerStateChanged(NetworkListEvent changeEvent) + void OnSessionPlayerStateChanged(NetworkListEvent changeEvent) { UpdateSeats(); UpdatePlayerCount(); // now let's find our local player in the list and update the character/info box appropriately int localPlayerIdx = -1; - for (int i = 0; i < m_NetworkCharSelection.LobbyPlayers.Count; ++i) + for (int i = 0; i < m_NetworkCharSelection.sessionPlayers.Count; ++i) { - if (m_NetworkCharSelection.LobbyPlayers[i].ClientId == NetworkManager.Singleton.LocalClientId) + if (m_NetworkCharSelection.sessionPlayers[i].ClientId == NetworkManager.Singleton.LocalClientId) { localPlayerIdx = i; break; @@ -211,27 +211,27 @@ void OnLobbyPlayerStateChanged(NetworkListEvent /// Internal utility that sets the character-graphics and class-info box based on - /// our chosen seat. It also triggers a LobbyMode change when it notices that our seat-state + /// our chosen seat. It also triggers a SessionMode change when it notices that our seat-state /// is LockedIn. /// /// Our current seat state @@ -276,7 +276,7 @@ void UpdateCharacterSelection(NetworkCharSelection.SeatState state, int seatIdx // the local player has locked in their seat choice! Rearrange the UI appropriately // the character should act excited m_CurrentCharacterGraphicsAnimator.SetTrigger(m_AnimationTriggerOnCharChosen); - ConfigureUIForLobbyMode(m_NetworkCharSelection.IsLobbyClosed.Value ? LobbyMode.LobbyEnding : LobbyMode.SeatChosen); + ConfigureUIForSessionMode(m_NetworkCharSelection.IsSessionClosed.Value ? SessionMode.SessionEnding : SessionMode.SeatChosen); m_HasLocalPlayerLockedIn = true; } else if (m_HasLocalPlayerLockedIn && state == NetworkCharSelection.SeatState.Active) @@ -284,7 +284,7 @@ void UpdateCharacterSelection(NetworkCharSelection.SeatState state, int seatIdx // reset character seats if locked in choice was unselected if (m_HasLocalPlayerLockedIn) { - ConfigureUIForLobbyMode(LobbyMode.ChooseSeat); + ConfigureUIForSessionMode(SessionMode.ChooseSeat); m_ClassInfoBox.SetLockedIn(false); m_HasLocalPlayerLockedIn = false; } @@ -297,7 +297,7 @@ void UpdateCharacterSelection(NetworkCharSelection.SeatState state, int seatIdx } /// - /// Internal utility that sets the graphics for the eight lobby-seats (based on their current networked state) + /// Internal utility that sets the graphics for the eight session-seats (based on their current networked state) /// void UpdateSeats() { @@ -305,8 +305,8 @@ void UpdateSeats() // Once they have chosen their class (by "locking in" their seat), other players in that seat are kicked out. // But until a seat is locked in, we need to display each seat as being used by the latest player to choose it. // So we go through all players and figure out who should visually be shown as sitting in that seat. - NetworkCharSelection.LobbyPlayerState[] curSeats = new NetworkCharSelection.LobbyPlayerState[m_PlayerSeats.Count]; - foreach (NetworkCharSelection.LobbyPlayerState playerState in m_NetworkCharSelection.LobbyPlayers) + NetworkCharSelection.SessionPlayerState[] curSeats = new NetworkCharSelection.SessionPlayerState[m_PlayerSeats.Count]; + foreach (NetworkCharSelection.SessionPlayerState playerState in m_NetworkCharSelection.sessionPlayers) { if (playerState.SeatIdx == -1 || playerState.SeatState == NetworkCharSelection.SeatState.Inactive) continue; // this player isn't seated at all! @@ -326,37 +326,37 @@ void UpdateSeats() } /// - /// Called by the server when the lobby closes (because all players are seated and locked in) + /// Called by the server when the session closes (because all players are seated and locked in) /// - void OnLobbyClosedChanged(bool wasLobbyClosed, bool isLobbyClosed) + void OnSessionClosedChanged(bool wasSessionClosed, bool isSessionClosed) { - if (isLobbyClosed) + if (isSessionClosed) { - ConfigureUIForLobbyMode(LobbyMode.LobbyEnding); + ConfigureUIForSessionMode(SessionMode.SessionEnding); } else { if (m_LastSeatSelected == -1) { - ConfigureUIForLobbyMode(LobbyMode.ChooseSeat); + ConfigureUIForSessionMode(SessionMode.ChooseSeat); } else { - ConfigureUIForLobbyMode(LobbyMode.SeatChosen); + ConfigureUIForSessionMode(SessionMode.SeatChosen); m_ClassInfoBox.ConfigureForClass(m_NetworkCharSelection.AvatarConfiguration[m_LastSeatSelected].CharacterClass); } } } /// - /// Turns on the UI elements for a specified "lobby mode", and turns off UI elements for all other modes. - /// It can also disable/enable the lobby seats and the "Ready" button if they are inappropriate for the + /// Turns on the UI elements for a specified "session mode", and turns off UI elements for all other modes. + /// It can also disable/enable the session seats and the "Ready" button if they are inappropriate for the /// given mode. /// - void ConfigureUIForLobbyMode(LobbyMode mode) + void ConfigureUIForSessionMode(SessionMode mode) { // first the easy bit: turn off all the inappropriate ui elements, and turn the appropriate ones on! - foreach (var list in m_LobbyUIElementsByMode.Values) + foreach (var list in m_SessionUIElementsByMode.Values) { foreach (var uiElement in list) { @@ -364,16 +364,16 @@ void ConfigureUIForLobbyMode(LobbyMode mode) } } - foreach (var uiElement in m_LobbyUIElementsByMode[mode]) + foreach (var uiElement in m_SessionUIElementsByMode[mode]) { uiElement.SetActive(true); } - // that finishes the easy bit. Next, each lobby mode might also need to configure the lobby seats and class-info box. + // that finishes the easy bit. Next, each session mode might also need to configure the session seats and class-info box. bool isSeatsDisabledInThisMode = false; switch (mode) { - case LobbyMode.ChooseSeat: + case SessionMode.ChooseSeat: if (m_LastSeatSelected == -1) { if (m_CurrentCharacterGraphics) @@ -384,16 +384,16 @@ void ConfigureUIForLobbyMode(LobbyMode mode) } m_ReadyButtonText.text = "READY!"; break; - case LobbyMode.SeatChosen: + case SessionMode.SeatChosen: isSeatsDisabledInThisMode = true; m_ClassInfoBox.SetLockedIn(true); m_ReadyButtonText.text = "UNREADY"; break; - case LobbyMode.FatalError: + case SessionMode.FatalError: isSeatsDisabledInThisMode = true; m_ClassInfoBox.ConfigureForNoSelection(); break; - case LobbyMode.LobbyEnding: + case SessionMode.SessionEnding: isSeatsDisabledInThisMode = true; m_ClassInfoBox.ConfigureForNoSelection(); break; diff --git a/Assets/Scripts/Gameplay/GameState/NetworkCharSelection.cs b/Assets/Scripts/Gameplay/GameState/NetworkCharSelection.cs index ddc3990192..b3d0f1d2d7 100644 --- a/Assets/Scripts/Gameplay/GameState/NetworkCharSelection.cs +++ b/Assets/Scripts/Gameplay/GameState/NetworkCharSelection.cs @@ -18,7 +18,7 @@ public enum SeatState : byte } /// - /// Describes one of the players in the lobby, and their current character-select status. + /// Describes one of the players in the session, and their current character-select status. /// /// /// Putting FixedString inside an INetworkSerializeByMemcpy struct is not recommended because it will lose the @@ -26,7 +26,7 @@ public enum SeatState : byte /// or through INetworkSerializable will use 4 bytes of bandwidth, but inside an INetworkSerializeByMemcpy, that /// same empty value would consume 132 bytes of bandwidth. /// - public struct LobbyPlayerState : INetworkSerializable, IEquatable + public struct SessionPlayerState : INetworkSerializable, IEquatable { public ulong ClientId; @@ -39,7 +39,7 @@ public struct LobbyPlayerState : INetworkSerializable, IEquatable(BufferSerializer serializer) where T : IReade serializer.SerializeValue(ref LastChangeTime); } - public bool Equals(LobbyPlayerState other) + public bool Equals(SessionPlayerState other) { return ClientId == other.ClientId && m_PlayerName.Equals(other.m_PlayerName) && @@ -78,27 +78,27 @@ public bool Equals(LobbyPlayerState other) } } - private NetworkList m_LobbyPlayers; + private NetworkList m_SessionPlayers; public Avatar[] AvatarConfiguration; private void Awake() { - m_LobbyPlayers = new NetworkList(); + m_SessionPlayers = new NetworkList(); } /// - /// Current state of all players in the lobby. + /// Current state of all players in the session. /// - public NetworkList LobbyPlayers => m_LobbyPlayers; + public NetworkList sessionPlayers => m_SessionPlayers; /// - /// When this becomes true, the lobby is closed and in process of terminating (switching to gameplay). + /// When this becomes true, the session is closed and in process of terminating (switching to gameplay). /// - public NetworkVariable IsLobbyClosed { get; } = new NetworkVariable(false); + public NetworkVariable IsSessionClosed { get; } = new NetworkVariable(false); /// - /// Server notification when a client requests a different lobby-seat, or locks in their seat choice + /// Server notification when a client requests a different session-seat, or locks in their seat choice /// public event Action OnClientChangedSeat; diff --git a/Assets/Scripts/Gameplay/GameState/ServerCharSelectState.cs b/Assets/Scripts/Gameplay/GameState/ServerCharSelectState.cs index 3d78471678..e38cf774b1 100644 --- a/Assets/Scripts/Gameplay/GameState/ServerCharSelectState.cs +++ b/Assets/Scripts/Gameplay/GameState/ServerCharSelectState.cs @@ -56,7 +56,7 @@ void OnClientChangedSeat(ulong clientId, int newSeatIdx, bool lockedIn) throw new Exception($"OnClientChangedSeat: client ID {clientId} is not a lobby player and cannot change seats! Shouldn't be here!"); } - if (networkCharSelection.IsLobbyClosed.Value) + if (networkCharSelection.IsSessionClosed.Value) { // The user tried to change their class after everything was locked in... too late! Discard this choice return; @@ -70,15 +70,15 @@ void OnClientChangedSeat(ulong clientId, int newSeatIdx, bool lockedIn) else { // see if someone has already locked-in that seat! If so, too late... discard this choice - foreach (NetworkCharSelection.LobbyPlayerState playerInfo in networkCharSelection.LobbyPlayers) + foreach (NetworkCharSelection.SessionPlayerState playerInfo in networkCharSelection.sessionPlayers) { if (playerInfo.ClientId != clientId && playerInfo.SeatIdx == newSeatIdx && playerInfo.SeatState == NetworkCharSelection.SeatState.LockedIn) { // somebody already locked this choice in. Stop! // Instead of granting lock request, change this player to Inactive state. - networkCharSelection.LobbyPlayers[idx] = new NetworkCharSelection.LobbyPlayerState(clientId, - networkCharSelection.LobbyPlayers[idx].PlayerName, - networkCharSelection.LobbyPlayers[idx].PlayerNumber, + networkCharSelection.sessionPlayers[idx] = new NetworkCharSelection.SessionPlayerState(clientId, + networkCharSelection.sessionPlayers[idx].PlayerName, + networkCharSelection.sessionPlayers[idx].PlayerNumber, NetworkCharSelection.SeatState.Inactive); // then early out @@ -87,9 +87,9 @@ void OnClientChangedSeat(ulong clientId, int newSeatIdx, bool lockedIn) } } - networkCharSelection.LobbyPlayers[idx] = new NetworkCharSelection.LobbyPlayerState(clientId, - networkCharSelection.LobbyPlayers[idx].PlayerName, - networkCharSelection.LobbyPlayers[idx].PlayerNumber, + networkCharSelection.sessionPlayers[idx] = new NetworkCharSelection.SessionPlayerState(clientId, + networkCharSelection.sessionPlayers[idx].PlayerName, + networkCharSelection.sessionPlayers[idx].PlayerNumber, lockedIn ? NetworkCharSelection.SeatState.LockedIn : NetworkCharSelection.SeatState.Active, newSeatIdx, Time.time); @@ -98,15 +98,15 @@ void OnClientChangedSeat(ulong clientId, int newSeatIdx, bool lockedIn) { // to help the clients visually keep track of who's in what seat, we'll "kick out" any other players // who were also in that seat. (Those players didn't click "Ready!" fast enough, somebody else took their seat!) - for (int i = 0; i < networkCharSelection.LobbyPlayers.Count; ++i) + for (int i = 0; i < networkCharSelection.sessionPlayers.Count; ++i) { - if (networkCharSelection.LobbyPlayers[i].SeatIdx == newSeatIdx && i != idx) + if (networkCharSelection.sessionPlayers[i].SeatIdx == newSeatIdx && i != idx) { // change this player to Inactive state. - networkCharSelection.LobbyPlayers[i] = new NetworkCharSelection.LobbyPlayerState( - networkCharSelection.LobbyPlayers[i].ClientId, - networkCharSelection.LobbyPlayers[i].PlayerName, - networkCharSelection.LobbyPlayers[i].PlayerNumber, + networkCharSelection.sessionPlayers[i] = new NetworkCharSelection.SessionPlayerState( + networkCharSelection.sessionPlayers[i].ClientId, + networkCharSelection.sessionPlayers[i].PlayerName, + networkCharSelection.sessionPlayers[i].PlayerNumber, NetworkCharSelection.SeatState.Inactive); } } @@ -120,9 +120,9 @@ void OnClientChangedSeat(ulong clientId, int newSeatIdx, bool lockedIn) /// int FindLobbyPlayerIdx(ulong clientId) { - for (int i = 0; i < networkCharSelection.LobbyPlayers.Count; ++i) + for (int i = 0; i < networkCharSelection.sessionPlayers.Count; ++i) { - if (networkCharSelection.LobbyPlayers[i].ClientId == clientId) + if (networkCharSelection.sessionPlayers[i].ClientId == clientId) return i; } return -1; @@ -134,14 +134,14 @@ int FindLobbyPlayerIdx(ulong clientId) /// void CloseLobbyIfReady() { - foreach (NetworkCharSelection.LobbyPlayerState playerInfo in networkCharSelection.LobbyPlayers) + foreach (NetworkCharSelection.SessionPlayerState playerInfo in networkCharSelection.sessionPlayers) { if (playerInfo.SeatState != NetworkCharSelection.SeatState.LockedIn) return; // nope, at least one player isn't locked in yet! } // everybody's ready at the same time! Lock it down! - networkCharSelection.IsLobbyClosed.Value = true; + networkCharSelection.IsSessionClosed.Value = true; // remember our choices so the next scene can use the info SaveLobbyResults(); @@ -159,12 +159,12 @@ void CancelCloseLobby() { StopCoroutine(m_WaitToEndLobbyCoroutine); } - networkCharSelection.IsLobbyClosed.Value = false; + networkCharSelection.IsSessionClosed.Value = false; } void SaveLobbyResults() { - foreach (NetworkCharSelection.LobbyPlayerState playerInfo in networkCharSelection.LobbyPlayers) + foreach (NetworkCharSelection.SessionPlayerState playerInfo in networkCharSelection.sessionPlayers) { var playerNetworkObject = NetworkManager.Singleton.SpawnManager.GetPlayerNetworkObject(playerInfo.ClientId); @@ -236,7 +236,7 @@ int GetAvailablePlayerNumber() bool IsPlayerNumberAvailable(int playerNumber) { bool found = false; - foreach (NetworkCharSelection.LobbyPlayerState playerState in networkCharSelection.LobbyPlayers) + foreach (NetworkCharSelection.SessionPlayerState playerState in networkCharSelection.sessionPlayers) { if (playerState.PlayerNumber == playerNumber) { @@ -251,7 +251,7 @@ bool IsPlayerNumberAvailable(int playerNumber) void SeatNewPlayer(ulong clientId) { // If lobby is closing and waiting to start the game, cancel to allow that new player to select a character - if (networkCharSelection.IsLobbyClosed.Value) + if (networkCharSelection.IsSessionClosed.Value) { CancelCloseLobby(); } @@ -271,7 +271,7 @@ void SeatNewPlayer(ulong clientId) throw new Exception($"we shouldn't be here, connection approval should have refused this connection already for client ID {clientId} and player num {playerData.PlayerNumber}"); } - networkCharSelection.LobbyPlayers.Add(new NetworkCharSelection.LobbyPlayerState(clientId, playerData.PlayerName, playerData.PlayerNumber, NetworkCharSelection.SeatState.Inactive)); + networkCharSelection.sessionPlayers.Add(new NetworkCharSelection.SessionPlayerState(clientId, playerData.PlayerName, playerData.PlayerNumber, NetworkCharSelection.SeatState.Inactive)); SessionManager.Instance.SetPlayerData(clientId, playerData); } } @@ -279,16 +279,16 @@ void SeatNewPlayer(ulong clientId) void OnClientDisconnectCallback(ulong clientId) { // clear this client's PlayerNumber and any associated visuals (so other players know they're gone). - for (int i = 0; i < networkCharSelection.LobbyPlayers.Count; ++i) + for (int i = 0; i < networkCharSelection.sessionPlayers.Count; ++i) { - if (networkCharSelection.LobbyPlayers[i].ClientId == clientId) + if (networkCharSelection.sessionPlayers[i].ClientId == clientId) { - networkCharSelection.LobbyPlayers.RemoveAt(i); + networkCharSelection.sessionPlayers.RemoveAt(i); break; } } - if (!networkCharSelection.IsLobbyClosed.Value) + if (!networkCharSelection.IsSessionClosed.Value) { // If the lobby is not already closing, close if the remaining players are all ready CloseLobbyIfReady(); From ccb005e0fa68e409bfbcaa6f0d8cb48a6aca99fc Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Fri, 25 Oct 2024 16:58:56 +0200 Subject: [PATCH 10/57] chore: batch renaming from lobby to session --- Assets/Prefabs/UI/MainMenu UI Canvas.prefab | 144 ++++++++++++++- .../UI/{LobbyUI.prefab => SessionUI.prefab} | 172 ++++++++---------- ...byUI.prefab.meta => SessionUI.prefab.meta} | 0 Assets/Scenes/MainMenu.unity | 4 +- .../ApplicationController.cs | 22 +-- .../ConnectionManagement/ConnectionMethod.cs | 32 +--- .../ClientReconnectingState.cs | 4 +- .../Gameplay/GameState/ClientMainMenuState.cs | 34 ++-- .../GameState/ServerCharSelectState.cs | 44 ++--- .../Gameplay/UI/Lobby/LobbyListItemUI.cs | 36 ---- Assets/Scripts/Gameplay/UI/RoomNameBox.cs | 8 +- .../Gameplay/UI/{Lobby.meta => Session.meta} | 0 .../SessionCreationUI.cs} | 8 +- .../SessionCreationUI.cs.meta} | 0 .../SessionJoiningUI.cs} | 64 +++---- .../SessionJoiningUI.cs.meta} | 0 .../Gameplay/UI/Session/SessionListItemUI.cs | 33 ++++ .../SessionListItemUI.cs.meta} | 0 .../SessionUIMediator.cs} | 22 +-- .../SessionUIMediator.cs.meta} | 0 .../Gameplay/UI/UICharSelectPlayerSeat.cs | 2 +- .../Sessions/MultiplayerServicesFacade.cs | 6 +- 22 files changed, 360 insertions(+), 275 deletions(-) rename Assets/Prefabs/UI/{LobbyUI.prefab => SessionUI.prefab} (98%) rename Assets/Prefabs/UI/{LobbyUI.prefab.meta => SessionUI.prefab.meta} (100%) delete mode 100644 Assets/Scripts/Gameplay/UI/Lobby/LobbyListItemUI.cs rename Assets/Scripts/Gameplay/UI/{Lobby.meta => Session.meta} (100%) rename Assets/Scripts/Gameplay/UI/{Lobby/LobbyCreationUI.cs => Session/SessionCreationUI.cs} (74%) rename Assets/Scripts/Gameplay/UI/{Lobby/LobbyCreationUI.cs.meta => Session/SessionCreationUI.cs.meta} (100%) rename Assets/Scripts/Gameplay/UI/{Lobby/LobbyJoiningUI.cs => Session/SessionJoiningUI.cs} (58%) rename Assets/Scripts/Gameplay/UI/{Lobby/LobbyJoiningUI.cs.meta => Session/SessionJoiningUI.cs.meta} (100%) create mode 100644 Assets/Scripts/Gameplay/UI/Session/SessionListItemUI.cs rename Assets/Scripts/Gameplay/UI/{Lobby/LobbyListItemUI.cs.meta => Session/SessionListItemUI.cs.meta} (100%) rename Assets/Scripts/Gameplay/UI/{Lobby/LobbyUIMediator.cs => Session/SessionUIMediator.cs} (94%) rename Assets/Scripts/Gameplay/UI/{Lobby/LobbyUIMediator.cs.meta => Session/SessionUIMediator.cs.meta} (100%) diff --git a/Assets/Prefabs/UI/MainMenu UI Canvas.prefab b/Assets/Prefabs/UI/MainMenu UI Canvas.prefab index fc24b1b5a8..76ffd5a41d 100644 --- a/Assets/Prefabs/UI/MainMenu UI Canvas.prefab +++ b/Assets/Prefabs/UI/MainMenu UI Canvas.prefab @@ -359,15 +359,17 @@ MonoBehaviour: m_lineSpacingMax: 0 m_paragraphSpacing: 0 m_charWidthMaxAdj: 0 - m_enableWordWrapping: 1 + m_TextWrappingMode: 1 m_wordWrappingRatios: 0.4 m_overflowMode: 0 m_linkedTextComponent: {fileID: 0} parentLinkedComponent: {fileID: 0} m_enableKerning: 1 + m_ActiveFontFeatures: 00000000 m_enableExtraPadding: 0 checkPaddingRequired: 0 m_isRichText: 1 + m_EmojiFallbackSupport: 1 m_parseCtrlCharacters: 1 m_isOrthographic: 1 m_isCullingEnabled: 0 @@ -480,6 +482,10 @@ PrefabInstance: propertyPath: m_fontSizeMax value: 58 objectReference: {fileID: 0} + - target: {fileID: 7721113380232533813, guid: addf3685293c35d48a673397c748f116, type: 3} + propertyPath: 'm_ActiveFontFeatures.Array.data[0]' + value: 1801810542 + objectReference: {fileID: 0} - target: {fileID: 7721113380319664578, guid: addf3685293c35d48a673397c748f116, type: 3} propertyPath: m_Name value: IP Start Button @@ -736,6 +742,18 @@ PrefabInstance: serializedVersion: 3 m_TransformParent: {fileID: 6068325059450104507} m_Modifications: + - target: {fileID: 301174889687357229, guid: 1bc4508935e434eb4867c367b55cca50, type: 3} + propertyPath: 'm_ActiveFontFeatures.Array.data[0]' + value: 1801810542 + objectReference: {fileID: 0} + - target: {fileID: 709593810350336946, guid: 1bc4508935e434eb4867c367b55cca50, type: 3} + propertyPath: 'm_ActiveFontFeatures.Array.data[0]' + value: 1801810542 + objectReference: {fileID: 0} + - target: {fileID: 785373375347833033, guid: 1bc4508935e434eb4867c367b55cca50, type: 3} + propertyPath: 'm_ActiveFontFeatures.Array.data[0]' + value: 1801810542 + objectReference: {fileID: 0} - target: {fileID: 792957857740898001, guid: 1bc4508935e434eb4867c367b55cca50, type: 3} propertyPath: m_AnchorMax.y value: 0 @@ -772,6 +790,14 @@ PrefabInstance: propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} + - target: {fileID: 1131054124500818674, guid: 1bc4508935e434eb4867c367b55cca50, type: 3} + propertyPath: 'm_ActiveFontFeatures.Array.data[0]' + value: 1801810542 + objectReference: {fileID: 0} + - target: {fileID: 1583053172819472216, guid: 1bc4508935e434eb4867c367b55cca50, type: 3} + propertyPath: 'm_ActiveFontFeatures.Array.data[0]' + value: 1801810542 + objectReference: {fileID: 0} - target: {fileID: 2234904744820987572, guid: 1bc4508935e434eb4867c367b55cca50, type: 3} propertyPath: m_AnchorMax.x value: 0 @@ -812,6 +838,14 @@ PrefabInstance: propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} + - target: {fileID: 3422802895906220296, guid: 1bc4508935e434eb4867c367b55cca50, type: 3} + propertyPath: 'm_ActiveFontFeatures.Array.data[0]' + value: 1801810542 + objectReference: {fileID: 0} + - target: {fileID: 3523563153346996873, guid: 1bc4508935e434eb4867c367b55cca50, type: 3} + propertyPath: 'm_ActiveFontFeatures.Array.data[0]' + value: 1801810542 + objectReference: {fileID: 0} - target: {fileID: 3632019498769524828, guid: 1bc4508935e434eb4867c367b55cca50, type: 3} propertyPath: m_AnchorMax.y value: 0 @@ -852,6 +886,18 @@ PrefabInstance: propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} + - target: {fileID: 4777870063691261607, guid: 1bc4508935e434eb4867c367b55cca50, type: 3} + propertyPath: 'm_ActiveFontFeatures.Array.data[0]' + value: 1801810542 + objectReference: {fileID: 0} + - target: {fileID: 4805371756271124143, guid: 1bc4508935e434eb4867c367b55cca50, type: 3} + propertyPath: 'm_ActiveFontFeatures.Array.data[0]' + value: 1801810542 + objectReference: {fileID: 0} + - target: {fileID: 5031063074198282838, guid: 1bc4508935e434eb4867c367b55cca50, type: 3} + propertyPath: 'm_ActiveFontFeatures.Array.data[0]' + value: 1801810542 + objectReference: {fileID: 0} - target: {fileID: 5843186486647850782, guid: 1bc4508935e434eb4867c367b55cca50, type: 3} propertyPath: m_AnchorMax.y value: 0 @@ -868,6 +914,10 @@ PrefabInstance: propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} + - target: {fileID: 6243726003260939195, guid: 1bc4508935e434eb4867c367b55cca50, type: 3} + propertyPath: 'm_ActiveFontFeatures.Array.data[0]' + value: 1801810542 + objectReference: {fileID: 0} - target: {fileID: 6403041760458951094, guid: 1bc4508935e434eb4867c367b55cca50, type: 3} propertyPath: m_AnchorMax.y value: 0 @@ -886,7 +936,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 6702871171647363808, guid: 1bc4508935e434eb4867c367b55cca50, type: 3} propertyPath: m_Name - value: LobbyPopup + value: SessionPopup objectReference: {fileID: 0} - target: {fileID: 6702871171647363811, guid: 1bc4508935e434eb4867c367b55cca50, type: 3} propertyPath: m_Pivot.x @@ -992,6 +1042,10 @@ PrefabInstance: propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} + - target: {fileID: 7486709167611836872, guid: 1bc4508935e434eb4867c367b55cca50, type: 3} + propertyPath: 'm_ActiveFontFeatures.Array.data[0]' + value: 1801810542 + objectReference: {fileID: 0} - target: {fileID: 7579639325911904033, guid: 1bc4508935e434eb4867c367b55cca50, type: 3} propertyPath: m_AnchorMax.y value: 0 @@ -1012,6 +1066,10 @@ PrefabInstance: propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} + - target: {fileID: 7676773602323508701, guid: 1bc4508935e434eb4867c367b55cca50, type: 3} + propertyPath: 'm_ActiveFontFeatures.Array.data[0]' + value: 1801810542 + objectReference: {fileID: 0} - target: {fileID: 7878795380521772600, guid: 1bc4508935e434eb4867c367b55cca50, type: 3} propertyPath: m_AnchorMax.y value: 0 @@ -1028,6 +1086,10 @@ PrefabInstance: propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} + - target: {fileID: 8349060408152716834, guid: 1bc4508935e434eb4867c367b55cca50, type: 3} + propertyPath: 'm_ActiveFontFeatures.Array.data[0]' + value: 1801810542 + objectReference: {fileID: 0} m_RemovedComponents: [] m_RemovedGameObjects: [] m_AddedGameObjects: [] @@ -1058,9 +1120,13 @@ PrefabInstance: propertyPath: m_fontSizeMax value: 58 objectReference: {fileID: 0} + - target: {fileID: 7721113380232533813, guid: addf3685293c35d48a673397c748f116, type: 3} + propertyPath: 'm_ActiveFontFeatures.Array.data[0]' + value: 1801810542 + objectReference: {fileID: 0} - target: {fileID: 7721113380319664578, guid: addf3685293c35d48a673397c748f116, type: 3} propertyPath: m_Name - value: Lobby Start Button + value: Session Start Button objectReference: {fileID: 0} - target: {fileID: 7721113380319664578, guid: addf3685293c35d48a673397c748f116, type: 3} propertyPath: m_IsActive @@ -1222,6 +1288,10 @@ PrefabInstance: serializedVersion: 3 m_TransformParent: {fileID: 6068325059450104507} m_Modifications: + - target: {fileID: 635758218034301578, guid: 0c512555bac5ad3428012496621d5f4c, type: 3} + propertyPath: 'm_ActiveFontFeatures.Array.data[0]' + value: 1801810542 + objectReference: {fileID: 0} - target: {fileID: 2425020540045722527, guid: 0c512555bac5ad3428012496621d5f4c, type: 3} propertyPath: m_IPHostingUI value: @@ -1250,6 +1320,10 @@ PrefabInstance: propertyPath: m_JoinTabButtonTabBlockerTinter value: objectReference: {fileID: 0} + - target: {fileID: 2632516940462403808, guid: 0c512555bac5ad3428012496621d5f4c, type: 3} + propertyPath: 'm_ActiveFontFeatures.Array.data[0]' + value: 1801810542 + objectReference: {fileID: 0} - target: {fileID: 2837639234489633647, guid: 0c512555bac5ad3428012496621d5f4c, type: 3} propertyPath: m_AnchorMax.y value: 0 @@ -1406,6 +1480,14 @@ PrefabInstance: propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} + - target: {fileID: 6221418847513183700, guid: 0c512555bac5ad3428012496621d5f4c, type: 3} + propertyPath: 'm_ActiveFontFeatures.Array.data[0]' + value: 1801810542 + objectReference: {fileID: 0} + - target: {fileID: 8477078941156091232, guid: 0c512555bac5ad3428012496621d5f4c, type: 3} + propertyPath: 'm_ActiveFontFeatures.Array.data[0]' + value: 1801810542 + objectReference: {fileID: 0} - target: {fileID: 8636502446461490653, guid: 0c512555bac5ad3428012496621d5f4c, type: 3} propertyPath: m_AnchorMax.x value: 0 @@ -1436,6 +1518,10 @@ PrefabInstance: serializedVersion: 3 m_TransformParent: {fileID: 6068325059450104507} m_Modifications: + - target: {fileID: 142567138735162684, guid: 4c4e3a02e746c204bb859d2a53a865e3, type: 3} + propertyPath: 'm_ActiveFontFeatures.Array.data[0]' + value: 1801810542 + objectReference: {fileID: 0} - target: {fileID: 305241932145850641, guid: 4c4e3a02e746c204bb859d2a53a865e3, type: 3} propertyPath: m_AnchorMax.y value: 0 @@ -1456,14 +1542,46 @@ PrefabInstance: propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} + - target: {fileID: 420772079678045107, guid: 4c4e3a02e746c204bb859d2a53a865e3, type: 3} + propertyPath: 'm_ActiveFontFeatures.Array.data[0]' + value: 1801810542 + objectReference: {fileID: 0} - target: {fileID: 496999993872493682, guid: 4c4e3a02e746c204bb859d2a53a865e3, type: 3} propertyPath: m_fontSize value: 50 objectReference: {fileID: 0} + - target: {fileID: 496999993872493682, guid: 4c4e3a02e746c204bb859d2a53a865e3, type: 3} + propertyPath: 'm_ActiveFontFeatures.Array.data[0]' + value: 1801810542 + objectReference: {fileID: 0} + - target: {fileID: 1198809863901728126, guid: 4c4e3a02e746c204bb859d2a53a865e3, type: 3} + propertyPath: 'm_ActiveFontFeatures.Array.data[0]' + value: 1801810542 + objectReference: {fileID: 0} - target: {fileID: 1724952364805774005, guid: 4c4e3a02e746c204bb859d2a53a865e3, type: 3} propertyPath: m_fontSize value: 33 objectReference: {fileID: 0} + - target: {fileID: 1724952364805774005, guid: 4c4e3a02e746c204bb859d2a53a865e3, type: 3} + propertyPath: 'm_ActiveFontFeatures.Array.data[0]' + value: 1801810542 + objectReference: {fileID: 0} + - target: {fileID: 1887385345636018689, guid: 4c4e3a02e746c204bb859d2a53a865e3, type: 3} + propertyPath: 'm_ActiveFontFeatures.Array.data[0]' + value: 1801810542 + objectReference: {fileID: 0} + - target: {fileID: 1958720994042495195, guid: 4c4e3a02e746c204bb859d2a53a865e3, type: 3} + propertyPath: 'm_ActiveFontFeatures.Array.data[0]' + value: 1801810542 + objectReference: {fileID: 0} + - target: {fileID: 2267455651107791764, guid: 4c4e3a02e746c204bb859d2a53a865e3, type: 3} + propertyPath: 'm_ActiveFontFeatures.Array.data[0]' + value: 1801810542 + objectReference: {fileID: 0} + - target: {fileID: 3449200610800142136, guid: 4c4e3a02e746c204bb859d2a53a865e3, type: 3} + propertyPath: 'm_ActiveFontFeatures.Array.data[0]' + value: 1801810542 + objectReference: {fileID: 0} - target: {fileID: 4453893802180558433, guid: 4c4e3a02e746c204bb859d2a53a865e3, type: 3} propertyPath: m_AnchoredPosition.y value: 58 @@ -1472,6 +1590,10 @@ PrefabInstance: propertyPath: m_fontSize value: 33 objectReference: {fileID: 0} + - target: {fileID: 5306707511080244411, guid: 4c4e3a02e746c204bb859d2a53a865e3, type: 3} + propertyPath: 'm_ActiveFontFeatures.Array.data[0]' + value: 1801810542 + objectReference: {fileID: 0} - target: {fileID: 5924530127146065184, guid: 4c4e3a02e746c204bb859d2a53a865e3, type: 3} propertyPath: m_Name value: IPPopup @@ -1560,10 +1682,18 @@ PrefabInstance: propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} + - target: {fileID: 6456862980627209339, guid: 4c4e3a02e746c204bb859d2a53a865e3, type: 3} + propertyPath: 'm_ActiveFontFeatures.Array.data[0]' + value: 1801810542 + objectReference: {fileID: 0} - target: {fileID: 7328528642576607773, guid: 4c4e3a02e746c204bb859d2a53a865e3, type: 3} propertyPath: m_fontSize value: 50 objectReference: {fileID: 0} + - target: {fileID: 7328528642576607773, guid: 4c4e3a02e746c204bb859d2a53a865e3, type: 3} + propertyPath: 'm_ActiveFontFeatures.Array.data[0]' + value: 1801810542 + objectReference: {fileID: 0} - target: {fileID: 7353534715922753761, guid: 4c4e3a02e746c204bb859d2a53a865e3, type: 3} propertyPath: m_AnchorMax.y value: 0 @@ -1604,6 +1734,10 @@ PrefabInstance: propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} + - target: {fileID: 8122071153592056310, guid: 4c4e3a02e746c204bb859d2a53a865e3, type: 3} + propertyPath: 'm_ActiveFontFeatures.Array.data[0]' + value: 1801810542 + objectReference: {fileID: 0} m_RemovedComponents: [] m_RemovedGameObjects: [] m_AddedGameObjects: [] @@ -1634,6 +1768,10 @@ PrefabInstance: propertyPath: m_fontSizeMax value: 58 objectReference: {fileID: 0} + - target: {fileID: 7721113380232533813, guid: addf3685293c35d48a673397c748f116, type: 3} + propertyPath: 'm_ActiveFontFeatures.Array.data[0]' + value: 1801810542 + objectReference: {fileID: 0} - target: {fileID: 7721113380319664578, guid: addf3685293c35d48a673397c748f116, type: 3} propertyPath: m_Name value: Profile Button diff --git a/Assets/Prefabs/UI/LobbyUI.prefab b/Assets/Prefabs/UI/SessionUI.prefab similarity index 98% rename from Assets/Prefabs/UI/LobbyUI.prefab rename to Assets/Prefabs/UI/SessionUI.prefab index 8f465cab98..8574296e7f 100644 --- a/Assets/Prefabs/UI/LobbyUI.prefab +++ b/Assets/Prefabs/UI/SessionUI.prefab @@ -35,7 +35,6 @@ RectTransform: - {fileID: 2975638553292857375} - {fileID: 860301207315940462} m_Father: {fileID: 2670926649685416499} - m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 0} @@ -100,7 +99,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 282255004005152861} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 180} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -191,7 +189,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 6702871171647363811} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 0} @@ -249,7 +246,7 @@ GameObject: - component: {fileID: 8582247561407215177} - component: {fileID: 4897371851934052143} m_Layer: 5 - m_Name: Lobby Name Input Field + m_Name: Session Name Input Field m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -270,7 +267,6 @@ RectTransform: - {fileID: 829917324121296096} - {fileID: 720719179126197865} m_Father: {fileID: 2963858370021784928} - m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} @@ -428,7 +424,6 @@ RectTransform: m_Children: - {fileID: 192539373152864728} m_Father: {fileID: 7760409132803330506} - m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} @@ -541,7 +536,7 @@ GameObject: - component: {fileID: 5370165130166260100} - component: {fileID: 2349919044805767479} m_Layer: 5 - m_Name: LobbyCreationUI + m_Name: SessionCreationUI m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -565,7 +560,6 @@ RectTransform: - {fileID: 3851624040064246431} - {fileID: 4250182236641786634} m_Father: {fileID: 244032492905947229} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -584,7 +578,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: a2f076764a76c434dbd08324243a9f2c, type: 3} m_Name: m_EditorClassIdentifier: - m_LobbyNameInputField: {fileID: 4897371851934052143} + m_SessionNameInputField: {fileID: 4897371851934052143} m_LoadingIndicatorObject: {fileID: 6560854408492732499} m_IsPrivate: {fileID: 8780206513702589119} m_CanvasGroup: {fileID: 2349919044805767479} @@ -631,7 +625,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 3521129445966426109} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} @@ -709,15 +702,17 @@ MonoBehaviour: m_lineSpacingMax: 0 m_paragraphSpacing: 0 m_charWidthMaxAdj: 0 - m_enableWordWrapping: 1 + m_TextWrappingMode: 1 m_wordWrappingRatios: 0.4 m_overflowMode: 0 m_linkedTextComponent: {fileID: 0} parentLinkedComponent: {fileID: 0} m_enableKerning: 1 + m_ActiveFontFeatures: 6e72656b m_enableExtraPadding: 0 checkPaddingRequired: 0 m_isRichText: 1 + m_EmojiFallbackSupport: 1 m_parseCtrlCharacters: 1 m_isOrthographic: 1 m_isCullingEnabled: 0 @@ -766,7 +761,6 @@ RectTransform: - {fileID: 2963858370021784928} - {fileID: 2670926649685416499} m_Father: {fileID: 6702871171647363811} - m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -804,7 +798,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 3851624040064246431} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -887,7 +880,6 @@ RectTransform: - {fileID: 4703333743537879339} - {fileID: 5883034356418507601} m_Father: {fileID: 7760409132803330506} - m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} @@ -1048,7 +1040,6 @@ RectTransform: - {fileID: 8655946376249523884} - {fileID: 4128780992227299448} m_Father: {fileID: 7721874466928087582} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} @@ -1139,7 +1130,7 @@ MonoBehaviour: m_Calls: - m_Target: {fileID: 1722388064424237406} m_TargetAssemblyTypeName: BossRoom.Scripts.Client.UI.LobbyUIMediator, Unity.Multiplayer.Samples.BossRoom.Client - m_MethodName: ToggleJoinLobbyUI + m_MethodName: ToggleJoinSessionUI m_Mode: 1 m_Arguments: m_ObjectArgument: {fileID: 0} @@ -1180,7 +1171,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 282255004005152861} - m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -1215,7 +1205,7 @@ MonoBehaviour: m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] - m_text: 'Create Lobby + m_text: 'Create Session ' m_isRightToLeft: 0 @@ -1260,15 +1250,17 @@ MonoBehaviour: m_lineSpacingMax: 0 m_paragraphSpacing: 0 m_charWidthMaxAdj: 0 - m_enableWordWrapping: 1 + m_TextWrappingMode: 1 m_wordWrappingRatios: 0.4 m_overflowMode: 0 m_linkedTextComponent: {fileID: 0} parentLinkedComponent: {fileID: 0} m_enableKerning: 1 + m_ActiveFontFeatures: 6e72656b m_enableExtraPadding: 0 checkPaddingRequired: 0 m_isRichText: 1 + m_EmojiFallbackSupport: 1 m_parseCtrlCharacters: 1 m_isOrthographic: 1 m_isCullingEnabled: 0 @@ -1317,7 +1309,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 4996778416574021528} - m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -1352,7 +1343,7 @@ MonoBehaviour: m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] - m_text: Lobby List + m_text: Session List m_isRightToLeft: 0 m_fontAsset: {fileID: 11400000, guid: 1a8c97d4cbe5134499b26527f8609c7e, type: 2} m_sharedMaterial: {fileID: -466885322316925189, guid: 1a8c97d4cbe5134499b26527f8609c7e, type: 2} @@ -1395,15 +1386,17 @@ MonoBehaviour: m_lineSpacingMax: 0 m_paragraphSpacing: 0 m_charWidthMaxAdj: 0 - m_enableWordWrapping: 1 + m_TextWrappingMode: 1 m_wordWrappingRatios: 0.4 m_overflowMode: 0 m_linkedTextComponent: {fileID: 0} parentLinkedComponent: {fileID: 0} m_enableKerning: 1 + m_ActiveFontFeatures: 6e72656b m_enableExtraPadding: 0 checkPaddingRequired: 0 m_isRichText: 1 + m_EmojiFallbackSupport: 1 m_parseCtrlCharacters: 1 m_isOrthographic: 1 m_isCullingEnabled: 0 @@ -1453,7 +1446,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 4996778416574021528} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -1544,7 +1536,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 2975638553292857375} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -1592,7 +1583,7 @@ MonoBehaviour: m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 - m_Text: Enter lobby code... + m_Text: Enter join code... --- !u!1 &3284084329833472941 GameObject: m_ObjectHideFlags: 0 @@ -1626,7 +1617,6 @@ RectTransform: - {fileID: 4996778416574021528} - {fileID: 282255004005152861} m_Father: {fileID: 6702871171647363811} - m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 1, y: 1} @@ -1707,7 +1697,6 @@ RectTransform: - {fileID: 4078412745237413509} - {fileID: 2417806726195885171} m_Father: {fileID: 7721874466928087582} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} @@ -1798,7 +1787,7 @@ MonoBehaviour: m_Calls: - m_Target: {fileID: 1722388064424237406} m_TargetAssemblyTypeName: BossRoom.Scripts.Client.UI.LobbyUIMediator, Unity.Multiplayer.Samples.BossRoom.Client - m_MethodName: ToggleCreateLobbyUI + m_MethodName: ToggleCreateSessionUI m_Mode: 1 m_Arguments: m_ObjectArgument: {fileID: 0} @@ -1839,7 +1828,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 860301207315940462} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -1917,15 +1905,17 @@ MonoBehaviour: m_lineSpacingMax: 0 m_paragraphSpacing: 0 m_charWidthMaxAdj: 0 - m_enableWordWrapping: 1 + m_TextWrappingMode: 1 m_wordWrappingRatios: 0.4 m_overflowMode: 0 m_linkedTextComponent: {fileID: 0} parentLinkedComponent: {fileID: 0} m_enableKerning: 1 + m_ActiveFontFeatures: 6e72656b m_enableExtraPadding: 0 checkPaddingRequired: 0 m_isRichText: 1 + m_EmojiFallbackSupport: 1 m_parseCtrlCharacters: 1 m_isOrthographic: 1 m_isCullingEnabled: 0 @@ -1974,7 +1964,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 6263258808166174538} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -2052,15 +2041,17 @@ MonoBehaviour: m_lineSpacingMax: 0 m_paragraphSpacing: 0 m_charWidthMaxAdj: 0 - m_enableWordWrapping: 1 + m_TextWrappingMode: 1 m_wordWrappingRatios: 0.4 m_overflowMode: 0 m_linkedTextComponent: {fileID: 0} parentLinkedComponent: {fileID: 0} m_enableKerning: 1 + m_ActiveFontFeatures: 6e72656b m_enableExtraPadding: 0 checkPaddingRequired: 0 m_isRichText: 1 + m_EmojiFallbackSupport: 1 m_parseCtrlCharacters: 1 m_isOrthographic: 1 m_isCullingEnabled: 0 @@ -2109,7 +2100,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 6263258808166174538} - m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0.5} m_AnchorMax: {x: 0, y: 0.5} @@ -2185,7 +2175,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 2975638553292857375} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -2264,7 +2253,6 @@ RectTransform: m_Children: - {fileID: 2234904744820987572} m_Father: {fileID: 514912694380149792} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -2303,7 +2291,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 3521129445966426109} - m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} @@ -2436,7 +2423,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 282255004005152861} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -2528,7 +2514,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 6702871171647363811} - m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 1, y: 1} m_AnchorMax: {x: 1, y: 1} @@ -2666,7 +2651,6 @@ RectTransform: - {fileID: 5444621218174688333} - {fileID: 3902557823681792741} m_Father: {fileID: 5226752220064165541} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -2741,7 +2725,9 @@ Canvas: m_OverrideSorting: 0 m_OverridePixelPerfect: 0 m_SortingBucketNormalizedSize: 0 + m_VertexColorAlwaysGammaSpace: 0 m_AdditionalShaderChannelsFlag: 25 + m_UpdateRectTransformForStandalone: 0 m_SortingLayerID: 0 m_SortingOrder: 0 m_TargetDisplay: 0 @@ -2793,7 +2779,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 3521129445966426109} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} @@ -2871,15 +2856,17 @@ MonoBehaviour: m_lineSpacingMax: 0 m_paragraphSpacing: 0 m_charWidthMaxAdj: 0 - m_enableWordWrapping: 1 + m_TextWrappingMode: 1 m_wordWrappingRatios: 0.4 m_overflowMode: 0 m_linkedTextComponent: {fileID: 0} parentLinkedComponent: {fileID: 0} m_enableKerning: 1 + m_ActiveFontFeatures: 6e72656b m_enableExtraPadding: 0 checkPaddingRequired: 0 m_isRichText: 1 + m_EmojiFallbackSupport: 1 m_parseCtrlCharacters: 1 m_isOrthographic: 1 m_isCullingEnabled: 0 @@ -2929,7 +2916,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 7760409132803330506} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} @@ -3061,7 +3047,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 6702871171647363811} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -3137,7 +3122,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 2670926649685416499} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 1, y: 1} @@ -3194,7 +3178,7 @@ GameObject: - component: {fileID: 5318024624199095249} - component: {fileID: 785373375347833033} m_Layer: 5 - m_Name: EmptyLobbyList (TMP) + m_Name: EmptySessionList (TMP) m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -3213,7 +3197,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 9204749279882807884} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} @@ -3248,7 +3231,7 @@ MonoBehaviour: m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] - m_text: no lobbies + m_text: no sessions m_isRightToLeft: 0 m_fontAsset: {fileID: 11400000, guid: 1a8c97d4cbe5134499b26527f8609c7e, type: 2} m_sharedMaterial: {fileID: -466885322316925189, guid: 1a8c97d4cbe5134499b26527f8609c7e, type: 2} @@ -3291,15 +3274,17 @@ MonoBehaviour: m_lineSpacingMax: 0 m_paragraphSpacing: 0 m_charWidthMaxAdj: 0 - m_enableWordWrapping: 1 + m_TextWrappingMode: 1 m_wordWrappingRatios: 0.4 m_overflowMode: 0 m_linkedTextComponent: {fileID: 0} parentLinkedComponent: {fileID: 0} m_enableKerning: 1 + m_ActiveFontFeatures: 6e72656b m_enableExtraPadding: 0 checkPaddingRequired: 0 m_isRichText: 1 + m_EmojiFallbackSupport: 1 m_parseCtrlCharacters: 1 m_isOrthographic: 1 m_isCullingEnabled: 0 @@ -3348,7 +3333,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 3632019498769524828} - m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} @@ -3426,15 +3410,17 @@ MonoBehaviour: m_lineSpacingMax: 0 m_paragraphSpacing: 0 m_charWidthMaxAdj: 0 - m_enableWordWrapping: 1 + m_TextWrappingMode: 1 m_wordWrappingRatios: 0.4 m_overflowMode: 0 m_linkedTextComponent: {fileID: 0} parentLinkedComponent: {fileID: 0} m_enableKerning: 1 + m_ActiveFontFeatures: 6e72656b m_enableExtraPadding: 0 checkPaddingRequired: 0 m_isRichText: 1 + m_EmojiFallbackSupport: 1 m_parseCtrlCharacters: 1 m_isOrthographic: 1 m_isCullingEnabled: 0 @@ -3465,7 +3451,7 @@ GameObject: - component: {fileID: 2752597813987140551} - component: {fileID: 8736528447829798099} m_Layer: 5 - m_Name: Create Lobby Button + m_Name: Create Session Button m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -3485,7 +3471,6 @@ RectTransform: m_Children: - {fileID: 8681644285067859282} m_Father: {fileID: 2963858370021784928} - m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} @@ -3617,7 +3602,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 3632019498769524828} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} @@ -3695,15 +3679,17 @@ MonoBehaviour: m_lineSpacingMax: 0 m_paragraphSpacing: 0 m_charWidthMaxAdj: 0 - m_enableWordWrapping: 1 + m_TextWrappingMode: 1 m_wordWrappingRatios: 0.4 m_overflowMode: 0 m_linkedTextComponent: {fileID: 0} parentLinkedComponent: {fileID: 0} m_enableKerning: 1 + m_ActiveFontFeatures: 6e72656b m_enableExtraPadding: 0 checkPaddingRequired: 0 m_isRichText: 1 + m_EmojiFallbackSupport: 1 m_parseCtrlCharacters: 1 m_isOrthographic: 1 m_isCullingEnabled: 0 @@ -3752,7 +3738,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 6263258808166174538} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0.5} m_AnchorMax: {x: 0, y: 0.5} @@ -3828,7 +3813,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 2963858370021784928} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 1, y: 1} @@ -3904,7 +3888,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 3851624040064246431} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -3952,7 +3935,7 @@ MonoBehaviour: m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 - m_Text: Enter your lobby name... + m_Text: Enter your Session name... --- !u!1 &6616621817421405779 GameObject: m_ObjectHideFlags: 0 @@ -3964,7 +3947,7 @@ GameObject: - component: {fileID: 6263258808166174538} - component: {fileID: 8780206513702589119} m_Layer: 5 - m_Name: Private Lobby Toggle + m_Name: Private Session Toggle m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -3986,7 +3969,6 @@ RectTransform: - {fileID: 1076487188656558799} - {fileID: 3606018944305289553} m_Father: {fileID: 2963858370021784928} - m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} @@ -4055,7 +4037,7 @@ GameObject: - component: {fileID: 6702871171647363810} - component: {fileID: 6889764071769254414} m_Layer: 5 - m_Name: LobbyUI + m_Name: SessionUI m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -4081,7 +4063,6 @@ RectTransform: - {fileID: 4279823075853654326} - {fileID: 1176249261847584693} m_Father: {fileID: 0} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -4101,8 +4082,8 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: m_CanvasGroup: {fileID: 6889764071769254414} - m_LobbyJoiningUI: {fileID: 3432713757992463987} - m_LobbyCreationUI: {fileID: 5370165130166260100} + m_SessionJoiningUI: {fileID: 3432713757992463987} + m_SessionCreationUI: {fileID: 5370165130166260100} m_JoinToggleHighlight: {fileID: 6752777071945805011} m_JoinToggleTabBlocker: {fileID: 4806072236846957327} m_CreateToggleHighlight: {fileID: 4585101913867269799} @@ -4171,7 +4152,7 @@ GameObject: - component: {fileID: 3432713757992463987} - component: {fileID: 5782144806807453527} m_Layer: 5 - m_Name: LobbyJoiningUI + m_Name: SessionJoiningUI m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -4194,7 +4175,6 @@ RectTransform: - {fileID: 5226752220064165541} - {fileID: 7760409132803330506} m_Father: {fileID: 244032492905947229} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -4213,11 +4193,11 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 5badc8e4e5a84afeae84746e5199ebaf, type: 3} m_Name: m_EditorClassIdentifier: - m_LobbyListItemPrototype: {fileID: 6844302749700945984} + m_SessionListItemPrototype: {fileID: 6844302749700945984} m_JoinCodeField: {fileID: 8248007993983070476} m_CanvasGroup: {fileID: 5782144806807453527} - m_EmptyLobbyListLabel: {fileID: 785373375347833033} - m_JoinLobbyButton: {fileID: 2758534323255991562} + m_EmptySessionListLabel: {fileID: 785373375347833033} + m_JoinSessionButton: {fileID: 2758534323255991562} --- !u!225 &5782144806807453527 CanvasGroup: m_ObjectHideFlags: 0 @@ -4261,7 +4241,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 2963858370021784928} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 1, y: 1} @@ -4296,7 +4275,7 @@ MonoBehaviour: m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] - m_text: 'Create a new lobby... + m_text: 'Create a new Session... ' m_isRightToLeft: 0 @@ -4341,15 +4320,17 @@ MonoBehaviour: m_lineSpacingMax: 0 m_paragraphSpacing: 0 m_charWidthMaxAdj: 0 - m_enableWordWrapping: 0 + m_TextWrappingMode: 0 m_wordWrappingRatios: 0.4 m_overflowMode: 0 m_linkedTextComponent: {fileID: 0} parentLinkedComponent: {fileID: 0} m_enableKerning: 1 + m_ActiveFontFeatures: 6e72656b m_enableExtraPadding: 0 checkPaddingRequired: 0 m_isRichText: 1 + m_EmojiFallbackSupport: 1 m_parseCtrlCharacters: 1 m_isOrthographic: 1 m_isCullingEnabled: 0 @@ -4400,7 +4381,6 @@ RectTransform: m_Children: - {fileID: 7349595981541475631} m_Father: {fileID: 5226752220064165541} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 1, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -4506,7 +4486,7 @@ GameObject: - component: {fileID: 453327300698636041} - component: {fileID: 3771175507069267251} m_Layer: 5 - m_Name: LobbyList + m_Name: SessionList m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -4526,7 +4506,6 @@ RectTransform: m_Children: - {fileID: 3632019498769524828} m_Father: {fileID: 9204749279882807884} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 1, y: 1} @@ -4604,7 +4583,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 6403041760458951094} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -4682,15 +4660,17 @@ MonoBehaviour: m_lineSpacingMax: 0 m_paragraphSpacing: 0 m_charWidthMaxAdj: 0 - m_enableWordWrapping: 1 + m_TextWrappingMode: 1 m_wordWrappingRatios: 0.4 m_overflowMode: 0 m_linkedTextComponent: {fileID: 0} parentLinkedComponent: {fileID: 0} m_enableKerning: 1 + m_ActiveFontFeatures: 6e72656b m_enableExtraPadding: 0 checkPaddingRequired: 0 m_isRichText: 1 + m_EmojiFallbackSupport: 1 m_parseCtrlCharacters: 1 m_isOrthographic: 1 m_isCullingEnabled: 0 @@ -4719,7 +4699,7 @@ GameObject: - component: {fileID: 5226752220064165541} - component: {fileID: 8781373074404198200} m_Layer: 5 - m_Name: LobbiesPanel + m_Name: SessionsPanel m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -4740,7 +4720,6 @@ RectTransform: - {fileID: 9204749279882807884} - {fileID: 514912694380149792} m_Father: {fileID: 2670926649685416499} - m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -4810,7 +4789,6 @@ RectTransform: m_Children: - {fileID: 5472588618955582370} m_Father: {fileID: 7760409132803330506} - m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} @@ -4942,7 +4920,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 4250182236641786634} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -5020,15 +4997,17 @@ MonoBehaviour: m_lineSpacingMax: 0 m_paragraphSpacing: 0 m_charWidthMaxAdj: 0 - m_enableWordWrapping: 1 + m_TextWrappingMode: 1 m_wordWrappingRatios: 0.4 m_overflowMode: 0 m_linkedTextComponent: {fileID: 0} parentLinkedComponent: {fileID: 0} m_enableKerning: 1 + m_ActiveFontFeatures: 6e72656b m_enableExtraPadding: 0 checkPaddingRequired: 0 m_isRichText: 1 + m_EmojiFallbackSupport: 1 m_parseCtrlCharacters: 1 m_isOrthographic: 1 m_isCullingEnabled: 0 @@ -5077,7 +5056,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 2670926649685416499} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 1, y: 1} @@ -5112,7 +5090,7 @@ MonoBehaviour: m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] - m_text: Join an existing lobby... + m_text: Join an existing Session... m_isRightToLeft: 0 m_fontAsset: {fileID: 11400000, guid: 9641ce046d2227445b9684161a165f68, type: 2} m_sharedMaterial: {fileID: -4106257185398102161, guid: 9641ce046d2227445b9684161a165f68, type: 2} @@ -5155,15 +5133,17 @@ MonoBehaviour: m_lineSpacingMax: 0 m_paragraphSpacing: 0 m_charWidthMaxAdj: 0 - m_enableWordWrapping: 0 + m_TextWrappingMode: 0 m_wordWrappingRatios: 0.4 m_overflowMode: 0 m_linkedTextComponent: {fileID: 0} parentLinkedComponent: {fileID: 0} m_enableKerning: 1 + m_ActiveFontFeatures: 6e72656b m_enableExtraPadding: 0 checkPaddingRequired: 0 m_isRichText: 1 + m_EmojiFallbackSupport: 1 m_parseCtrlCharacters: 1 m_isOrthographic: 1 m_isCullingEnabled: 0 @@ -5214,7 +5194,6 @@ RectTransform: - {fileID: 792957857740898001} - {fileID: 7210379632491551496} m_Father: {fileID: 6702871171647363811} - m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 0} @@ -5278,7 +5257,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 3632019498769524828} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} @@ -5356,15 +5334,17 @@ MonoBehaviour: m_lineSpacingMax: 0 m_paragraphSpacing: 0 m_charWidthMaxAdj: 0 - m_enableWordWrapping: 1 + m_TextWrappingMode: 1 m_wordWrappingRatios: 0.4 m_overflowMode: 1 m_linkedTextComponent: {fileID: 0} parentLinkedComponent: {fileID: 0} m_enableKerning: 1 + m_ActiveFontFeatures: 6e72656b m_enableExtraPadding: 0 checkPaddingRequired: 0 m_isRichText: 1 + m_EmojiFallbackSupport: 1 m_parseCtrlCharacters: 1 m_isOrthographic: 1 m_isCullingEnabled: 0 @@ -5413,7 +5393,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 7349595981541475631} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} @@ -5468,7 +5447,7 @@ GameObject: m_Component: - component: {fileID: 9087430833360061411} m_Layer: 5 - m_Name: LobbyTypeContainer_TK + m_Name: SessionTypeContainer_TK m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -5487,7 +5466,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 7760409132803330506} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} @@ -5509,7 +5487,7 @@ GameObject: - component: {fileID: 6432751663401761397} - component: {fileID: 4034168928220429643} m_Layer: 5 - m_Name: LobbyListItemUI Prototype + m_Name: SessionListItemUI Prototype m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -5531,7 +5509,6 @@ RectTransform: - {fileID: 7878795380521772600} - {fileID: 4492811537154015470} m_Father: {fileID: 3902557823681792741} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} @@ -5550,8 +5527,8 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 83ebc4f31452e4fc1b11263aed913c99, type: 3} m_Name: m_EditorClassIdentifier: - m_lobbyNameText: {fileID: 1583053172819472216} - m_lobbyCountText: {fileID: 1131054124500818674} + m_SessionNameText: {fileID: 1583053172819472216} + m_SessionCountText: {fileID: 1131054124500818674} --- !u!222 &1731687845091873337 CanvasRenderer: m_ObjectHideFlags: 0 @@ -5704,7 +5681,6 @@ RectTransform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 4996778416574021528} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 180} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -5769,6 +5745,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 6702871171647363811} m_Modifications: - target: {fileID: 921942742702944666, guid: 996cbd343fa869b408f74acb84aed786, type: 3} @@ -5860,6 +5837,9 @@ PrefabInstance: value: LoadingSpinner objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 996cbd343fa869b408f74acb84aed786, type: 3} --- !u!224 &1176249261847584693 stripped RectTransform: diff --git a/Assets/Prefabs/UI/LobbyUI.prefab.meta b/Assets/Prefabs/UI/SessionUI.prefab.meta similarity index 100% rename from Assets/Prefabs/UI/LobbyUI.prefab.meta rename to Assets/Prefabs/UI/SessionUI.prefab.meta diff --git a/Assets/Scenes/MainMenu.unity b/Assets/Scenes/MainMenu.unity index f08b37c043..0126dd6798 100644 --- a/Assets/Scenes/MainMenu.unity +++ b/Assets/Scenes/MainMenu.unity @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2f42f44e58e165cddd54ae1a554ec6e13212353e3fbc04756771b9e70f3cf371 -size 71441 +oid sha256:e256bf2f3d5261b155b80e932b7e5d8dafd10280ca37ab83f928b2a47be6311a +size 72339 diff --git a/Assets/Scripts/ApplicationLifecycle/ApplicationController.cs b/Assets/Scripts/ApplicationLifecycle/ApplicationController.cs index 6d92f27131..78cee95d3e 100644 --- a/Assets/Scripts/ApplicationLifecycle/ApplicationController.cs +++ b/Assets/Scripts/ApplicationLifecycle/ApplicationController.cs @@ -41,8 +41,8 @@ protected override void Configure(IContainerBuilder builder) builder.RegisterComponent(m_ConnectionManager); builder.RegisterComponent(m_NetworkManager); - //the following singletons represent the local representations of the lobby that we're in and the user that we are - //they can persist longer than the lifetime of the UI in MainMenu where we set up the lobby that we create or join + // The following singletons represent the local representations of the Session that we're in and the user that we are + // They can persist longer than the lifetime of the UI in MainMenu where we set up the Session that we create or join builder.Register(Lifetime.Singleton); builder.Register(Lifetime.Singleton); @@ -50,31 +50,31 @@ protected override void Configure(IContainerBuilder builder) builder.Register(Lifetime.Singleton); - //these message channels are essential and persist for the lifetime of the lobby and relay services + // These message channels are essential and persist for the lifetime of the Session and relay services // Registering as instance to prevent code stripping on iOS builder.RegisterInstance(new MessageChannel()).AsImplementedInterfaces(); builder.RegisterInstance(new MessageChannel()).AsImplementedInterfaces(); builder.RegisterInstance(new MessageChannel()).AsImplementedInterfaces(); builder.RegisterInstance(new MessageChannel()).AsImplementedInterfaces(); - //these message channels are essential and persist for the lifetime of the lobby and relay services - //they are networked so that the clients can subscribe to those messages that are published by the server + // These message channels are essential and persist for the lifetime of the Session and relay services + // They are networked so that the clients can subscribe to those messages that are published by the server builder.RegisterComponent(new NetworkedMessageChannel()).AsImplementedInterfaces(); builder.RegisterComponent(new NetworkedMessageChannel()).AsImplementedInterfaces(); #if UNITY_EDITOR || DEVELOPMENT_BUILD builder.RegisterComponent(new NetworkedMessageChannel()).AsImplementedInterfaces(); #endif - //this message channel is essential and persists for the lifetime of the lobby and relay services + // This message channel is essential and persists for the lifetime of the Session and relay services builder.RegisterInstance(new MessageChannel()).AsImplementedInterfaces(); - //buffered message channels hold the latest received message in buffer and pass to any new subscribers + // Buffered message channels hold the latest received message in buffer and pass to any new subscribers builder.RegisterInstance(new BufferedMessageChannel()).AsImplementedInterfaces(); - //all the lobby service stuff, bound here so that it persists through scene loads + // All the Session service stuff, bound here so that it persists through scene loads builder.Register(Lifetime.Singleton); //a manager entity that allows us to do anonymous authentication with unity services - //LobbyServiceFacade is registered as entrypoint because it wants a callback after container is built to do it's initialization + // MultiplayerServicesFacade is registered as entrypoint because it wants a callback after container is built to do it's initialization builder.RegisterEntryPoint(Lifetime.Singleton).AsSelf(); } @@ -112,12 +112,12 @@ protected override void OnDestroy() } /// - /// In builds, if we are in a lobby and try to send a Leave request on application quit, it won't go through if we're quitting on the same frame. + /// In builds, if we are in a MultiplayerServicesFacade and try to send a Leave request on application quit, it won't go through if we're quitting on the same frame. /// So, we need to delay just briefly to let the request happen (though we don't need to wait for the result). /// private IEnumerator LeaveBeforeQuit() { - // We want to quit anyways, so if anything happens while trying to leave the Lobby, log the exception then carry on + // We want to quit anyways, so if anything happens while trying to leave the Session, log the exception then carry on try { m_MultiplayerServicesFacade.EndTracking(); diff --git a/Assets/Scripts/ConnectionManagement/ConnectionMethod.cs b/Assets/Scripts/ConnectionManagement/ConnectionMethod.cs index dda99f14a8..da718bda07 100644 --- a/Assets/Scripts/ConnectionManagement/ConnectionMethod.cs +++ b/Assets/Scripts/ConnectionManagement/ConnectionMethod.cs @@ -117,7 +117,7 @@ public override async Task SetupHostConnectionAsync() // Note: MultiplayerSDK refactoring /// - /// UTP's Relay connection setup using the Lobby integration + /// UTP's Relay connection setup using the Session integration /// class ConnectionMethodRelay : ConnectionMethodBase { @@ -149,10 +149,10 @@ public override void SetupClientConnectionAsync() } // TODO SESSIONS: - // When using Lobby with Relay, if a user is disconnected from the Relay server, the server will notify the - // Lobby service and mark the user as disconnected, but will not remove them from the lobby. They then have + // When using Session with Relay, if a user is disconnected from the Relay server, the server will notify the + // Session service and mark the user as disconnected, but will not remove them from the Session. They then have // some time to attempt to reconnect (defined by the "Disconnect removal time" parameter on the dashboard), - // after which they will be removed from the lobby completely. + // after which they will be removed from the Session completely. // See https://docs.unity.com/lobby/reconnect-to-lobby.html var session = await m_MultiplayerServicesFacade.ReconnectToSessionAsync(); var success = session != null; @@ -166,30 +166,6 @@ public override async Task SetupHostConnectionAsync() Debug.Log("Setting up Unity Relay host"); SetConnectionPayload(GetPlayerId(), m_PlayerName); // Need to set connection payload for host as well, as host is a client too - - /*// Create relay allocation - Allocation hostAllocation = await RelayService.Instance.CreateAllocationAsync(m_ConnectionManager.MaxConnectedPlayers, region: null); - var joinCode = await RelayService.Instance.GetJoinCodeAsync(hostAllocation.AllocationId); - - Debug.Log($"server: connection data: {hostAllocation.ConnectionData[0]} {hostAllocation.ConnectionData[1]}, " + - $"allocation ID:{hostAllocation.AllocationId}, region:{hostAllocation.Region}"); - - m_LocalLobby.RelayJoinCode = joinCode; - - // next line enables lobby and relay services integration - await m_LobbyServiceFacade.UpdateLobbyDataAndUnlockAsync(); - await m_LobbyServiceFacade.UpdatePlayerDataAsync(hostAllocation.AllocationIdBytes.ToString(), joinCode);*/ - - // TODO: needed? - /*// Setup UTP with relay connection info - var utp = (UnityTransport)m_ConnectionManager.NetworkManager.NetworkConfig.NetworkTransport; - utp.SetRelayServerData(new RelayServerData(hostAllocation, k_DtlsConnType)); // This is with DTLS enabled for a secure connection - - Debug.Log($"Created relay allocation with join code {m_LocalLobby.RelayJoinCode}");*/ - - // var lobbyCreationAttempt = await m_MultiplayerServicesFacade.TryCreateSessionAsync(m_SessionName, m_ConnectionManager.MaxConnectedPlayers, m_IsPrivate); - - // Debug.Log($"{lobbyCreationAttempt.Success} lobbyCreationAttempt.Lobby.Id: {lobbyCreationAttempt.Session.Id} lobbyCreationAttempt.Lobby.Code {lobbyCreationAttempt.Session.Code}"); } } } diff --git a/Assets/Scripts/ConnectionManagement/ConnectionState/ClientReconnectingState.cs b/Assets/Scripts/ConnectionManagement/ConnectionState/ClientReconnectingState.cs index 3b7d0397e8..90f6e8c3d0 100644 --- a/Assets/Scripts/ConnectionManagement/ConnectionState/ClientReconnectingState.cs +++ b/Assets/Scripts/ConnectionManagement/ConnectionState/ClientReconnectingState.cs @@ -108,8 +108,8 @@ IEnumerator ReconnectCoroutine() m_ReconnectMessagePublisher.Publish(new ReconnectMessage(m_NbAttempts, m_ConnectionManager.NbReconnectAttempts)); // If first attempt, wait some time before attempting to reconnect to give time to services to update - // (i.e. if in a Lobby and the host shuts down unexpectedly, this will give enough time for the lobby to be - // properly deleted so that we don't reconnect to an empty lobby + // (i.e. if in a Session and the host shuts down unexpectedly, this will give enough time for the Session to be + // properly deleted so that we don't reconnect to an empty Session if (m_NbAttempts == 0) { yield return new WaitForSeconds(k_TimeBeforeFirstAttempt); diff --git a/Assets/Scripts/Gameplay/GameState/ClientMainMenuState.cs b/Assets/Scripts/Gameplay/GameState/ClientMainMenuState.cs index f3a022dc02..1f0444f1e4 100644 --- a/Assets/Scripts/Gameplay/GameState/ClientMainMenuState.cs +++ b/Assets/Scripts/Gameplay/GameState/ClientMainMenuState.cs @@ -26,11 +26,11 @@ public class ClientMainMenuState : GameStateBehaviour [SerializeField] NameGenerationData m_NameGenerationData; [SerializeField] - LobbyUIMediator m_LobbyUIMediator; + SessionUIMediator m_SessionUIMediator; [SerializeField] IPUIMediator m_IPUIMediator; [SerializeField] - Button m_LobbyButton; + Button m_SessionButton; [SerializeField] GameObject m_SignInSpinner; [SerializeField] @@ -51,8 +51,8 @@ protected override void Awake() { base.Awake(); - m_LobbyButton.interactable = false; - m_LobbyUIMediator.Hide(); + m_SessionButton.interactable = false; + m_SessionUIMediator.Hide(); if (string.IsNullOrEmpty(Application.cloudProjectId)) { @@ -67,7 +67,7 @@ protected override void Configure(IContainerBuilder builder) { base.Configure(builder); builder.RegisterComponent(m_NameGenerationData); - builder.RegisterComponent(m_LobbyUIMediator); + builder.RegisterComponent(m_SessionUIMediator); builder.RegisterComponent(m_IPUIMediator); } @@ -90,24 +90,18 @@ private async void TrySignIn() private void OnAuthSignIn() { - m_LobbyButton.interactable = true; + m_SessionButton.interactable = true; m_UGSSetupTooltipDetector.enabled = false; m_SignInSpinner.SetActive(false); Debug.Log($"Signed in. Unity Player ID {AuthenticationService.Instance.PlayerId}"); - - // Note: MultiplayerSDK refactoring - //m_LocalUser.ID = AuthenticationService.Instance.PlayerId; - - // The local LobbyUser object will be hooked into UI before the LocalLobby is populated during lobby join, so the LocalLobby must know about it already when that happens. - //m_LocalLobby.AddUser(m_LocalUser); } private void OnSignInFailed() { - if (m_LobbyButton) + if (m_SessionButton) { - m_LobbyButton.interactable = false; + m_SessionButton.interactable = false; m_UGSSetupTooltipDetector.enabled = true; } @@ -125,16 +119,16 @@ protected override void OnDestroy() async void OnProfileChanged() { - m_LobbyButton.interactable = false; + m_SessionButton.interactable = false; m_SignInSpinner.SetActive(true); await m_AuthServiceFacade.SwitchProfileAndReSignInAsync(m_ProfileManager.Profile); - m_LobbyButton.interactable = true; + m_SessionButton.interactable = true; m_SignInSpinner.SetActive(false); Debug.Log($"Signed in. Unity Player ID {AuthenticationService.Instance.PlayerId}"); - // Updating LocalUser and LocalLobby + // Updating LocalUser and LocalSession m_LocalSession.RemoveUser(m_LocalUser); m_LocalUser.ID = AuthenticationService.Instance.PlayerId; m_LocalSession.AddUser(m_LocalUser); @@ -142,13 +136,13 @@ async void OnProfileChanged() public void OnStartClicked() { - m_LobbyUIMediator.ToggleJoinLobbyUI(); - m_LobbyUIMediator.Show(); + m_SessionUIMediator.ToggleJoinSessionUI(); + m_SessionUIMediator.Show(); } public void OnDirectIPClicked() { - m_LobbyUIMediator.Hide(); + m_SessionUIMediator.Hide(); m_IPUIMediator.Show(); } diff --git a/Assets/Scripts/Gameplay/GameState/ServerCharSelectState.cs b/Assets/Scripts/Gameplay/GameState/ServerCharSelectState.cs index e38cf774b1..3bdbc56f8b 100644 --- a/Assets/Scripts/Gameplay/GameState/ServerCharSelectState.cs +++ b/Assets/Scripts/Gameplay/GameState/ServerCharSelectState.cs @@ -23,7 +23,7 @@ public class ServerCharSelectState : GameStateBehaviour public override GameState ActiveState => GameState.CharSelect; public NetworkCharSelection networkCharSelection { get; private set; } - Coroutine m_WaitToEndLobbyCoroutine; + Coroutine m_WaitToEndSessionCoroutine; [Inject] ConnectionManager m_ConnectionManager; @@ -50,10 +50,10 @@ protected override void OnDestroy() void OnClientChangedSeat(ulong clientId, int newSeatIdx, bool lockedIn) { - int idx = FindLobbyPlayerIdx(clientId); + int idx = FindSessionPlayerIdx(clientId); if (idx == -1) { - throw new Exception($"OnClientChangedSeat: client ID {clientId} is not a lobby player and cannot change seats! Shouldn't be here!"); + throw new Exception($"OnClientChangedSeat: client ID {clientId} is not a Session player and cannot change seats! Shouldn't be here!"); } if (networkCharSelection.IsSessionClosed.Value) @@ -112,13 +112,13 @@ void OnClientChangedSeat(ulong clientId, int newSeatIdx, bool lockedIn) } } - CloseLobbyIfReady(); + CloseSessionIfReady(); } /// - /// Returns the index of a client in the master LobbyPlayer list, or -1 if not found + /// Returns the index of a client in the master SessionPlayer list, or -1 if not found /// - int FindLobbyPlayerIdx(ulong clientId) + int FindSessionPlayerIdx(ulong clientId) { for (int i = 0; i < networkCharSelection.sessionPlayers.Count; ++i) { @@ -130,9 +130,9 @@ int FindLobbyPlayerIdx(ulong clientId) /// /// Looks through all our connections and sees if everyone has locked in their choice; - /// if so, we lock in the whole lobby, save state, and begin the transition to gameplay + /// if so, we lock in the whole Session, save state, and begin the transition to gameplay /// - void CloseLobbyIfReady() + void CloseSessionIfReady() { foreach (NetworkCharSelection.SessionPlayerState playerInfo in networkCharSelection.sessionPlayers) { @@ -144,25 +144,25 @@ void CloseLobbyIfReady() networkCharSelection.IsSessionClosed.Value = true; // remember our choices so the next scene can use the info - SaveLobbyResults(); + SaveSessionResults(); // Delay a few seconds to give the UI time to react, then switch scenes - m_WaitToEndLobbyCoroutine = StartCoroutine(WaitToEndLobby()); + m_WaitToEndSessionCoroutine = StartCoroutine(WaitToEndSession()); } /// - /// Cancels the process of closing the lobby, so that if a new player joins, they are able to chose a character. + /// Cancels the process of closing the Session, so that if a new player joins, they are able to choose a character. /// - void CancelCloseLobby() + void CancelCloseSession() { - if (m_WaitToEndLobbyCoroutine != null) + if (m_WaitToEndSessionCoroutine != null) { - StopCoroutine(m_WaitToEndLobbyCoroutine); + StopCoroutine(m_WaitToEndSessionCoroutine); } networkCharSelection.IsSessionClosed.Value = false; } - void SaveLobbyResults() + void SaveSessionResults() { foreach (NetworkCharSelection.SessionPlayerState playerInfo in networkCharSelection.sessionPlayers) { @@ -178,7 +178,7 @@ void SaveLobbyResults() } } - IEnumerator WaitToEndLobby() + IEnumerator WaitToEndSession() { yield return new WaitForSeconds(3); SceneLoaderWrapper.Instance.LoadScene("BossRoom", useNetworkSceneManager: true); @@ -216,7 +216,7 @@ void OnSceneEvent(SceneEvent sceneEvent) { // We need to filter out the event that are not a client has finished loading the scene if (sceneEvent.SceneEventType != SceneEventType.LoadComplete) return; - // When the client finishes loading the Lobby Map, we will need to Seat it + // When the client finishes loading the Session Map, we will need to Seat it SeatNewPlayer(sceneEvent.ClientId); } @@ -229,7 +229,7 @@ int GetAvailablePlayerNumber() return possiblePlayerNumber; } } - // we couldn't get a Player# for this person... which means the lobby is full! + // we couldn't get a Player# for this person... which means the Session is full! return -1; } @@ -250,10 +250,10 @@ bool IsPlayerNumberAvailable(int playerNumber) void SeatNewPlayer(ulong clientId) { - // If lobby is closing and waiting to start the game, cancel to allow that new player to select a character + // If Session is closing and waiting to start the game, cancel to allow that new player to select a character if (networkCharSelection.IsSessionClosed.Value) { - CancelCloseLobby(); + CancelCloseSession(); } SessionPlayerData? sessionPlayerData = SessionManager.Instance.GetPlayerData(clientId); @@ -290,8 +290,8 @@ void OnClientDisconnectCallback(ulong clientId) if (!networkCharSelection.IsSessionClosed.Value) { - // If the lobby is not already closing, close if the remaining players are all ready - CloseLobbyIfReady(); + // If the Session is not already closing, close if the remaining players are all ready + CloseSessionIfReady(); } } } diff --git a/Assets/Scripts/Gameplay/UI/Lobby/LobbyListItemUI.cs b/Assets/Scripts/Gameplay/UI/Lobby/LobbyListItemUI.cs deleted file mode 100644 index f17f8d0893..0000000000 --- a/Assets/Scripts/Gameplay/UI/Lobby/LobbyListItemUI.cs +++ /dev/null @@ -1,36 +0,0 @@ -using System; -using TMPro; -using Unity.BossRoom.UnityServices.Sessions; -using Unity.Services.Multiplayer; -using UnityEngine; -using VContainer; - -namespace Unity.BossRoom.Gameplay.UI -{ - // Note: MultiplayerSDK refactoring - /// - /// An individual Lobby UI in the list of available lobbies` - /// - public class LobbyListItemUI : MonoBehaviour - { - [SerializeField] TextMeshProUGUI m_lobbyNameText; - [SerializeField] TextMeshProUGUI m_lobbyCountText; - - [Inject] LobbyUIMediator m_LobbyUIMediator; - - ISessionInfo m_Data; - - - public void SetData(ISessionInfo data) - { - m_Data = data; - m_lobbyNameText.SetText(data.Name); - m_lobbyCountText.SetText($"{data.MaxPlayers - data.AvailableSlots}/{data.MaxPlayers}"); - } - - public void OnClick() - { - m_LobbyUIMediator.JoinSessionRequest(m_Data); - } - } -} diff --git a/Assets/Scripts/Gameplay/UI/RoomNameBox.cs b/Assets/Scripts/Gameplay/UI/RoomNameBox.cs index 0fd0c9a1e3..ecc4460b47 100644 --- a/Assets/Scripts/Gameplay/UI/RoomNameBox.cs +++ b/Assets/Scripts/Gameplay/UI/RoomNameBox.cs @@ -15,7 +15,7 @@ public class RoomNameBox : MonoBehaviour Button m_CopyToClipboardButton; LocalSession m_LocalSession; - string m_LobbyCode; + string m_SessionCode; [Inject] private void InjectDependencies(LocalSession localSession) @@ -38,8 +38,8 @@ private void UpdateUI(LocalSession localSession) { if (!string.IsNullOrEmpty(localSession.SessionCode)) { - m_LobbyCode = localSession.SessionCode; - m_RoomNameText.text = $"Lobby Code: {m_LobbyCode}"; + m_SessionCode = localSession.SessionCode; + m_RoomNameText.text = $"Session Code: {m_SessionCode}"; gameObject.SetActive(true); m_CopyToClipboardButton.gameObject.SetActive(true); } @@ -51,7 +51,7 @@ private void UpdateUI(LocalSession localSession) public void CopyToClipboard() { - GUIUtility.systemCopyBuffer = m_LobbyCode; + GUIUtility.systemCopyBuffer = m_SessionCode; } } } diff --git a/Assets/Scripts/Gameplay/UI/Lobby.meta b/Assets/Scripts/Gameplay/UI/Session.meta similarity index 100% rename from Assets/Scripts/Gameplay/UI/Lobby.meta rename to Assets/Scripts/Gameplay/UI/Session.meta diff --git a/Assets/Scripts/Gameplay/UI/Lobby/LobbyCreationUI.cs b/Assets/Scripts/Gameplay/UI/Session/SessionCreationUI.cs similarity index 74% rename from Assets/Scripts/Gameplay/UI/Lobby/LobbyCreationUI.cs rename to Assets/Scripts/Gameplay/UI/Session/SessionCreationUI.cs index 5ffcc09f6a..17388c2ed5 100644 --- a/Assets/Scripts/Gameplay/UI/Lobby/LobbyCreationUI.cs +++ b/Assets/Scripts/Gameplay/UI/Session/SessionCreationUI.cs @@ -5,13 +5,13 @@ namespace Unity.BossRoom.Gameplay.UI { - public class LobbyCreationUI : MonoBehaviour + public class SessionCreationUI : MonoBehaviour { - [SerializeField] InputField m_LobbyNameInputField; + [SerializeField] InputField m_SessionNameInputField; [SerializeField] GameObject m_LoadingIndicatorObject; [SerializeField] Toggle m_IsPrivate; [SerializeField] CanvasGroup m_CanvasGroup; - [Inject] LobbyUIMediator m_LobbyUIMediator; + [Inject] SessionUIMediator m_SessionUIMediator; void Awake() { @@ -25,7 +25,7 @@ void EnableUnityRelayUI() public void OnCreateClick() { - m_LobbyUIMediator.CreateSessionRequest(m_LobbyNameInputField.text, m_IsPrivate.isOn); + m_SessionUIMediator.CreateSessionRequest(m_SessionNameInputField.text, m_IsPrivate.isOn); } public void Show() diff --git a/Assets/Scripts/Gameplay/UI/Lobby/LobbyCreationUI.cs.meta b/Assets/Scripts/Gameplay/UI/Session/SessionCreationUI.cs.meta similarity index 100% rename from Assets/Scripts/Gameplay/UI/Lobby/LobbyCreationUI.cs.meta rename to Assets/Scripts/Gameplay/UI/Session/SessionCreationUI.cs.meta diff --git a/Assets/Scripts/Gameplay/UI/Lobby/LobbyJoiningUI.cs b/Assets/Scripts/Gameplay/UI/Session/SessionJoiningUI.cs similarity index 58% rename from Assets/Scripts/Gameplay/UI/Lobby/LobbyJoiningUI.cs rename to Assets/Scripts/Gameplay/UI/Session/SessionJoiningUI.cs index 6426d7ae17..1d97574561 100644 --- a/Assets/Scripts/Gameplay/UI/Lobby/LobbyJoiningUI.cs +++ b/Assets/Scripts/Gameplay/UI/Session/SessionJoiningUI.cs @@ -10,31 +10,31 @@ namespace Unity.BossRoom.Gameplay.UI { /// - /// Handles the list of LobbyListItemUIs and ensures it stays synchronized with the lobby list from the service. + /// Handles the list of SessionListItemUIs and ensures it stays synchronized with the Session list from the service. /// - public class LobbyJoiningUI : MonoBehaviour + public class SessionJoiningUI : MonoBehaviour { [SerializeField] - LobbyListItemUI m_LobbyListItemPrototype; + SessionListItemUI m_SessionListItemPrototype; [SerializeField] InputField m_JoinCodeField; [SerializeField] CanvasGroup m_CanvasGroup; [SerializeField] - Graphic m_EmptyLobbyListLabel; + Graphic m_EmptySessionListLabel; [SerializeField] - Button m_JoinLobbyButton; + Button m_JoinSessionButton; IObjectResolver m_Container; - LobbyUIMediator m_LobbyUIMediator; + SessionUIMediator m_SessionUIMediator; UpdateRunner m_UpdateRunner; - ISubscriber m_LocalLobbiesRefreshedSub; + ISubscriber m_LocalSessionsRefreshedSub; - List m_LobbyListItems = new List(); + List m_SessionListItems = new List(); void Awake() { - m_LobbyListItemPrototype.gameObject.SetActive(false); + m_SessionListItemPrototype.gameObject.SetActive(false); } void OnDisable() @@ -47,24 +47,24 @@ void OnDisable() void OnDestroy() { - if (m_LocalLobbiesRefreshedSub != null) + if (m_LocalSessionsRefreshedSub != null) { - m_LocalLobbiesRefreshedSub.Unsubscribe(UpdateUI); + m_LocalSessionsRefreshedSub.Unsubscribe(UpdateUI); } } [Inject] void InjectDependenciesAndInitialize( IObjectResolver container, - LobbyUIMediator lobbyUIMediator, + SessionUIMediator sessionUIMediator, UpdateRunner updateRunner, - ISubscriber localLobbiesRefreshedSub) + ISubscriber localSessionsRefreshedSub) { m_Container = container; - m_LobbyUIMediator = lobbyUIMediator; + m_SessionUIMediator = sessionUIMediator; m_UpdateRunner = updateRunner; - m_LocalLobbiesRefreshedSub = localLobbiesRefreshedSub; - m_LocalLobbiesRefreshedSub.Subscribe(UpdateUI); + m_LocalSessionsRefreshedSub = localSessionsRefreshedSub; + m_LocalSessionsRefreshedSub.Subscribe(UpdateUI); } /// @@ -73,7 +73,7 @@ void InjectDependenciesAndInitialize( public void OnJoinCodeInputTextChanged() { m_JoinCodeField.text = SanitizeJoinCode(m_JoinCodeField.text); - m_JoinLobbyButton.interactable = m_JoinCodeField.text.Length > 0; + m_JoinSessionButton.interactable = m_JoinCodeField.text.Length > 0; } string SanitizeJoinCode(string dirtyString) @@ -83,18 +83,18 @@ string SanitizeJoinCode(string dirtyString) public void OnJoinButtonPressed() { - m_LobbyUIMediator.JoinSessionWithCodeRequest(SanitizeJoinCode(m_JoinCodeField.text)); + m_SessionUIMediator.JoinSessionWithCodeRequest(SanitizeJoinCode(m_JoinCodeField.text)); } void PeriodicRefresh(float _) { //this is a soft refresh without needing to lock the UI and such - m_LobbyUIMediator.QuerySessionRequest(false); + m_SessionUIMediator.QuerySessionRequest(false); } public void OnRefresh() { - m_LobbyUIMediator.QuerySessionRequest(true); + m_SessionUIMediator.QuerySessionRequest(true); } void UpdateUI(SessionListFetchedMessage message) @@ -103,39 +103,39 @@ void UpdateUI(SessionListFetchedMessage message) for (var i = 0; i < message.LocalSessions.Count; i++) { - var localLobby = message.LocalSessions[i]; - m_LobbyListItems[i].SetData(localLobby); + var localSession = message.LocalSessions[i]; + m_SessionListItems[i].SetData(localSession); } if (message.LocalSessions.Count == 0) { - m_EmptyLobbyListLabel.enabled = true; + m_EmptySessionListLabel.enabled = true; } else { - m_EmptyLobbyListLabel.enabled = false; + m_EmptySessionListLabel.enabled = false; } } void EnsureNumberOfActiveUISlots(int requiredNumber) { - int delta = requiredNumber - m_LobbyListItems.Count; + int delta = requiredNumber - m_SessionListItems.Count; for (int i = 0; i < delta; i++) { - m_LobbyListItems.Add(CreateLobbyListItem()); + m_SessionListItems.Add(CreateSessionListItem()); } - for (int i = 0; i < m_LobbyListItems.Count; i++) + for (int i = 0; i < m_SessionListItems.Count; i++) { - m_LobbyListItems[i].gameObject.SetActive(i < requiredNumber); + m_SessionListItems[i].gameObject.SetActive(i < requiredNumber); } } - LobbyListItemUI CreateLobbyListItem() + SessionListItemUI CreateSessionListItem() { - var listItem = Instantiate(m_LobbyListItemPrototype.gameObject, m_LobbyListItemPrototype.transform.parent) - .GetComponent(); + var listItem = Instantiate(m_SessionListItemPrototype.gameObject, m_SessionListItemPrototype.transform.parent) + .GetComponent(); listItem.gameObject.SetActive(true); m_Container.Inject(listItem); @@ -145,7 +145,7 @@ LobbyListItemUI CreateLobbyListItem() public void OnQuickJoinClicked() { - m_LobbyUIMediator.QuickJoinRequest(); + m_SessionUIMediator.QuickJoinRequest(); } public void Show() diff --git a/Assets/Scripts/Gameplay/UI/Lobby/LobbyJoiningUI.cs.meta b/Assets/Scripts/Gameplay/UI/Session/SessionJoiningUI.cs.meta similarity index 100% rename from Assets/Scripts/Gameplay/UI/Lobby/LobbyJoiningUI.cs.meta rename to Assets/Scripts/Gameplay/UI/Session/SessionJoiningUI.cs.meta diff --git a/Assets/Scripts/Gameplay/UI/Session/SessionListItemUI.cs b/Assets/Scripts/Gameplay/UI/Session/SessionListItemUI.cs new file mode 100644 index 0000000000..e95f17c683 --- /dev/null +++ b/Assets/Scripts/Gameplay/UI/Session/SessionListItemUI.cs @@ -0,0 +1,33 @@ +using System; +using TMPro; +using Unity.Services.Multiplayer; +using UnityEngine; +using VContainer; + +namespace Unity.BossRoom.Gameplay.UI +{ + /// + /// An individual Session UI in the list of available Sessions. + /// + public class SessionListItemUI : MonoBehaviour + { + [SerializeField] TextMeshProUGUI m_SessionNameText; + [SerializeField] TextMeshProUGUI m_SessionCountText; + + [Inject] SessionUIMediator m_SessionUIMediator; + + ISessionInfo m_Data; + + public void SetData(ISessionInfo data) + { + m_Data = data; + m_SessionNameText.SetText(data.Name); + m_SessionCountText.SetText($"{data.MaxPlayers - data.AvailableSlots}/{data.MaxPlayers}"); + } + + public void OnClick() + { + m_SessionUIMediator.JoinSessionRequest(m_Data); + } + } +} diff --git a/Assets/Scripts/Gameplay/UI/Lobby/LobbyListItemUI.cs.meta b/Assets/Scripts/Gameplay/UI/Session/SessionListItemUI.cs.meta similarity index 100% rename from Assets/Scripts/Gameplay/UI/Lobby/LobbyListItemUI.cs.meta rename to Assets/Scripts/Gameplay/UI/Session/SessionListItemUI.cs.meta diff --git a/Assets/Scripts/Gameplay/UI/Lobby/LobbyUIMediator.cs b/Assets/Scripts/Gameplay/UI/Session/SessionUIMediator.cs similarity index 94% rename from Assets/Scripts/Gameplay/UI/Lobby/LobbyUIMediator.cs rename to Assets/Scripts/Gameplay/UI/Session/SessionUIMediator.cs index 14f7c4d45b..50cff030b4 100644 --- a/Assets/Scripts/Gameplay/UI/Lobby/LobbyUIMediator.cs +++ b/Assets/Scripts/Gameplay/UI/Session/SessionUIMediator.cs @@ -12,11 +12,11 @@ namespace Unity.BossRoom.Gameplay.UI { - public class LobbyUIMediator : MonoBehaviour + public class SessionUIMediator : MonoBehaviour { [SerializeField] CanvasGroup m_CanvasGroup; - [SerializeField] LobbyJoiningUI m_LobbyJoiningUI; - [SerializeField] LobbyCreationUI m_LobbyCreationUI; + [SerializeField] SessionJoiningUI m_SessionJoiningUI; + [SerializeField] SessionCreationUI m_SessionCreationUI; [SerializeField] UITinter m_JoinToggleHighlight; [SerializeField] UITinter m_JoinToggleTabBlocker; [SerializeField] UITinter m_CreateToggleHighlight; @@ -219,24 +219,24 @@ public void Hide() { m_CanvasGroup.alpha = 0f; m_CanvasGroup.blocksRaycasts = false; - m_LobbyCreationUI.Hide(); - m_LobbyJoiningUI.Hide(); + m_SessionCreationUI.Hide(); + m_SessionJoiningUI.Hide(); } - public void ToggleJoinLobbyUI() + public void ToggleJoinSessionUI() { - m_LobbyJoiningUI.Show(); - m_LobbyCreationUI.Hide(); + m_SessionJoiningUI.Show(); + m_SessionCreationUI.Hide(); m_JoinToggleHighlight.SetToColor(1); m_JoinToggleTabBlocker.SetToColor(1); m_CreateToggleHighlight.SetToColor(0); m_CreateToggleTabBlocker.SetToColor(0); } - public void ToggleCreateLobbyUI() + public void ToggleCreateSessionUI() { - m_LobbyJoiningUI.Hide(); - m_LobbyCreationUI.Show(); + m_SessionJoiningUI.Hide(); + m_SessionCreationUI.Show(); m_JoinToggleHighlight.SetToColor(0); m_JoinToggleTabBlocker.SetToColor(0); m_CreateToggleHighlight.SetToColor(1); diff --git a/Assets/Scripts/Gameplay/UI/Lobby/LobbyUIMediator.cs.meta b/Assets/Scripts/Gameplay/UI/Session/SessionUIMediator.cs.meta similarity index 100% rename from Assets/Scripts/Gameplay/UI/Lobby/LobbyUIMediator.cs.meta rename to Assets/Scripts/Gameplay/UI/Session/SessionUIMediator.cs.meta diff --git a/Assets/Scripts/Gameplay/UI/UICharSelectPlayerSeat.cs b/Assets/Scripts/Gameplay/UI/UICharSelectPlayerSeat.cs index d79146ac0f..d04609f485 100644 --- a/Assets/Scripts/Gameplay/UI/UICharSelectPlayerSeat.cs +++ b/Assets/Scripts/Gameplay/UI/UICharSelectPlayerSeat.cs @@ -36,7 +36,7 @@ public class UICharSelectPlayerSeat : MonoBehaviour [SerializeField] private CharacterTypeEnum m_CharacterClass; - // just a way to designate which seat we are -- the leftmost seat on the lobby UI is index 0, the next one is index 1, etc. + // just a way to designate which seat we are -- the leftmost seat on the Session UI is index 0, the next one is index 1, etc. private int m_SeatIndex; // playerNumber of who is sitting in this seat right now. 0-based; e.g. this is 0 for Player 1, 1 for Player 2, etc. Meaningless when m_State is Inactive (and in that case it is set to -1 for clarity) diff --git a/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs b/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs index cb35e3bd79..f447e54753 100644 --- a/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs +++ b/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs @@ -232,12 +232,12 @@ void OnSessionChanged() Debug.Log("Session changed."); m_LocalSession.ApplyRemoteData(CurrentUnitySession); - // as client, check if host is still in lobby + // as client, check if host is still in session if (!m_LocalUser.IsHost) { - foreach (var lobbyUser in m_LocalSession.sessionUsers) + foreach (var sessionUser in m_LocalSession.sessionUsers) { - if (lobbyUser.Value.IsHost) + if (sessionUser.Value.IsHost) { return; } From 623a424ec386647b66496ee129496f343a3e203c Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Fri, 25 Oct 2024 17:19:41 +0200 Subject: [PATCH 11/57] fix: change rate limits --- .../UnityServices/Sessions/MultiplayerServicesFacade.cs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs b/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs index f447e54753..51be0fc127 100644 --- a/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs +++ b/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs @@ -45,10 +45,10 @@ public void Start() m_MultiplayerServicesInterface = m_ServiceScope.Container.Resolve(); - //See https://docs.unity.com/lobby/rate-limits.html + //See https://docs.unity.com/ugs/manual/lobby/manual/rate-limits m_RateLimitQuery = new RateLimitCooldown(1f); - m_RateLimitJoin = new RateLimitCooldown(3f); - m_RateLimitQuickJoin = new RateLimitCooldown(10f); + m_RateLimitJoin = new RateLimitCooldown(1f); + m_RateLimitQuickJoin = new RateLimitCooldown(1f); m_RateLimitHost = new RateLimitCooldown(3f); } From aeeee736ada62668ab04e9039641da22e45f40ce Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Fri, 25 Oct 2024 17:20:58 +0200 Subject: [PATCH 12/57] chore: remove obsolete comments --- Assets/Scripts/ConnectionManagement/ConnectionMethod.cs | 3 --- 1 file changed, 3 deletions(-) diff --git a/Assets/Scripts/ConnectionManagement/ConnectionMethod.cs b/Assets/Scripts/ConnectionManagement/ConnectionMethod.cs index da718bda07..c55c744773 100644 --- a/Assets/Scripts/ConnectionManagement/ConnectionMethod.cs +++ b/Assets/Scripts/ConnectionManagement/ConnectionMethod.cs @@ -115,7 +115,6 @@ public override async Task SetupHostConnectionAsync() } } - // Note: MultiplayerSDK refactoring /// /// UTP's Relay connection setup using the Session integration /// @@ -148,7 +147,6 @@ public override void SetupClientConnectionAsync() return (false, false); } - // TODO SESSIONS: // When using Session with Relay, if a user is disconnected from the Relay server, the server will notify the // Session service and mark the user as disconnected, but will not remove them from the Session. They then have // some time to attempt to reconnect (defined by the "Disconnect removal time" parameter on the dashboard), @@ -160,7 +158,6 @@ public override void SetupClientConnectionAsync() return (success, true); // return a success if reconnecting to session returns a session } - // Note: MultiplayerSDK refactoring public override async Task SetupHostConnectionAsync() { Debug.Log("Setting up Unity Relay host"); From f47a14efda3ae9066b3e7b76f5e7c111a9b91190 Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Thu, 31 Oct 2024 10:22:28 +0100 Subject: [PATCH 13/57] fix: prefab references --- Assets/Scenes/MainMenu.unity | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Assets/Scenes/MainMenu.unity b/Assets/Scenes/MainMenu.unity index 0126dd6798..6204ba89b7 100644 --- a/Assets/Scenes/MainMenu.unity +++ b/Assets/Scenes/MainMenu.unity @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e256bf2f3d5261b155b80e932b7e5d8dafd10280ca37ab83f928b2a47be6311a -size 72339 +oid sha256:79bf90e92970834821bfae7eccf2c13845b8f72e544136af41739edd694ca63a +size 72535 From 8b8fe744d54ab101e28933fdf617fd0e31d8cb7a Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Thu, 31 Oct 2024 10:46:26 +0100 Subject: [PATCH 14/57] feat: upgrade project version to 6000.0.24f1 and auto-upgrade packages --- Packages/manifest.json | 33 +++--- Packages/packages-lock.json | 157 ++++++++++++++++++----------- ProjectSettings/ProjectVersion.txt | 4 +- 3 files changed, 115 insertions(+), 79 deletions(-) diff --git a/Packages/manifest.json b/Packages/manifest.json index 7ddbea4eb8..27fa063d1f 100644 --- a/Packages/manifest.json +++ b/Packages/manifest.json @@ -1,31 +1,32 @@ { "dependencies": { "com.unity.2d.sprite": "1.0.0", - "com.unity.ai.navigation": "1.1.5", - "com.unity.cinemachine": "2.9.5", - "com.unity.collab-proxy": "2.3.1", - "com.unity.ide.rider": "3.0.28", + "com.unity.ai.navigation": "2.0.4", + "com.unity.cinemachine": "2.10.1", + "com.unity.collab-proxy": "2.5.2", + "com.unity.ide.rider": "3.0.31", "com.unity.ide.visualstudio": "2.0.22", "com.unity.ide.vscode": "1.2.5", "com.unity.learn.iet-framework": "4.0.2", "com.unity.learn.iet-framework.authoring": "1.2.2", - "com.unity.memoryprofiler": "1.1.0", - "com.unity.multiplayer.tools": "2.0.0-pre.3", - "com.unity.netcode.gameobjects": "1.8.1", + "com.unity.memoryprofiler": "1.1.1", + "com.unity.multiplayer.center": "1.0.0", + "com.unity.multiplayer.tools": "2.2.1", + "com.unity.netcode.gameobjects": "1.11.0", "com.unity.performance.profile-analyzer": "1.2.2", "com.unity.postprocessing": "3.4.0", - "com.unity.render-pipelines.universal": "14.0.10", - "com.unity.services.authentication": "2.7.2", - "com.unity.services.lobby": "1.1.0", + "com.unity.render-pipelines.universal": "17.0.3", + "com.unity.services.authentication": "3.3.3", + "com.unity.services.lobby": "1.2.2", "com.unity.services.relay": "1.0.5", - "com.unity.test-framework": "1.1.33", - "com.unity.textmeshpro": "3.0.6", - "com.unity.timeline": "1.7.6", - "com.unity.toolchain.macos-x86_64-linux-x86_64": "2.0.4", - "com.unity.transport": "2.0.2", - "com.unity.ugui": "1.0.0", + "com.unity.test-framework": "1.4.5", + "com.unity.timeline": "1.8.7", + "com.unity.toolchain.macos-x86_64-linux-x86_64": "2.0.9", + "com.unity.transport": "2.3.0", + "com.unity.ugui": "2.0.0", "com.veriorpies.parrelsync": "https://github.com/VeriorPies/ParrelSync.git?path=/ParrelSync#bb3d5067e49e403d8b8ba15c036d313b4dd2c696", "jp.hadashikick.vcontainer": "1.11.0", + "com.unity.modules.accessibility": "1.0.0", "com.unity.modules.ai": "1.0.0", "com.unity.modules.androidjni": "1.0.0", "com.unity.modules.animation": "1.0.0", diff --git a/Packages/packages-lock.json b/Packages/packages-lock.json index 4380e29cd0..cd91bcfe8a 100644 --- a/Packages/packages-lock.json +++ b/Packages/packages-lock.json @@ -7,7 +7,7 @@ "dependencies": {} }, "com.unity.ai.navigation": { - "version": "1.1.5", + "version": "2.0.4", "depth": 0, "source": "registry", "dependencies": { @@ -16,7 +16,7 @@ "url": "https://packages.unity.com" }, "com.unity.burst": { - "version": "1.8.13", + "version": "1.8.18", "depth": 1, "source": "registry", "dependencies": { @@ -26,7 +26,7 @@ "url": "https://packages.unity.com" }, "com.unity.cinemachine": { - "version": "2.9.5", + "version": "2.10.1", "depth": 0, "source": "registry", "dependencies": { @@ -35,20 +35,21 @@ "url": "https://packages.unity.com" }, "com.unity.collab-proxy": { - "version": "2.3.1", + "version": "2.5.2", "depth": 0, "source": "registry", "dependencies": {}, "url": "https://packages.unity.com" }, "com.unity.collections": { - "version": "2.1.4", + "version": "2.5.1", "depth": 1, "source": "registry", "dependencies": { - "com.unity.burst": "1.8.4", + "com.unity.burst": "1.8.17", + "com.unity.test-framework": "1.4.5", "com.unity.nuget.mono-cecil": "1.11.4", - "com.unity.modules.unityanalytics": "1.0.0" + "com.unity.test-framework.performance": "3.0.3" }, "url": "https://packages.unity.com" }, @@ -60,14 +61,14 @@ "url": "https://packages.unity.com" }, "com.unity.ext.nunit": { - "version": "1.0.6", + "version": "2.0.5", "depth": 1, "source": "registry", "dependencies": {}, "url": "https://packages.unity.com" }, "com.unity.ide.rider": { - "version": "3.0.28", + "version": "3.0.31", "depth": 0, "source": "registry", "dependencies": { @@ -111,14 +112,14 @@ "url": "https://packages.unity.com" }, "com.unity.mathematics": { - "version": "1.2.6", + "version": "1.3.2", "depth": 1, "source": "registry", "dependencies": {}, "url": "https://packages.unity.com" }, "com.unity.memoryprofiler": { - "version": "1.1.0", + "version": "1.1.1", "depth": 0, "source": "registry", "dependencies": { @@ -126,6 +127,14 @@ }, "url": "https://packages.unity.com" }, + "com.unity.multiplayer.center": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.uielements": "1.0.0" + } + }, "com.unity.multiplayer.samples.coop": { "version": "file:com.unity.multiplayer.samples.coop", "depth": 0, @@ -138,22 +147,22 @@ } }, "com.unity.multiplayer.tools": { - "version": "2.0.0-pre.3", + "version": "2.2.1", "depth": 0, "source": "registry", "dependencies": { - "com.unity.burst": "1.6.6", - "com.unity.collections": "1.1.0", - "com.unity.mathematics": "1.2.6", - "com.unity.profiling.core": "1.0.0-pre.1", - "com.unity.nuget.mono-cecil": "1.10.1", + "com.unity.burst": "1.8.17", + "com.unity.collections": "2.4.0", + "com.unity.mathematics": "1.3.1", + "com.unity.profiling.core": "1.0.2", + "com.unity.nuget.mono-cecil": "1.11.4", "com.unity.modules.uielements": "1.0.0", - "com.unity.nuget.newtonsoft-json": "2.0.0" + "com.unity.nuget.newtonsoft-json": "3.2.1" }, "url": "https://packages.unity.com" }, "com.unity.netcode.gameobjects": { - "version": "1.8.1", + "version": "1.11.0", "depth": 0, "source": "registry", "dependencies": { @@ -200,34 +209,46 @@ "url": "https://packages.unity.com" }, "com.unity.render-pipelines.core": { - "version": "14.0.11", + "version": "17.0.3", "depth": 1, "source": "builtin", "dependencies": { - "com.unity.ugui": "1.0.0", + "com.unity.burst": "1.8.14", + "com.unity.mathematics": "1.3.2", + "com.unity.ugui": "2.0.0", + "com.unity.collections": "2.4.3", "com.unity.modules.physics": "1.0.0", "com.unity.modules.terrain": "1.0.0", - "com.unity.modules.jsonserialize": "1.0.0" + "com.unity.modules.jsonserialize": "1.0.0", + "com.unity.rendering.light-transport": "1.0.1" } }, "com.unity.render-pipelines.universal": { - "version": "14.0.10", + "version": "17.0.3", "depth": 0, "source": "builtin", "dependencies": { - "com.unity.mathematics": "1.2.1", - "com.unity.burst": "1.8.9", - "com.unity.render-pipelines.core": "14.0.11", - "com.unity.shadergraph": "14.0.11", - "com.unity.render-pipelines.universal-config": "14.0.9" + "com.unity.render-pipelines.core": "17.0.3", + "com.unity.shadergraph": "17.0.3", + "com.unity.render-pipelines.universal-config": "17.0.3" } }, "com.unity.render-pipelines.universal-config": { - "version": "14.0.10", + "version": "17.0.3", "depth": 1, "source": "builtin", "dependencies": { - "com.unity.render-pipelines.core": "14.0.10" + "com.unity.render-pipelines.core": "17.0.3" + } + }, + "com.unity.rendering.light-transport": { + "version": "1.0.1", + "depth": 2, + "source": "builtin", + "dependencies": { + "com.unity.collections": "2.2.0", + "com.unity.mathematics": "1.2.4", + "com.unity.modules.terrain": "1.0.0" } }, "com.unity.searcher": { @@ -238,19 +259,19 @@ "url": "https://packages.unity.com" }, "com.unity.services.authentication": { - "version": "2.7.2", + "version": "3.3.3", "depth": 0, "source": "registry", "dependencies": { "com.unity.ugui": "1.0.0", - "com.unity.services.core": "1.10.1", + "com.unity.services.core": "1.13.0", "com.unity.nuget.newtonsoft-json": "3.2.1", "com.unity.modules.unitywebrequest": "1.0.0" }, "url": "https://packages.unity.com" }, "com.unity.services.core": { - "version": "1.12.5", + "version": "1.13.0", "depth": 1, "source": "registry", "dependencies": { @@ -261,15 +282,15 @@ "url": "https://packages.unity.com" }, "com.unity.services.lobby": { - "version": "1.1.0", + "version": "1.2.2", "depth": 0, "source": "registry", "dependencies": { - "com.unity.services.core": "1.8.2", - "com.unity.services.wire": "1.1.8", + "com.unity.services.core": "1.12.5", + "com.unity.services.wire": "1.2.6", "com.unity.nuget.newtonsoft-json": "3.0.2", "com.unity.modules.unitywebrequest": "1.0.0", - "com.unity.services.authentication": "2.1.1", + "com.unity.services.authentication": "2.7.4", "com.unity.modules.unitywebrequestwww": "1.0.0", "com.unity.modules.unitywebrequestaudio": "1.0.0", "com.unity.modules.unitywebrequesttexture": "1.0.0", @@ -309,13 +330,13 @@ "url": "https://packages.unity.com" }, "com.unity.services.wire": { - "version": "1.2.3", + "version": "1.2.7", "depth": 1, "source": "registry", "dependencies": { - "com.unity.services.core": "1.12.4", + "com.unity.services.core": "1.12.5", "com.unity.nuget.newtonsoft-json": "3.2.1", - "com.unity.services.authentication": "2.7.2" + "com.unity.services.authentication": "2.7.4" }, "url": "https://packages.unity.com" }, @@ -327,52 +348,53 @@ "url": "https://packages.unity.com" }, "com.unity.shadergraph": { - "version": "14.0.11", + "version": "17.0.3", "depth": 1, "source": "builtin", "dependencies": { - "com.unity.render-pipelines.core": "14.0.11", + "com.unity.render-pipelines.core": "17.0.3", "com.unity.searcher": "4.9.2" } }, "com.unity.sysroot": { - "version": "2.0.5", + "version": "2.0.10", "depth": 1, "source": "registry", "dependencies": {}, "url": "https://packages.unity.com" }, "com.unity.sysroot.linux-x86_64": { - "version": "2.0.4", + "version": "2.0.9", "depth": 1, "source": "registry", "dependencies": { - "com.unity.sysroot": "2.0.5" + "com.unity.sysroot": "2.0.10" }, "url": "https://packages.unity.com" }, "com.unity.test-framework": { - "version": "1.1.33", + "version": "1.4.5", "depth": 0, "source": "registry", "dependencies": { - "com.unity.ext.nunit": "1.0.6", + "com.unity.ext.nunit": "2.0.3", "com.unity.modules.imgui": "1.0.0", "com.unity.modules.jsonserialize": "1.0.0" }, "url": "https://packages.unity.com" }, - "com.unity.textmeshpro": { - "version": "3.0.6", - "depth": 0, + "com.unity.test-framework.performance": { + "version": "3.0.3", + "depth": 2, "source": "registry", "dependencies": { - "com.unity.ugui": "1.0.0" + "com.unity.test-framework": "1.1.31", + "com.unity.modules.jsonserialize": "1.0.0" }, "url": "https://packages.unity.com" }, "com.unity.timeline": { - "version": "1.7.6", + "version": "1.8.7", "depth": 0, "source": "registry", "dependencies": { @@ -384,28 +406,28 @@ "url": "https://packages.unity.com" }, "com.unity.toolchain.macos-x86_64-linux-x86_64": { - "version": "2.0.4", + "version": "2.0.9", "depth": 0, "source": "registry", "dependencies": { - "com.unity.sysroot": "2.0.5", - "com.unity.sysroot.linux-x86_64": "2.0.4" + "com.unity.sysroot": "2.0.10", + "com.unity.sysroot.linux-x86_64": "2.0.9" }, "url": "https://packages.unity.com" }, "com.unity.transport": { - "version": "2.0.2", + "version": "2.3.0", "depth": 0, "source": "registry", "dependencies": { - "com.unity.burst": "1.8.4", - "com.unity.collections": "2.1.4", - "com.unity.mathematics": "1.2.6" + "com.unity.burst": "1.8.12", + "com.unity.collections": "2.2.1", + "com.unity.mathematics": "1.3.1" }, "url": "https://packages.unity.com" }, "com.unity.ugui": { - "version": "1.0.0", + "version": "2.0.0", "depth": 0, "source": "builtin", "dependencies": { @@ -429,6 +451,12 @@ }, "url": "https://package.openupm.com" }, + "com.unity.modules.accessibility": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, "com.unity.modules.ai": { "version": "1.0.0", "depth": 0, @@ -476,6 +504,12 @@ "com.unity.modules.animation": "1.0.0" } }, + "com.unity.modules.hierarchycore": { + "version": "1.0.0", + "depth": 1, + "source": "builtin", + "dependencies": {} + }, "com.unity.modules.imageconversion": { "version": "1.0.0", "depth": 0, @@ -564,7 +598,8 @@ "dependencies": { "com.unity.modules.ui": "1.0.0", "com.unity.modules.imgui": "1.0.0", - "com.unity.modules.jsonserialize": "1.0.0" + "com.unity.modules.jsonserialize": "1.0.0", + "com.unity.modules.hierarchycore": "1.0.0" } }, "com.unity.modules.umbra": { diff --git a/ProjectSettings/ProjectVersion.txt b/ProjectSettings/ProjectVersion.txt index 9efb20c7a9..29589483d0 100644 --- a/ProjectSettings/ProjectVersion.txt +++ b/ProjectSettings/ProjectVersion.txt @@ -1,2 +1,2 @@ -m_EditorVersion: 2022.3.27f1 -m_EditorVersionWithRevision: 2022.3.27f1 (73effa14754f) +m_EditorVersion: 6000.0.24f1 +m_EditorVersionWithRevision: 6000.0.24f1 (11fa355cd605) From 0861205c4bc5282f08ddcc58f756660ca1b3fe43 Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Thu, 31 Oct 2024 10:47:08 +0100 Subject: [PATCH 15/57] feat: auto-upgrade project settings and package assets --- .../Net/RNSM/RNSM Panel Settings.asset | 4 +- ProjectSettings/GraphicsSettings.asset | 4 +- ProjectSettings/MultiplayerManager.asset | 3 + .../Settings.json | 4 +- ProjectSettings/ProjectSettings.asset | 4 +- ProjectSettings/SceneTemplateSettings.json | 97 ++++++------------- ProjectSettings/ShaderGraphSettings.asset | 4 +- ProjectSettings/TagManager.asset | 4 +- ProjectSettings/URPProjectSettings.asset | 2 +- 9 files changed, 44 insertions(+), 82 deletions(-) create mode 100644 ProjectSettings/MultiplayerManager.asset diff --git a/Packages/com.unity.multiplayer.samples.coop/Utilities/Net/RNSM/RNSM Panel Settings.asset b/Packages/com.unity.multiplayer.samples.coop/Utilities/Net/RNSM/RNSM Panel Settings.asset index 08c9fa8718..388134a19d 100644 --- a/Packages/com.unity.multiplayer.samples.coop/Utilities/Net/RNSM/RNSM Panel Settings.asset +++ b/Packages/com.unity.multiplayer.samples.coop/Utilities/Net/RNSM/RNSM Panel Settings.asset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:18d4006445e63eea32af095e61207d100b8441840e7b2db8fdf8fe83b44aba3c -size 1256 +oid sha256:5f0ffde61371799f9a65b96ac680b14358aaa8a96efb9a4f975c20d28a92e8f6 +size 1447 diff --git a/ProjectSettings/GraphicsSettings.asset b/ProjectSettings/GraphicsSettings.asset index 6b3f04ccb0..8ad9e81355 100644 --- a/ProjectSettings/GraphicsSettings.asset +++ b/ProjectSettings/GraphicsSettings.asset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b871b6cbfdde40d5380bf9a12ed50bcc4132841e37811a6953a60e76e4dbb3a1 -size 3953 +oid sha256:c7cec3c146cbb300673f75dd5464cd23953c4ca2ccfd7d9aa38cf410d6bd5b5e +size 3949 diff --git a/ProjectSettings/MultiplayerManager.asset b/ProjectSettings/MultiplayerManager.asset new file mode 100644 index 0000000000..a241e60c46 --- /dev/null +++ b/ProjectSettings/MultiplayerManager.asset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aba89fd1a1ddad182727ad82727e536d27372e90328a8196da2a4560398983dd +size 157 diff --git a/ProjectSettings/Packages/com.unity.learn.iet-framework/Settings.json b/ProjectSettings/Packages/com.unity.learn.iet-framework/Settings.json index 55c62ed3d3..843a7464c1 100644 --- a/ProjectSettings/Packages/com.unity.learn.iet-framework/Settings.json +++ b/ProjectSettings/Packages/com.unity.learn.iet-framework/Settings.json @@ -9,8 +9,8 @@ { "type": "System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089", "key": "IET.DisplayWelcomeDialogOnStartup", - "value": "{\"m_Value\":true}" + "value": "{\"m_Value\":false}" } ] } -} +} \ No newline at end of file diff --git a/ProjectSettings/ProjectSettings.asset b/ProjectSettings/ProjectSettings.asset index 704d423463..ecac034676 100644 --- a/ProjectSettings/ProjectSettings.asset +++ b/ProjectSettings/ProjectSettings.asset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:64886b811e9b46e1e4fb83a6f7da286f1a8b2f65d5c90aacbb5d507dc8b0d856 -size 27139 +oid sha256:575f0b4ef595b79bd5cb4c34b1d19acb30209e68323c111bdaa4f82230b359a0 +size 27731 diff --git a/ProjectSettings/SceneTemplateSettings.json b/ProjectSettings/SceneTemplateSettings.json index e6b1d38eac..cdbbb54057 100644 --- a/ProjectSettings/SceneTemplateSettings.json +++ b/ProjectSettings/SceneTemplateSettings.json @@ -9,164 +9,123 @@ { "userAdded": false, "type": "UnityEngine.AnimationClip", - "ignore": false, - "defaultInstantiationMode": 0, - "supportsModification": true + "defaultInstantiationMode": 0 }, { "userAdded": false, "type": "UnityEditor.Animations.AnimatorController", - "ignore": false, - "defaultInstantiationMode": 0, - "supportsModification": true + "defaultInstantiationMode": 0 }, { "userAdded": false, "type": "UnityEngine.AnimatorOverrideController", - "ignore": false, - "defaultInstantiationMode": 0, - "supportsModification": true + "defaultInstantiationMode": 0 }, { "userAdded": false, "type": "UnityEditor.Audio.AudioMixerController", - "ignore": false, - "defaultInstantiationMode": 0, - "supportsModification": true + "defaultInstantiationMode": 0 }, { "userAdded": false, "type": "UnityEngine.ComputeShader", - "ignore": true, - "defaultInstantiationMode": 1, - "supportsModification": true + "defaultInstantiationMode": 1 }, { "userAdded": false, "type": "UnityEngine.Cubemap", - "ignore": false, - "defaultInstantiationMode": 0, - "supportsModification": true + "defaultInstantiationMode": 0 }, { "userAdded": false, "type": "UnityEngine.GameObject", - "ignore": false, - "defaultInstantiationMode": 0, - "supportsModification": true + "defaultInstantiationMode": 0 }, { "userAdded": false, "type": "UnityEditor.LightingDataAsset", - "ignore": false, - "defaultInstantiationMode": 0, - "supportsModification": false + "defaultInstantiationMode": 0 }, { "userAdded": false, "type": "UnityEngine.LightingSettings", - "ignore": false, - "defaultInstantiationMode": 0, - "supportsModification": true + "defaultInstantiationMode": 0 }, { "userAdded": false, "type": "UnityEngine.Material", - "ignore": false, - "defaultInstantiationMode": 0, - "supportsModification": true + "defaultInstantiationMode": 0 }, { "userAdded": false, "type": "UnityEditor.MonoScript", - "ignore": true, - "defaultInstantiationMode": 1, - "supportsModification": true + "defaultInstantiationMode": 1 }, { "userAdded": false, "type": "UnityEngine.PhysicMaterial", - "ignore": false, - "defaultInstantiationMode": 0, - "supportsModification": true + "defaultInstantiationMode": 0 + }, + { + "userAdded": false, + "type": "UnityEngine.PhysicsMaterial", + "defaultInstantiationMode": 0 }, { "userAdded": false, "type": "UnityEngine.PhysicsMaterial2D", - "ignore": false, - "defaultInstantiationMode": 0, - "supportsModification": true + "defaultInstantiationMode": 0 }, { "userAdded": false, "type": "UnityEngine.Rendering.PostProcessing.PostProcessProfile", - "ignore": false, - "defaultInstantiationMode": 0, - "supportsModification": true + "defaultInstantiationMode": 0 }, { "userAdded": false, "type": "UnityEngine.Rendering.PostProcessing.PostProcessResources", - "ignore": false, - "defaultInstantiationMode": 0, - "supportsModification": true + "defaultInstantiationMode": 0 }, { "userAdded": false, "type": "UnityEngine.Rendering.VolumeProfile", - "ignore": false, - "defaultInstantiationMode": 0, - "supportsModification": true + "defaultInstantiationMode": 0 }, { "userAdded": false, "type": "UnityEditor.SceneAsset", - "ignore": false, - "defaultInstantiationMode": 0, - "supportsModification": false + "defaultInstantiationMode": 0 }, { "userAdded": false, "type": "UnityEngine.Shader", - "ignore": true, - "defaultInstantiationMode": 1, - "supportsModification": true + "defaultInstantiationMode": 1 }, { "userAdded": false, "type": "UnityEngine.ShaderVariantCollection", - "ignore": true, - "defaultInstantiationMode": 1, - "supportsModification": true + "defaultInstantiationMode": 1 }, { "userAdded": false, "type": "UnityEngine.Texture", - "ignore": false, - "defaultInstantiationMode": 0, - "supportsModification": true + "defaultInstantiationMode": 0 }, { "userAdded": false, "type": "UnityEngine.Texture2D", - "ignore": false, - "defaultInstantiationMode": 0, - "supportsModification": true + "defaultInstantiationMode": 0 }, { "userAdded": false, "type": "UnityEngine.Timeline.TimelineAsset", - "ignore": false, - "defaultInstantiationMode": 0, - "supportsModification": true + "defaultInstantiationMode": 0 } ], "defaultDependencyTypeInfo": { "userAdded": false, "type": "", - "ignore": false, - "defaultInstantiationMode": 1, - "supportsModification": true + "defaultInstantiationMode": 1 }, "newSceneOverride": 0 } \ No newline at end of file diff --git a/ProjectSettings/ShaderGraphSettings.asset b/ProjectSettings/ShaderGraphSettings.asset index f4a219d763..62cf15dffd 100644 --- a/ProjectSettings/ShaderGraphSettings.asset +++ b/ProjectSettings/ShaderGraphSettings.asset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:dd7b0e5c5b40aea5d5c546731cb576959d0829155cddf50e862a0be072195ca9 -size 489 +oid sha256:773803237466ffe9bbfed9ecef9bbe25f63196dd47ab6b3003f0cd1649fd2bd0 +size 524 diff --git a/ProjectSettings/TagManager.asset b/ProjectSettings/TagManager.asset index 260d9c8165..e1eb77d6c3 100644 --- a/ProjectSettings/TagManager.asset +++ b/ProjectSettings/TagManager.asset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8c80414c6128b1578c110d3ad72690943f5bddac547991cf54d55b66ce3c0960 -size 671 +oid sha256:14258a72bdb9b78c1e9c978fd6007b6b9a2917f1c946204952c1bfd318f0978e +size 840 diff --git a/ProjectSettings/URPProjectSettings.asset b/ProjectSettings/URPProjectSettings.asset index dfca260c9c..2572cd60e3 100644 --- a/ProjectSettings/URPProjectSettings.asset +++ b/ProjectSettings/URPProjectSettings.asset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3e9d9f824875297ef6b9315fa7a3ac7ec1b047042395404a23c368fc971a8f3e +oid sha256:a3a626cb529ccfc0a82e388b8cd32bc60888f7226c33412fad3bc50aba802cd7 size 410 From 13be8afe05f0e0ffce00c63873351313d59921e5 Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Thu, 31 Oct 2024 10:47:29 +0100 Subject: [PATCH 16/57] feat: auto-upgrade assets --- Assets/DefaultVolumeProfile.asset | 3 + Assets/DefaultVolumeProfile.asset.meta | 8 + .../Material/Characters/Character_Shadow.mat | 4 +- .../Material/Characters/Enemy_Eyes_sheet.mat | 4 +- .../Material/Characters/Enemy_Mouth_sheet.mat | 4 +- .../Material/Characters/Hero_Eyes_sheet.mat | 4 +- .../Material/Characters/Hero_Mouth_sheet.mat | 4 +- .../Characters/Toon/Hair_Archer_Boy.mat | 6 +- .../Characters/Toon/Hair_Archer_Girl.mat | 6 +- .../Characters/Toon/Hair_Mage_Boy.mat | 6 +- .../Characters/Toon/Hair_Mage_Girl.mat | 6 +- .../Characters/Toon/Hair_Rogue_Boy.mat | 6 +- .../Characters/Toon/Hair_Rogue_Girl.mat | 6 +- .../Characters/Toon/Hair_Tank_Boy.mat | 6 +- .../Characters/Toon/Hair_Tank_Girl.mat | 6 +- .../Characters/Toon/Head_Archer_Boy.mat | 6 +- .../Characters/Toon/Head_Archer_Girl.mat | 6 +- Assets/Material/Characters/Toon/Head_Boss.mat | 6 +- Assets/Material/Characters/Toon/Head_Imp.mat | 6 +- .../Characters/Toon/Head_Imp_Vandal.mat | 6 +- .../Characters/Toon/Head_Mage_Boy.mat | 6 +- .../Characters/Toon/Head_Mage_Girl.mat | 6 +- .../Characters/Toon/Head_Rogue_Boy.mat | 6 +- .../Characters/Toon/Head_Rogue_Girl.mat | 6 +- .../Characters/Toon/Head_Tank_Boy.mat | 6 +- .../Characters/Toon/Head_Tank_Girl.mat | 6 +- .../Material/Characters/Toon/Helmet_Imp.mat | 6 +- .../Material/Characters/Toon/Torso_Archer.mat | 6 +- .../Material/Characters/Toon/Torso_Boss.mat | 6 +- Assets/Material/Characters/Toon/Torso_Imp.mat | 6 +- .../Characters/Toon/Torso_Imp_Vandal.mat | 6 +- .../Characters/Toon/Torso_Mage_Boy.mat | 6 +- .../Characters/Toon/Torso_Mage_Girl.mat | 6 +- .../Material/Characters/Toon/Torso_Rogue.mat | 6 +- .../Material/Characters/Toon/Torso_Tank.mat | 6 +- .../Characters/Toon/Weapons_Archer.mat | 6 +- .../Material/Characters/Toon/Weapons_Imp.mat | 6 +- .../Material/Characters/Toon/Weapons_Mage.mat | 6 +- .../Characters/Toon/Weapons_Rogue.mat | 6 +- .../Material/Characters/Toon/Weapons_Tank.mat | 6 +- .../Characters/Toon/Weapons_VandalImp.mat | 6 +- Assets/Material/Dungeon/M_BossFloor.mat | 6 +- Assets/Material/Dungeon/M_Door_01.mat | 4 +- Assets/Material/Dungeon/M_Door_02.mat | 4 +- Assets/Material/Dungeon/M_DungeonBorder.mat | 4 +- Assets/Material/Dungeon/M_Environment.mat | 6 +- Assets/Material/Dungeon/M_FloorSwitch.mat | 4 +- Assets/Material/Dungeon/M_Lava.mat | 4 +- Assets/Material/Dungeon/M_SpiderWeb.mat | 4 +- .../LiberationSans SDF - Fallback.asset | 4 +- .../Style Sheets/Default Style Sheet.asset | 4 +- .../TextMesh Pro/Resources/TMP Settings.asset | 4 +- Assets/TextMesh Pro/Shaders/SDFFunctions.hlsl | 178 + .../Shaders/SDFFunctions.hlsl.meta | 10 + .../Shaders/TMP_Bitmap-Custom-Atlas.shader | 72 +- .../Shaders/TMP_Bitmap-Mobile.shader | 52 +- Assets/TextMesh Pro/Shaders/TMP_Bitmap.shader | 62 +- .../Shaders/TMP_SDF Overlay.shader | 83 +- .../TextMesh Pro/Shaders/TMP_SDF SSD.shader | 95 +- .../Shaders/TMP_SDF-HDRP LIT.shadergraph | 12074 ++++++++++++++++ .../Shaders/TMP_SDF-HDRP LIT.shadergraph.meta | 10 + .../Shaders/TMP_SDF-HDRP UNLIT.shadergraph | 11759 +++++++++++++++ .../TMP_SDF-HDRP UNLIT.shadergraph.meta | 10 + .../Shaders/TMP_SDF-Mobile Masking.shader | 77 +- .../Shaders/TMP_SDF-Mobile Overlay.shader | 68 +- .../Shaders/TMP_SDF-Mobile SSD.shader | 6 +- .../Shaders/TMP_SDF-Mobile-2-Pass.shader | 389 + .../Shaders/TMP_SDF-Mobile-2-Pass.shader.meta | 9 + .../Shaders/TMP_SDF-Mobile.shader | 26 +- .../Shaders/TMP_SDF-Surface-Mobile.shader | 9 +- .../Shaders/TMP_SDF-Surface.shader | 11 +- .../Shaders/TMP_SDF-URP Lit.shadergraph | 11932 +++++++++++++++ .../Shaders/TMP_SDF-URP Lit.shadergraph.meta | 10 + .../Shaders/TMP_SDF-URP Unlit.shadergraph | 11629 +++++++++++++++ .../TMP_SDF-URP Unlit.shadergraph.meta | 10 + Assets/TextMesh Pro/Shaders/TMP_SDF.shader | 81 +- Assets/TextMesh Pro/Shaders/TMP_Sprite.shader | 101 +- Assets/TextMesh Pro/Shaders/TMPro.cginc.meta | 2 +- .../TextMesh Pro/Shaders/TMPro_Mobile.cginc | 32 +- .../Shaders/TMPro_Properties.cginc | 5 - .../TextMesh Pro/Shaders/TMPro_Surface.cginc | 10 +- .../TextMesh Pro/Sprites/EmojiOne.json.meta | 5 +- ...versalRenderPipelineAsset_Mobile_Low.asset | 4 +- ...derPipelineAsset_Renderer_Mobile_Low.asset | 4 +- ...ersalRenderPipelineAsset_Windows_Low.asset | 4 +- ...niversalRenderPipelineGlobalSettings.asset | 4 +- Assets/VFX/Materials/FX_M_ArcherArrow.mat | 4 +- Assets/VFX/Materials/FX_M_CharaterSneaky.mat | 6 +- .../FX_M_CharaterSneaky_LessSneak.mat | 6 +- Assets/VFX/Materials/FX_M_Chest.mat | 4 +- Assets/VFX/Materials/FX_M_Circle_Sheet_01.mat | 4 +- Assets/VFX/Materials/FX_M_Circle_Sheet_02.mat | 4 +- Assets/VFX/Materials/FX_M_Circle_Sheet_03.mat | 3 +- Assets/VFX/Materials/FX_M_Circle_Sheet_04.mat | 3 +- Assets/VFX/Materials/FX_M_Circle_Sheet_05.mat | 4 +- Assets/VFX/Materials/FX_M_Crystal.mat | 6 +- Assets/VFX/Materials/FX_M_Crystal_Broken.mat | 6 +- Assets/VFX/Materials/FX_M_Flame.mat | 6 +- Assets/VFX/Materials/FX_M_Flare_01.mat | 4 +- Assets/VFX/Materials/FX_M_Flash_01.mat | 4 +- Assets/VFX/Materials/FX_M_GlowLine.mat | 4 +- .../VFX/Materials/FX_M_Glow_Additive_01.mat | 4 +- .../VFX/Materials/FX_M_Glow_Additive_02.mat | 4 +- .../VFX/Materials/FX_M_Glow_Additive_03.mat | 4 +- .../Materials/FX_M_Glow_NoDepthAlpha_01.mat | 4 +- .../Materials/FX_M_Glow_NoDepthAlpha_02.mat | 4 +- .../FX_M_Glow_SoftParticleAlpha_02.mat | 4 +- .../VFX/Materials/FX_M_Glow_UnlitAlpha_01.mat | 4 +- .../VFX/Materials/FX_M_Glow_UnlitAlpha_02.mat | 4 +- Assets/VFX/Materials/FX_M_GroundClick.mat | 4 +- Assets/VFX/Materials/FX_M_GroundCrack_01.mat | 4 +- Assets/VFX/Materials/FX_M_GroundCrack_02.mat | 4 +- Assets/VFX/Materials/FX_M_Hit.mat | 4 +- Assets/VFX/Materials/FX_M_Ice.mat | 6 +- .../VFX/Materials/FX_M_ImpExplosionFire.mat | 4 +- Assets/VFX/Materials/FX_M_MaskedPanner.mat | 4 +- Assets/VFX/Materials/FX_M_MotionFlash.mat | 4 +- Assets/VFX/Materials/FX_M_Point.mat | 4 +- .../VFX/Materials/FX_M_RotatingSniper_01.mat | 4 +- .../VFX/Materials/FX_M_RotatingSniper_02.mat | 4 +- Assets/VFX/Materials/FX_M_RotatingTexture.mat | 4 +- Assets/VFX/Materials/FX_M_ShapeSheet.mat | 4 +- .../Materials/FX_M_ShapeSheet_Additive.mat | 4 +- Assets/VFX/Materials/FX_M_Shield.mat | 4 +- Assets/VFX/Materials/FX_M_Shockwave.mat | 4 +- Assets/VFX/Materials/FX_M_SlashSimple.mat | 6 +- Assets/VFX/Materials/FX_M_Slash_01.mat | 6 +- Assets/VFX/Materials/FX_M_Slash_02.mat | 6 +- Assets/VFX/Materials/FX_M_Smoke.mat | 4 +- Assets/VFX/Materials/FX_M_SmokeDissolve.mat | 4 +- .../Materials/FX_M_SmokeDissolveMultip.mat | 4 +- .../Materials/FX_M_SmokeDissolve_Additive.mat | 4 +- .../VFX/Materials/FX_M_Snowflake_Additive.mat | 4 +- .../VFX/Materials/FX_M_SoftParticle_Smoke.mat | 4 +- Assets/VFX/Materials/FX_M_Sparks.mat | 4 +- Assets/VFX/Materials/FX_M_SpawnDoor.mat | 4 +- Assets/VFX/Materials/FX_M_Star_01.mat | 4 +- Assets/VFX/Materials/FX_M_Star_02.mat | 4 +- Assets/VFX/Materials/FX_M_Star_03.mat | 4 +- Assets/VFX/Materials/FX_M_StylizeSmoke_01.mat | 4 +- Assets/VFX/Materials/FX_M_StylizeSmoke_02.mat | 4 +- .../Materials/FX_M_StylizeSmoke_Falldown.mat | 4 +- Assets/VFX/Materials/FX_M_Swirls.mat | 4 +- .../FX_M_TargetReticule_Friendly.mat | 4 +- .../Materials/FX_M_TargetReticule_Hostile.mat | 4 +- .../FX_M_TargetingSphere_InRange.mat | 4 +- .../FX_M_TargetingSphere_OutOfRange.mat | 4 +- .../VFX/Materials/FX_M_TilingTexture_01.mat | 6 +- .../VFX/Materials/FX_M_TilingTexture_02.mat | 6 +- .../VFX/Materials/FX_M_TilingTexture_03.mat | 6 +- .../VFX/Materials/FX_M_TilingTexture_04.mat | 6 +- .../VFX/Materials/FX_M_TilingTexture_05.mat | 6 +- Assets/VFX/Materials/FX_M_TorchFire.mat | 4 +- Assets/VFX/Materials/FX_M_Trail_01.mat | 4 +- Assets/VFX/Materials/FX_M_Trail_02.mat | 4 +- Assets/VFX/Materials/FX_M_Trail_03.mat | 4 +- Assets/VFX/Materials/FX_M_Wave_01.mat | 4 +- Assets/VFX/Materials/FX_M_Wave_02.mat | 4 +- .../FX_M_Wave_02_TossedAttack_Display.mat | 4 +- Assets/VFX/Materials/FX_M_Wave_03.mat | 4 +- Assets/VFX/Materials/FX_M_Wave_04.mat | 4 +- Assets/VFX/Materials/FX_M_WigglyRing.mat | 4 +- 162 files changed, 48909 insertions(+), 537 deletions(-) create mode 100644 Assets/DefaultVolumeProfile.asset create mode 100644 Assets/DefaultVolumeProfile.asset.meta create mode 100644 Assets/TextMesh Pro/Shaders/SDFFunctions.hlsl create mode 100644 Assets/TextMesh Pro/Shaders/SDFFunctions.hlsl.meta create mode 100644 Assets/TextMesh Pro/Shaders/TMP_SDF-HDRP LIT.shadergraph create mode 100644 Assets/TextMesh Pro/Shaders/TMP_SDF-HDRP LIT.shadergraph.meta create mode 100644 Assets/TextMesh Pro/Shaders/TMP_SDF-HDRP UNLIT.shadergraph create mode 100644 Assets/TextMesh Pro/Shaders/TMP_SDF-HDRP UNLIT.shadergraph.meta create mode 100644 Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile-2-Pass.shader create mode 100644 Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile-2-Pass.shader.meta create mode 100644 Assets/TextMesh Pro/Shaders/TMP_SDF-URP Lit.shadergraph create mode 100644 Assets/TextMesh Pro/Shaders/TMP_SDF-URP Lit.shadergraph.meta create mode 100644 Assets/TextMesh Pro/Shaders/TMP_SDF-URP Unlit.shadergraph create mode 100644 Assets/TextMesh Pro/Shaders/TMP_SDF-URP Unlit.shadergraph.meta diff --git a/Assets/DefaultVolumeProfile.asset b/Assets/DefaultVolumeProfile.asset new file mode 100644 index 0000000000..4afc7ea9f4 --- /dev/null +++ b/Assets/DefaultVolumeProfile.asset @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f9fe204b4c67a6af17f939c204ddd5c90e6f627694ca0f6d7f7fccb661db1aa +size 426 diff --git a/Assets/DefaultVolumeProfile.asset.meta b/Assets/DefaultVolumeProfile.asset.meta new file mode 100644 index 0000000000..3ca5856c42 --- /dev/null +++ b/Assets/DefaultVolumeProfile.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 402da6590a985a54ca7d6f2f2e75bf48 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Material/Characters/Character_Shadow.mat b/Assets/Material/Characters/Character_Shadow.mat index 316de69277..9407eaee73 100644 --- a/Assets/Material/Characters/Character_Shadow.mat +++ b/Assets/Material/Characters/Character_Shadow.mat @@ -23,6 +23,7 @@ Material: disabledShaderPasses: - SHADOWCASTER - DepthOnly + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -132,6 +133,7 @@ Material: - _MainTextureTilingOffset: {r: 1, g: 1, b: 0, a: 0} - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &2085413229483183920 MonoBehaviour: m_ObjectHideFlags: 11 @@ -144,4 +146,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/Material/Characters/Enemy_Eyes_sheet.mat b/Assets/Material/Characters/Enemy_Eyes_sheet.mat index 8bd47d8b57..d84ae22895 100644 --- a/Assets/Material/Characters/Enemy_Eyes_sheet.mat +++ b/Assets/Material/Characters/Enemy_Eyes_sheet.mat @@ -23,6 +23,7 @@ Material: disabledShaderPasses: - SHADOWCASTER - DepthOnly + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -127,6 +128,7 @@ Material: - _MainTextureTilingOffset: {r: 1, g: 1, b: 0, a: 0} - _SpecColor: {r: 0.5, g: 0.5, b: 0.5, a: 0.5} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &2746495770331472876 MonoBehaviour: m_ObjectHideFlags: 11 @@ -139,4 +141,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/Material/Characters/Enemy_Mouth_sheet.mat b/Assets/Material/Characters/Enemy_Mouth_sheet.mat index 2af786300c..01468aaa80 100644 --- a/Assets/Material/Characters/Enemy_Mouth_sheet.mat +++ b/Assets/Material/Characters/Enemy_Mouth_sheet.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 --- !u!21 &2100000 Material: serializedVersion: 8 @@ -36,6 +36,7 @@ Material: disabledShaderPasses: - SHADOWCASTER - DepthOnly + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -145,3 +146,4 @@ Material: - _SpecColor: {r: 0.5, g: 0.5, b: 0.5, a: 0.5} - _SpecularColor: {r: 0.9, g: 0.9, b: 0.9, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Assets/Material/Characters/Hero_Eyes_sheet.mat b/Assets/Material/Characters/Hero_Eyes_sheet.mat index 32ce187b95..2102ce5337 100644 --- a/Assets/Material/Characters/Hero_Eyes_sheet.mat +++ b/Assets/Material/Characters/Hero_Eyes_sheet.mat @@ -23,6 +23,7 @@ Material: disabledShaderPasses: - SHADOWCASTER - DepthOnly + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -127,6 +128,7 @@ Material: - _MainTextureTilingOffset: {r: 1, g: 1, b: 0, a: 0} - _SpecColor: {r: 0.5, g: 0.5, b: 0.5, a: 0.5} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &4340826014879142409 MonoBehaviour: m_ObjectHideFlags: 11 @@ -139,4 +141,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/Material/Characters/Hero_Mouth_sheet.mat b/Assets/Material/Characters/Hero_Mouth_sheet.mat index a0437b7100..a7c30fb457 100644 --- a/Assets/Material/Characters/Hero_Mouth_sheet.mat +++ b/Assets/Material/Characters/Hero_Mouth_sheet.mat @@ -23,6 +23,7 @@ Material: disabledShaderPasses: - SHADOWCASTER - DepthOnly + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -132,6 +133,7 @@ Material: - _SpecColor: {r: 0.5, g: 0.5, b: 0.5, a: 0.5} - _SpecularColor: {r: 0.9, g: 0.9, b: 0.9, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &1900546452016667472 MonoBehaviour: m_ObjectHideFlags: 11 @@ -144,4 +146,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/Material/Characters/Toon/Hair_Archer_Boy.mat b/Assets/Material/Characters/Toon/Hair_Archer_Boy.mat index 205b317275..b3237664ea 100644 --- a/Assets/Material/Characters/Toon/Hair_Archer_Boy.mat +++ b/Assets/Material/Characters/Toon/Hair_Archer_Boy.mat @@ -20,7 +20,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -102,6 +103,7 @@ Material: - _RimColor: {r: 1, g: 1, b: 1, a: 1} - _SpecularColor: {r: 3.6078432, g: 3.6078432, b: 3.6078432, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &4864082934053653154 MonoBehaviour: m_ObjectHideFlags: 11 @@ -114,4 +116,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/Material/Characters/Toon/Hair_Archer_Girl.mat b/Assets/Material/Characters/Toon/Hair_Archer_Girl.mat index 857a79cca5..86bd55e2e1 100644 --- a/Assets/Material/Characters/Toon/Hair_Archer_Girl.mat +++ b/Assets/Material/Characters/Toon/Hair_Archer_Girl.mat @@ -20,7 +20,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -102,6 +103,7 @@ Material: - _RimColor: {r: 4, g: 4, b: 4, a: 1} - _SpecularColor: {r: 7.2156863, g: 7.2156863, b: 7.2156863, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &6413572590179603764 MonoBehaviour: m_ObjectHideFlags: 11 @@ -114,4 +116,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/Material/Characters/Toon/Hair_Mage_Boy.mat b/Assets/Material/Characters/Toon/Hair_Mage_Boy.mat index 0a72b9dc5d..b93c6ce1c2 100644 --- a/Assets/Material/Characters/Toon/Hair_Mage_Boy.mat +++ b/Assets/Material/Characters/Toon/Hair_Mage_Boy.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 --- !u!21 &2100000 Material: serializedVersion: 8 @@ -33,7 +33,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -115,3 +116,4 @@ Material: - _RimColor: {r: 4, g: 4, b: 4, a: 1} - _SpecularColor: {r: 7.2156863, g: 7.2156863, b: 7.2156863, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Assets/Material/Characters/Toon/Hair_Mage_Girl.mat b/Assets/Material/Characters/Toon/Hair_Mage_Girl.mat index 52f0090ee0..2bb9b3d62a 100644 --- a/Assets/Material/Characters/Toon/Hair_Mage_Girl.mat +++ b/Assets/Material/Characters/Toon/Hair_Mage_Girl.mat @@ -33,7 +33,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -115,6 +116,7 @@ Material: - _RimColor: {r: 4, g: 4, b: 4, a: 1} - _SpecularColor: {r: 7.2156863, g: 7.2156863, b: 7.2156863, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &8325592805791008449 MonoBehaviour: m_ObjectHideFlags: 11 @@ -127,4 +129,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/Material/Characters/Toon/Hair_Rogue_Boy.mat b/Assets/Material/Characters/Toon/Hair_Rogue_Boy.mat index ccbc9a7678..b29f1af8ff 100644 --- a/Assets/Material/Characters/Toon/Hair_Rogue_Boy.mat +++ b/Assets/Material/Characters/Toon/Hair_Rogue_Boy.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 --- !u!21 &2100000 Material: serializedVersion: 8 @@ -33,7 +33,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -115,3 +116,4 @@ Material: - _RimColor: {r: 4, g: 4, b: 4, a: 1} - _SpecularColor: {r: 7.2156863, g: 7.2156863, b: 7.2156863, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Assets/Material/Characters/Toon/Hair_Rogue_Girl.mat b/Assets/Material/Characters/Toon/Hair_Rogue_Girl.mat index 8ef73219ff..92a6846e0b 100644 --- a/Assets/Material/Characters/Toon/Hair_Rogue_Girl.mat +++ b/Assets/Material/Characters/Toon/Hair_Rogue_Girl.mat @@ -20,7 +20,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -102,6 +103,7 @@ Material: - _RimColor: {r: 4, g: 4, b: 4, a: 1} - _SpecularColor: {r: 7.2156863, g: 7.2156863, b: 7.2156863, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &8814935330546915290 MonoBehaviour: m_ObjectHideFlags: 11 @@ -114,4 +116,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/Material/Characters/Toon/Hair_Tank_Boy.mat b/Assets/Material/Characters/Toon/Hair_Tank_Boy.mat index 66348ca436..5f61b15011 100644 --- a/Assets/Material/Characters/Toon/Hair_Tank_Boy.mat +++ b/Assets/Material/Characters/Toon/Hair_Tank_Boy.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 --- !u!21 &2100000 Material: serializedVersion: 8 @@ -33,7 +33,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -115,3 +116,4 @@ Material: - _RimColor: {r: 4, g: 4, b: 4, a: 1} - _SpecularColor: {r: 7.2156863, g: 7.2156863, b: 7.2156863, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Assets/Material/Characters/Toon/Hair_Tank_Girl.mat b/Assets/Material/Characters/Toon/Hair_Tank_Girl.mat index e924aa3c13..d86e7652c2 100644 --- a/Assets/Material/Characters/Toon/Hair_Tank_Girl.mat +++ b/Assets/Material/Characters/Toon/Hair_Tank_Girl.mat @@ -20,7 +20,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -102,6 +103,7 @@ Material: - _RimColor: {r: 3.9999995, g: 3.9999995, b: 3.9999995, a: 1} - _SpecularColor: {r: 1.8039216, g: 1.8039216, b: 1.8039216, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &77699869095076743 MonoBehaviour: m_ObjectHideFlags: 11 @@ -114,4 +116,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/Material/Characters/Toon/Head_Archer_Boy.mat b/Assets/Material/Characters/Toon/Head_Archer_Boy.mat index 172ae9ca9f..fbffa59241 100644 --- a/Assets/Material/Characters/Toon/Head_Archer_Boy.mat +++ b/Assets/Material/Characters/Toon/Head_Archer_Boy.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 --- !u!21 &2100000 Material: serializedVersion: 8 @@ -32,7 +32,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -114,3 +115,4 @@ Material: - _RimColor: {r: 1.6941177, g: 1.6941177, b: 1.6941177, a: 1} - _SpecularColor: {r: 2.0078433, g: 2.0078433, b: 2.0078433, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Assets/Material/Characters/Toon/Head_Archer_Girl.mat b/Assets/Material/Characters/Toon/Head_Archer_Girl.mat index 746eea7f0c..3318c48b75 100644 --- a/Assets/Material/Characters/Toon/Head_Archer_Girl.mat +++ b/Assets/Material/Characters/Toon/Head_Archer_Girl.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 --- !u!21 &2100000 Material: serializedVersion: 8 @@ -32,7 +32,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -114,3 +115,4 @@ Material: - _RimColor: {r: 3.3882349, g: 3.3882349, b: 3.3882349, a: 1} - _SpecularColor: {r: 4.0156865, g: 4.0156865, b: 4.0156865, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Assets/Material/Characters/Toon/Head_Boss.mat b/Assets/Material/Characters/Toon/Head_Boss.mat index e2b7cda78f..2f4c8bb96d 100644 --- a/Assets/Material/Characters/Toon/Head_Boss.mat +++ b/Assets/Material/Characters/Toon/Head_Boss.mat @@ -32,7 +32,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -114,6 +115,7 @@ Material: - _RimColor: {r: 1.6941177, g: 1.6941177, b: 1.6941177, a: 1} - _SpecularColor: {r: 4.0156865, g: 4.0156865, b: 4.0156865, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &8635471332786235124 MonoBehaviour: m_ObjectHideFlags: 11 @@ -126,4 +128,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/Material/Characters/Toon/Head_Imp.mat b/Assets/Material/Characters/Toon/Head_Imp.mat index 268877f7f9..9f72efbc55 100644 --- a/Assets/Material/Characters/Toon/Head_Imp.mat +++ b/Assets/Material/Characters/Toon/Head_Imp.mat @@ -32,7 +32,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -114,6 +115,7 @@ Material: - _RimColor: {r: 1.6941177, g: 1.6941177, b: 1.6941177, a: 1} - _SpecularColor: {r: 4.0156865, g: 4.0156865, b: 4.0156865, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &6003867061829287575 MonoBehaviour: m_ObjectHideFlags: 11 @@ -126,4 +128,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/Material/Characters/Toon/Head_Imp_Vandal.mat b/Assets/Material/Characters/Toon/Head_Imp_Vandal.mat index a411522d62..3cadea68e4 100644 --- a/Assets/Material/Characters/Toon/Head_Imp_Vandal.mat +++ b/Assets/Material/Characters/Toon/Head_Imp_Vandal.mat @@ -19,7 +19,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -101,6 +102,7 @@ Material: - _RimColor: {r: 1.6941177, g: 1.6941177, b: 1.6941177, a: 1} - _SpecularColor: {r: 4.0156865, g: 4.0156865, b: 4.0156865, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &1959664285060799131 MonoBehaviour: m_ObjectHideFlags: 11 @@ -113,4 +115,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/Material/Characters/Toon/Head_Mage_Boy.mat b/Assets/Material/Characters/Toon/Head_Mage_Boy.mat index 600dd97203..a03238de8d 100644 --- a/Assets/Material/Characters/Toon/Head_Mage_Boy.mat +++ b/Assets/Material/Characters/Toon/Head_Mage_Boy.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 --- !u!21 &2100000 Material: serializedVersion: 8 @@ -32,7 +32,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -114,3 +115,4 @@ Material: - _RimColor: {r: 6.7764707, g: 6.7764707, b: 6.7764707, a: 1} - _SpecularColor: {r: 4.0156865, g: 4.0156865, b: 4.0156865, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Assets/Material/Characters/Toon/Head_Mage_Girl.mat b/Assets/Material/Characters/Toon/Head_Mage_Girl.mat index 0a4b4c23cd..b80bb0f2eb 100644 --- a/Assets/Material/Characters/Toon/Head_Mage_Girl.mat +++ b/Assets/Material/Characters/Toon/Head_Mage_Girl.mat @@ -32,7 +32,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -114,6 +115,7 @@ Material: - _RimColor: {r: 1.6941177, g: 1.6941177, b: 1.6941177, a: 1} - _SpecularColor: {r: 2.0078433, g: 2.0078433, b: 2.0078433, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &6432967159316586611 MonoBehaviour: m_ObjectHideFlags: 11 @@ -126,4 +128,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/Material/Characters/Toon/Head_Rogue_Boy.mat b/Assets/Material/Characters/Toon/Head_Rogue_Boy.mat index 031833f200..66f6f0c8f3 100644 --- a/Assets/Material/Characters/Toon/Head_Rogue_Boy.mat +++ b/Assets/Material/Characters/Toon/Head_Rogue_Boy.mat @@ -19,7 +19,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -101,6 +102,7 @@ Material: - _RimColor: {r: 3.3882353, g: 3.3882353, b: 3.3882353, a: 1} - _SpecularColor: {r: 2.0078433, g: 2.0078433, b: 2.0078433, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &7718748373499372406 MonoBehaviour: m_ObjectHideFlags: 11 @@ -113,4 +115,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/Material/Characters/Toon/Head_Rogue_Girl.mat b/Assets/Material/Characters/Toon/Head_Rogue_Girl.mat index f9f13a2e19..4bef80d857 100644 --- a/Assets/Material/Characters/Toon/Head_Rogue_Girl.mat +++ b/Assets/Material/Characters/Toon/Head_Rogue_Girl.mat @@ -32,7 +32,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -114,6 +115,7 @@ Material: - _RimColor: {r: 3.3882349, g: 3.3882349, b: 3.3882349, a: 1} - _SpecularColor: {r: 2.6806288, g: 2.6806288, b: 2.6806288, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &2368008381429444337 MonoBehaviour: m_ObjectHideFlags: 11 @@ -126,4 +128,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/Material/Characters/Toon/Head_Tank_Boy.mat b/Assets/Material/Characters/Toon/Head_Tank_Boy.mat index be00ccd609..14ae3a85e8 100644 --- a/Assets/Material/Characters/Toon/Head_Tank_Boy.mat +++ b/Assets/Material/Characters/Toon/Head_Tank_Boy.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 --- !u!21 &2100000 Material: serializedVersion: 8 @@ -32,7 +32,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -114,3 +115,4 @@ Material: - _RimColor: {r: 3.3882349, g: 3.3882349, b: 3.3882349, a: 1} - _SpecularColor: {r: 2.0078433, g: 2.0078433, b: 2.0078433, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Assets/Material/Characters/Toon/Head_Tank_Girl.mat b/Assets/Material/Characters/Toon/Head_Tank_Girl.mat index 412065a816..8abd0241cb 100644 --- a/Assets/Material/Characters/Toon/Head_Tank_Girl.mat +++ b/Assets/Material/Characters/Toon/Head_Tank_Girl.mat @@ -19,7 +19,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -101,6 +102,7 @@ Material: - _RimColor: {r: 3.3882349, g: 3.3882349, b: 3.3882349, a: 1} - _SpecularColor: {r: 2.0078435, g: 2.0078435, b: 2.0078435, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &35863977191553175 MonoBehaviour: m_ObjectHideFlags: 11 @@ -113,4 +115,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/Material/Characters/Toon/Helmet_Imp.mat b/Assets/Material/Characters/Toon/Helmet_Imp.mat index 730e6c9ad0..026249d353 100644 --- a/Assets/Material/Characters/Toon/Helmet_Imp.mat +++ b/Assets/Material/Characters/Toon/Helmet_Imp.mat @@ -19,7 +19,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -101,6 +102,7 @@ Material: - _RimColor: {r: 7.999999, g: 7.999999, b: 7.999999, a: 1} - _SpecularColor: {r: 1, g: 1, b: 1, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &7096490025815888566 MonoBehaviour: m_ObjectHideFlags: 11 @@ -113,4 +115,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/Material/Characters/Toon/Torso_Archer.mat b/Assets/Material/Characters/Toon/Torso_Archer.mat index 32dab09fca..e4f4b14ef4 100644 --- a/Assets/Material/Characters/Toon/Torso_Archer.mat +++ b/Assets/Material/Characters/Toon/Torso_Archer.mat @@ -32,7 +32,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -114,6 +115,7 @@ Material: - _RimColor: {r: 3.9999995, g: 3.9999995, b: 3.9999995, a: 1} - _SpecularColor: {r: 3.9999995, g: 3.9999995, b: 3.9999995, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &1004630244625014647 MonoBehaviour: m_ObjectHideFlags: 11 @@ -126,4 +128,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/Material/Characters/Toon/Torso_Boss.mat b/Assets/Material/Characters/Toon/Torso_Boss.mat index fac62a817c..11f7a0e336 100644 --- a/Assets/Material/Characters/Toon/Torso_Boss.mat +++ b/Assets/Material/Characters/Toon/Torso_Boss.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 --- !u!21 &2100000 Material: serializedVersion: 8 @@ -32,7 +32,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -114,3 +115,4 @@ Material: - _RimColor: {r: 7.999999, g: 7.999999, b: 7.999999, a: 1} - _SpecularColor: {r: 1, g: 1, b: 1, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Assets/Material/Characters/Toon/Torso_Imp.mat b/Assets/Material/Characters/Toon/Torso_Imp.mat index 046c9e209a..9d6a5d74e8 100644 --- a/Assets/Material/Characters/Toon/Torso_Imp.mat +++ b/Assets/Material/Characters/Toon/Torso_Imp.mat @@ -19,7 +19,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -101,6 +102,7 @@ Material: - _RimColor: {r: 3.9999995, g: 3.9999995, b: 3.9999995, a: 1} - _SpecularColor: {r: 3.9999995, g: 3.9999995, b: 3.9999995, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &1826122873587557196 MonoBehaviour: m_ObjectHideFlags: 11 @@ -113,4 +115,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/Material/Characters/Toon/Torso_Imp_Vandal.mat b/Assets/Material/Characters/Toon/Torso_Imp_Vandal.mat index 42e545e749..8e1901336f 100644 --- a/Assets/Material/Characters/Toon/Torso_Imp_Vandal.mat +++ b/Assets/Material/Characters/Toon/Torso_Imp_Vandal.mat @@ -19,7 +19,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -101,6 +102,7 @@ Material: - _RimColor: {r: 3.9999995, g: 3.9999995, b: 3.9999995, a: 1} - _SpecularColor: {r: 3.9999995, g: 3.9999995, b: 3.9999995, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &3341475901199570861 MonoBehaviour: m_ObjectHideFlags: 11 @@ -113,4 +115,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/Material/Characters/Toon/Torso_Mage_Boy.mat b/Assets/Material/Characters/Toon/Torso_Mage_Boy.mat index c1423f628b..367fdf397b 100644 --- a/Assets/Material/Characters/Toon/Torso_Mage_Boy.mat +++ b/Assets/Material/Characters/Toon/Torso_Mage_Boy.mat @@ -32,7 +32,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -114,6 +115,7 @@ Material: - _RimColor: {r: 3.9999995, g: 3.9999995, b: 3.9999995, a: 1} - _SpecularColor: {r: 3.9999995, g: 3.9999995, b: 3.9999995, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &4394423527595315002 MonoBehaviour: m_ObjectHideFlags: 11 @@ -126,4 +128,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/Material/Characters/Toon/Torso_Mage_Girl.mat b/Assets/Material/Characters/Toon/Torso_Mage_Girl.mat index 1b30026b19..18a4c6b49a 100644 --- a/Assets/Material/Characters/Toon/Torso_Mage_Girl.mat +++ b/Assets/Material/Characters/Toon/Torso_Mage_Girl.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 --- !u!21 &2100000 Material: serializedVersion: 8 @@ -32,7 +32,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -114,3 +115,4 @@ Material: - _RimColor: {r: 3.9999995, g: 3.9999995, b: 3.9999995, a: 1} - _SpecularColor: {r: 3.9999995, g: 3.9999995, b: 3.9999995, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Assets/Material/Characters/Toon/Torso_Rogue.mat b/Assets/Material/Characters/Toon/Torso_Rogue.mat index 0dee3dd948..aececd1f0f 100644 --- a/Assets/Material/Characters/Toon/Torso_Rogue.mat +++ b/Assets/Material/Characters/Toon/Torso_Rogue.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 --- !u!21 &2100000 Material: serializedVersion: 8 @@ -32,7 +32,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -114,3 +115,4 @@ Material: - _RimColor: {r: 3.9999995, g: 3.9999995, b: 3.9999995, a: 1} - _SpecularColor: {r: 3.9999995, g: 3.9999995, b: 3.9999995, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Assets/Material/Characters/Toon/Torso_Tank.mat b/Assets/Material/Characters/Toon/Torso_Tank.mat index 67e94c2070..2df64f8e4f 100644 --- a/Assets/Material/Characters/Toon/Torso_Tank.mat +++ b/Assets/Material/Characters/Toon/Torso_Tank.mat @@ -32,7 +32,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -114,6 +115,7 @@ Material: - _RimColor: {r: 4, g: 4, b: 4, a: 1} - _SpecularColor: {r: 7.999999, g: 7.790575, b: 7.790575, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &4071560837306374100 MonoBehaviour: m_ObjectHideFlags: 11 @@ -126,4 +128,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/Material/Characters/Toon/Weapons_Archer.mat b/Assets/Material/Characters/Toon/Weapons_Archer.mat index 0baa623238..0abe9de8b5 100644 --- a/Assets/Material/Characters/Toon/Weapons_Archer.mat +++ b/Assets/Material/Characters/Toon/Weapons_Archer.mat @@ -32,7 +32,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -114,6 +115,7 @@ Material: - _RimColor: {r: 8, g: 8, b: 8, a: 1} - _SpecularColor: {r: 50.196075, g: 50.196075, b: 50.196075, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &1966549124743017704 MonoBehaviour: m_ObjectHideFlags: 11 @@ -126,4 +128,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/Material/Characters/Toon/Weapons_Imp.mat b/Assets/Material/Characters/Toon/Weapons_Imp.mat index 43a9bb662c..b66a3fb9cc 100644 --- a/Assets/Material/Characters/Toon/Weapons_Imp.mat +++ b/Assets/Material/Characters/Toon/Weapons_Imp.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 --- !u!21 &2100000 Material: serializedVersion: 8 @@ -32,7 +32,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -114,3 +115,4 @@ Material: - _RimColor: {r: 8, g: 8, b: 8, a: 1} - _SpecularColor: {r: 50.196075, g: 50.196075, b: 50.196075, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Assets/Material/Characters/Toon/Weapons_Mage.mat b/Assets/Material/Characters/Toon/Weapons_Mage.mat index babd34fb7a..e1673e5c4e 100644 --- a/Assets/Material/Characters/Toon/Weapons_Mage.mat +++ b/Assets/Material/Characters/Toon/Weapons_Mage.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 --- !u!21 &2100000 Material: serializedVersion: 8 @@ -32,7 +32,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -114,3 +115,4 @@ Material: - _RimColor: {r: 8, g: 8, b: 8, a: 1} - _SpecularColor: {r: 50.196075, g: 50.196075, b: 50.196075, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Assets/Material/Characters/Toon/Weapons_Rogue.mat b/Assets/Material/Characters/Toon/Weapons_Rogue.mat index feded0ab52..88fdf6b15e 100644 --- a/Assets/Material/Characters/Toon/Weapons_Rogue.mat +++ b/Assets/Material/Characters/Toon/Weapons_Rogue.mat @@ -19,7 +19,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -101,6 +102,7 @@ Material: - _RimColor: {r: 8, g: 8, b: 8, a: 1} - _SpecularColor: {r: 50.196075, g: 50.196075, b: 50.196075, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &1909332514078085095 MonoBehaviour: m_ObjectHideFlags: 11 @@ -113,4 +115,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/Material/Characters/Toon/Weapons_Tank.mat b/Assets/Material/Characters/Toon/Weapons_Tank.mat index cffde3382e..d83a76d6ed 100644 --- a/Assets/Material/Characters/Toon/Weapons_Tank.mat +++ b/Assets/Material/Characters/Toon/Weapons_Tank.mat @@ -19,7 +19,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -101,6 +102,7 @@ Material: - _RimColor: {r: 2, g: 2, b: 2, a: 1} - _SpecularColor: {r: 12.549019, g: 12.549019, b: 12.549019, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &178387936753523055 MonoBehaviour: m_ObjectHideFlags: 11 @@ -113,4 +115,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/Material/Characters/Toon/Weapons_VandalImp.mat b/Assets/Material/Characters/Toon/Weapons_VandalImp.mat index 2f73efd007..b556c2a574 100644 --- a/Assets/Material/Characters/Toon/Weapons_VandalImp.mat +++ b/Assets/Material/Characters/Toon/Weapons_VandalImp.mat @@ -19,7 +19,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -101,6 +102,7 @@ Material: - _RimColor: {r: 7.999999, g: 4.5919995, b: 4.5919995, a: 1} - _SpecularColor: {r: 50.196075, g: 50.196075, b: 50.196075, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &8641722697758708521 MonoBehaviour: m_ObjectHideFlags: 11 @@ -113,4 +115,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/Material/Dungeon/M_BossFloor.mat b/Assets/Material/Dungeon/M_BossFloor.mat index 38885cbd8d..cccb854a5a 100644 --- a/Assets/Material/Dungeon/M_BossFloor.mat +++ b/Assets/Material/Dungeon/M_BossFloor.mat @@ -21,7 +21,8 @@ Material: m_DoubleSidedGI: 1 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -124,6 +125,7 @@ Material: - _EmissionColor: {r: 1, g: 0, b: 0, a: 1} - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &7826408804194725777 MonoBehaviour: m_ObjectHideFlags: 11 @@ -136,4 +138,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/Material/Dungeon/M_Door_01.mat b/Assets/Material/Dungeon/M_Door_01.mat index a3e5d91d26..e74077ca8e 100644 --- a/Assets/Material/Dungeon/M_Door_01.mat +++ b/Assets/Material/Dungeon/M_Door_01.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 --- !u!21 &2100000 Material: serializedVersion: 8 @@ -34,6 +34,7 @@ Material: RenderType: Opaque disabledShaderPasses: - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -146,3 +147,4 @@ Material: - _MainTextureTilingOffset: {r: 1, g: 1, b: 0, a: 0} - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Assets/Material/Dungeon/M_Door_02.mat b/Assets/Material/Dungeon/M_Door_02.mat index 4c3b755849..e5a8f54f74 100644 --- a/Assets/Material/Dungeon/M_Door_02.mat +++ b/Assets/Material/Dungeon/M_Door_02.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 --- !u!21 &2100000 Material: serializedVersion: 8 @@ -34,6 +34,7 @@ Material: RenderType: Opaque disabledShaderPasses: - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -146,3 +147,4 @@ Material: - _MainTextureTilingOffset: {r: 1, g: 1, b: 0, a: 0} - _SpecColor: {r: 0.19999987, g: 0.19999987, b: 0.19999987, a: 0} m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Assets/Material/Dungeon/M_DungeonBorder.mat b/Assets/Material/Dungeon/M_DungeonBorder.mat index efdce6a88c..94accae92f 100644 --- a/Assets/Material/Dungeon/M_DungeonBorder.mat +++ b/Assets/Material/Dungeon/M_DungeonBorder.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 --- !u!21 &2100000 Material: serializedVersion: 8 @@ -34,6 +34,7 @@ Material: RenderType: Opaque disabledShaderPasses: - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -144,3 +145,4 @@ Material: - _MainTextureTilingOffset: {r: 1, g: 1, b: 0, a: 0} - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Assets/Material/Dungeon/M_Environment.mat b/Assets/Material/Dungeon/M_Environment.mat index cee763dd89..90f62e8645 100644 --- a/Assets/Material/Dungeon/M_Environment.mat +++ b/Assets/Material/Dungeon/M_Environment.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 --- !u!21 &2100000 Material: serializedVersion: 8 @@ -33,7 +33,8 @@ Material: m_DoubleSidedGI: 1 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -136,3 +137,4 @@ Material: - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Assets/Material/Dungeon/M_FloorSwitch.mat b/Assets/Material/Dungeon/M_FloorSwitch.mat index 085b4f4323..7079e59cc1 100644 --- a/Assets/Material/Dungeon/M_FloorSwitch.mat +++ b/Assets/Material/Dungeon/M_FloorSwitch.mat @@ -21,6 +21,7 @@ Material: RenderType: Opaque disabledShaderPasses: - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -129,6 +130,7 @@ Material: - _MainTextureTilingOffset: {r: 1, g: 1, b: 0, a: 0} - _SpecColor: {r: 0.5, g: 0.5, b: 0.5, a: 0.5} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &3490827651243550512 MonoBehaviour: m_ObjectHideFlags: 11 @@ -141,4 +143,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/Material/Dungeon/M_Lava.mat b/Assets/Material/Dungeon/M_Lava.mat index 6c2e35b649..c9ee0dbaea 100644 --- a/Assets/Material/Dungeon/M_Lava.mat +++ b/Assets/Material/Dungeon/M_Lava.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 --- !u!21 &2100000 Material: serializedVersion: 8 @@ -34,6 +34,7 @@ Material: RenderType: Opaque disabledShaderPasses: - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -145,3 +146,4 @@ Material: - _MainTextureTilingOffset: {r: 1, g: 1, b: 0, a: 0} - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Assets/Material/Dungeon/M_SpiderWeb.mat b/Assets/Material/Dungeon/M_SpiderWeb.mat index fbb2a4d763..f72ff9574b 100644 --- a/Assets/Material/Dungeon/M_SpiderWeb.mat +++ b/Assets/Material/Dungeon/M_SpiderWeb.mat @@ -38,6 +38,7 @@ Material: disabledShaderPasses: - DepthOnly - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -161,6 +162,7 @@ Material: - _RendererColor: {r: 1, g: 1, b: 1, a: 1} - _SoftParticleFadeParams: {r: 0, g: 0, b: 0, a: 0} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &1321789954030154306 MonoBehaviour: m_ObjectHideFlags: 11 @@ -173,4 +175,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Fallback.asset b/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Fallback.asset index dabc2e2812..4c1266e11f 100644 --- a/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Fallback.asset +++ b/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Fallback.asset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:809894df611dd2c0beca143538141fd221a516446176728ab520965dc1a0e747 -size 9099 +oid sha256:4258bed1e28868571085fe493031136fa2ded7a885d7d38a7cd8183ba15abe7d +size 9342 diff --git a/Assets/TextMesh Pro/Resources/Style Sheets/Default Style Sheet.asset b/Assets/TextMesh Pro/Resources/Style Sheets/Default Style Sheet.asset index a0bbea6de4..1577719871 100644 --- a/Assets/TextMesh Pro/Resources/Style Sheets/Default Style Sheet.asset +++ b/Assets/TextMesh Pro/Resources/Style Sheets/Default Style Sheet.asset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:01222ac025a1f5b90f3f129eee7bfac7fb05223a1edd84aecf2171ec34b10708 -size 4953 +oid sha256:93e073cdb91b7e3d2fa31e2dd13626d7b9d2f327904ba8c3c2b97a3eecfbabac +size 5539 diff --git a/Assets/TextMesh Pro/Resources/TMP Settings.asset b/Assets/TextMesh Pro/Resources/TMP Settings.asset index 736974201d..e79c1792f3 100644 --- a/Assets/TextMesh Pro/Resources/TMP Settings.asset +++ b/Assets/TextMesh Pro/Resources/TMP Settings.asset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:64dfb0d58d22bc752a48aa46933ed69422545906e3f0e716df0c9a5ff0d26789 -size 1683 +oid sha256:e5ea5eff255c5094a3e470fc7657400ac632dd5402d65b6de4b5f17dd4e0597e +size 1840 diff --git a/Assets/TextMesh Pro/Shaders/SDFFunctions.hlsl b/Assets/TextMesh Pro/Shaders/SDFFunctions.hlsl new file mode 100644 index 0000000000..b611994655 --- /dev/null +++ b/Assets/TextMesh Pro/Shaders/SDFFunctions.hlsl @@ -0,0 +1,178 @@ +float2 UnpackUV(float uv) +{ + float2 output; + output.x = floor(uv / 4096.0); + output.y = uv - 4096.0 * output.x; + + return output * 0.001953125; +} + +float4 BlendARGB(float4 overlying, float4 underlying) +{ + overlying.rgb *= overlying.a; + underlying.rgb *= underlying.a; + float3 blended = overlying.rgb + ((1 - overlying.a) * underlying.rgb); + float alpha = underlying.a + (1 - underlying.a) * overlying.a; + return float4(blended / alpha, alpha); +} + +float3 GetSpecular(float3 n, float3 l) +{ + float spec = pow(max(0.0, dot(n, l)), _Reflectivity); + return _SpecularColor.rgb * spec * _SpecularPower; +} + +void GetSurfaceNormal_float(texture2D atlas, float textureWidth, float textureHeight, float2 uv, bool isFront, out float3 nornmal) +{ + float3 delta = float3(1.0 / textureWidth, 1.0 / textureHeight, 0.0); + + // Read "height field" + float4 h = float4( + SAMPLE_TEXTURE2D(atlas, SamplerState_Linear_Clamp, uv - delta.xz).a, + SAMPLE_TEXTURE2D(atlas, SamplerState_Linear_Clamp, uv + delta.xz).a, + SAMPLE_TEXTURE2D(atlas, SamplerState_Linear_Clamp, uv - delta.zy).a, + SAMPLE_TEXTURE2D(atlas, SamplerState_Linear_Clamp, uv + delta.zy).a); + + bool raisedBevel = _BevelType; + + h += _BevelOffset; + + float bevelWidth = max(.01, _BevelWidth); + + // Track outline + h -= .5; + h /= bevelWidth; + h = saturate(h + .5); + + if (raisedBevel) h = 1 - abs(h * 2.0 - 1.0); + h = lerp(h, sin(h * 3.141592 / 2.0), float4(_BevelRoundness, _BevelRoundness, _BevelRoundness, _BevelRoundness)); + h = min(h, 1.0 - float4(_BevelClamp, _BevelClamp, _BevelClamp, _BevelClamp)); + h *= _BevelAmount * bevelWidth * _GradientScale * -2.0; + + float3 va = normalize(float3(-1.0, 0.0, h.y - h.x)); + float3 vb = normalize(float3(0.0, 1.0, h.w - h.z)); + + float3 f = float3(1, 1, 1); + if (isFront) f = float3(1, 1, -1); + nornmal = cross(va, vb) * f; +} + +void EvaluateLight_float(float4 faceColor, float3 n, out float4 color) +{ + n.z = abs(n.z); + float3 light = normalize(float3(sin(_LightAngle), cos(_LightAngle), 1.0)); + + float3 col = max(faceColor.rgb, 0) + GetSpecular(n, light)* faceColor.a; + //faceColor.rgb += col * faceColor.a; + col *= 1 - (dot(n, light) * _Diffuse); + col *= lerp(_Ambient, 1, n.z * n.z); + + //fixed4 reflcol = texCUBE(_Cube, reflect(input.viewDir, -n)); + //faceColor.rgb += reflcol.rgb * lerp(_ReflectFaceColor.rgb, _ReflectOutlineColor.rgb, saturate(sd + outline * 0.5)) * faceColor.a; + + color = float4(col, faceColor.a); +} + +// Add custom function to handle time in HDRP + + +// +void GenerateUV_float(float2 inUV, float4 transform, float2 animSpeed, out float2 outUV) +{ + outUV = inUV * transform.xy + transform.zw + (animSpeed * _Time.y); +} + +void ComputeUVOffset_float(float texWidth, float texHeight, float2 offset, float SDR, out float2 uvOffset) +{ + uvOffset = float2(-offset.x * SDR / texWidth, -offset.y * SDR / texHeight); +} + +void ScreenSpaceRatio2_float(float4x4 projection, float4 position, float2 objectScale, float screenWidth, float screenHeight, float fontScale, out float SSR) +{ + float2 pixelSize = position.w; + pixelSize /= (objectScale * mul((float2x2)projection, float2(screenWidth, screenHeight))); + SSR = rsqrt(dot(pixelSize, pixelSize)*2) * fontScale; +} + +// UV : Texture coordinate of the source distance field texture +// TextureSize : Size of the source distance field texture +// Filter : Enable perspective filter (soften) +void ScreenSpaceRatio_float(float2 UV, float TextureSize, bool Filter, out float SSR) +{ + if(Filter) + { + float2 a = float2(ddx(UV.x), ddy(UV.x)); + float2 b = float2(ddx(UV.y), ddy(UV.y)); + float s = lerp(dot(a,a), dot(b,b), 0.5); + SSR = rsqrt(s) / TextureSize; + } + else + { + float s = rsqrt(abs(ddx(UV.x) * ddy(UV.y) - ddy(UV.x) * ddx(UV.y))); + SSR = s / TextureSize; + } +} + +// SSR : Screen Space Ratio +// SD : Signed Distance (encoded : Distance / SDR + .5) +// SDR : Signed Distance Ratio +// +// IsoPerimeter : Dilate / Contract the shape +void ComputeSDF_float(float SSR, float SD, float SDR, float isoPerimeter, float softness, out float outAlpha) +{ + softness *= SSR * SDR; + float d = (SD - 0.5) * SDR; // Signed distance to edge, in Texture space + outAlpha = saturate((d * 2.0 * SSR + 0.5 + isoPerimeter * SDR * SSR + softness * 0.5) / (1.0 + softness)); // Screen pixel coverage (alpha) +} + +void ComputeSDF2_float(float SSR, float SD, float SDR, float2 isoPerimeter, float2 softness, out float2 outAlpha) +{ + softness *= SSR * SDR; + float d = (SD - 0.5f) * SDR; + outAlpha = saturate((d * 2.0f * SSR + 0.5f + isoPerimeter * SDR * SSR + softness * 0.5) / (1.0 + softness)); +} + +void ComputeSDF4_float(float SSR, float SD, float SDR, float4 isoPerimeter, float4 softness, out float4 outAlpha) +{ + softness *= SSR * SDR; + float d = (SD - 0.5f) * SDR; + outAlpha = saturate((d * 2.0f * SSR + 0.5f + isoPerimeter * SDR * SSR + softness * 0.5) / (1.0 + softness)); +} + +void ComputeSDF44_float(float SSR, float4 SD, float SDR, float4 isoPerimeter, float4 softness, bool outline, out float4 outAlpha) +{ + softness *= SSR * SDR; + float4 d = (SD - 0.5f) * SDR; + if(outline) d.w = max(max(d.x, d.y), d.z); + outAlpha = saturate((d * 2.0f * SSR + 0.5f + isoPerimeter * SDR * SSR + softness * 0.5) / (1.0 + softness)); +} + +void Composite_float(float4 overlying, float4 underlying, out float4 outColor) +{ + outColor = BlendARGB(overlying, underlying); +} + +// Face only +void Layer1_float(float alpha, float4 color0, out float4 outColor) +{ + color0.a *= alpha; + outColor = color0; +} + +// Face + 1 Outline +void Layer2_float(float2 alpha, float4 color0, float4 color1, out float4 outColor) +{ + color1.a *= alpha.y; + color0.rgb *= color0.a; color1.rgb *= color1.a; + outColor = lerp(color1, color0, alpha.x); + outColor.rgb /= outColor.a; +} + +// Face + 3 Outline +void Layer4_float(float4 alpha, float4 color0, float4 color1, float4 color2, float4 color3, out float4 outColor) +{ + color3.a *= alpha.w; + color0.rgb *= color0.a; color1.rgb *= color1.a; color2.rgb *= color2.a; color3.rgb *= color3.a; + outColor = lerp(lerp(lerp(color3, color2, alpha.z), color1, alpha.y), color0, alpha.x); + outColor.rgb /= outColor.a; +} diff --git a/Assets/TextMesh Pro/Shaders/SDFFunctions.hlsl.meta b/Assets/TextMesh Pro/Shaders/SDFFunctions.hlsl.meta new file mode 100644 index 0000000000..001b14e6f0 --- /dev/null +++ b/Assets/TextMesh Pro/Shaders/SDFFunctions.hlsl.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 96de908384869cd409c75efa351d5edf +ShaderImporter: + externalObjects: {} + defaultTextures: [] + nonModifiableTextures: [] + preprocessorOverride: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/TextMesh Pro/Shaders/TMP_Bitmap-Custom-Atlas.shader b/Assets/TextMesh Pro/Shaders/TMP_Bitmap-Custom-Atlas.shader index bab2b2c677..7e0f35c32b 100644 --- a/Assets/TextMesh Pro/Shaders/TMP_Bitmap-Custom-Atlas.shader +++ b/Assets/TextMesh Pro/Shaders/TMP_Bitmap-Custom-Atlas.shader @@ -1,26 +1,26 @@ Shader "TextMeshPro/Bitmap Custom Atlas" { Properties { - _MainTex ("Font Atlas", 2D) = "white" {} - _FaceTex ("Font Texture", 2D) = "white" {} - [HDR]_FaceColor ("Text Color", Color) = (1,1,1,1) - - _VertexOffsetX ("Vertex OffsetX", float) = 0 - _VertexOffsetY ("Vertex OffsetY", float) = 0 - _MaskSoftnessX ("Mask SoftnessX", float) = 0 - _MaskSoftnessY ("Mask SoftnessY", float) = 0 - - _ClipRect("Clip Rect", vector) = (-32767, -32767, 32767, 32767) - _Padding ("Padding", float) = 0 - - _StencilComp("Stencil Comparison", Float) = 8 - _Stencil("Stencil ID", Float) = 0 - _StencilOp("Stencil Operation", Float) = 0 - _StencilWriteMask("Stencil Write Mask", Float) = 255 - _StencilReadMask("Stencil Read Mask", Float) = 255 - - _CullMode("Cull Mode", Float) = 0 - _ColorMask("Color Mask", Float) = 15 + _MainTex ("Font Atlas", 2D) = "white" {} + _FaceTex ("Font Texture", 2D) = "white" {} + _FaceColor ("Text Color", Color) = (1,1,1,1) + + _VertexOffsetX ("Vertex OffsetX", float) = 0 + _VertexOffsetY ("Vertex OffsetY", float) = 0 + _MaskSoftnessX ("Mask SoftnessX", float) = 0 + _MaskSoftnessY ("Mask SoftnessY", float) = 0 + + _ClipRect ("Clip Rect", vector) = (-32767, -32767, 32767, 32767) + _Padding ("Padding", float) = 0 + + _StencilComp ("Stencil Comparison", Float) = 8 + _Stencil ("Stencil ID", Float) = 0 + _StencilOp ("Stencil Operation", Float) = 0 + _StencilWriteMask ("Stencil Write Mask", Float) = 255 + _StencilReadMask ("Stencil Read Mask", Float) = 255 + + _CullMode ("Cull Mode", Float) = 0 + _ColorMask ("Color Mask", Float) = 15 } SubShader{ @@ -55,15 +55,18 @@ SubShader{ #include "UnityCG.cginc" + #include "UnityUI.cginc" - struct appdata_t { + struct appdata_t + { float4 vertex : POSITION; fixed4 color : COLOR; - float2 texcoord0 : TEXCOORD0; + float4 texcoord0 : TEXCOORD0; float2 texcoord1 : TEXCOORD1; }; - struct v2f { + struct v2f + { float4 vertex : SV_POSITION; fixed4 color : COLOR; float2 texcoord0 : TEXCOORD0; @@ -81,15 +84,9 @@ SubShader{ uniform float4 _ClipRect; uniform float _MaskSoftnessX; uniform float _MaskSoftnessY; - - float2 UnpackUV(float uv) - { - float2 output; - output.x = floor(uv / 4096); - output.y = uv - 4096 * output.x; - - return output * 0.001953125; - } + uniform float _UIMaskSoftnessX; + uniform float _UIMaskSoftnessY; + uniform int _UIVertexColorAlwaysGammaSpace; v2f vert (appdata_t v) { @@ -101,6 +98,10 @@ SubShader{ float4 vPosition = UnityPixelSnap(UnityObjectToClipPos(vert)); + if (_UIVertexColorAlwaysGammaSpace && !IsGammaSpace()) + { + v.color.rgb = UIGammaToLinear(v.color.rgb); + } fixed4 faceColor = v.color; faceColor *= _FaceColor; @@ -108,13 +109,14 @@ SubShader{ OUT.vertex = vPosition; OUT.color = faceColor; OUT.texcoord0 = v.texcoord0; - OUT.texcoord1 = TRANSFORM_TEX(UnpackUV(v.texcoord1), _FaceTex); + OUT.texcoord1 = TRANSFORM_TEX(v.texcoord1, _FaceTex); float2 pixelSize = vPosition.w; pixelSize /= abs(float2(_ScreenParams.x * UNITY_MATRIX_P[0][0], _ScreenParams.y * UNITY_MATRIX_P[1][1])); // Clamp _ClipRect to 16bit. - float4 clampedRect = clamp(_ClipRect, -2e10, 2e10); - OUT.mask = float4(vert.xy * 2 - clampedRect.xy - clampedRect.zw, 0.25 / (0.25 * half2(_MaskSoftnessX, _MaskSoftnessY) + pixelSize.xy)); + const float4 clampedRect = clamp(_ClipRect, -2e10, 2e10); + const half2 maskSoftness = half2(max(_UIMaskSoftnessX, _MaskSoftnessX), max(_UIMaskSoftnessY, _MaskSoftnessY)); + OUT.mask = float4(vert.xy * 2 - clampedRect.xy - clampedRect.zw, 0.25 / (0.25 * maskSoftness + pixelSize.xy)); return OUT; } diff --git a/Assets/TextMesh Pro/Shaders/TMP_Bitmap-Mobile.shader b/Assets/TextMesh Pro/Shaders/TMP_Bitmap-Mobile.shader index 006a271ee4..b89e267210 100644 --- a/Assets/TextMesh Pro/Shaders/TMP_Bitmap-Mobile.shader +++ b/Assets/TextMesh Pro/Shaders/TMP_Bitmap-Mobile.shader @@ -1,25 +1,25 @@ Shader "TextMeshPro/Mobile/Bitmap" { Properties { - _MainTex ("Font Atlas", 2D) = "white" {} - [HDR]_Color ("Text Color", Color) = (1,1,1,1) - _DiffusePower ("Diffuse Power", Range(1.0,4.0)) = 1.0 + _MainTex ("Font Atlas", 2D) = "white" {} + _Color ("Text Color", Color) = (1,1,1,1) + _DiffusePower ("Diffuse Power", Range(1.0,4.0)) = 1.0 - _VertexOffsetX("Vertex OffsetX", float) = 0 - _VertexOffsetY("Vertex OffsetY", float) = 0 - _MaskSoftnessX("Mask SoftnessX", float) = 0 - _MaskSoftnessY("Mask SoftnessY", float) = 0 + _VertexOffsetX ("Vertex OffsetX", float) = 0 + _VertexOffsetY ("Vertex OffsetY", float) = 0 + _MaskSoftnessX ("Mask SoftnessX", float) = 0 + _MaskSoftnessY ("Mask SoftnessY", float) = 0 - _ClipRect("Clip Rect", vector) = (-32767, -32767, 32767, 32767) + _ClipRect ("Clip Rect", vector) = (-32767, -32767, 32767, 32767) - _StencilComp("Stencil Comparison", Float) = 8 - _Stencil("Stencil ID", Float) = 0 - _StencilOp("Stencil Operation", Float) = 0 - _StencilWriteMask("Stencil Write Mask", Float) = 255 - _StencilReadMask("Stencil Read Mask", Float) = 255 + _StencilComp ("Stencil Comparison", Float) = 8 + _Stencil ("Stencil ID", Float) = 0 + _StencilOp ("Stencil Operation", Float) = 0 + _StencilWriteMask ("Stencil Write Mask", Float) = 255 + _StencilReadMask ("Stencil Read Mask", Float) = 255 - _CullMode("Cull Mode", Float) = 0 - _ColorMask("Color Mask", Float) = 15 + _CullMode ("Cull Mode", Float) = 0 + _ColorMask ("Color Mask", Float) = 15 } SubShader { @@ -55,15 +55,18 @@ SubShader { #include "UnityCG.cginc" + #include "UnityUI.cginc" - struct appdata_t { + struct appdata_t + { float4 vertex : POSITION; fixed4 color : COLOR; float2 texcoord0 : TEXCOORD0; float2 texcoord1 : TEXCOORD1; }; - struct v2f { + struct v2f + { float4 vertex : POSITION; fixed4 color : COLOR; float2 texcoord0 : TEXCOORD0; @@ -79,6 +82,9 @@ SubShader { uniform float4 _ClipRect; uniform float _MaskSoftnessX; uniform float _MaskSoftnessY; + uniform float _UIMaskSoftnessX; + uniform float _UIMaskSoftnessY; + uniform int _UIVertexColorAlwaysGammaSpace; v2f vert (appdata_t v) { @@ -88,8 +94,11 @@ SubShader { vert.y += _VertexOffsetY; vert.xy += (vert.w * 0.5) / _ScreenParams.xy; - - OUT.vertex = UnityPixelSnap(UnityObjectToClipPos(vert)); + if (_UIVertexColorAlwaysGammaSpace && !IsGammaSpace()) + { + v.color.rgb = UIGammaToLinear(v.color.rgb); + } + OUT.vertex = UnityPixelSnap(UnityObjectToClipPos(vert)); OUT.color = v.color; OUT.color *= _Color; OUT.color.rgb *= _DiffusePower; @@ -99,8 +108,9 @@ SubShader { //pixelSize /= abs(float2(_ScreenParams.x * UNITY_MATRIX_P[0][0], _ScreenParams.y * UNITY_MATRIX_P[1][1])); // Clamp _ClipRect to 16bit. - float4 clampedRect = clamp(_ClipRect, -2e10, 2e10); - OUT.mask = float4(vert.xy * 2 - clampedRect.xy - clampedRect.zw, 0.25 / (0.25 * half2(_MaskSoftnessX, _MaskSoftnessY) + pixelSize.xy)); + const float4 clampedRect = clamp(_ClipRect, -2e10, 2e10); + const half2 maskSoftness = half2(max(_UIMaskSoftnessX, _MaskSoftnessX), max(_UIMaskSoftnessY, _MaskSoftnessY)); + OUT.mask = float4(vert.xy * 2 - clampedRect.xy - clampedRect.zw, 0.25 / (0.25 * maskSoftness + pixelSize.xy)); return OUT; } diff --git a/Assets/TextMesh Pro/Shaders/TMP_Bitmap.shader b/Assets/TextMesh Pro/Shaders/TMP_Bitmap.shader index 8ce4937a02..caa527f7e8 100644 --- a/Assets/TextMesh Pro/Shaders/TMP_Bitmap.shader +++ b/Assets/TextMesh Pro/Shaders/TMP_Bitmap.shader @@ -1,25 +1,25 @@ Shader "TextMeshPro/Bitmap" { Properties { - _MainTex ("Font Atlas", 2D) = "white" {} - _FaceTex ("Font Texture", 2D) = "white" {} - [HDR]_FaceColor ("Text Color", Color) = (1,1,1,1) + _MainTex ("Font Atlas", 2D) = "white" {} + _FaceTex ("Font Texture", 2D) = "white" {} + _FaceColor ("Text Color", Color) = (1,1,1,1) - _VertexOffsetX ("Vertex OffsetX", float) = 0 - _VertexOffsetY ("Vertex OffsetY", float) = 0 - _MaskSoftnessX ("Mask SoftnessX", float) = 0 - _MaskSoftnessY ("Mask SoftnessY", float) = 0 + _VertexOffsetX ("Vertex OffsetX", float) = 0 + _VertexOffsetY ("Vertex OffsetY", float) = 0 + _MaskSoftnessX ("Mask SoftnessX", float) = 0 + _MaskSoftnessY ("Mask SoftnessY", float) = 0 - _ClipRect("Clip Rect", vector) = (-32767, -32767, 32767, 32767) + _ClipRect ("Clip Rect", vector) = (-32767, -32767, 32767, 32767) - _StencilComp("Stencil Comparison", Float) = 8 - _Stencil("Stencil ID", Float) = 0 - _StencilOp("Stencil Operation", Float) = 0 - _StencilWriteMask("Stencil Write Mask", Float) = 255 - _StencilReadMask("Stencil Read Mask", Float) = 255 + _StencilComp ("Stencil Comparison", Float) = 8 + _Stencil ("Stencil ID", Float) = 0 + _StencilOp ("Stencil Operation", Float) = 0 + _StencilWriteMask ("Stencil Write Mask", Float) = 255 + _StencilReadMask ("Stencil Read Mask", Float) = 255 - _CullMode("Cull Mode", Float) = 0 - _ColorMask("Color Mask", Float) = 15 + _CullMode ("Cull Mode", Float) = 0 + _ColorMask ("Color Mask", Float) = 15 } SubShader{ @@ -54,15 +54,18 @@ SubShader{ #include "UnityCG.cginc" + #include "UnityUI.cginc" - struct appdata_t { + struct appdata_t + { float4 vertex : POSITION; fixed4 color : COLOR; - float2 texcoord0 : TEXCOORD0; + float4 texcoord0 : TEXCOORD0; float2 texcoord1 : TEXCOORD1; }; - struct v2f { + struct v2f + { float4 vertex : SV_POSITION; fixed4 color : COLOR; float2 texcoord0 : TEXCOORD0; @@ -80,15 +83,9 @@ SubShader{ uniform float4 _ClipRect; uniform float _MaskSoftnessX; uniform float _MaskSoftnessY; - - float2 UnpackUV(float uv) - { - float2 output; - output.x = floor(uv / 4096); - output.y = uv - 4096 * output.x; - - return output * 0.001953125; - } + uniform float _UIMaskSoftnessX; + uniform float _UIMaskSoftnessY; + uniform int _UIVertexColorAlwaysGammaSpace; v2f vert (appdata_t v) { @@ -100,6 +97,10 @@ SubShader{ float4 vPosition = UnityPixelSnap(UnityObjectToClipPos(vert)); + if (_UIVertexColorAlwaysGammaSpace && !IsGammaSpace()) + { + v.color.rgb = UIGammaToLinear(v.color.rgb); + } fixed4 faceColor = v.color; faceColor *= _FaceColor; @@ -107,13 +108,14 @@ SubShader{ OUT.vertex = vPosition; OUT.color = faceColor; OUT.texcoord0 = v.texcoord0; - OUT.texcoord1 = TRANSFORM_TEX(UnpackUV(v.texcoord1), _FaceTex); + OUT.texcoord1 = TRANSFORM_TEX(v.texcoord1, _FaceTex); float2 pixelSize = vPosition.w; pixelSize /= abs(float2(_ScreenParams.x * UNITY_MATRIX_P[0][0], _ScreenParams.y * UNITY_MATRIX_P[1][1])); // Clamp _ClipRect to 16bit. - float4 clampedRect = clamp(_ClipRect, -2e10, 2e10); - OUT.mask = float4(vert.xy * 2 - clampedRect.xy - clampedRect.zw, 0.25 / (0.25 * half2(_MaskSoftnessX, _MaskSoftnessY) + pixelSize.xy)); + const float4 clampedRect = clamp(_ClipRect, -2e10, 2e10); + const half2 maskSoftness = half2(max(_UIMaskSoftnessX, _MaskSoftnessX), max(_UIMaskSoftnessY, _MaskSoftnessY)); + OUT.mask = float4(vert.xy * 2 - clampedRect.xy - clampedRect.zw, 0.25 / (0.25 * maskSoftness + pixelSize.xy)); return OUT; } diff --git a/Assets/TextMesh Pro/Shaders/TMP_SDF Overlay.shader b/Assets/TextMesh Pro/Shaders/TMP_SDF Overlay.shader index c50c5930d9..757a617313 100644 --- a/Assets/TextMesh Pro/Shaders/TMP_SDF Overlay.shader +++ b/Assets/TextMesh Pro/Shaders/TMP_SDF Overlay.shader @@ -4,10 +4,10 @@ Properties { _FaceTex ("Face Texture", 2D) = "white" {} _FaceUVSpeedX ("Face UV Speed X", Range(-5, 5)) = 0.0 _FaceUVSpeedY ("Face UV Speed Y", Range(-5, 5)) = 0.0 - [HDR]_FaceColor ("Face Color", Color) = (1,1,1,1) + _FaceColor ("Face Color", Color) = (1,1,1,1) _FaceDilate ("Face Dilate", Range(-1,1)) = 0 - [HDR]_OutlineColor ("Outline Color", Color) = (0,0,0,1) + _OutlineColor ("Outline Color", Color) = (0,0,0,1) _OutlineTex ("Outline Texture", 2D) = "white" {} _OutlineUVSpeedX ("Outline UV Speed X", Range(-5, 5)) = 0.0 _OutlineUVSpeedY ("Outline UV Speed Y", Range(-5, 5)) = 0.0 @@ -21,7 +21,7 @@ Properties { _BevelRoundness ("Bevel Roundness", Range(0,1)) = 0 _LightAngle ("Light Angle", Range(0.0, 6.2831853)) = 3.1416 - [HDR]_SpecularColor ("Specular", Color) = (1,1,1,1) + _SpecularColor ("Specular", Color) = (1,1,1,1) _SpecularPower ("Specular", Range(0,4)) = 2.0 _Reflectivity ("Reflectivity", Range(5.0,15.0)) = 10 _Diffuse ("Diffuse", Range(0,1)) = 0.5 @@ -37,13 +37,13 @@ Properties { _EnvMatrixRotation ("Texture Rotation", vector) = (0, 0, 0, 0) - [HDR]_UnderlayColor ("Border Color", Color) = (0,0,0, 0.5) + _UnderlayColor ("Border Color", Color) = (0,0,0, 0.5) _UnderlayOffsetX ("Border OffsetX", Range(-1,1)) = 0 _UnderlayOffsetY ("Border OffsetY", Range(-1,1)) = 0 _UnderlayDilate ("Border Dilate", Range(-1,1)) = 0 _UnderlaySoftness ("Border Softness", Range(0,1)) = 0 - [HDR]_GlowColor ("Color", Color) = (0, 1, 0, 0.5) + _GlowColor ("Color", Color) = (0, 1, 0, 0.5) _GlowOffset ("Offset", Range(-1,1)) = 0 _GlowInner ("Inner", Range(0,1)) = 0.05 _GlowOuter ("Outer", Range(0,1)) = 0.05 @@ -127,17 +127,18 @@ SubShader { #include "TMPro_Properties.cginc" #include "TMPro.cginc" - struct vertex_t { + struct vertex_t + { UNITY_VERTEX_INPUT_INSTANCE_ID float4 position : POSITION; float3 normal : NORMAL; fixed4 color : COLOR; - float2 texcoord0 : TEXCOORD0; + float4 texcoord0 : TEXCOORD0; float2 texcoord1 : TEXCOORD1; }; - - struct pixel_t { + struct pixel_t + { UNITY_VERTEX_INPUT_INSTANCE_ID UNITY_VERTEX_OUTPUT_STEREO float4 position : SV_POSITION; @@ -147,16 +148,20 @@ SubShader { float4 mask : TEXCOORD2; // Position in object space(xy), pixel Size(zw) float3 viewDir : TEXCOORD3; - #if (UNDERLAY_ON || UNDERLAY_INNER) + #if (UNDERLAY_ON || UNDERLAY_INNER) float4 texcoord2 : TEXCOORD4; // u,v, scale, bias fixed4 underlayColor : COLOR1; - #endif + #endif + float4 textures : TEXCOORD5; }; // Used by Unity internally to handle Texture Tiling and Offset. - float4 _FaceTex_ST; - float4 _OutlineTex_ST; + uniform float4 _FaceTex_ST; + uniform float4 _OutlineTex_ST; + uniform float _UIMaskSoftnessX; + uniform float _UIMaskSoftnessY; + uniform int _UIVertexColorAlwaysGammaSpace; pixel_t VertShader(vertex_t input) { @@ -167,7 +172,7 @@ SubShader { UNITY_TRANSFER_INSTANCE_ID(input,output); UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(output); - float bold = step(input.texcoord1.y, 0); + float bold = step(input.texcoord0.w, 0); float4 vert = input.position; vert.x += _VertexOffsetX; @@ -178,7 +183,7 @@ SubShader { float2 pixelSize = vPosition.w; pixelSize /= float2(_ScaleX, _ScaleY) * abs(mul((float2x2)UNITY_MATRIX_P, _ScreenParams.xy)); float scale = rsqrt(dot(pixelSize, pixelSize)); - scale *= abs(input.texcoord1.y) * _GradientScale * (_Sharpness + 1); + scale *= abs(input.texcoord0.w) * _GradientScale * (_Sharpness + 1); if (UNITY_MATRIX_P[3][3] == 0) scale = lerp(abs(scale) * (1 - _PerspectiveFilter), scale, abs(dot(UnityObjectToWorldNormal(input.normal.xyz), normalize(WorldSpaceViewDir(vert))))); float weight = lerp(_WeightNormal, _WeightBold, bold) / 4.0; @@ -188,13 +193,13 @@ SubShader { float alphaClip = (1.0 - _OutlineWidth*_ScaleRatioA - _OutlineSoftness*_ScaleRatioA); - #if GLOW_ON + #if GLOW_ON alphaClip = min(alphaClip, 1.0 - _GlowOffset * _ScaleRatioB - _GlowOuter * _ScaleRatioB); - #endif + #endif alphaClip = alphaClip / 2.0 - ( .5 / scale) - weight; - #if (UNDERLAY_ON || UNDERLAY_INNER) + #if (UNDERLAY_ON || UNDERLAY_INNER) float4 underlayColor = _UnderlayColor; underlayColor.rgb *= underlayColor.a; @@ -205,23 +210,28 @@ SubShader { float x = -(_UnderlayOffsetX * _ScaleRatioC) * _GradientScale / _TextureWidth; float y = -(_UnderlayOffsetY * _ScaleRatioC) * _GradientScale / _TextureHeight; float2 bOffset = float2(x, y); - #endif + #endif // Generate UV for the Masking Texture float4 clampedRect = clamp(_ClipRect, -2e10, 2e10); float2 maskUV = (vert.xy - clampedRect.xy) / (clampedRect.zw - clampedRect.xy); // Support for texture tiling and offset - float2 textureUV = UnpackUV(input.texcoord1.x); + float2 textureUV = input.texcoord1; float2 faceUV = TRANSFORM_TEX(textureUV, _FaceTex); float2 outlineUV = TRANSFORM_TEX(textureUV, _OutlineTex); + if (_UIVertexColorAlwaysGammaSpace && !IsGammaSpace()) + { + input.color.rgb = UIGammaToLinear(input.color.rgb); + } output.position = vPosition; output.color = input.color; output.atlas = input.texcoord0; output.param = float4(alphaClip, scale, bias, weight); - output.mask = half4(vert.xy * 2 - clampedRect.xy - clampedRect.zw, 0.25 / (0.25 * half2(_MaskSoftnessX, _MaskSoftnessY) + pixelSize.xy)); + const half2 maskSoftness = half2(max(_UIMaskSoftnessX, _MaskSoftnessX), max(_UIMaskSoftnessY, _MaskSoftnessY)); + output.mask = half4(vert.xy * 2 - clampedRect.xy - clampedRect.zw, 0.25 / (0.25 * maskSoftness + pixelSize.xy)); output.viewDir = mul((float3x3)_EnvMatrix, _WorldSpaceCameraPos.xyz - mul(unity_ObjectToWorld, vert).xyz); #if (UNDERLAY_ON || UNDERLAY_INNER) output.texcoord2 = float4(input.texcoord0 + bOffset, bScale, bBias); @@ -239,9 +249,9 @@ SubShader { float c = tex2D(_MainTex, input.atlas).a; - #ifndef UNDERLAY_ON + #ifndef UNDERLAY_ON clip(c - input.param.x); - #endif + #endif float scale = input.param.y; float bias = input.param.z; @@ -261,7 +271,7 @@ SubShader { faceColor = GetColor(sd, faceColor, outlineColor, outline, softness); - #if BEVEL_ON + #if BEVEL_ON float3 dxy = float3(0.5 / _TextureWidth, 0.5 / _TextureHeight, 0); float3 n = GetSurfaceNormal(input.atlas, weight, dxy); @@ -278,36 +288,35 @@ SubShader { fixed4 reflcol = texCUBE(_Cube, reflect(input.viewDir, -n)); faceColor.rgb += reflcol.rgb * lerp(_ReflectFaceColor.rgb, _ReflectOutlineColor.rgb, saturate(sd + outline * 0.5)) * faceColor.a; - #endif + #endif - #if UNDERLAY_ON + #if UNDERLAY_ON float d = tex2D(_MainTex, input.texcoord2.xy).a * input.texcoord2.z; faceColor += input.underlayColor * saturate(d - input.texcoord2.w) * (1 - faceColor.a); - #endif + #endif - #if UNDERLAY_INNER + #if UNDERLAY_INNER float d = tex2D(_MainTex, input.texcoord2.xy).a * input.texcoord2.z; faceColor += input.underlayColor * (1 - saturate(d - input.texcoord2.w)) * saturate(1 - sd) * (1 - faceColor.a); - #endif + #endif - #if GLOW_ON + #if GLOW_ON float4 glowColor = GetGlowColor(sd, scale); faceColor.rgb += glowColor.rgb * glowColor.a; - #endif + #endif - // Alternative implementation to UnityGet2DClipping with support for softness. - #if UNITY_UI_CLIP_RECT + // Alternative implementation to UnityGet2DClipping with support for softness. + #if UNITY_UI_CLIP_RECT half2 m = saturate((_ClipRect.zw - _ClipRect.xy - abs(input.mask.xy)) * input.mask.zw); faceColor *= m.x * m.y; - #endif + #endif - #if UNITY_UI_ALPHACLIP + #if UNITY_UI_ALPHACLIP clip(faceColor.a - 0.001); - #endif + #endif return faceColor * input.color.a; } - ENDCG } } diff --git a/Assets/TextMesh Pro/Shaders/TMP_SDF SSD.shader b/Assets/TextMesh Pro/Shaders/TMP_SDF SSD.shader index ed48574d55..27c14bc6ac 100644 --- a/Assets/TextMesh Pro/Shaders/TMP_SDF SSD.shader +++ b/Assets/TextMesh Pro/Shaders/TMP_SDF SSD.shader @@ -4,10 +4,10 @@ Properties { _FaceTex ("Face Texture", 2D) = "white" {} _FaceUVSpeedX ("Face UV Speed X", Range(-5, 5)) = 0.0 _FaceUVSpeedY ("Face UV Speed Y", Range(-5, 5)) = 0.0 - [HDR]_FaceColor ("Face Color", Color) = (1,1,1,1) + _FaceColor ("Face Color", Color) = (1,1,1,1) _FaceDilate ("Face Dilate", Range(-1,1)) = 0 - [HDR]_OutlineColor ("Outline Color", Color) = (0,0,0,1) + _OutlineColor ("Outline Color", Color) = (0,0,0,1) _OutlineTex ("Outline Texture", 2D) = "white" {} _OutlineUVSpeedX ("Outline UV Speed X", Range(-5, 5)) = 0.0 _OutlineUVSpeedY ("Outline UV Speed Y", Range(-5, 5)) = 0.0 @@ -21,7 +21,7 @@ Properties { _BevelRoundness ("Bevel Roundness", Range(0,1)) = 0 _LightAngle ("Light Angle", Range(0.0, 6.2831853)) = 3.1416 - [HDR]_SpecularColor ("Specular", Color) = (1,1,1,1) + _SpecularColor ("Specular", Color) = (1,1,1,1) _SpecularPower ("Specular", Range(0,4)) = 2.0 _Reflectivity ("Reflectivity", Range(5.0,15.0)) = 10 _Diffuse ("Diffuse", Range(0,1)) = 0.5 @@ -37,13 +37,13 @@ Properties { _EnvMatrixRotation ("Texture Rotation", vector) = (0, 0, 0, 0) - [HDR]_UnderlayColor ("Border Color", Color) = (0,0,0, 0.5) + _UnderlayColor ("Border Color", Color) = (0,0,0, 0.5) _UnderlayOffsetX ("Border OffsetX", Range(-1,1)) = 0 _UnderlayOffsetY ("Border OffsetY", Range(-1,1)) = 0 _UnderlayDilate ("Border Dilate", Range(-1,1)) = 0 _UnderlaySoftness ("Border Softness", Range(0,1)) = 0 - [HDR]_GlowColor ("Color", Color) = (0, 1, 0, 0.5) + _GlowColor ("Color", Color) = (0, 1, 0, 0.5) _GlowOffset ("Offset", Range(-1,1)) = 0 _GlowInner ("Inner", Range(0,1)) = 0.05 _GlowOuter ("Outer", Range(0,1)) = 0.05 @@ -109,7 +109,8 @@ SubShader { Blend One OneMinusSrcAlpha ColorMask[_ColorMask] - Pass { + Pass + { CGPROGRAM #pragma target 3.0 #pragma vertex VertShader @@ -127,17 +128,18 @@ SubShader { #include "TMPro_Properties.cginc" #include "TMPro.cginc" - struct vertex_t { + struct vertex_t + { UNITY_VERTEX_INPUT_INSTANCE_ID float4 position : POSITION; float3 normal : NORMAL; float4 color : COLOR; - float2 texcoord0 : TEXCOORD0; + float4 texcoord0 : TEXCOORD0; float2 texcoord1 : TEXCOORD1; }; - - struct pixel_t { + struct pixel_t + { UNITY_VERTEX_INPUT_INSTANCE_ID UNITY_VERTEX_OUTPUT_STEREO float4 position : SV_POSITION; @@ -147,18 +149,23 @@ SubShader { float2 mask : TEXCOORD2; // Position in object space(xy) float3 viewDir : TEXCOORD3; - #if (UNDERLAY_ON || UNDERLAY_INNER) + #if (UNDERLAY_ON || UNDERLAY_INNER) float2 texcoord2 : TEXCOORD4; float4 underlayColor : COLOR1; - #endif + #endif + float4 textures : TEXCOORD5; }; // Used by Unity internally to handle Texture Tiling and Offset. float4 _FaceTex_ST; float4 _OutlineTex_ST; + float _UIMaskSoftnessX; + float _UIMaskSoftnessY; + int _UIVertexColorAlwaysGammaSpace; - float4 SRGBToLinear(float4 rgba) { + float4 SRGBToLinear(float4 rgba) + { return float4(lerp(rgba.rgb / 12.92f, pow((rgba.rgb + 0.055f) / 1.055f, 2.4f), step(0.04045f, rgba.rgb)), rgba.a); } @@ -171,7 +178,7 @@ SubShader { UNITY_TRANSFER_INSTANCE_ID(input,output); UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(output); - float bold = step(input.texcoord1.y, 0); + float bold = step(input.texcoord0.w, 0); float4 vert = input.position; vert.x += _VertexOffsetX; @@ -182,27 +189,31 @@ SubShader { float weight = lerp(_WeightNormal, _WeightBold, bold) / 4.0; weight = (weight + _FaceDilate) * _ScaleRatioA * 0.5; - #if (UNDERLAY_ON || UNDERLAY_INNER) + #if (UNDERLAY_ON || UNDERLAY_INNER) float4 underlayColor = _UnderlayColor; underlayColor.rgb *= underlayColor.a; float x = -(_UnderlayOffsetX * _ScaleRatioC) * _GradientScale / _TextureWidth; float y = -(_UnderlayOffsetY * _ScaleRatioC) * _GradientScale / _TextureHeight; float2 bOffset = float2(x, y); - #endif + #endif // Generate UV for the Masking Texture float4 clampedRect = clamp(_ClipRect, -2e10, 2e10); // Support for texture tiling and offset - float2 textureUV = UnpackUV(input.texcoord1.x); + float2 textureUV = input.texcoord1; float2 faceUV = TRANSFORM_TEX(textureUV, _FaceTex); float2 outlineUV = TRANSFORM_TEX(textureUV, _OutlineTex); + if (_UIVertexColorAlwaysGammaSpace && !IsGammaSpace()) + { + input.color.rgb = UIGammaToLinear(input.color.rgb); + } float4 color = input.color; - #if (FORCE_LINEAR && !UNITY_COLORSPACE_GAMMA) + #if (FORCE_LINEAR && !UNITY_COLORSPACE_GAMMA) color = SRGBToLinear(input.color); - #endif + #endif output.position = vPosition; output.color = color; @@ -210,10 +221,10 @@ SubShader { output.weight = weight; output.mask = half2(vert.xy * 2 - clampedRect.xy - clampedRect.zw); output.viewDir = mul((float3x3)_EnvMatrix, _WorldSpaceCameraPos.xyz - mul(unity_ObjectToWorld, vert).xyz); - #if (UNDERLAY_ON || UNDERLAY_INNER) + #if (UNDERLAY_ON || UNDERLAY_INNER) output.texcoord2 = input.texcoord0 + bOffset; output.underlayColor = underlayColor; - #endif + #endif output.textures = float4(faceUV, outlineUV); return output; @@ -226,9 +237,9 @@ SubShader { float c = tex2D(_MainTex, input.atlas).a; - float2 pixelSize = float2(ddx(input.atlas.y), ddy(input.atlas.y)); - pixelSize *= _TextureWidth * .75; - float scale = rsqrt(dot(pixelSize, pixelSize)) * _GradientScale * (_Sharpness + 1); + float pixelSize = abs(ddx(input.atlas.y)) + abs(ddy(input.atlas.y)); + pixelSize *= _TextureHeight * 0.75; + float scale = 1 / pixelSize * _GradientScale * (_Sharpness + 1); float weight = input.weight; float bias = (.5 - weight) + (.5 / scale); @@ -247,7 +258,7 @@ SubShader { faceColor = GetColor(sd, faceColor, outlineColor, outline, softness); - #if BEVEL_ON + #if BEVEL_ON float3 dxy = float3(0.5 / _TextureWidth, 0.5 / _TextureHeight, 0); float3 n = GetSurfaceNormal(input.atlas, weight, dxy); @@ -264,45 +275,45 @@ SubShader { fixed4 reflcol = texCUBE(_Cube, reflect(input.viewDir, -n)); faceColor.rgb += reflcol.rgb * lerp(_ReflectFaceColor.rgb, _ReflectOutlineColor.rgb, saturate(sd + outline * 0.5)) * faceColor.a; - #endif + #endif - #if (UNDERLAY_ON || UNDERLAY_INNER) + #if (UNDERLAY_ON || UNDERLAY_INNER) float bScale = scale; bScale /= 1 + ((_UnderlaySoftness * _ScaleRatioC) * bScale); float bBias = (0.5 - weight) * bScale - 0.5 - ((_UnderlayDilate * _ScaleRatioC) * 0.5 * bScale); - #endif + #endif - #if UNDERLAY_ON + #if UNDERLAY_ON float d = tex2D(_MainTex, input.texcoord2.xy).a * bScale; faceColor += input.underlayColor * saturate(d - bBias) * (1 - faceColor.a); - #endif + #endif - #if UNDERLAY_INNER + #if UNDERLAY_INNER float d = tex2D(_MainTex, input.texcoord2.xy).a * bScale; faceColor += input.underlayColor * (1 - saturate(d - bBias)) * saturate(1 - sd) * (1 - faceColor.a); - #endif + #endif - #if GLOW_ON + #if GLOW_ON float4 glowColor = GetGlowColor(sd, scale); faceColor.rgb += glowColor.rgb * glowColor.a; - #endif + #endif // Alternative implementation to UnityGet2DClipping with support for softness. - #if UNITY_UI_CLIP_RECT - float2 maskZW = 0.25 / (0.25 * half2(_MaskSoftnessX, _MaskSoftnessY) + (1 / scale)); + #if UNITY_UI_CLIP_RECT + half2 maskSoftness = half2(max(_UIMaskSoftnessX, _MaskSoftnessX), max(_UIMaskSoftnessY, _MaskSoftnessY)); + float2 maskZW = 0.25 / (0.25 * maskSoftness + 1 / scale); half2 m = saturate((_ClipRect.zw - _ClipRect.xy - abs(input.mask.xy)) * maskZW); faceColor *= m.x * m.y; - #endif + #endif - #if UNITY_UI_ALPHACLIP + #if UNITY_UI_ALPHACLIP clip(faceColor.a - 0.001); - #endif + #endif return faceColor * input.color.a; - } - - ENDCG } + ENDCG + } } Fallback "TextMeshPro/Mobile/Distance Field" diff --git a/Assets/TextMesh Pro/Shaders/TMP_SDF-HDRP LIT.shadergraph b/Assets/TextMesh Pro/Shaders/TMP_SDF-HDRP LIT.shadergraph new file mode 100644 index 0000000000..4f7157caf7 --- /dev/null +++ b/Assets/TextMesh Pro/Shaders/TMP_SDF-HDRP LIT.shadergraph @@ -0,0 +1,12074 @@ +{ + "m_SGVersion": 3, + "m_Type": "UnityEditor.ShaderGraph.GraphData", + "m_ObjectId": "386c36a1c4c34ea29deb680fb82cfe8b", + "m_Properties": [ + { + "m_Id": "dc75c4e3a1bc4bb0a128086c2b0679a5" + }, + { + "m_Id": "867a4ae13c0d4a028c71bc1063824c14" + }, + { + "m_Id": "22b7f3c2bb7b48c0a7fdeb50e33e7d5e" + }, + { + "m_Id": "53073e5ea924459fa6681a4943e9f947" + }, + { + "m_Id": "7a046f410ce64aa88438b0bfd412c045" + }, + { + "m_Id": "636180f6e0504f2baaa5cc086980cb47" + }, + { + "m_Id": "74b41464cbed4e9e8e23af5ab9be40cf" + }, + { + "m_Id": "8ed907a2cc7949b68a283ae243ea1977" + }, + { + "m_Id": "cb3c0c3f08654b068bea44c4ffb15f4a" + }, + { + "m_Id": "0580d4b7e3a049049569f4508643a724" + }, + { + "m_Id": "c9ec735d1a1046769e5601b2c97c849a" + }, + { + "m_Id": "2d0a269511e34bd1ba9056d2c939dff2" + }, + { + "m_Id": "07946387933e416db576b677f0711e5f" + }, + { + "m_Id": "46fbf3eeb0ea4470869cba7443249295" + }, + { + "m_Id": "ec79eb447dfd47a9b3380344c6a60f43" + }, + { + "m_Id": "3fdf4b7bc5d4426492dcc057603ef4a6" + }, + { + "m_Id": "8cf8aae64c1d443f9303126886b40f17" + }, + { + "m_Id": "49e7c3ad55ce458797f0e60c950cb965" + }, + { + "m_Id": "81e8ed0534534674a74263e6161a2a1a" + }, + { + "m_Id": "952d0fa5cd744df0b434cd38e9a90b93" + }, + { + "m_Id": "21a7a380e66d42e780e2a2a1baa630d5" + }, + { + "m_Id": "2c10b97b92c947ceb307a93759c0228b" + }, + { + "m_Id": "1be90d4f96a841748b0c95219b12ad27" + }, + { + "m_Id": "5fbe253f3e444f2aa8ac717f9c856619" + }, + { + "m_Id": "5bd258837c514ff7ab0bf7027e762c18" + }, + { + "m_Id": "998db5e5901e45b29040eb2099370071" + }, + { + "m_Id": "a6c38edd2e8743a9b057ba8452b9f129" + }, + { + "m_Id": "82af2db1018543d7832af96c1cfc981f" + }, + { + "m_Id": "3ec4797e381747829ef4712c85fcf7a1" + }, + { + "m_Id": "b0b352c4503a43d083a64e57352b29a0" + }, + { + "m_Id": "424dbeeb009344efa29c304c4979e3d6" + }, + { + "m_Id": "05805bc6fcc941fd889922555c6c86d7" + }, + { + "m_Id": "a4ad98d8828c424384229c344ebe2ed0" + }, + { + "m_Id": "3e372195f4bd4845852a37839e5b602d" + }, + { + "m_Id": "a6bbb32e8d884be9bb36db91fe4b81b1" + }, + { + "m_Id": "c417006ffa034c44b79da3dd323165ff" + } + ], + "m_Keywords": [], + "m_Dropdowns": [], + "m_CategoryData": [ + { + "m_Id": "6b0cd1bfb339459ca967fa23df287ef0" + } + ], + "m_Nodes": [ + { + "m_Id": "b1188549725543d485436c2e921ffbb2" + }, + { + "m_Id": "4488af8ff6a7421298a7e827f567263b" + }, + { + "m_Id": "7e0fadb2533f496192c1ad3e78642010" + }, + { + "m_Id": "aa87c72ac0e64469acc34f936f00b3d0" + }, + { + "m_Id": "105b1ed1aa714e41bbe1ef5472bdb11f" + }, + { + "m_Id": "150533bad8e2424aaa2c74e253af8592" + }, + { + "m_Id": "1c4df61c2fea404eb3b87b270d7c59bc" + }, + { + "m_Id": "8135ca333f8f4ea78163743e6ec1f55c" + }, + { + "m_Id": "36f1b4d96f2941c39e5cd95d9c1d2ce6" + }, + { + "m_Id": "9c228fac287d446296b91a4acf5cec59" + }, + { + "m_Id": "52798bdb86f6400e86489a7a368e9f8b" + }, + { + "m_Id": "f383b24f0bc6434dafe44b3e3d338a63" + }, + { + "m_Id": "85a1ad8e741e41759002e8cdc8cd0b96" + }, + { + "m_Id": "f3d31c1f18d8491a8ecf5cbc37e4b7db" + }, + { + "m_Id": "f23a8b2b7c85478388ff7a8c8a6de740" + }, + { + "m_Id": "e818605f8f5a4f01bf61caaa33693581" + }, + { + "m_Id": "85b5940eb77e4625812ded7215bab8d7" + }, + { + "m_Id": "cdddee3a537c464697357f11b966f9b8" + }, + { + "m_Id": "88253223d2c34ecfab92b0c344048f94" + }, + { + "m_Id": "c7ddee91dc5b48dc828309c77fdb0b88" + }, + { + "m_Id": "1e12726617b24675958e942eb62e4b09" + }, + { + "m_Id": "2ac79705aa9e415dbb74ec215233fd1b" + }, + { + "m_Id": "44317f2e371447e2a8d894f8a021a235" + }, + { + "m_Id": "7984fd094e1147bdabb4e26fbd3d31c8" + }, + { + "m_Id": "91890fe48ebe4717aea61ecaf3ad4861" + }, + { + "m_Id": "19075add867e4757b9520d18fe8de1d0" + }, + { + "m_Id": "fdb77c3e92ee497b88ca5dc46dc45350" + }, + { + "m_Id": "c234e5216678436195ee1a5914bc79da" + }, + { + "m_Id": "4648b46ad29a4008a80de4f8a5a5b813" + }, + { + "m_Id": "59bd90a849624124bae6464ee3669aa6" + }, + { + "m_Id": "a535f3bcbeb14622bb177eb6f46e76f4" + }, + { + "m_Id": "9e87ce9607e14015a3790c528ca5dfda" + }, + { + "m_Id": "285f6a9863d54ed2a8150727ad749456" + }, + { + "m_Id": "b163c9f1666644b0bba62cf0e12df7bc" + }, + { + "m_Id": "a455bd79094c4413a7b7dd80ca8b9368" + }, + { + "m_Id": "dbcb748279484a4590e53518c49122b8" + }, + { + "m_Id": "04dc152dd2ba4d519391577eb1156235" + }, + { + "m_Id": "9f0de188085746d5a19073da1de85ddb" + }, + { + "m_Id": "ec184d6d9fb2494897774c9e7d279e6d" + }, + { + "m_Id": "95928bcb6a284b8d88105a84c2e1d3ce" + }, + { + "m_Id": "4f194ff591484e908fc2bcdacbcf2570" + }, + { + "m_Id": "6e8946a245e842b38231d4a241bfb3ef" + }, + { + "m_Id": "cb7117ecb1d047a8b2cb00ed552cb181" + }, + { + "m_Id": "3c50439118b2496f9e390021b0964606" + }, + { + "m_Id": "3e231021af7b47ba97f2871e7f25d0fe" + }, + { + "m_Id": "aa3e347d733e48f7b65d8a8847370eec" + }, + { + "m_Id": "2a552a0b828f457c911aa19561e410ae" + }, + { + "m_Id": "acd0cd5a177f4a97bf23db7219305e3f" + }, + { + "m_Id": "51378bae98a94c309785d14cd5cbb453" + }, + { + "m_Id": "9e6e50a71d9843b49b62ebe1cf7d3d59" + }, + { + "m_Id": "7444469eb9884253819add9ef96baa25" + }, + { + "m_Id": "67a519f507384ff1861df5d8d5b486be" + }, + { + "m_Id": "48390d02257d41bf98eace1deaa4c539" + }, + { + "m_Id": "f4ecc442a2d246759f7c2c0412953d28" + }, + { + "m_Id": "7f2e6b5f15364ed9835d67d0cf4f8f65" + }, + { + "m_Id": "aca823a8188948c782eddaf0f45e1868" + }, + { + "m_Id": "7d78a616c2754cc28d1f32cf66ade611" + }, + { + "m_Id": "163beb4431c34f538340bc0af0991e6f" + }, + { + "m_Id": "39f2f84f30304d859fb07569e2695f60" + }, + { + "m_Id": "42a586e4f6ec40eeaba891b7fd133864" + }, + { + "m_Id": "4abff6ff92fa4a05b203f10580988335" + }, + { + "m_Id": "319916a5921343f7b7eef0e50dc93def" + }, + { + "m_Id": "f814deb543c24fbbafbcdb5071d96022" + }, + { + "m_Id": "65c8e64a7535466e933eed08a2f77532" + }, + { + "m_Id": "63c7cd57fc3c45a9a97b514fdae32693" + }, + { + "m_Id": "d4df208fc23b42f2b52364124f1b661c" + }, + { + "m_Id": "9d3c3383d5934a17bf9efbb7fd9e9043" + }, + { + "m_Id": "aef5c44f84e04c3185e0b93e95e34204" + }, + { + "m_Id": "c9d7f0dbae7d422985a1cc87c025e76b" + }, + { + "m_Id": "faace8101df943d8956faa31728cb004" + }, + { + "m_Id": "007c75c776ac4f1babe9cd7ae1fc4f14" + }, + { + "m_Id": "b571db753a1948d5a6f1de4e7d0c7238" + }, + { + "m_Id": "9147636b0cfa466a9b37a013d8f693bf" + }, + { + "m_Id": "bc9afcb18afa4ccc82d2cdc34d3f4641" + }, + { + "m_Id": "b4a40cb6acd441acb83cfe0240bf910d" + }, + { + "m_Id": "56c25395796e4d2fbe5c892d428d1620" + }, + { + "m_Id": "6b2f65c1463f4f7bad16c54a95d2fe75" + }, + { + "m_Id": "109f638d1f9b49d4991d6d21a86d4eb7" + }, + { + "m_Id": "dff7a66b353a4023b29c9d937da77960" + }, + { + "m_Id": "7a80e8839f0e4a1d9a6c0814f8793ee6" + }, + { + "m_Id": "7d7696aa6d184b4fb9c316a9dec37aee" + }, + { + "m_Id": "ec1f2e8bc9fd4ae38b133c60ee6c49b8" + }, + { + "m_Id": "2db15d90c2204143b225ec4ef08d0755" + }, + { + "m_Id": "e591df3a1eb94e259b762f2830b407e2" + }, + { + "m_Id": "bc782d8e80154073b48a687a07adf60a" + }, + { + "m_Id": "2786e48f93f54a82aee4303ce7b63c82" + }, + { + "m_Id": "7f7d8028b58d4227a4560891be6e7cda" + }, + { + "m_Id": "f5a8bfcec21a4dac9df63993ec53635e" + }, + { + "m_Id": "be58359e488f42e9b5121357d0fa526b" + } + ], + "m_GroupDatas": [ + { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + { + "m_Id": "d0a791a544614667962a9a9a9ce0c68a" + }, + { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + { + "m_Id": "ecf16c34d46f4502ac601f0c38c7576b" + }, + { + "m_Id": "98934a69591249d5b8b92b39045359a3" + }, + { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + { + "m_Id": "d258902c6ec74942afdb9ebf8c1d07f8" + }, + { + "m_Id": "daaf032a109749a88c9b8ff8e1f8b541" + } + ], + "m_StickyNoteDatas": [], + "m_Edges": [ + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "007c75c776ac4f1babe9cd7ae1fc4f14" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "b571db753a1948d5a6f1de4e7d0c7238" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "04dc152dd2ba4d519391577eb1156235" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "b163c9f1666644b0bba62cf0e12df7bc" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "105b1ed1aa714e41bbe1ef5472bdb11f" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "b4a40cb6acd441acb83cfe0240bf910d" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "109f638d1f9b49d4991d6d21a86d4eb7" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "ec1f2e8bc9fd4ae38b133c60ee6c49b8" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "150533bad8e2424aaa2c74e253af8592" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "319916a5921343f7b7eef0e50dc93def" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "150533bad8e2424aaa2c74e253af8592" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "65c8e64a7535466e933eed08a2f77532" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "150533bad8e2424aaa2c74e253af8592" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "9c228fac287d446296b91a4acf5cec59" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "150533bad8e2424aaa2c74e253af8592" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "f814deb543c24fbbafbcdb5071d96022" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "163beb4431c34f538340bc0af0991e6f" + }, + "m_SlotId": 4 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "7984fd094e1147bdabb4e26fbd3d31c8" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "19075add867e4757b9520d18fe8de1d0" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "e818605f8f5a4f01bf61caaa33693581" + }, + "m_SlotId": 5 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "1c4df61c2fea404eb3b87b270d7c59bc" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "e818605f8f5a4f01bf61caaa33693581" + }, + "m_SlotId": 4 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "1e12726617b24675958e942eb62e4b09" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "dff7a66b353a4023b29c9d937da77960" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "285f6a9863d54ed2a8150727ad749456" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "59bd90a849624124bae6464ee3669aa6" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "2a552a0b828f457c911aa19561e410ae" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "51378bae98a94c309785d14cd5cbb453" + }, + "m_SlotId": 6 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "2ac79705aa9e415dbb74ec215233fd1b" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "7984fd094e1147bdabb4e26fbd3d31c8" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "2db15d90c2204143b225ec4ef08d0755" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "fdb77c3e92ee497b88ca5dc46dc45350" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "319916a5921343f7b7eef0e50dc93def" + }, + "m_SlotId": 7 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "4abff6ff92fa4a05b203f10580988335" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "36f1b4d96f2941c39e5cd95d9c1d2ce6" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "85a1ad8e741e41759002e8cdc8cd0b96" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "39f2f84f30304d859fb07569e2695f60" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "163beb4431c34f538340bc0af0991e6f" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "3e231021af7b47ba97f2871e7f25d0fe" + }, + "m_SlotId": 5 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "6e8946a245e842b38231d4a241bfb3ef" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "42a586e4f6ec40eeaba891b7fd133864" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "cdddee3a537c464697357f11b966f9b8" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "44317f2e371447e2a8d894f8a021a235" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "2ac79705aa9e415dbb74ec215233fd1b" + }, + "m_SlotId": 3 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "4488af8ff6a7421298a7e827f567263b" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "44317f2e371447e2a8d894f8a021a235" + }, + "m_SlotId": 3 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "4648b46ad29a4008a80de4f8a5a5b813" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "c234e5216678436195ee1a5914bc79da" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "4abff6ff92fa4a05b203f10580988335" + }, + "m_SlotId": 4 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "e818605f8f5a4f01bf61caaa33693581" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "4f194ff591484e908fc2bcdacbcf2570" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "9f0de188085746d5a19073da1de85ddb" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "51378bae98a94c309785d14cd5cbb453" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "aa3e347d733e48f7b65d8a8847370eec" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "51378bae98a94c309785d14cd5cbb453" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "aca823a8188948c782eddaf0f45e1868" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "52798bdb86f6400e86489a7a368e9f8b" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "f383b24f0bc6434dafe44b3e3d338a63" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "56c25395796e4d2fbe5c892d428d1620" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "7a80e8839f0e4a1d9a6c0814f8793ee6" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "59bd90a849624124bae6464ee3669aa6" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "f23a8b2b7c85478388ff7a8c8a6de740" + }, + "m_SlotId": 4 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "63c7cd57fc3c45a9a97b514fdae32693" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "56c25395796e4d2fbe5c892d428d1620" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "65c8e64a7535466e933eed08a2f77532" + }, + "m_SlotId": 7 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "4abff6ff92fa4a05b203f10580988335" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "67a519f507384ff1861df5d8d5b486be" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "51378bae98a94c309785d14cd5cbb453" + }, + "m_SlotId": 4 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "6b2f65c1463f4f7bad16c54a95d2fe75" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "7d7696aa6d184b4fb9c316a9dec37aee" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "7444469eb9884253819add9ef96baa25" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "51378bae98a94c309785d14cd5cbb453" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "7984fd094e1147bdabb4e26fbd3d31c8" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "91890fe48ebe4717aea61ecaf3ad4861" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "7a80e8839f0e4a1d9a6c0814f8793ee6" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "65c8e64a7535466e933eed08a2f77532" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "7d7696aa6d184b4fb9c316a9dec37aee" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "319916a5921343f7b7eef0e50dc93def" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "7d78a616c2754cc28d1f32cf66ade611" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "f23a8b2b7c85478388ff7a8c8a6de740" + }, + "m_SlotId": 3 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "7e0fadb2533f496192c1ad3e78642010" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "88253223d2c34ecfab92b0c344048f94" + }, + "m_SlotId": 5 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "8135ca333f8f4ea78163743e6ec1f55c" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "f23a8b2b7c85478388ff7a8c8a6de740" + }, + "m_SlotId": 5 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "85a1ad8e741e41759002e8cdc8cd0b96" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "88253223d2c34ecfab92b0c344048f94" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "85a1ad8e741e41759002e8cdc8cd0b96" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "e818605f8f5a4f01bf61caaa33693581" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "85b5940eb77e4625812ded7215bab8d7" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "f23a8b2b7c85478388ff7a8c8a6de740" + }, + "m_SlotId": 6 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "88253223d2c34ecfab92b0c344048f94" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "44317f2e371447e2a8d894f8a021a235" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "9147636b0cfa466a9b37a013d8f693bf" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "faace8101df943d8956faa31728cb004" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "91890fe48ebe4717aea61ecaf3ad4861" + }, + "m_SlotId": 1 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "3e231021af7b47ba97f2871e7f25d0fe" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "91890fe48ebe4717aea61ecaf3ad4861" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "3e231021af7b47ba97f2871e7f25d0fe" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "91890fe48ebe4717aea61ecaf3ad4861" + }, + "m_SlotId": 3 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "3e231021af7b47ba97f2871e7f25d0fe" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "91890fe48ebe4717aea61ecaf3ad4861" + }, + "m_SlotId": 4 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "cb7117ecb1d047a8b2cb00ed552cb181" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "95928bcb6a284b8d88105a84c2e1d3ce" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "a455bd79094c4413a7b7dd80ca8b9368" + }, + "m_SlotId": 4 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "9c228fac287d446296b91a4acf5cec59" + }, + "m_SlotId": 7 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "4abff6ff92fa4a05b203f10580988335" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "9d3c3383d5934a17bf9efbb7fd9e9043" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "7a80e8839f0e4a1d9a6c0814f8793ee6" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "9d3c3383d5934a17bf9efbb7fd9e9043" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "7d7696aa6d184b4fb9c316a9dec37aee" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "9d3c3383d5934a17bf9efbb7fd9e9043" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "ec1f2e8bc9fd4ae38b133c60ee6c49b8" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "9e6e50a71d9843b49b62ebe1cf7d3d59" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "acd0cd5a177f4a97bf23db7219305e3f" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "9e87ce9607e14015a3790c528ca5dfda" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "c234e5216678436195ee1a5914bc79da" + }, + "m_SlotId": 4 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "9f0de188085746d5a19073da1de85ddb" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "7d78a616c2754cc28d1f32cf66ade611" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "a455bd79094c4413a7b7dd80ca8b9368" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "b163c9f1666644b0bba62cf0e12df7bc" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "a535f3bcbeb14622bb177eb6f46e76f4" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "c234e5216678436195ee1a5914bc79da" + }, + "m_SlotId": 3 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "aa3e347d733e48f7b65d8a8847370eec" + }, + "m_SlotId": 1 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "2ac79705aa9e415dbb74ec215233fd1b" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "aa87c72ac0e64469acc34f936f00b3d0" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "88253223d2c34ecfab92b0c344048f94" + }, + "m_SlotId": 4 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "acd0cd5a177f4a97bf23db7219305e3f" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "51378bae98a94c309785d14cd5cbb453" + }, + "m_SlotId": 5 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "acd0cd5a177f4a97bf23db7219305e3f" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "51378bae98a94c309785d14cd5cbb453" + }, + "m_SlotId": 7 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "aef5c44f84e04c3185e0b93e95e34204" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "109f638d1f9b49d4991d6d21a86d4eb7" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "b1188549725543d485436c2e921ffbb2" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "7d78a616c2754cc28d1f32cf66ade611" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "b163c9f1666644b0bba62cf0e12df7bc" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "9f0de188085746d5a19073da1de85ddb" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "b4a40cb6acd441acb83cfe0240bf910d" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "dff7a66b353a4023b29c9d937da77960" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "b571db753a1948d5a6f1de4e7d0c7238" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "bc9afcb18afa4ccc82d2cdc34d3f4641" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "b571db753a1948d5a6f1de4e7d0c7238" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "bc9afcb18afa4ccc82d2cdc34d3f4641" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "bc9afcb18afa4ccc82d2cdc34d3f4641" + }, + "m_SlotId": 6 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "faace8101df943d8956faa31728cb004" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "c234e5216678436195ee1a5914bc79da" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "fdb77c3e92ee497b88ca5dc46dc45350" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "c7ddee91dc5b48dc828309c77fdb0b88" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "88253223d2c34ecfab92b0c344048f94" + }, + "m_SlotId": 3 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "c9d7f0dbae7d422985a1cc87c025e76b" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "e818605f8f5a4f01bf61caaa33693581" + }, + "m_SlotId": 6 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "cdddee3a537c464697357f11b966f9b8" + }, + "m_SlotId": 7 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "88253223d2c34ecfab92b0c344048f94" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "d4df208fc23b42f2b52364124f1b661c" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "6b2f65c1463f4f7bad16c54a95d2fe75" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "dbcb748279484a4590e53518c49122b8" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "a455bd79094c4413a7b7dd80ca8b9368" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "dff7a66b353a4023b29c9d937da77960" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "cdddee3a537c464697357f11b966f9b8" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "e818605f8f5a4f01bf61caaa33693581" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "f23a8b2b7c85478388ff7a8c8a6de740" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "ec184d6d9fb2494897774c9e7d279e6d" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "a455bd79094c4413a7b7dd80ca8b9368" + }, + "m_SlotId": 3 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "ec1f2e8bc9fd4ae38b133c60ee6c49b8" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "f814deb543c24fbbafbcdb5071d96022" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "f23a8b2b7c85478388ff7a8c8a6de740" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "aa3e347d733e48f7b65d8a8847370eec" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "f383b24f0bc6434dafe44b3e3d338a63" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "85a1ad8e741e41759002e8cdc8cd0b96" + }, + "m_SlotId": 3 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "f3d31c1f18d8491a8ecf5cbc37e4b7db" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "e818605f8f5a4f01bf61caaa33693581" + }, + "m_SlotId": 3 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "f814deb543c24fbbafbcdb5071d96022" + }, + "m_SlotId": 7 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "4abff6ff92fa4a05b203f10580988335" + }, + "m_SlotId": 3 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "faace8101df943d8956faa31728cb004" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "109f638d1f9b49d4991d6d21a86d4eb7" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "faace8101df943d8956faa31728cb004" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "56c25395796e4d2fbe5c892d428d1620" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "faace8101df943d8956faa31728cb004" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "6b2f65c1463f4f7bad16c54a95d2fe75" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "faace8101df943d8956faa31728cb004" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "b4a40cb6acd441acb83cfe0240bf910d" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "fdb77c3e92ee497b88ca5dc46dc45350" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "59bd90a849624124bae6464ee3669aa6" + }, + "m_SlotId": 1 + } + } + ], + "m_VertexContext": { + "m_Position": { + "x": -2506.000244140625, + "y": -3749.0 + }, + "m_Blocks": [ + { + "m_Id": "48390d02257d41bf98eace1deaa4c539" + }, + { + "m_Id": "f4ecc442a2d246759f7c2c0412953d28" + }, + { + "m_Id": "7f2e6b5f15364ed9835d67d0cf4f8f65" + } + ] + }, + "m_FragmentContext": { + "m_Position": { + "x": -2506.000244140625, + "y": -3480.0 + }, + "m_Blocks": [ + { + "m_Id": "aca823a8188948c782eddaf0f45e1868" + }, + { + "m_Id": "6e8946a245e842b38231d4a241bfb3ef" + }, + { + "m_Id": "cb7117ecb1d047a8b2cb00ed552cb181" + }, + { + "m_Id": "3c50439118b2496f9e390021b0964606" + }, + { + "m_Id": "e591df3a1eb94e259b762f2830b407e2" + }, + { + "m_Id": "bc782d8e80154073b48a687a07adf60a" + }, + { + "m_Id": "2786e48f93f54a82aee4303ce7b63c82" + }, + { + "m_Id": "7f7d8028b58d4227a4560891be6e7cda" + }, + { + "m_Id": "f5a8bfcec21a4dac9df63993ec53635e" + }, + { + "m_Id": "be58359e488f42e9b5121357d0fa526b" + } + ] + }, + "m_PreviewData": { + "serializedMesh": { + "m_SerializedMesh": "{\"mesh\":{\"fileID\":10210,\"guid\":\"0000000000000000e000000000000000\",\"type\":0}}", + "m_Guid": "" + }, + "preventRotation": false + }, + "m_Path": "TextMeshPro/SRP", + "m_GraphPrecision": 0, + "m_PreviewMode": 2, + "m_OutputNode": { + "m_Id": "" + }, + "m_ActiveTargets": [ + { + "m_Id": "7cf0e63037a74dc2a9f591225c678ff4" + } + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "007c75c776ac4f1babe9cd7ae1fc4f14", + "m_Group": { + "m_Id": "daaf032a109749a88c9b8ff8e1f8b541" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5722.99951171875, + "y": -3827.0, + "width": 134.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "1356dc7cbdfa4199a6535d3bbf4cd536" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "3e372195f4bd4845852a37839e5b602d" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.Rendering.HighDefinition.ShaderGraph.BuiltinData", + "m_ObjectId": "00996039d61e400a9e854ce591ac35a0", + "m_Distortion": false, + "m_DistortionMode": 0, + "m_DistortionDepthTest": true, + "m_AddPrecomputedVelocity": false, + "m_TransparentWritesMotionVec": false, + "m_DepthOffset": false, + "m_ConservativeDepthOffset": false, + "m_TransparencyFog": true, + "m_AlphaTestShadow": false, + "m_BackThenFrontRendering": false, + "m_TransparentDepthPrepass": false, + "m_TransparentDepthPostpass": false, + "m_TransparentPerPixelSorting": false, + "m_SupportLodCrossFade": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.GroupData", + "m_ObjectId": "013228b0fdf1424097798f0973a9a4fb", + "m_Title": "Face Texture", + "m_Position": { + "x": -4828.0, + "y": -2832.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "02559cbe5ad441a3904ccb75ded2b2c5", + "m_Id": 5, + "m_DisplayName": "Color2", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Color2", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "03182b3263304258b265266325c21f65", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "045c4f6b050549c7a0efb208e6349779", + "m_Id": 7, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "04dc152dd2ba4d519391577eb1156235", + "m_Group": { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4540.0, + "y": -2749.0, + "width": 151.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "3d04f5ba6e7b40d281f22eb424145acd" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "c9ec735d1a1046769e5601b2c97c849a" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "04dfcc9ff13a4bf282ed46faec39d15c", + "m_Id": 4, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "05805bc6fcc941fd889922555c6c86d7", + "m_Guid": { + "m_GuidSerialized": "fe84e680-4cee-4ca5-be86-2e293a9ba093" + }, + "m_Name": "Ambient Shadow", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_05805bc6fcc941fd889922555c6c86d7", + "m_OverrideReferenceName": "_Ambient", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.30000001192092898, + "m_FloatType": 1, + "m_RangeValues": { + "x": 0.0, + "y": 1.0 + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector4ShaderProperty", + "m_ObjectId": "0580d4b7e3a049049569f4508643a724", + "m_Guid": { + "m_GuidSerialized": "eefb88c5-7665-45dc-b3c2-7cf98b9990d6" + }, + "m_Name": "Softness", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector4_D64EC33D", + "m_OverrideReferenceName": "_Softness", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "068ae649e00b40e198ec5a30ad741fab", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "0699eea947fc426cbfeb8744cf120222", + "m_Id": 1, + "m_DisplayName": "Color", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Color", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector4ShaderProperty", + "m_ObjectId": "07946387933e416db576b677f0711e5f", + "m_Guid": { + "m_GuidSerialized": "21d612fb-8153-41f8-9e2f-9de044c19fbf" + }, + "m_Name": "_FaceTex_ST", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector4_1A08AD4A", + "m_OverrideReferenceName": "_FaceText_ST", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "082e9706dffc4c188270980d4e44ce0f", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "0848ba750e0341198cf0bbd413e0efe4", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "09b1b86c1c074337a4c439d3a308dd2e", + "m_Id": 7, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "0a67ca5280214bd794dc0ad66b5710a9", + "m_Id": 4, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "0b57f2d35157477ab2b29a5aac14ae8b", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "0ba4932e164847878ddb7b7bcff96985", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "0c4dc51f26484c26ad88a3fe4002abcd", + "m_Id": 2, + "m_DisplayName": "Color (1)", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Color", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "0d6a57754b824f6db9cefa6953bc06a9", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "e00": 2.0, + "e01": 2.0, + "e02": 2.0, + "e03": 2.0, + "e10": 2.0, + "e11": 2.0, + "e12": 2.0, + "e13": 2.0, + "e20": 2.0, + "e21": 2.0, + "e22": 2.0, + "e23": 2.0, + "e30": 2.0, + "e31": 2.0, + "e32": 2.0, + "e33": 2.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "0d7878dd226d4cfb81a991dc312309fc", + "m_Id": 0, + "m_DisplayName": "Underlay Dilate", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "0f7ffb6d2de4447f9736780cbcee8e07", + "m_Id": 4, + "m_DisplayName": "AnimSpeed", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "AnimSpeed", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "0fac35636fca4474a6afaefc3c757775", + "m_Id": 1, + "m_DisplayName": "Alpha", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Alpha", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "105b1ed1aa714e41bbe1ef5472bdb11f", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4923.99951171875, + "y": -4233.0, + "width": 158.99998474121095, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "8a08179f99d649d289b8053d5fa0ad22" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "49e7c3ad55ce458797f0e60c950cb965" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.MultiplyNode", + "m_ObjectId": "109f638d1f9b49d4991d6d21a86d4eb7", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Multiply", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5098.99951171875, + "y": -3182.0, + "width": 130.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "880bb02c6c6b49b18aa6ebc66dc566a0" + }, + { + "m_Id": "1b9cd8f5f4004e2eaf8afbaab803bc04" + }, + { + "m_Id": "b224a1cf80604103ad085c799995f3c2" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "10a99c07aad742349d258db16838c129", + "m_Id": 1, + "m_DisplayName": "Alpha", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Alpha", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "1196ae398cc348349ab0c1a23fdab4bd", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DMaterialSlot", + "m_ObjectId": "1356dc7cbdfa4199a6535d3bbf4cd536", + "m_Id": 0, + "m_DisplayName": "_MainTex", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "14ad19bf20a140dd88d58452d7df688b", + "m_Id": 5, + "m_DisplayName": "Softness", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Softness", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 1.0, + "z": 1.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "150533bad8e2424aaa2c74e253af8592", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4955.0, + "y": -3487.0, + "width": 134.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "72fb5a0d7796446b9e2b929cb32facdc" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "3e372195f4bd4845852a37839e5b602d" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SplitNode", + "m_ObjectId": "163beb4431c34f538340bc0af0991e6f", + "m_Group": { + "m_Id": "ecf16c34d46f4502ac601f0c38c7576b" + }, + "m_Name": "Split", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -3284.0, + "y": -3516.0, + "width": 119.99999237060547, + "height": 149.0 + } + }, + "m_Slots": [ + { + "m_Id": "4c334de01ecd429baa7652fc6002536b" + }, + { + "m_Id": "e2d28f29bbac4983a401574480b5ca28" + }, + { + "m_Id": "6a7af6143e114a538663e71f56731a21" + }, + { + "m_Id": "3e25be96bb3747738c238cf3a741d5df" + }, + { + "m_Id": "4907352322c644ebacdf2ca30f2994fd" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "183118ca50814141b7bc3e0cee27fb9b", + "m_Id": 3, + "m_DisplayName": "Texel Width", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Texel Width", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "19075add867e4757b9520d18fe8de1d0", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4291.99951171875, + "y": -3197.0, + "width": 124.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "4c28ee9109014fa086e5de7a3993341d" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "0580d4b7e3a049049569f4508643a724" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "1b9cd8f5f4004e2eaf8afbaab803bc04", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "e00": 2.0, + "e01": 2.0, + "e02": 2.0, + "e03": 2.0, + "e10": 2.0, + "e11": 2.0, + "e12": 2.0, + "e13": 2.0, + "e20": 2.0, + "e21": 2.0, + "e22": 2.0, + "e23": 2.0, + "e30": 2.0, + "e31": 2.0, + "e32": 2.0, + "e33": 2.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "1bdde3efd3b7464b8934c555be0f8a48", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "1be90d4f96a841748b0c95219b12ad27", + "m_Guid": { + "m_GuidSerialized": "4c91c146-43bb-4de8-948a-fbf8b1da10e1" + }, + "m_Name": "Bevel Offset", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_97690701", + "m_OverrideReferenceName": "_BevelOffset", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 1, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.0, + "m_FloatType": 1, + "m_RangeValues": { + "x": -0.5, + "y": 0.5 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "1c4df61c2fea404eb3b87b270d7c59bc", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4311.0, + "y": -3221.0, + "width": 148.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "f864c900600e427ba7793f00c715e971" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "867a4ae13c0d4a028c71bc1063824c14" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "1d35fa1fb5004f96a65ace54fbe4f1ad", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "1db37082bf844442804487b4944352de", + "m_Id": 4, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DMaterialSlot", + "m_ObjectId": "1df58cfa4dad4c449d01ee1c5ea05f2e", + "m_Id": 0, + "m_DisplayName": "_MainTex", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVNode", + "m_ObjectId": "1e12726617b24675958e942eb62e4b09", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "UV", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4772.0, + "y": -4404.0, + "width": 145.00001525878907, + "height": 130.0 + } + }, + "m_Slots": [ + { + "m_Id": "0848ba750e0341198cf0bbd413e0efe4" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_OutputChannel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "1f247658c7ba45fb93c41f51e21acb0d", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "1f46181633594ae0a1fb2adb76b42981", + "m_Id": 5, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "200245fc8bbe4826b209ab5f7ffe074c", + "m_Id": 3, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "204dacb5a95b424facf11cb6f65bd188", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BooleanMaterialSlot", + "m_ObjectId": "215a82c127204988b751de7d3a39b955", + "m_Id": 6, + "m_DisplayName": "Outline", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Outline", + "m_StageCapability": 3, + "m_Value": false, + "m_DefaultValue": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SamplerStateMaterialSlot", + "m_ObjectId": "215b30ae27784ec3a13360a9029af283", + "m_Id": 3, + "m_DisplayName": "Sampler", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Sampler", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Internal.BooleanShaderProperty", + "m_ObjectId": "21a7a380e66d42e780e2a2a1baa630d5", + "m_Guid": { + "m_GuidSerialized": "b2d0099f-e605-49f5-9959-e7cacae37aa3" + }, + "m_Name": "Bevel Type", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Boolean_21a7a380e66d42e780e2a2a1baa630d5", + "m_OverrideReferenceName": "_BevelType", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": false +} + +{ + "m_SGVersion": 3, + "m_Type": "UnityEditor.ShaderGraph.Internal.ColorShaderProperty", + "m_ObjectId": "22b7f3c2bb7b48c0a7fdeb50e33e7d5e", + "m_Guid": { + "m_GuidSerialized": "cd167d3a-7465-4d5a-86fc-0f22dc0ef908" + }, + "m_Name": "Outline Color 1", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Color_5550EB71", + "m_OverrideReferenceName": "_OutlineColor1", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "r": 0.0, + "g": 1.0, + "b": 1.0, + "a": 1.0 + }, + "isMainColor": false, + "m_ColorMode": 1 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "232b1aa09e67479abae141d3c76d3c5b", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "256d41e89a204d22951450de1c38051d", + "m_Id": 0, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector3MaterialSlot", + "m_ObjectId": "26e48352a08441bfa694dcea54c06e36", + "m_Id": 5, + "m_DisplayName": "RGB", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGB", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [ + "X", + "Y", + "Z" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "2786e48f93f54a82aee4303ce7b63c82", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.Smoothness", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "9d0c47172bf840a0ac029980ba082af7" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.Smoothness" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "281bcee4777040f8a31ee0e10344e98d", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "285f6a9863d54ed2a8150727ad749456", + "m_Group": { + "m_Id": "98934a69591249d5b8b92b39045359a3" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4177.0, + "y": -2422.0, + "width": 154.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "b42e6dbfbc864097af182cbff5c0c1fb" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "22b7f3c2bb7b48c0a7fdeb50e33e7d5e" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.IsFrontFaceNode", + "m_ObjectId": "2a552a0b828f457c911aa19561e410ae", + "m_Group": { + "m_Id": "d258902c6ec74942afdb9ebf8c1d07f8" + }, + "m_Name": "Is Front Face", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4282.0, + "y": -3681.3330078125, + "width": 121.99999237060547, + "height": 77.33348846435547 + } + }, + "m_Slots": [ + { + "m_Id": "2ef1d888dc9d49e59d6a6950897ddc93" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.CustomFunctionNode", + "m_ObjectId": "2ac79705aa9e415dbb74ec215233fd1b", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Composite (Custom Function)", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -3350.0, + "y": -3810.0, + "width": 213.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "a75f7ac601c446469802fe7754c1f279" + }, + { + "m_Id": "8c38a5d8327f456e9783740c05382619" + }, + { + "m_Id": "facc84930f544fd7a0205a6176b18ac0" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SourceType": 0, + "m_FunctionName": "Composite", + "m_FunctionSource": "96de908384869cd409c75efa351d5edf", + "m_FunctionBody": "Enter function body here..." +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "2b01ea3023e34c94af1754e4dcea8f2e", + "m_Id": 0, + "m_DisplayName": "Face Color", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BooleanMaterialSlot", + "m_ObjectId": "2bf5f2fdd2984599b7323d10cfb1d240", + "m_Id": 1, + "m_DisplayName": "Filter", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Filter", + "m_StageCapability": 3, + "m_Value": false, + "m_DefaultValue": false +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "2c10b97b92c947ceb307a93759c0228b", + "m_Guid": { + "m_GuidSerialized": "6be0b8ff-a766-4c6b-a6e4-3a72758ac95f" + }, + "m_Name": "Bevel Amount", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_B01DD93E", + "m_OverrideReferenceName": "_BevelAmount", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 1, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.25, + "m_FloatType": 1, + "m_RangeValues": { + "x": 0.0, + "y": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "2c7a9460724b47daad8df1be144de7c6", + "m_Id": 3, + "m_DisplayName": "Transform", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Transform", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector2ShaderProperty", + "m_ObjectId": "2d0a269511e34bd1ba9056d2c939dff2", + "m_Guid": { + "m_GuidSerialized": "edbe73dc-53ab-4bc1-9d64-ab36e0e05f03" + }, + "m_Name": "_FaceUVSpeed", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector2_3A8E0F13", + "m_OverrideReferenceName": "_FaceUVSpeed", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "2db15d90c2204143b225ec4ef08d0755", + "m_Group": { + "m_Id": "98934a69591249d5b8b92b39045359a3" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4387.0, + "y": -2405.0, + "width": 163.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "def8e0b9d8384982bc5b4c32d877e458" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "46fbf3eeb0ea4470869cba7443249295" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "2e4eb1ef08bb44178c82e53872485e0f", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BooleanMaterialSlot", + "m_ObjectId": "2ef1d888dc9d49e59d6a6950897ddc93", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 2, + "m_Value": true, + "m_DefaultValue": true +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.Rendering.HighDefinition.ShaderGraph.SystemData", + "m_ObjectId": "305e3be306674fcd8bb02273d27ee5b7", + "m_MaterialNeedsUpdateHash": 280372, + "m_SurfaceType": 1, + "m_RenderingPass": 4, + "m_BlendMode": 0, + "m_ZTest": 4, + "m_ZWrite": false, + "m_TransparentCullMode": 2, + "m_OpaqueCullMode": 2, + "m_SortPriority": 0, + "m_AlphaTest": true, + "m_TransparentDepthPrepass": false, + "m_TransparentDepthPostpass": false, + "m_SupportLodCrossFade": false, + "m_DoubleSidedMode": 0, + "m_DOTSInstancing": false, + "m_CustomVelocity": false, + "m_Tessellation": false, + "m_TessellationMode": 0, + "m_TessellationFactorMinDistance": 20.0, + "m_TessellationFactorMaxDistance": 50.0, + "m_TessellationFactorTriangleSize": 100.0, + "m_TessellationShapeFactor": 0.75, + "m_TessellationBackFaceCullEpsilon": -0.25, + "m_TessellationMaxDisplacement": 0.009999999776482582, + "m_DebugSymbols": false, + "m_Version": 2, + "inspectorFoldoutMask": 9 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "30ca940fe2794c949f2a1d4d2caaa446", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SampleTexture2DNode", + "m_ObjectId": "319916a5921343f7b7eef0e50dc93def", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Sample Texture 2D", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4791.0, + "y": -3245.0, + "width": 183.99998474121095, + "height": 253.0 + } + }, + "m_Slots": [ + { + "m_Id": "d219977210094c0082c517d8dc00c8bb" + }, + { + "m_Id": "f48f04ad45d046a8b88e71731ed506e7" + }, + { + "m_Id": "e6e80c6b0db545cda26b079a9a78fbb3" + }, + { + "m_Id": "c6bdb985bc16435fa72f5a3c81bb633c" + }, + { + "m_Id": "d1a17e42e7a04dc38984e3c01149445b" + }, + { + "m_Id": "fb15d0ba56d54a6192f11e107aeb5fa8" + }, + { + "m_Id": "c35312edaa2344788b1964ee2f63a236" + }, + { + "m_Id": "c88fcbaeea954a5f9c68c339fa8b604d" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_TextureType": 0, + "m_NormalMapSpace": 0, + "m_EnableGlobalMipBias": true, + "m_MipSamplingMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "34a67e0fef884f9399e674d9eeaf720c", + "m_Id": 6, + "m_DisplayName": "Color3", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Color3", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "34a72a5ebb04402384a4fd3748111a37", + "m_Id": 0, + "m_DisplayName": "Alpha Clip Threshold", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "AlphaClipThreshold", + "m_StageCapability": 2, + "m_Value": 0.0010000000474974514, + "m_DefaultValue": 0.5, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DMaterialSlot", + "m_ObjectId": "3535ae87c6dd4769b52b20d9eca61069", + "m_Id": 0, + "m_DisplayName": "_MainTex", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SamplerStateMaterialSlot", + "m_ObjectId": "35cbea6373dd4e4f8d0fea36e8add392", + "m_Id": 3, + "m_DisplayName": "Sampler", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Sampler", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "36a0c473c4c04c3a930dd38f3920d410", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "e00": 2.0, + "e01": 2.0, + "e02": 2.0, + "e03": 2.0, + "e10": 2.0, + "e11": 2.0, + "e12": 2.0, + "e13": 2.0, + "e20": 2.0, + "e21": 2.0, + "e22": 2.0, + "e23": 2.0, + "e30": 2.0, + "e31": 2.0, + "e32": 2.0, + "e33": 2.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVNode", + "m_ObjectId": "36f1b4d96f2941c39e5cd95d9c1d2ce6", + "m_Group": { + "m_Id": "d0a791a544614667962a9a9a9ce0c68a" + }, + "m_Name": "UV", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -6008.99951171875, + "y": -3341.0, + "width": 144.99998474121095, + "height": 130.0 + } + }, + "m_Slots": [ + { + "m_Id": "65b3dc13b2b6484283ffe5abfe87a06a" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_OutputChannel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "373f1de8db6c429c9d46c781f741d7a4", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "e00": 2.0, + "e01": 2.0, + "e02": 2.0, + "e03": 2.0, + "e10": 2.0, + "e11": 2.0, + "e12": 2.0, + "e13": 2.0, + "e20": 2.0, + "e21": 2.0, + "e22": 2.0, + "e23": 2.0, + "e30": 2.0, + "e31": 2.0, + "e32": 2.0, + "e33": 2.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "3802c81c3be24823aa1d7c9997a33c29", + "m_Id": 2, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "3915c1927ffe49f8967304321cfbe497", + "m_Id": 4, + "m_DisplayName": "Atlas", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Atlas", + "m_StageCapability": 3, + "m_BareResource": true, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "39a382d661e2484da71f04c43f48e55f", + "m_Id": 3, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.VertexColorNode", + "m_ObjectId": "39f2f84f30304d859fb07569e2695f60", + "m_Group": { + "m_Id": "ecf16c34d46f4502ac601f0c38c7576b" + }, + "m_Name": "Vertex Color", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -3423.000244140625, + "y": -3516.0, + "width": 116.0, + "height": 94.0 + } + }, + "m_Slots": [ + { + "m_Id": "4b2d9ea03bf64fa19dcae1511d2581da" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 2, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "3c50439118b2496f9e390021b0964606", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.AlphaClipThreshold", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -3028.0, + "y": -3054.0, + "width": 200.0, + "height": 40.66650390625 + } + }, + "m_Slots": [ + { + "m_Id": "34a72a5ebb04402384a4fd3748111a37" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.AlphaClipThreshold" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DMaterialSlot", + "m_ObjectId": "3d04f5ba6e7b40d281f22eb424145acd", + "m_Id": 0, + "m_DisplayName": "Face Texture", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "3db1608e927e4102a3c3a88e9fcab39a", + "m_Id": 3, + "m_DisplayName": "Transform", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Transform", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "3dccd64e7f324bc1a75c1479d7a67c51", + "m_Id": 0, + "m_DisplayName": "In", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "In", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.CombineNode", + "m_ObjectId": "3e231021af7b47ba97f2871e7f25d0fe", + "m_Group": { + "m_Id": "ecf16c34d46f4502ac601f0c38c7576b" + }, + "m_Name": "Combine", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -2803.000244140625, + "y": -3520.0, + "width": 140.0, + "height": 166.0 + } + }, + "m_Slots": [ + { + "m_Id": "6ccaced3889e4503a9414d808ec33981" + }, + { + "m_Id": "7f3d71a6c96847c099da45f95aafbecb" + }, + { + "m_Id": "d8edec16956c4f15b7d51d6ec10753f4" + }, + { + "m_Id": "39a382d661e2484da71f04c43f48e55f" + }, + { + "m_Id": "8764669016f6442f8152593c18a649d7" + }, + { + "m_Id": "26e48352a08441bfa694dcea54c06e36" + }, + { + "m_Id": "3e94a0d106064bdb864c960512ef4026" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "3e25be96bb3747738c238cf3a741d5df", + "m_Id": 3, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Internal.Texture2DShaderProperty", + "m_ObjectId": "3e372195f4bd4845852a37839e5b602d", + "m_Guid": { + "m_GuidSerialized": "60abd046-2a1a-48cd-a0af-2f702f7f53ab" + }, + "m_Name": "_MainTex", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Texture2D_90CBF488", + "m_OverrideReferenceName": "_MainTex", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 1, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "m_SerializedTexture": "{\"texture\":{\"fileID\":28684132378477856,\"guid\":\"8f586378b4e144a9851e7b34d9b748ee\",\"type\":2}}", + "m_Guid": "" + }, + "isMainTexture": false, + "useTilingAndOffset": false, + "m_Modifiable": true, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "3e94a0d106064bdb864c960512ef4026", + "m_Id": 6, + "m_DisplayName": "RG", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RG", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "3ec4797e381747829ef4712c85fcf7a1", + "m_Guid": { + "m_GuidSerialized": "020d65cc-50a8-4b8a-a624-90d7b489f549" + }, + "m_Name": "Specular Power", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_3ec4797e381747829ef4712c85fcf7a1", + "m_OverrideReferenceName": "_SpecularPower", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 1.0, + "m_FloatType": 1, + "m_RangeValues": { + "x": 0.0, + "y": 4.0 + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector2ShaderProperty", + "m_ObjectId": "3fdf4b7bc5d4426492dcc057603ef4a6", + "m_Guid": { + "m_GuidSerialized": "675d2567-3fca-4da6-9462-dfa4924950f1" + }, + "m_Name": "_OutlineUVSpeed", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector2_D66D89E6", + "m_OverrideReferenceName": "_OutlineUVSpeed", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "400d0b6c95dd4540ad3da3e8cb7e50b2", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "41986ac6400d46709d0ef043a67f6b34", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "41b9b79b3859472882bcea393703eec0", + "m_Id": 0, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "424dbeeb009344efa29c304c4979e3d6", + "m_Guid": { + "m_GuidSerialized": "314c37de-c6f2-4463-866d-8588f6fc119e" + }, + "m_Name": "Diffuse Shadow", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_424dbeeb009344efa29c304c4979e3d6", + "m_OverrideReferenceName": "_Diffuse", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.30000001192092898, + "m_FloatType": 1, + "m_RangeValues": { + "x": 0.0, + "y": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "42a586e4f6ec40eeaba891b7fd133864", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4934.0, + "y": -4442.99951171875, + "width": 133.99998474121095, + "height": 33.999996185302737 + } + }, + "m_Slots": [ + { + "m_Id": "da7a06d393a44089842070d51d2aa0a6" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "3e372195f4bd4845852a37839e5b602d" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.GroupData", + "m_ObjectId": "42cadae0923e4969b50bbc3f78185934", + "m_Title": "Face + 3 Outlines + Underlay", + "m_Position": { + "x": -5468.0, + "y": -3558.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "4328cdbf78b94c038fd614c59bfe1cac", + "m_Id": 0, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.CustomFunctionNode", + "m_ObjectId": "44317f2e371447e2a8d894f8a021a235", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "Layer1 (Custom Function)", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4004.999755859375, + "y": -4173.0, + "width": 191.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "10a99c07aad742349d258db16838c129" + }, + { + "m_Id": "b85d677872b44421bf5536f42ba0267c" + }, + { + "m_Id": "75aba700d74d4b2687bf3166cf1da3e2" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SourceType": 0, + "m_FunctionName": "Layer1", + "m_FunctionSource": "96de908384869cd409c75efa351d5edf", + "m_FunctionBody": "Enter function body here..." +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "44806230fa384c1e95f9c5918a14f056", + "m_Id": 7, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "4488af8ff6a7421298a7e827f567263b", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4226.0, + "y": -4109.0, + "width": 158.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "66f69ef16eac4eb48357bde804cf3c39" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "8cf8aae64c1d443f9303126886b40f17" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.ColorRGBMaterialSlot", + "m_ObjectId": "4590bfa2a0664b65b6f073bae33a071f", + "m_Id": 0, + "m_DisplayName": "Emission", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Emission", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [], + "m_ColorMode": 1, + "m_DefaultColor": { + "r": 0.0, + "g": 0.0, + "b": 0.0, + "a": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVNode", + "m_ObjectId": "4648b46ad29a4008a80de4f8a5a5b813", + "m_Group": { + "m_Id": "98934a69591249d5b8b92b39045359a3" + }, + "m_Name": "UV", + "m_DrawState": { + "m_Expanded": false, + "m_Position": { + "serializedVersion": "2", + "x": -4615.0, + "y": -2422.0, + "width": 145.0, + "height": 130.0 + } + }, + "m_Slots": [ + { + "m_Id": "b2baf44eae52473cb6cda7b1debece01" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_OutputChannel": 1 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Internal.Texture2DShaderProperty", + "m_ObjectId": "46fbf3eeb0ea4470869cba7443249295", + "m_Guid": { + "m_GuidSerialized": "be87c5a3-e361-4b95-89c8-911c39a51c0d" + }, + "m_Name": "Outline Texture", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Texture2D_A0B54237", + "m_OverrideReferenceName": "_OutlineTex", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "m_SerializedTexture": "{\"texture\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "isMainTexture": false, + "useTilingAndOffset": false, + "m_Modifiable": true, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "47d020251e9841a5b1f0fd64396026a1", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "48390d02257d41bf98eace1deaa4c539", + "m_Group": { + "m_Id": "" + }, + "m_Name": "VertexDescription.Position", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "8036d0e6090b456e9b4ea87227868236" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Position" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.GroupData", + "m_ObjectId": "484b51c50485473b819c4f05087b32d7", + "m_Title": "Underlay", + "m_Position": { + "x": -5253.0, + "y": -4542.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "4907352322c644ebacdf2ca30f2994fd", + "m_Id": 4, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector2ShaderProperty", + "m_ObjectId": "49e7c3ad55ce458797f0e60c950cb965", + "m_Guid": { + "m_GuidSerialized": "31b55db9-0da1-4ec4-af2b-d83747ed5bc4" + }, + "m_Name": "Underlay Offset", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector2_CE9DEDB3", + "m_OverrideReferenceName": "_UnderlayOffset", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "4a66dcbe712a4d40bd8f355b834594b5", + "m_Id": 6, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.CombineNode", + "m_ObjectId": "4abff6ff92fa4a05b203f10580988335", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Combine", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4323.99951171875, + "y": -3498.0, + "width": 140.0, + "height": 166.0 + } + }, + "m_Slots": [ + { + "m_Id": "b015d1b7e4134c59baf6851e7649802c" + }, + { + "m_Id": "d9dc4839ee2847999110bdb234d6041a" + }, + { + "m_Id": "91d6a9a5fbc04ea49075cb51835e7264" + }, + { + "m_Id": "f42ad06b3c6a45d3ab33de904c063412" + }, + { + "m_Id": "ed6c215a65584deeaefad1d2c7743044" + }, + { + "m_Id": "edbee7a8952b46529ac5ad0365775774" + }, + { + "m_Id": "70337a74f6ad4b7bb6befc825219bab1" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "4b2d9ea03bf64fa19dcae1511d2581da", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "4bda5c294e1949138d033640e1d385b4", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "4c28ee9109014fa086e5de7a3993341d", + "m_Id": 0, + "m_DisplayName": "Softness", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "4c334de01ecd429baa7652fc6002536b", + "m_Id": 0, + "m_DisplayName": "In", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "In", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "4d1cb1a475df49f9a148195a65f5453a", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "4d9ce48719d143748f9f8e22da6f9ddc", + "m_Id": 5, + "m_DisplayName": "TextureWidth", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "TextureWidth", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "4e64dac49ddc47c3b5b1e27b17a08304", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "4eb3c00a1ca44e10be833b7ca61ff059", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"fileID\":-2362172177983852347,\"guid\":\"dda5bcb0d1e9515498f6e4e038bbefe6\",\"type\":2}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "4f194ff591484e908fc2bcdacbcf2570", + "m_Group": { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4309.0, + "y": -2773.0, + "width": 134.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "2b01ea3023e34c94af1754e4dcea8f2e" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "dc75c4e3a1bc4bb0a128086c2b0679a5" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "509e6f38505b4b0695b263706a55028f", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"fileID\":-2362172177983852347,\"guid\":\"dda5bcb0d1e9515498f6e4e038bbefe6\",\"type\":2}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.CustomFunctionNode", + "m_ObjectId": "51378bae98a94c309785d14cd5cbb453", + "m_Group": { + "m_Id": "d258902c6ec74942afdb9ebf8c1d07f8" + }, + "m_Name": "GetSurfaceNormal (Custom Function)", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4067.333251953125, + "y": -3881.99951171875, + "width": 263.9999694824219, + "height": 189.99998474121095 + } + }, + "m_Slots": [ + { + "m_Id": "5b0077c23eae443887872f84227deccc" + }, + { + "m_Id": "3915c1927ffe49f8967304321cfbe497" + }, + { + "m_Id": "4d9ce48719d143748f9f8e22da6f9ddc" + }, + { + "m_Id": "ebd6d75abcb84108bcadbfe7ee5f6244" + }, + { + "m_Id": "ef9738ec7e894772a14e9dce441c16c6" + }, + { + "m_Id": "9eeec1a9713045af8845cea263d5ea48" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SourceType": 0, + "m_FunctionName": "GetSurfaceNormal", + "m_FunctionSource": "96de908384869cd409c75efa351d5edf", + "m_FunctionBody": "Enter function body here..." +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SamplerStateMaterialSlot", + "m_ObjectId": "51f76f8a53ad43a4ad028426548ce9ba", + "m_Id": 3, + "m_DisplayName": "Sampler", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Sampler", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "52798bdb86f6400e86489a7a368e9f8b", + "m_Group": { + "m_Id": "d0a791a544614667962a9a9a9ce0c68a" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -6154.99951171875, + "y": -3169.0, + "width": 134.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "1df58cfa4dad4c449d01ee1c5ea05f2e" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "3e372195f4bd4845852a37839e5b602d" + } +} + +{ + "m_SGVersion": 3, + "m_Type": "UnityEditor.ShaderGraph.Internal.ColorShaderProperty", + "m_ObjectId": "53073e5ea924459fa6681a4943e9f947", + "m_Guid": { + "m_GuidSerialized": "5fdac24e-2d58-4471-80ce-79c3ab9a2564" + }, + "m_Name": "Outline Color 2", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Color_DBAB5AEC", + "m_OverrideReferenceName": "_OutlineColor2", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "r": 0.009433984756469727, + "g": 0.02534518577158451, + "b": 1.0, + "a": 1.0 + }, + "isMainColor": false, + "m_ColorMode": 1 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "54d7a93ffec5490aa4591da23a21b693", + "m_Id": 1, + "m_DisplayName": "G", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "55ffa45ec3654d5e88089fb40d2b0465", + "m_Id": 4, + "m_DisplayName": "AnimSpeed", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "AnimSpeed", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.MultiplyNode", + "m_ObjectId": "56c25395796e4d2fbe5c892d428d1620", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Multiply", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5102.99951171875, + "y": -3427.0, + "width": 130.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "9eb8137a6c2e41bbafdc8b0732dd47a3" + }, + { + "m_Id": "36a0c473c4c04c3a930dd38f3920d410" + }, + { + "m_Id": "068ae649e00b40e198ec5a30ad741fab" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "57abc172afd449e2a4d567f93432507b", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "582d6e289dbe4fdca7cf0307273eaa2f", + "m_Id": 0, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.MultiplyNode", + "m_ObjectId": "59bd90a849624124bae6464ee3669aa6", + "m_Group": { + "m_Id": "98934a69591249d5b8b92b39045359a3" + }, + "m_Name": "Multiply", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4007.0, + "y": -2395.0, + "width": 130.0, + "height": 117.99999237060547 + } + }, + "m_Slots": [ + { + "m_Id": "2e4eb1ef08bb44178c82e53872485e0f" + }, + { + "m_Id": "8695190a5e614f2d90081871a8a06fc2" + }, + { + "m_Id": "81bdb47901ef48e5a588c6724b1b0142" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector3MaterialSlot", + "m_ObjectId": "5b0077c23eae443887872f84227deccc", + "m_Id": 0, + "m_DisplayName": "Normal", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Normal", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [ + "X", + "Y", + "Z" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "5b3ff4ee364f4d7a923b530ad60d8762", + "m_Id": 0, + "m_DisplayName": "Width", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Width", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "5bd258837c514ff7ab0bf7027e762c18", + "m_Guid": { + "m_GuidSerialized": "2d8f3ee9-1307-4b58-a60d-526e86b07109" + }, + "m_Name": "Bevel Roundness", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_AB6A015F", + "m_OverrideReferenceName": "_BevelRoundness", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.0, + "m_FloatType": 1, + "m_RangeValues": { + "x": 0.0, + "y": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "5da82bf481f8489ebd05e997f617f51b", + "m_Id": 4, + "m_DisplayName": "Isoperimeter", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Isoperimeter", + "m_StageCapability": 3, + "m_Value": 4.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "5e42524569844befad16fda5a94eb9cb", + "m_Id": 0, + "m_DisplayName": "R", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "5fbe253f3e444f2aa8ac717f9c856619", + "m_Guid": { + "m_GuidSerialized": "0a61c93f-6430-4aa6-af07-79bc3b411ccd" + }, + "m_Name": "Bevel Width", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_B50BBFCC", + "m_OverrideReferenceName": "_BevelWidth", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.5, + "m_FloatType": 1, + "m_RangeValues": { + "x": 0.0, + "y": 0.5 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "61133d79a89048c195f54939b2a1d30a", + "m_Id": 2, + "m_DisplayName": "Alpha", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Alpha", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "61a6ac5f29344d109411f26850ab0a96", + "m_Id": 6, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.Rendering.HighDefinition.ShaderGraph.HDLitData", + "m_ObjectId": "6238ae56182d404f8563cb88cb801549", + "m_RayTracing": false, + "m_MaterialType": 0, + "m_MaterialTypeMask": 2, + "m_RefractionModel": 0, + "m_SSSTransmission": true, + "m_EnergyConservingSpecular": true, + "m_ClearCoat": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "6271438664e74b3fbf723bd6a1f50f8b", + "m_Id": 6, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "62bc551cea604e88b7858cc37d96a98a", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector2ShaderProperty", + "m_ObjectId": "636180f6e0504f2baaa5cc086980cb47", + "m_Guid": { + "m_GuidSerialized": "c1223e37-093d-4d5a-b2b0-cd9cc3e4f88e" + }, + "m_Name": "Outline Offset 1", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector2_636180f6e0504f2baaa5cc086980cb47", + "m_OverrideReferenceName": "_OutlineOffset1", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "63c7cd57fc3c45a9a97b514fdae32693", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5266.99951171875, + "y": -3387.0, + "width": 156.99998474121095, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "c422a9a9ff824176aad2241f58c44d0b" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "636180f6e0504f2baaa5cc086980cb47" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "641eda269d7b4da9acb65f8d50035ea9", + "m_Id": 0, + "m_DisplayName": "SSR", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "SSR", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "65b3dc13b2b6484283ffe5abfe87a06a", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SampleTexture2DNode", + "m_ObjectId": "65c8e64a7535466e933eed08a2f77532", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Sample Texture 2D", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4791.0, + "y": -3499.0, + "width": 183.99998474121095, + "height": 253.0 + } + }, + "m_Slots": [ + { + "m_Id": "256d41e89a204d22951450de1c38051d" + }, + { + "m_Id": "0a67ca5280214bd794dc0ad66b5710a9" + }, + { + "m_Id": "ebbd94a7102a4457a48ac492de3bff14" + }, + { + "m_Id": "6271438664e74b3fbf723bd6a1f50f8b" + }, + { + "m_Id": "c9b722d107ce4cd6a748c883472b9b0f" + }, + { + "m_Id": "74cf69e61bef44589521f1bf2bf3c59a" + }, + { + "m_Id": "6e532f83d1c44e839bcfc5845d3b01d6" + }, + { + "m_Id": "cb5e9f9567e84f8fa5463efc0e256e19" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_TextureType": 0, + "m_NormalMapSpace": 0, + "m_EnableGlobalMipBias": true, + "m_MipSamplingMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "66f69ef16eac4eb48357bde804cf3c39", + "m_Id": 0, + "m_DisplayName": "_UnderlayColor", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "67a519f507384ff1861df5d8d5b486be", + "m_Group": { + "m_Id": "d258902c6ec74942afdb9ebf8c1d07f8" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4278.0, + "y": -3939.99951171875, + "width": 135.3330078125, + "height": 33.999996185302737 + } + }, + "m_Slots": [ + { + "m_Id": "c3e6d7c20c184bf39fd8822130e693e7" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "3e372195f4bd4845852a37839e5b602d" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.Rendering.HighDefinition.ShaderGraph.HDLitSubTarget", + "m_ObjectId": "67bc2306558f4f2fa807637aaebaeab4" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "68ec7c31365549d6a8ce883edfc02de2", + "m_Id": 4, + "m_DisplayName": "Color1", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Color1", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "6a7af6143e114a538663e71f56731a21", + "m_Id": 2, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.CategoryData", + "m_ObjectId": "6b0cd1bfb339459ca967fa23df287ef0", + "m_Name": "", + "m_ChildObjectList": [ + { + "m_Id": "dc75c4e3a1bc4bb0a128086c2b0679a5" + }, + { + "m_Id": "867a4ae13c0d4a028c71bc1063824c14" + }, + { + "m_Id": "22b7f3c2bb7b48c0a7fdeb50e33e7d5e" + }, + { + "m_Id": "53073e5ea924459fa6681a4943e9f947" + }, + { + "m_Id": "7a046f410ce64aa88438b0bfd412c045" + }, + { + "m_Id": "636180f6e0504f2baaa5cc086980cb47" + }, + { + "m_Id": "74b41464cbed4e9e8e23af5ab9be40cf" + }, + { + "m_Id": "8ed907a2cc7949b68a283ae243ea1977" + }, + { + "m_Id": "cb3c0c3f08654b068bea44c4ffb15f4a" + }, + { + "m_Id": "0580d4b7e3a049049569f4508643a724" + }, + { + "m_Id": "c9ec735d1a1046769e5601b2c97c849a" + }, + { + "m_Id": "2d0a269511e34bd1ba9056d2c939dff2" + }, + { + "m_Id": "07946387933e416db576b677f0711e5f" + }, + { + "m_Id": "46fbf3eeb0ea4470869cba7443249295" + }, + { + "m_Id": "ec79eb447dfd47a9b3380344c6a60f43" + }, + { + "m_Id": "3fdf4b7bc5d4426492dcc057603ef4a6" + }, + { + "m_Id": "8cf8aae64c1d443f9303126886b40f17" + }, + { + "m_Id": "49e7c3ad55ce458797f0e60c950cb965" + }, + { + "m_Id": "81e8ed0534534674a74263e6161a2a1a" + }, + { + "m_Id": "952d0fa5cd744df0b434cd38e9a90b93" + }, + { + "m_Id": "21a7a380e66d42e780e2a2a1baa630d5" + }, + { + "m_Id": "2c10b97b92c947ceb307a93759c0228b" + }, + { + "m_Id": "1be90d4f96a841748b0c95219b12ad27" + }, + { + "m_Id": "5fbe253f3e444f2aa8ac717f9c856619" + }, + { + "m_Id": "5bd258837c514ff7ab0bf7027e762c18" + }, + { + "m_Id": "998db5e5901e45b29040eb2099370071" + }, + { + "m_Id": "a6c38edd2e8743a9b057ba8452b9f129" + }, + { + "m_Id": "82af2db1018543d7832af96c1cfc981f" + }, + { + "m_Id": "3ec4797e381747829ef4712c85fcf7a1" + }, + { + "m_Id": "b0b352c4503a43d083a64e57352b29a0" + }, + { + "m_Id": "424dbeeb009344efa29c304c4979e3d6" + }, + { + "m_Id": "05805bc6fcc941fd889922555c6c86d7" + }, + { + "m_Id": "a4ad98d8828c424384229c344ebe2ed0" + }, + { + "m_Id": "3e372195f4bd4845852a37839e5b602d" + }, + { + "m_Id": "a6bbb32e8d884be9bb36db91fe4b81b1" + }, + { + "m_Id": "c417006ffa034c44b79da3dd323165ff" + } + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.MultiplyNode", + "m_ObjectId": "6b2f65c1463f4f7bad16c54a95d2fe75", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Multiply", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5101.0, + "y": -3301.0, + "width": 130.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "1d35fa1fb5004f96a65ace54fbe4f1ad" + }, + { + "m_Id": "fa6de3be9f5b4411b5081b49e645f424" + }, + { + "m_Id": "400d0b6c95dd4540ad3da3e8cb7e50b2" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "6ccaced3889e4503a9414d808ec33981", + "m_Id": 0, + "m_DisplayName": "R", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "6dfc1177dd0541a7a780fbf911ad1956", + "m_Id": 0, + "m_DisplayName": "_OutlineTex_ST", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "6e13f3cd573c467a94379f45d96cb690", + "m_Id": 2, + "m_DisplayName": "SSR", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "SSR", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "6e532f83d1c44e839bcfc5845d3b01d6", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "6e8946a245e842b38231d4a241bfb3ef", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.BaseColor", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -3026.0, + "y": -3110.0, + "width": 200.0, + "height": 40.66650390625 + } + }, + "m_Slots": [ + { + "m_Id": "ef0b93f78372439696f50711eaf57d90" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.BaseColor" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "6fbdcc5a972b4fa883dc5f21e525a376", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "70337a74f6ad4b7bb6befc825219bab1", + "m_Id": 6, + "m_DisplayName": "RG", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RG", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "703396865b6e4990a0cf1189ea684e5c", + "m_Id": 4, + "m_DisplayName": "Texel Height", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Texel Height", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "712da461f71a454db59d349f752d41ee", + "m_Id": 2, + "m_DisplayName": "Height", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Height", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "71dd947935b64ce38f0d25406dde447b", + "m_Id": 5, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "724e17584e97443e9e285dfa7253c8e3", + "m_Id": 0, + "m_DisplayName": "Alpha", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Alpha", + "m_StageCapability": 2, + "m_Value": 0.15000000596046449, + "m_DefaultValue": 1.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DMaterialSlot", + "m_ObjectId": "72fb5a0d7796446b9e2b929cb32facdc", + "m_Id": 0, + "m_DisplayName": "_MainTex", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVNode", + "m_ObjectId": "7444469eb9884253819add9ef96baa25", + "m_Group": { + "m_Id": "d258902c6ec74942afdb9ebf8c1d07f8" + }, + "m_Name": "UV", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4298.0, + "y": -3809.99951171875, + "width": 144.66648864746095, + "height": 129.33323669433595 + } + }, + "m_Slots": [ + { + "m_Id": "03182b3263304258b265266325c21f65" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_OutputChannel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "748c31bbcecc4b30bec2e42c0612175b", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector2ShaderProperty", + "m_ObjectId": "74b41464cbed4e9e8e23af5ab9be40cf", + "m_Guid": { + "m_GuidSerialized": "41afbdcb-f3ae-4340-8973-1c1998c992a2" + }, + "m_Name": "Outline Offset 2", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "", + "m_OverrideReferenceName": "_OutlineOffset2", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "74cf69e61bef44589521f1bf2bf3c59a", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.NormalMaterialSlot", + "m_ObjectId": "7564379492aa4c5a927ff3501acdc70d", + "m_Id": 0, + "m_DisplayName": "Normal (Tangent Space)", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "NormalTS", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [], + "m_Space": 3 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "757174b6f25040fdbb20355a21752222", + "m_Id": 0, + "m_DisplayName": "Outline Offset 2", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "75aba700d74d4b2687bf3166cf1da3e2", + "m_Id": 2, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "75c5657544c648058b20cea090f48dbf", + "m_Id": 0, + "m_DisplayName": "_OutlineUVSpeed", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "767769f736d5478cba5f10a415e28e7f", + "m_Id": 5, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "773b90134e894e429203c0c83e80b9de", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "77991fa631724e0cb32eed66ff017b23", + "m_Id": 0, + "m_DisplayName": "Metallic", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Metallic", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "77e28f3e930b4c249145630ec961af95", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BooleanMaterialSlot", + "m_ObjectId": "79147f6986644769b58d9ed64fe771e1", + "m_Id": 0, + "m_DisplayName": "OutlineMode", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": false, + "m_DefaultValue": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.MultiplyNode", + "m_ObjectId": "7984fd094e1147bdabb4e26fbd3d31c8", + "m_Group": { + "m_Id": "ecf16c34d46f4502ac601f0c38c7576b" + }, + "m_Name": "Multiply", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -3113.000244140625, + "y": -3468.0, + "width": 130.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "082e9706dffc4c188270980d4e44ce0f" + }, + { + "m_Id": "f2a351a5375c441b8d9ab7e2c9545a77" + }, + { + "m_Id": "41986ac6400d46709d0ef043a67f6b34" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 3, + "m_Type": "UnityEditor.ShaderGraph.Internal.ColorShaderProperty", + "m_ObjectId": "7a046f410ce64aa88438b0bfd412c045", + "m_Guid": { + "m_GuidSerialized": "d47271f5-5a84-47bf-a09e-c825d2aeb013" + }, + "m_Name": "Outline Color 3", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Color_551702C5", + "m_OverrideReferenceName": "_OutlineColor3", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "r": 0.0, + "g": 0.0, + "b": 0.0, + "a": 1.0 + }, + "isMainColor": false, + "m_ColorMode": 1 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "7a0f504e4175406dbd8134250f4e350b", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SubtractNode", + "m_ObjectId": "7a80e8839f0e4a1d9a6c0814f8793ee6", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Subtract", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4961.99951171875, + "y": -3452.0, + "width": 130.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "6fbdcc5a972b4fa883dc5f21e525a376" + }, + { + "m_Id": "0ba4932e164847878ddb7b7bcff96985" + }, + { + "m_Id": "9178663316db43d582f1c4a127d307c6" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "7acfafd73b8c4dfab8c55c18a887e087", + "m_Id": 4, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "7b8a19bd115e4167a25b59cb3218a817", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "7c27ccb2c2dc4ca59c5438c3358630ca", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.Rendering.HighDefinition.ShaderGraph.HDTarget", + "m_ObjectId": "7cf0e63037a74dc2a9f591225c678ff4", + "m_ActiveSubTarget": { + "m_Id": "67bc2306558f4f2fa807637aaebaeab4" + }, + "m_Datas": [ + { + "m_Id": "00996039d61e400a9e854ce591ac35a0" + }, + { + "m_Id": "305e3be306674fcd8bb02273d27ee5b7" + }, + { + "m_Id": "6238ae56182d404f8563cb88cb801549" + }, + { + "m_Id": "a8c49a47cb934f7e8e4d88fce06df6ff" + } + ], + "m_CustomEditorGUI": "TMPro.EditorUtilities.TMP_SDF_HDRPLitShaderGUI", + "m_SupportVFX": false, + "m_SupportLineRendering": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SubtractNode", + "m_ObjectId": "7d7696aa6d184b4fb9c316a9dec37aee", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Subtract", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4959.0, + "y": -3326.0, + "width": 130.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "4d1cb1a475df49f9a148195a65f5453a" + }, + { + "m_Id": "47d020251e9841a5b1f0fd64396026a1" + }, + { + "m_Id": "62bc551cea604e88b7858cc37d96a98a" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.MultiplyNode", + "m_ObjectId": "7d78a616c2754cc28d1f32cf66ade611", + "m_Group": { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + "m_Name": "Multiply", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4005.0, + "y": -2797.0, + "width": 130.0, + "height": 117.99999237060547 + } + }, + "m_Slots": [ + { + "m_Id": "d9bcb754db834583b6518c5ed5152114" + }, + { + "m_Id": "861d4258049a4a3e8164f7297090f88e" + }, + { + "m_Id": "a7c06457d7454693a8bc3dc95257b2c2" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "7e0fadb2533f496192c1ad3e78642010", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4444.0, + "y": -4188.0, + "width": 173.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "d48c3871e3064027a10ae9f4babd3be0" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "952d0fa5cd744df0b434cd38e9a90b93" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "7f2e6b5f15364ed9835d67d0cf4f8f65", + "m_Group": { + "m_Id": "" + }, + "m_Name": "VertexDescription.Tangent", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -2586.0, + "y": -3592.0, + "width": 200.0, + "height": 41.0 + } + }, + "m_Slots": [ + { + "m_Id": "85ff8667d72947edada4e9fb4ff60559" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Tangent" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "7f3d71a6c96847c099da45f95aafbecb", + "m_Id": 1, + "m_DisplayName": "G", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "7f7d8028b58d4227a4560891be6e7cda", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.Occlusion", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "a00de0d572a84a08a23fe14c2ad5030d" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.Occlusion" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PositionMaterialSlot", + "m_ObjectId": "8036d0e6090b456e9b4ea87227868236", + "m_Id": 0, + "m_DisplayName": "Position", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Position", + "m_StageCapability": 1, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [ + "X", + "Y", + "Z" + ], + "m_Space": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "80e665a5eeb64730a51742f698bf0d48", + "m_Id": 4, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "8135ca333f8f4ea78163743e6ec1f55c", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4081.999755859375, + "y": -3140.0, + "width": 156.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "d6a6a119394e4082a11bc024a6e42ef8" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "53073e5ea924459fa6681a4943e9f947" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "81bdb47901ef48e5a588c6724b1b0142", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "81e8ed0534534674a74263e6161a2a1a", + "m_Guid": { + "m_GuidSerialized": "78aab961-c4a8-41f3-b203-1239c3b33b13" + }, + "m_Name": "Underlay Dilate", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_D48690B9", + "m_OverrideReferenceName": "_UnderlayDilate", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.0, + "m_FloatType": 0, + "m_RangeValues": { + "x": 0.0, + "y": 1.0 + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "82af2db1018543d7832af96c1cfc981f", + "m_Guid": { + "m_GuidSerialized": "37906c7b-9a3a-454b-a62a-9aa097e64bde" + }, + "m_Name": "Light Angle", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_82af2db1018543d7832af96c1cfc981f", + "m_OverrideReferenceName": "_LightAngle", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.0, + "m_FloatType": 1, + "m_RangeValues": { + "x": 0.0, + "y": 6.28000020980835 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "82d5443fe54d4a3b9420f8745d00a632", + "m_Id": 5, + "m_DisplayName": "Softness", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Softness", + "m_StageCapability": 3, + "m_Value": 8.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "84dc74cdbd8c45e1b189e4fd9a69942d", + "m_Id": 0, + "m_DisplayName": "Outline Offset 3", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.CustomFunctionNode", + "m_ObjectId": "85a1ad8e741e41759002e8cdc8cd0b96", + "m_Group": { + "m_Id": "d0a791a544614667962a9a9a9ce0c68a" + }, + "m_Name": "ScreenSpaceRatio (Custom Function)", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5800.99951171875, + "y": -3363.0, + "width": 258.0, + "height": 142.0 + } + }, + "m_Slots": [ + { + "m_Id": "6e13f3cd573c467a94379f45d96cb690" + }, + { + "m_Id": "8e6ed600f6504f4083092f5b511e44c4" + }, + { + "m_Id": "93b161cce4504cb79c97b6d8db178de7" + }, + { + "m_Id": "2bf5f2fdd2984599b7323d10cfb1d240" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SourceType": 0, + "m_FunctionName": "ScreenSpaceRatio", + "m_FunctionSource": "96de908384869cd409c75efa351d5edf", + "m_FunctionBody": "Enter function body here..." +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "85b5940eb77e4625812ded7215bab8d7", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4081.999755859375, + "y": -3096.0, + "width": 156.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "ada023d617104472b8ab75a81558c0a1" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "7a046f410ce64aa88438b0bfd412c045" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.TangentMaterialSlot", + "m_ObjectId": "85ff8667d72947edada4e9fb4ff60559", + "m_Id": 0, + "m_DisplayName": "Tangent", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Tangent", + "m_StageCapability": 1, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [ + "X", + "Y", + "Z" + ], + "m_Space": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "861d4258049a4a3e8164f7297090f88e", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "e00": 2.0, + "e01": 2.0, + "e02": 2.0, + "e03": 2.0, + "e10": 2.0, + "e11": 2.0, + "e12": 2.0, + "e13": 2.0, + "e20": 2.0, + "e21": 2.0, + "e22": 2.0, + "e23": 2.0, + "e30": 2.0, + "e31": 2.0, + "e32": 2.0, + "e33": 2.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector4ShaderProperty", + "m_ObjectId": "867a4ae13c0d4a028c71bc1063824c14", + "m_Guid": { + "m_GuidSerialized": "d483c212-0a30-4f6d-b94d-9abbc83a6522" + }, + "m_Name": "Outline Width", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector4_C68C9E14", + "m_OverrideReferenceName": "_IsoPerimeter", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 2, + "m_Hidden": false, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "8695190a5e614f2d90081871a8a06fc2", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "e00": 2.0, + "e01": 2.0, + "e02": 2.0, + "e03": 2.0, + "e10": 2.0, + "e11": 2.0, + "e12": 2.0, + "e13": 2.0, + "e20": 2.0, + "e21": 2.0, + "e22": 2.0, + "e23": 2.0, + "e30": 2.0, + "e31": 2.0, + "e32": 2.0, + "e33": 2.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "8764669016f6442f8152593c18a649d7", + "m_Id": 4, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "880bb02c6c6b49b18aa6ebc66dc566a0", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.CustomFunctionNode", + "m_ObjectId": "88253223d2c34ecfab92b0c344048f94", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "ComputeSDF (Custom Function)", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4226.0, + "y": -4323.0, + "width": 227.99998474121095, + "height": 190.0 + } + }, + "m_Slots": [ + { + "m_Id": "c52a1744a9a14989b0ae452ad6de6061" + }, + { + "m_Id": "a03db80c558b4f87a330c5ae0a9443a5" + }, + { + "m_Id": "8f1b1d1e8ff24b3284993e52354e54fa" + }, + { + "m_Id": "5da82bf481f8489ebd05e997f617f51b" + }, + { + "m_Id": "82d5443fe54d4a3b9420f8745d00a632" + }, + { + "m_Id": "61133d79a89048c195f54939b2a1d30a" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SourceType": 0, + "m_FunctionName": "ComputeSDF", + "m_FunctionSource": "96de908384869cd409c75efa351d5edf", + "m_FunctionBody": "Enter function body here..." +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "8a08179f99d649d289b8053d5fa0ad22", + "m_Id": 0, + "m_DisplayName": "Underlay Offset", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "8b66f4e6bc9d4662b3218ac33a69839f", + "m_Id": 5, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "8c38a5d8327f456e9783740c05382619", + "m_Id": 3, + "m_DisplayName": "Color2", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Color2", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "8cbd81814903479ea1d3151c1f38183e", + "m_Id": 6, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 3, + "m_Type": "UnityEditor.ShaderGraph.Internal.ColorShaderProperty", + "m_ObjectId": "8cf8aae64c1d443f9303126886b40f17", + "m_Guid": { + "m_GuidSerialized": "8d78c9a5-aaef-41fb-af68-2358e401d7ac" + }, + "m_Name": "_UnderlayColor", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Color_2F5FE804", + "m_OverrideReferenceName": "_UnderlayColor", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "r": 0.0, + "g": 0.0, + "b": 0.0, + "a": 1.0 + }, + "isMainColor": false, + "m_ColorMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "8e6ed600f6504f4083092f5b511e44c4", + "m_Id": 0, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector2ShaderProperty", + "m_ObjectId": "8ed907a2cc7949b68a283ae243ea1977", + "m_Guid": { + "m_GuidSerialized": "36803443-a9bc-4f3c-a4f2-7d66a5417ac1" + }, + "m_Name": "Outline Offset 3", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "", + "m_OverrideReferenceName": "_OutlineOffset3", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "8f1b1d1e8ff24b3284993e52354e54fa", + "m_Id": 3, + "m_DisplayName": "SDR", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "SDR", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "9147636b0cfa466a9b37a013d8f693bf", + "m_Group": { + "m_Id": "daaf032a109749a88c9b8ff8e1f8b541" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5421.99951171875, + "y": -3902.0, + "width": 153.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "a4f471e3221c4134b291bd9d2ba22db6" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "a6bbb32e8d884be9bb36db91fe4b81b1" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "9178663316db43d582f1c4a127d307c6", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SplitNode", + "m_ObjectId": "91890fe48ebe4717aea61ecaf3ad4861", + "m_Group": { + "m_Id": "ecf16c34d46f4502ac601f0c38c7576b" + }, + "m_Name": "Split", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -2983.000244140625, + "y": -3468.0, + "width": 119.99999237060547, + "height": 149.0 + } + }, + "m_Slots": [ + { + "m_Id": "3dccd64e7f324bc1a75c1479d7a67c51" + }, + { + "m_Id": "e444f2c81d1e48329fa2c91005277e8d" + }, + { + "m_Id": "b2c26292b7434733878a9b042f44de89" + }, + { + "m_Id": "964fea1fd4b24f4daf5bef84c4b45118" + }, + { + "m_Id": "deac82280a2b43078e0e40863e2d974c" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "91d6a9a5fbc04ea49075cb51835e7264", + "m_Id": 2, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "928621a3ca2d41c89a10336bbbc81ddc", + "m_Id": 5, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "93b161cce4504cb79c97b6d8db178de7", + "m_Id": 3, + "m_DisplayName": "TextureSize", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "TextureSize", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "945b45993dd84a979755b98c48138f72", + "m_Id": 0, + "m_DisplayName": "Width", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Width", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "952d0fa5cd744df0b434cd38e9a90b93", + "m_Guid": { + "m_GuidSerialized": "ce395871-ddeb-47c3-a31d-07855800c197" + }, + "m_Name": "_UnderlaySoftness", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_F2B9E3EF", + "m_OverrideReferenceName": "_UnderlaySoftness", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.0, + "m_FloatType": 0, + "m_RangeValues": { + "x": 0.0, + "y": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "95928bcb6a284b8d88105a84c2e1d3ce", + "m_Group": { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4793.0, + "y": -2593.0, + "width": 155.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "d880558893fb442b9320cf55885d1117" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "2d0a269511e34bd1ba9056d2c939dff2" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "964fea1fd4b24f4daf5bef84c4b45118", + "m_Id": 3, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.GroupData", + "m_ObjectId": "98934a69591249d5b8b92b39045359a3", + "m_Title": "Outline1 Texture", + "m_Position": { + "x": -4672.0, + "y": -2481.0 + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "998db5e5901e45b29040eb2099370071", + "m_Guid": { + "m_GuidSerialized": "6f383614-f2ad-4269-be8f-87b0ecb03cf0" + }, + "m_Name": "Bevel Clamp", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_5BD7E808", + "m_OverrideReferenceName": "_BevelClamp", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.0, + "m_FloatType": 1, + "m_RangeValues": { + "x": 0.0, + "y": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SampleTexture2DNode", + "m_ObjectId": "9c228fac287d446296b91a4acf5cec59", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Sample Texture 2D", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4600.0, + "y": -3498.0, + "width": 183.99998474121095, + "height": 253.0 + } + }, + "m_Slots": [ + { + "m_Id": "582d6e289dbe4fdca7cf0307273eaa2f" + }, + { + "m_Id": "1db37082bf844442804487b4944352de" + }, + { + "m_Id": "8b66f4e6bc9d4662b3218ac33a69839f" + }, + { + "m_Id": "4a66dcbe712a4d40bd8f355b834594b5" + }, + { + "m_Id": "a0285c9c381a49cba194709efa0a7c85" + }, + { + "m_Id": "b2728d0dd3ce40678867c94a7d977916" + }, + { + "m_Id": "e141833aa78b4fd59ecad949beb43a78" + }, + { + "m_Id": "51f76f8a53ad43a4ad028426548ce9ba" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_TextureType": 0, + "m_NormalMapSpace": 0, + "m_EnableGlobalMipBias": true, + "m_MipSamplingMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "9c26fdddba244d36a854298c00473247", + "m_Id": 3, + "m_DisplayName": "SDR", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "SDR", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "9d0c47172bf840a0ac029980ba082af7", + "m_Id": 0, + "m_DisplayName": "Smoothness", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Smoothness", + "m_StageCapability": 2, + "m_Value": 0.5, + "m_DefaultValue": 0.5, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVNode", + "m_ObjectId": "9d3c3383d5934a17bf9efbb7fd9e9043", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "UV", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5443.0, + "y": -3315.0, + "width": 144.99998474121095, + "height": 130.0 + } + }, + "m_Slots": [ + { + "m_Id": "232b1aa09e67479abae141d3c76d3c5b" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_OutputChannel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "9e6e50a71d9843b49b62ebe1cf7d3d59", + "m_Group": { + "m_Id": "d258902c6ec74942afdb9ebf8c1d07f8" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4486.0, + "y": -3865.99951171875, + "width": 135.3330078125, + "height": 33.999996185302737 + } + }, + "m_Slots": [ + { + "m_Id": "3535ae87c6dd4769b52b20d9eca61069" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "3e372195f4bd4845852a37839e5b602d" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "9e87ce9607e14015a3790c528ca5dfda", + "m_Group": { + "m_Id": "98934a69591249d5b8b92b39045359a3" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4637.0, + "y": -2239.0, + "width": 167.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "75c5657544c648058b20cea090f48dbf" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "3fdf4b7bc5d4426492dcc057603ef4a6" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "9eb8137a6c2e41bbafdc8b0732dd47a3", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BooleanMaterialSlot", + "m_ObjectId": "9eeec1a9713045af8845cea263d5ea48", + "m_Id": 6, + "m_DisplayName": "IsFront", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "IsFront", + "m_StageCapability": 3, + "m_Value": false, + "m_DefaultValue": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.MultiplyNode", + "m_ObjectId": "9f0de188085746d5a19073da1de85ddb", + "m_Group": { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + "m_Name": "Multiply", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4160.0, + "y": -2739.0, + "width": 130.0, + "height": 117.99999237060547 + } + }, + "m_Slots": [ + { + "m_Id": "7c27ccb2c2dc4ca59c5438c3358630ca" + }, + { + "m_Id": "373f1de8db6c429c9d46c781f741d7a4" + }, + { + "m_Id": "fd0b096ed5b74f9e9ec51327be200731" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "a00de0d572a84a08a23fe14c2ad5030d", + "m_Id": 0, + "m_DisplayName": "Ambient Occlusion", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Occlusion", + "m_StageCapability": 2, + "m_Value": 1.0, + "m_DefaultValue": 1.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "a0285c9c381a49cba194709efa0a7c85", + "m_Id": 7, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "a03db80c558b4f87a330c5ae0a9443a5", + "m_Id": 1, + "m_DisplayName": "SD", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "SD", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.NormalMaterialSlot", + "m_ObjectId": "a3f8b6e8ae7f48e2989a029904401502", + "m_Id": 0, + "m_DisplayName": "Normal", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Normal", + "m_StageCapability": 1, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [ + "X", + "Y", + "Z" + ], + "m_Space": 0 +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.CustomFunctionNode", + "m_ObjectId": "a455bd79094c4413a7b7dd80ca8b9368", + "m_Group": { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + "m_Name": "GenerateUV (Custom Function)", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4611.0, + "y": -2691.0, + "width": 222.0, + "height": 142.0 + } + }, + "m_Slots": [ + { + "m_Id": "ffb07af0bca546d8b9bc439d34aa68f5" + }, + { + "m_Id": "2c7a9460724b47daad8df1be144de7c6" + }, + { + "m_Id": "55ffa45ec3654d5e88089fb40d2b0465" + }, + { + "m_Id": "e495a9f7a11f4eb89334e83be154ceb9" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SourceType": 0, + "m_FunctionName": "GenerateUV", + "m_FunctionSource": "96de908384869cd409c75efa351d5edf", + "m_FunctionBody": "Enter function body here..." +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.SamplerStateShaderProperty", + "m_ObjectId": "a4ad98d8828c424384229c344ebe2ed0", + "m_Guid": { + "m_GuidSerialized": "f98fc1a2-bb81-4bd1-a207-23d3a90d518e" + }, + "m_Name": "SamplerState", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "SamplerState_a4ad98d8828c424384229c344ebe2ed0", + "m_OverrideReferenceName": "", + "m_GeneratePropertyBlock": false, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "m_filter": 0, + "m_wrap": 1, + "m_anisotropic": 0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "a4f471e3221c4134b291bd9d2ba22db6", + "m_Id": 0, + "m_DisplayName": "_GradientScale", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "a535f3bcbeb14622bb177eb6f46e76f4", + "m_Group": { + "m_Id": "98934a69591249d5b8b92b39045359a3" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4647.0, + "y": -2283.0, + "width": 177.00001525878907, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "6dfc1177dd0541a7a780fbf911ad1956" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "ec79eb447dfd47a9b3380344c6a60f43" + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "a6bbb32e8d884be9bb36db91fe4b81b1", + "m_Guid": { + "m_GuidSerialized": "6aa76edf-7b80-46ac-add4-406cf1d85493" + }, + "m_Name": "_GradientScale", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_EAE27356", + "m_OverrideReferenceName": "_GradientScale", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 1, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 10.0, + "m_FloatType": 0, + "m_RangeValues": { + "x": 0.0, + "y": 1.0 + } +} + +{ + "m_SGVersion": 3, + "m_Type": "UnityEditor.ShaderGraph.Internal.ColorShaderProperty", + "m_ObjectId": "a6c38edd2e8743a9b057ba8452b9f129", + "m_Guid": { + "m_GuidSerialized": "9fc942ee-4a1d-4ced-a5a6-81893e3ddb63" + }, + "m_Name": "Light Color", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Color_a6c38edd2e8743a9b057ba8452b9f129", + "m_OverrideReferenceName": "_SpecularColor", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "r": 1.0, + "g": 1.0, + "b": 1.0, + "a": 1.0 + }, + "isMainColor": false, + "m_ColorMode": 1 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "a75f7ac601c446469802fe7754c1f279", + "m_Id": 0, + "m_DisplayName": "Color1", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Color1", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "a7942746b5564dc7bbbae1deb2403022", + "m_Id": 0, + "m_DisplayName": "_GradientScale", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "a7c06457d7454693a8bc3dc95257b2c2", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.Rendering.HighDefinition.ShaderGraph.LightingData", + "m_ObjectId": "a8c49a47cb934f7e8e4d88fce06df6ff", + "m_NormalDropOffSpace": 0, + "m_BlendPreserveSpecular": true, + "m_ReceiveDecals": true, + "m_ReceiveSSR": true, + "m_ReceiveSSRTransparent": false, + "m_SpecularAA": false, + "m_SpecularOcclusionMode": 0, + "m_OverrideBakedGI": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "aa2794b8f0e24bf281d22e0fef0647be", + "m_Id": 2, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.CustomFunctionNode", + "m_ObjectId": "aa3e347d733e48f7b65d8a8847370eec", + "m_Group": { + "m_Id": "" + }, + "m_Name": "EvaluateLight (Custom Function)", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -3631.0, + "y": -3810.0, + "width": 230.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "0699eea947fc426cbfeb8744cf120222" + }, + { + "m_Id": "0c4dc51f26484c26ad88a3fe4002abcd" + }, + { + "m_Id": "d5173cc3c6cd4f1998550f3187a3e9c8" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SourceType": 0, + "m_FunctionName": "EvaluateLight", + "m_FunctionSource": "96de908384869cd409c75efa351d5edf", + "m_FunctionBody": "Enter function body here..." +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "aa87c72ac0e64469acc34f936f00b3d0", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4444.0, + "y": -4225.0, + "width": 193.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "0d7878dd226d4cfb81a991dc312309fc" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "81e8ed0534534674a74263e6161a2a1a" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "abd59150589b436cadf8c9e6f43ccb8e", + "m_Id": 0, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "aca823a8188948c782eddaf0f45e1868", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.NormalOS", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -2542.0, + "y": -3404.000244140625, + "width": 200.0, + "height": 40.66650390625 + } + }, + "m_Slots": [ + { + "m_Id": "e386b183a18245a796b024022f7f3074" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.NormalOS" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DPropertiesNode", + "m_ObjectId": "acd0cd5a177f4a97bf23db7219305e3f", + "m_Group": { + "m_Id": "d258902c6ec74942afdb9ebf8c1d07f8" + }, + "m_Name": "Texel Size", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4348.0, + "y": -3905.99951171875, + "width": 185.33299255371095, + "height": 101.33324432373047 + } + }, + "m_Slots": [ + { + "m_Id": "945b45993dd84a979755b98c48138f72" + }, + { + "m_Id": "e51a636b2621440eb94cc802c1cf4bfc" + }, + { + "m_Id": "1bdde3efd3b7464b8934c555be0f8a48" + }, + { + "m_Id": "e364823e158a407fb48dd7b630c79973" + }, + { + "m_Id": "703396865b6e4990a0cf1189ea684e5c" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "ada023d617104472b8ab75a81558c0a1", + "m_Id": 0, + "m_DisplayName": "Outline Color 3", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "aef5c44f84e04c3185e0b93e95e34204", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5264.99951171875, + "y": -3142.0, + "width": 159.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "84dc74cdbd8c45e1b189e4fd9a69942d" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "8ed907a2cc7949b68a283ae243ea1977" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "b000f852aa984e9dae25b125a4607f4e", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "b015d1b7e4134c59baf6851e7649802c", + "m_Id": 0, + "m_DisplayName": "R", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "b0b352c4503a43d083a64e57352b29a0", + "m_Guid": { + "m_GuidSerialized": "01cfcc78-60aa-4f71-a1e3-8d8df6dae253" + }, + "m_Name": "Reflectivity Power", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_b0b352c4503a43d083a64e57352b29a0", + "m_OverrideReferenceName": "_Reflectivity", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 5.0, + "m_FloatType": 1, + "m_RangeValues": { + "x": 5.0, + "y": 15.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.VertexColorNode", + "m_ObjectId": "b1188549725543d485436c2e921ffbb2", + "m_Group": { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + "m_Name": "Vertex Color", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4146.0, + "y": -2833.0, + "width": 116.0, + "height": 94.0 + } + }, + "m_Slots": [ + { + "m_Id": "281bcee4777040f8a31ee0e10344e98d" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 2, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SampleTexture2DNode", + "m_ObjectId": "b163c9f1666644b0bba62cf0e12df7bc", + "m_Group": { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + "m_Name": "Sample Texture 2D", + "m_DrawState": { + "m_Expanded": false, + "m_Position": { + "serializedVersion": "2", + "x": -4373.0, + "y": -2715.0, + "width": 180.0, + "height": 181.0 + } + }, + "m_Slots": [ + { + "m_Id": "cce40479b6284b6fa3174db9f09d0ac9" + }, + { + "m_Id": "80e665a5eeb64730a51742f698bf0d48" + }, + { + "m_Id": "1f46181633594ae0a1fb2adb76b42981" + }, + { + "m_Id": "8cbd81814903479ea1d3151c1f38183e" + }, + { + "m_Id": "cfaf3f3a5a1146e194cddad30c95aada" + }, + { + "m_Id": "b43489e37a5c4df88f15844292a55ec7" + }, + { + "m_Id": "cd7281fb41aa4e61ac0fdf71d4f4bd46" + }, + { + "m_Id": "f01d52cdcb1647aab35782b4af535efd" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_TextureType": 0, + "m_NormalMapSpace": 1, + "m_EnableGlobalMipBias": true, + "m_MipSamplingMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "b224a1cf80604103ad085c799995f3c2", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "b2728d0dd3ce40678867c94a7d977916", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"fileID\":-2362172177983852347,\"guid\":\"dda5bcb0d1e9515498f6e4e038bbefe6\",\"type\":2}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "b2baf44eae52473cb6cda7b1debece01", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "b2c26292b7434733878a9b042f44de89", + "m_Id": 2, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.NormalMaterialSlot", + "m_ObjectId": "b30617d78dec40a7b8aa7f72dca7f41d", + "m_Id": 0, + "m_DisplayName": "Bent Normal", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "BentNormal", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [], + "m_Space": 3 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "b42e6dbfbc864097af182cbff5c0c1fb", + "m_Id": 0, + "m_DisplayName": "Outline Color 1", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "b43489e37a5c4df88f15844292a55ec7", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"fileID\":-2362172177983852347,\"guid\":\"dda5bcb0d1e9515498f6e4e038bbefe6\",\"type\":2}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.MultiplyNode", + "m_ObjectId": "b4a40cb6acd441acb83cfe0240bf910d", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "Multiply", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4750.99951171875, + "y": -4274.0, + "width": 130.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "d0b10e52e21941b183f5f635894c76c8" + }, + { + "m_Id": "0d6a57754b824f6db9cefa6953bc06a9" + }, + { + "m_Id": "773b90134e894e429203c0c83e80b9de" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "b4c4676c68bb4752af59e21f896d9470", + "m_Id": 0, + "m_DisplayName": "UV_1", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV_1", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DPropertiesNode", + "m_ObjectId": "b571db753a1948d5a6f1de4e7d0c7238", + "m_Group": { + "m_Id": "daaf032a109749a88c9b8ff8e1f8b541" + }, + "m_Name": "Texel Size", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5581.99951171875, + "y": -3867.0, + "width": 183.99998474121095, + "height": 100.99999237060547 + } + }, + "m_Slots": [ + { + "m_Id": "5b3ff4ee364f4d7a923b530ad60d8762" + }, + { + "m_Id": "c183b5bd9bbe45089f93996e73110918" + }, + { + "m_Id": "1196ae398cc348349ab0c1a23fdab4bd" + }, + { + "m_Id": "183118ca50814141b7bc3e0cee27fb9b" + }, + { + "m_Id": "f44e4374a48a4996aa60d23d3ae1e9f9" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "b691728a389a417d9b4f2d02541209c2", + "m_Id": 6, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "b7f9ac55517141868bfb9d2ad6429792", + "m_Id": 6, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "b85d677872b44421bf5536f42ba0267c", + "m_Id": 3, + "m_DisplayName": "Color0", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Color0", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "b911c23b90124d15924551e2730501eb", + "m_Id": 3, + "m_DisplayName": "Texel Width", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Texel Width", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "bc782d8e80154073b48a687a07adf60a", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.BentNormal", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "b30617d78dec40a7b8aa7f72dca7f41d" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.BentNormal" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.CombineNode", + "m_ObjectId": "bc9afcb18afa4ccc82d2cdc34d3f4641", + "m_Group": { + "m_Id": "daaf032a109749a88c9b8ff8e1f8b541" + }, + "m_Name": "Combine", + "m_DrawState": { + "m_Expanded": false, + "m_Position": { + "serializedVersion": "2", + "x": -5392.0, + "y": -3867.0, + "width": 125.99999237060547, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "5e42524569844befad16fda5a94eb9cb" + }, + { + "m_Id": "54d7a93ffec5490aa4591da23a21b693" + }, + { + "m_Id": "aa2794b8f0e24bf281d22e0fef0647be" + }, + { + "m_Id": "200245fc8bbe4826b209ab5f7ffe074c" + }, + { + "m_Id": "fc2e62201c5847e798fd939314413fcd" + }, + { + "m_Id": "fe11fa80cc1847a5a37f6757d521cf25" + }, + { + "m_Id": "de0c6f7f7af94defa6c3dbc6433de9d4" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "be58359e488f42e9b5121357d0fa526b", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.Metallic", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "77991fa631724e0cb32eed66ff017b23" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.Metallic" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "c183b5bd9bbe45089f93996e73110918", + "m_Id": 2, + "m_DisplayName": "Height", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Height", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.CustomFunctionNode", + "m_ObjectId": "c234e5216678436195ee1a5914bc79da", + "m_Group": { + "m_Id": "98934a69591249d5b8b92b39045359a3" + }, + "m_Name": "GenerateUV (Custom Function)", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4446.0, + "y": -2347.000244140625, + "width": 222.00001525878907, + "height": 142.0 + } + }, + "m_Slots": [ + { + "m_Id": "b4c4676c68bb4752af59e21f896d9470" + }, + { + "m_Id": "3db1608e927e4102a3c3a88e9fcab39a" + }, + { + "m_Id": "0f7ffb6d2de4447f9736780cbcee8e07" + }, + { + "m_Id": "d4954b7bbbb0412cbc997bcbe7dfa808" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SourceType": 0, + "m_FunctionName": "GenerateUV", + "m_FunctionSource": "96de908384869cd409c75efa351d5edf", + "m_FunctionBody": "Enter function body here..." +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "c35312edaa2344788b1964ee2f63a236", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DMaterialSlot", + "m_ObjectId": "c3e6d7c20c184bf39fd8822130e693e7", + "m_Id": 0, + "m_DisplayName": "_MainTex", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "c417006ffa034c44b79da3dd323165ff", + "m_Guid": { + "m_GuidSerialized": "7a28a011-205c-4fa8-bf4f-8064aa2308b2" + }, + "m_Name": "_ScaleRatioA", + "m_DefaultRefNameVersion": 1, + "m_RefNameGeneratedByDisplayName": "_ScaleRatioA", + "m_DefaultReferenceName": "_ScaleRatioA", + "m_OverrideReferenceName": "", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.0, + "m_FloatType": 0, + "m_RangeValues": { + "x": 0.0, + "y": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "c422a9a9ff824176aad2241f58c44d0b", + "m_Id": 0, + "m_DisplayName": "Outline Offset 1", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "c478c32c45884c57a62f7b2aa8ddc3b0", + "m_Id": 2, + "m_DisplayName": "Alpha", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Alpha", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "c49cfb8bb96846dc87ee00c0c041a372", + "m_Id": 4, + "m_DisplayName": "Texel Height", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Texel Height", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "c52a1744a9a14989b0ae452ad6de6061", + "m_Id": 0, + "m_DisplayName": "SSR", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "SSR", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "c6bdb985bc16435fa72f5a3c81bb633c", + "m_Id": 6, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "c7d4094601ac4bc1aead609c72b1f1c1", + "m_Id": 4, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "c7ddee91dc5b48dc828309c77fdb0b88", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4444.0, + "y": -4266.0, + "width": 153.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "a7942746b5564dc7bbbae1deb2403022" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "a6bbb32e8d884be9bb36db91fe4b81b1" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SamplerStateMaterialSlot", + "m_ObjectId": "c88fcbaeea954a5f9c68c339fa8b604d", + "m_Id": 3, + "m_DisplayName": "Sampler", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Sampler", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "c9b722d107ce4cd6a748c883472b9b0f", + "m_Id": 7, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "c9d7f0dbae7d422985a1cc87c025e76b", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4315.0, + "y": -3165.0, + "width": 144.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "79147f6986644769b58d9ed64fe771e1" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "cb3c0c3f08654b068bea44c4ffb15f4a" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Internal.Texture2DShaderProperty", + "m_ObjectId": "c9ec735d1a1046769e5601b2c97c849a", + "m_Guid": { + "m_GuidSerialized": "281a9526-c332-4471-a44e-ece4a1e95ef6" + }, + "m_Name": "Face Texture", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Texture2D_75569DEA", + "m_OverrideReferenceName": "_FaceTex", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "m_SerializedTexture": "{\"texture\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "isMainTexture": false, + "useTilingAndOffset": false, + "m_Modifiable": true, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "ca2a1083dc014f39ab8af0cdf140866b", + "m_Id": 0, + "m_DisplayName": "_FaceTex_ST", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Internal.BooleanShaderProperty", + "m_ObjectId": "cb3c0c3f08654b068bea44c4ffb15f4a", + "m_Guid": { + "m_GuidSerialized": "21009d12-8d94-4273-b0d0-a8ee0608ddcf" + }, + "m_Name": "OutlineMode", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Boolean_cb3c0c3f08654b068bea44c4ffb15f4a", + "m_OverrideReferenceName": "_OutlineMode", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SamplerStateMaterialSlot", + "m_ObjectId": "cb5e9f9567e84f8fa5463efc0e256e19", + "m_Id": 3, + "m_DisplayName": "Sampler", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Sampler", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "cb7117ecb1d047a8b2cb00ed552cb181", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.Alpha", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -3032.66650390625, + "y": -3029.33349609375, + "width": 200.0, + "height": 41.33349609375 + } + }, + "m_Slots": [ + { + "m_Id": "724e17584e97443e9e285dfa7253c8e3" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.Alpha" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "cc88101667c9488f9c5a716e851c1b21", + "m_Id": 3, + "m_DisplayName": "Color0", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Color0", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "cce40479b6284b6fa3174db9f09d0ac9", + "m_Id": 0, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "cd7281fb41aa4e61ac0fdf71d4f4bd46", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SamplerStateMaterialSlot", + "m_ObjectId": "cda5e3b4c1054bf3a65c0b7ec6bc778a", + "m_Id": 3, + "m_DisplayName": "Sampler", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Sampler", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SampleTexture2DNode", + "m_ObjectId": "cdddee3a537c464697357f11b966f9b8", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "Sample Texture 2D", + "m_DrawState": { + "m_Expanded": false, + "m_Position": { + "serializedVersion": "2", + "x": -4420.0, + "y": -4483.0, + "width": 156.0, + "height": 181.0 + } + }, + "m_Slots": [ + { + "m_Id": "41b9b79b3859472882bcea393703eec0" + }, + { + "m_Id": "c7d4094601ac4bc1aead609c72b1f1c1" + }, + { + "m_Id": "767769f736d5478cba5f10a415e28e7f" + }, + { + "m_Id": "b691728a389a417d9b4f2d02541209c2" + }, + { + "m_Id": "045c4f6b050549c7a0efb208e6349779" + }, + { + "m_Id": "509e6f38505b4b0695b263706a55028f" + }, + { + "m_Id": "204dacb5a95b424facf11cb6f65bd188" + }, + { + "m_Id": "35cbea6373dd4e4f8d0fea36e8add392" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_TextureType": 0, + "m_NormalMapSpace": 0, + "m_EnableGlobalMipBias": true, + "m_MipSamplingMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "cfaf3f3a5a1146e194cddad30c95aada", + "m_Id": 7, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.GroupData", + "m_ObjectId": "d0a791a544614667962a9a9a9ce0c68a", + "m_Title": "Screen Space Ratio", + "m_Position": { + "x": -6179.99951171875, + "y": -3422.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "d0b10e52e21941b183f5f635894c76c8", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "d1a17e42e7a04dc38984e3c01149445b", + "m_Id": 7, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "d219977210094c0082c517d8dc00c8bb", + "m_Id": 0, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.GroupData", + "m_ObjectId": "d258902c6ec74942afdb9ebf8c1d07f8", + "m_Title": "Generate Normal", + "m_Position": { + "x": -4511.33349609375, + "y": -3999.3330078125 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "d30452ac6b244ecca03df4d7b4de9f81", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "d48c3871e3064027a10ae9f4babd3be0", + "m_Id": 0, + "m_DisplayName": "_UnderlaySoftness", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "d4954b7bbbb0412cbc997bcbe7dfa808", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "d4df208fc23b42f2b52364124f1b661c", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5268.0, + "y": -3261.0, + "width": 159.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "757174b6f25040fdbb20355a21752222" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "74b41464cbed4e9e8e23af5ab9be40cf" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector3MaterialSlot", + "m_ObjectId": "d5173cc3c6cd4f1998550f3187a3e9c8", + "m_Id": 0, + "m_DisplayName": "Normal", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Normal", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [ + "X", + "Y", + "Z" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "d6a6a119394e4082a11bc024a6e42ef8", + "m_Id": 0, + "m_DisplayName": "Outline Color 2", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "d880558893fb442b9320cf55885d1117", + "m_Id": 0, + "m_DisplayName": "_FaceUVSpeed", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "d8edec16956c4f15b7d51d6ec10753f4", + "m_Id": 2, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "d9bcb754db834583b6518c5ed5152114", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "d9dc4839ee2847999110bdb234d6041a", + "m_Id": 1, + "m_DisplayName": "G", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DMaterialSlot", + "m_ObjectId": "da7a06d393a44089842070d51d2aa0a6", + "m_Id": 0, + "m_DisplayName": "_MainTex", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.GroupData", + "m_ObjectId": "daaf032a109749a88c9b8ff8e1f8b541", + "m_Title": "Offset Scale", + "m_Position": { + "x": -5747.99951171875, + "y": -3961.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVNode", + "m_ObjectId": "dbcb748279484a4590e53518c49122b8", + "m_Group": { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + "m_Name": "UV", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4783.0, + "y": -2765.0, + "width": 145.0, + "height": 130.0 + } + }, + "m_Slots": [ + { + "m_Id": "7a0f504e4175406dbd8134250f4e350b" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_OutputChannel": 1 +} + +{ + "m_SGVersion": 3, + "m_Type": "UnityEditor.ShaderGraph.Internal.ColorShaderProperty", + "m_ObjectId": "dc75c4e3a1bc4bb0a128086c2b0679a5", + "m_Guid": { + "m_GuidSerialized": "85cd941f-2fd2-43a3-b0fa-9f728bfb4220" + }, + "m_Name": "Face Color", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Color_99AFBB3D", + "m_OverrideReferenceName": "_FaceColor", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "r": 1.0, + "g": 1.0, + "b": 1.0, + "a": 1.0 + }, + "isMainColor": false, + "m_ColorMode": 1 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "de0c6f7f7af94defa6c3dbc6433de9d4", + "m_Id": 6, + "m_DisplayName": "RG", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RG", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "deac82280a2b43078e0e40863e2d974c", + "m_Id": 4, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DMaterialSlot", + "m_ObjectId": "def8e0b9d8384982bc5b4c32d877e458", + "m_Id": 0, + "m_DisplayName": "Outline Texture", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SubtractNode", + "m_ObjectId": "dff7a66b353a4023b29c9d937da77960", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "Subtract", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4602.0, + "y": -4298.0, + "width": 130.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "7b8a19bd115e4167a25b59cb3218a817" + }, + { + "m_Id": "0b57f2d35157477ab2b29a5aac14ae8b" + }, + { + "m_Id": "e9e06fcb161e44ba8cc9f6f60264df78" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "e141833aa78b4fd59ecad949beb43a78", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "e2d28f29bbac4983a401574480b5ca28", + "m_Id": 1, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "e364823e158a407fb48dd7b630c79973", + "m_Id": 3, + "m_DisplayName": "Texel Width", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Texel Width", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.NormalMaterialSlot", + "m_ObjectId": "e386b183a18245a796b024022f7f3074", + "m_Id": 0, + "m_DisplayName": "Normal (Object Space)", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "NormalOS", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [ + "X", + "Y", + "Z" + ], + "m_Space": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "e444f2c81d1e48329fa2c91005277e8d", + "m_Id": 1, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "e495a9f7a11f4eb89334e83be154ceb9", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "e51a636b2621440eb94cc802c1cf4bfc", + "m_Id": 2, + "m_DisplayName": "Height", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Height", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "e591df3a1eb94e259b762f2830b407e2", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.Emission", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "4590bfa2a0664b65b6f073bae33a071f" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.Emission" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "e6e80c6b0db545cda26b079a9a78fbb3", + "m_Id": 5, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.CustomFunctionNode", + "m_ObjectId": "e818605f8f5a4f01bf61caaa33693581", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "ComputeSDF44 (Custom Function)", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4144.0, + "y": -3369.0, + "width": 244.0, + "height": 214.0 + } + }, + "m_Slots": [ + { + "m_Id": "641eda269d7b4da9acb65f8d50035ea9" + }, + { + "m_Id": "f6823778a3cf42d5bbe8a83e5f9c9fa3" + }, + { + "m_Id": "9c26fdddba244d36a854298c00473247" + }, + { + "m_Id": "f684c5678e9e4f078157a3ab7ef5057b" + }, + { + "m_Id": "14ad19bf20a140dd88d58452d7df688b" + }, + { + "m_Id": "215a82c127204988b751de7d3a39b955" + }, + { + "m_Id": "c478c32c45884c57a62f7b2aa8ddc3b0" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SourceType": 0, + "m_FunctionName": "ComputeSDF44", + "m_FunctionSource": "96de908384869cd409c75efa351d5edf", + "m_FunctionBody": "Enter function body here..." +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "e9e06fcb161e44ba8cc9f6f60264df78", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "ebbd94a7102a4457a48ac492de3bff14", + "m_Id": 5, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "ebd6d75abcb84108bcadbfe7ee5f6244", + "m_Id": 7, + "m_DisplayName": "TextureHeight", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "TextureHeight", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "ec184d6d9fb2494897774c9e7d279e6d", + "m_Group": { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4803.0, + "y": -2627.0, + "width": 165.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "ca2a1083dc014f39ab8af0cdf140866b" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "07946387933e416db576b677f0711e5f" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SubtractNode", + "m_ObjectId": "ec1f2e8bc9fd4ae38b133c60ee6c49b8", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Subtract", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4957.99951171875, + "y": -3204.0, + "width": 130.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "748c31bbcecc4b30bec2e42c0612175b" + }, + { + "m_Id": "4bda5c294e1949138d033640e1d385b4" + }, + { + "m_Id": "4e64dac49ddc47c3b5b1e27b17a08304" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector4ShaderProperty", + "m_ObjectId": "ec79eb447dfd47a9b3380344c6a60f43", + "m_Guid": { + "m_GuidSerialized": "54c77f8b-0534-4b35-a3f0-83ab2ebe6c1f" + }, + "m_Name": "_OutlineTex_ST", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector4_1774DE83", + "m_OverrideReferenceName": "_OutlineTex_ST", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.GroupData", + "m_ObjectId": "ecf16c34d46f4502ac601f0c38c7576b", + "m_Title": "Vertex Color", + "m_Position": { + "x": -3448.000244140625, + "y": -3579.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "ed1d1f1613334c3bb904dd08161cd7e5", + "m_Id": 0, + "m_DisplayName": "_GradientScale", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "ed6c215a65584deeaefad1d2c7743044", + "m_Id": 4, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector3MaterialSlot", + "m_ObjectId": "edbee7a8952b46529ac5ad0365775774", + "m_Id": 5, + "m_DisplayName": "RGB", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGB", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.ColorRGBMaterialSlot", + "m_ObjectId": "ef0b93f78372439696f50711eaf57d90", + "m_Id": 0, + "m_DisplayName": "Base Color", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "BaseColor", + "m_StageCapability": 2, + "m_Value": { + "x": 0.7353569269180298, + "y": 0.7353569269180298, + "z": 0.7353569269180298 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [ + "X", + "Y", + "Z" + ], + "m_ColorMode": 0, + "m_DefaultColor": { + "r": 0.5, + "g": 0.5, + "b": 0.5, + "a": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "ef9738ec7e894772a14e9dce441c16c6", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SamplerStateMaterialSlot", + "m_ObjectId": "f01d52cdcb1647aab35782b4af535efd", + "m_Id": 3, + "m_DisplayName": "Sampler", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Sampler", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.CustomFunctionNode", + "m_ObjectId": "f23a8b2b7c85478388ff7a8c8a6de740", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Layer4 (Custom Function)", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -3849.999755859375, + "y": -3286.0, + "width": 193.0, + "height": 189.99998474121095 + } + }, + "m_Slots": [ + { + "m_Id": "0fac35636fca4474a6afaefc3c757775" + }, + { + "m_Id": "cc88101667c9488f9c5a716e851c1b21" + }, + { + "m_Id": "68ec7c31365549d6a8ce883edfc02de2" + }, + { + "m_Id": "02559cbe5ad441a3904ccb75ded2b2c5" + }, + { + "m_Id": "34a67e0fef884f9399e674d9eeaf720c" + }, + { + "m_Id": "3802c81c3be24823aa1d7c9997a33c29" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SourceType": 0, + "m_FunctionName": "Layer4", + "m_FunctionSource": "96de908384869cd409c75efa351d5edf", + "m_FunctionBody": "Enter function body here..." +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "f2903158b3624759bca1fcd843698078", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "x": 2.0, + "y": 2.0, + "z": 2.0, + "w": 2.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "f2a351a5375c441b8d9ab7e2c9545a77", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "e00": 2.0, + "e01": 2.0, + "e02": 2.0, + "e03": 2.0, + "e10": 2.0, + "e11": 2.0, + "e12": 2.0, + "e13": 2.0, + "e20": 2.0, + "e21": 2.0, + "e22": 2.0, + "e23": 2.0, + "e30": 2.0, + "e31": 2.0, + "e32": 2.0, + "e33": 2.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DPropertiesNode", + "m_ObjectId": "f383b24f0bc6434dafe44b3e3d338a63", + "m_Group": { + "m_Id": "d0a791a544614667962a9a9a9ce0c68a" + }, + "m_Name": "Texel Size", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -6012.99951171875, + "y": -3209.0, + "width": 183.99998474121095, + "height": 100.99999237060547 + } + }, + "m_Slots": [ + { + "m_Id": "fb5e1e2a67c14602808358686bb75091" + }, + { + "m_Id": "712da461f71a454db59d349f752d41ee" + }, + { + "m_Id": "b000f852aa984e9dae25b125a4607f4e" + }, + { + "m_Id": "b911c23b90124d15924551e2730501eb" + }, + { + "m_Id": "c49cfb8bb96846dc87ee00c0c041a372" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "f3d31c1f18d8491a8ecf5cbc37e4b7db", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4321.99951171875, + "y": -3246.0, + "width": 153.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "ed1d1f1613334c3bb904dd08161cd7e5" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "a6bbb32e8d884be9bb36db91fe4b81b1" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "f42ad06b3c6a45d3ab33de904c063412", + "m_Id": 3, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "f44e4374a48a4996aa60d23d3ae1e9f9", + "m_Id": 4, + "m_DisplayName": "Texel Height", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Texel Height", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "f48f04ad45d046a8b88e71731ed506e7", + "m_Id": 4, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "f4ecc442a2d246759f7c2c0412953d28", + "m_Group": { + "m_Id": "" + }, + "m_Name": "VertexDescription.Normal", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "a3f8b6e8ae7f48e2989a029904401502" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Normal" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "f5a8bfcec21a4dac9df63993ec53635e", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.NormalTS", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "7564379492aa4c5a927ff3501acdc70d" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.NormalTS" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "f6823778a3cf42d5bbe8a83e5f9c9fa3", + "m_Id": 1, + "m_DisplayName": "SD", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "SD", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "f684c5678e9e4f078157a3ab7ef5057b", + "m_Id": 4, + "m_DisplayName": "Isoperimeter", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Isoperimeter", + "m_StageCapability": 3, + "m_Value": { + "x": 3.0, + "y": 2.0, + "z": 1.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SampleTexture2DNode", + "m_ObjectId": "f814deb543c24fbbafbcdb5071d96022", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Sample Texture 2D", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4600.0, + "y": -3245.0, + "width": 183.99998474121095, + "height": 253.0 + } + }, + "m_Slots": [ + { + "m_Id": "abd59150589b436cadf8c9e6f43ccb8e" + }, + { + "m_Id": "7acfafd73b8c4dfab8c55c18a887e087" + }, + { + "m_Id": "928621a3ca2d41c89a10336bbbc81ddc" + }, + { + "m_Id": "b7f9ac55517141868bfb9d2ad6429792" + }, + { + "m_Id": "09b1b86c1c074337a4c439d3a308dd2e" + }, + { + "m_Id": "1f247658c7ba45fb93c41f51e21acb0d" + }, + { + "m_Id": "d30452ac6b244ecca03df4d7b4de9f81" + }, + { + "m_Id": "215b30ae27784ec3a13360a9029af283" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_TextureType": 0, + "m_NormalMapSpace": 0, + "m_EnableGlobalMipBias": true, + "m_MipSamplingMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "f864c900600e427ba7793f00c715e971", + "m_Id": 0, + "m_DisplayName": "Outline Width", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "fa6de3be9f5b4411b5081b49e645f424", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "e00": 2.0, + "e01": 2.0, + "e02": 2.0, + "e03": 2.0, + "e10": 2.0, + "e11": 2.0, + "e12": 2.0, + "e13": 2.0, + "e20": 2.0, + "e21": 2.0, + "e22": 2.0, + "e23": 2.0, + "e30": 2.0, + "e31": 2.0, + "e32": 2.0, + "e33": 2.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DivideNode", + "m_ObjectId": "faace8101df943d8956faa31728cb004", + "m_Group": { + "m_Id": "daaf032a109749a88c9b8ff8e1f8b541" + }, + "m_Name": "Divide", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5254.99951171875, + "y": -3891.0, + "width": 130.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "77e28f3e930b4c249145630ec961af95" + }, + { + "m_Id": "f2903158b3624759bca1fcd843698078" + }, + { + "m_Id": "30ca940fe2794c949f2a1d4d2caaa446" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "facc84930f544fd7a0205a6176b18ac0", + "m_Id": 2, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "fb15d0ba56d54a6192f11e107aeb5fa8", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "fb5e1e2a67c14602808358686bb75091", + "m_Id": 0, + "m_DisplayName": "Width", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Width", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "fc2e62201c5847e798fd939314413fcd", + "m_Id": 4, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "fd0b096ed5b74f9e9ec51327be200731", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SampleTexture2DNode", + "m_ObjectId": "fdb77c3e92ee497b88ca5dc46dc45350", + "m_Group": { + "m_Id": "98934a69591249d5b8b92b39045359a3" + }, + "m_Name": "Sample Texture 2D", + "m_DrawState": { + "m_Expanded": false, + "m_Position": { + "serializedVersion": "2", + "x": -4208.0, + "y": -2371.0, + "width": 180.0, + "height": 180.0 + } + }, + "m_Slots": [ + { + "m_Id": "4328cdbf78b94c038fd614c59bfe1cac" + }, + { + "m_Id": "04dfcc9ff13a4bf282ed46faec39d15c" + }, + { + "m_Id": "71dd947935b64ce38f0d25406dde447b" + }, + { + "m_Id": "61a6ac5f29344d109411f26850ab0a96" + }, + { + "m_Id": "44806230fa384c1e95f9c5918a14f056" + }, + { + "m_Id": "4eb3c00a1ca44e10be833b7ca61ff059" + }, + { + "m_Id": "57abc172afd449e2a4d567f93432507b" + }, + { + "m_Id": "cda5e3b4c1054bf3a65c0b7ec6bc778a" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_TextureType": 0, + "m_NormalMapSpace": 0, + "m_EnableGlobalMipBias": true, + "m_MipSamplingMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector3MaterialSlot", + "m_ObjectId": "fe11fa80cc1847a5a37f6757d521cf25", + "m_Id": 5, + "m_DisplayName": "RGB", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGB", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "ffb07af0bca546d8b9bc439d34aa68f5", + "m_Id": 0, + "m_DisplayName": "UV_1", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV_1", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + diff --git a/Assets/TextMesh Pro/Shaders/TMP_SDF-HDRP LIT.shadergraph.meta b/Assets/TextMesh Pro/Shaders/TMP_SDF-HDRP LIT.shadergraph.meta new file mode 100644 index 0000000000..a445e27dc9 --- /dev/null +++ b/Assets/TextMesh Pro/Shaders/TMP_SDF-HDRP LIT.shadergraph.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: ca2ed216f98028c4dae6c5224a952b3c +ScriptedImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 2 + userData: + assetBundleName: + assetBundleVariant: + script: {fileID: 11500000, guid: 625f186215c104763be7675aa2d941aa, type: 3} diff --git a/Assets/TextMesh Pro/Shaders/TMP_SDF-HDRP UNLIT.shadergraph b/Assets/TextMesh Pro/Shaders/TMP_SDF-HDRP UNLIT.shadergraph new file mode 100644 index 0000000000..3118dd04fd --- /dev/null +++ b/Assets/TextMesh Pro/Shaders/TMP_SDF-HDRP UNLIT.shadergraph @@ -0,0 +1,11759 @@ +{ + "m_SGVersion": 3, + "m_Type": "UnityEditor.ShaderGraph.GraphData", + "m_ObjectId": "386c36a1c4c34ea29deb680fb82cfe8b", + "m_Properties": [ + { + "m_Id": "dc75c4e3a1bc4bb0a128086c2b0679a5" + }, + { + "m_Id": "867a4ae13c0d4a028c71bc1063824c14" + }, + { + "m_Id": "22b7f3c2bb7b48c0a7fdeb50e33e7d5e" + }, + { + "m_Id": "53073e5ea924459fa6681a4943e9f947" + }, + { + "m_Id": "7a046f410ce64aa88438b0bfd412c045" + }, + { + "m_Id": "636180f6e0504f2baaa5cc086980cb47" + }, + { + "m_Id": "74b41464cbed4e9e8e23af5ab9be40cf" + }, + { + "m_Id": "8ed907a2cc7949b68a283ae243ea1977" + }, + { + "m_Id": "cb3c0c3f08654b068bea44c4ffb15f4a" + }, + { + "m_Id": "0580d4b7e3a049049569f4508643a724" + }, + { + "m_Id": "c9ec735d1a1046769e5601b2c97c849a" + }, + { + "m_Id": "2d0a269511e34bd1ba9056d2c939dff2" + }, + { + "m_Id": "07946387933e416db576b677f0711e5f" + }, + { + "m_Id": "46fbf3eeb0ea4470869cba7443249295" + }, + { + "m_Id": "ec79eb447dfd47a9b3380344c6a60f43" + }, + { + "m_Id": "3fdf4b7bc5d4426492dcc057603ef4a6" + }, + { + "m_Id": "8cf8aae64c1d443f9303126886b40f17" + }, + { + "m_Id": "49e7c3ad55ce458797f0e60c950cb965" + }, + { + "m_Id": "81e8ed0534534674a74263e6161a2a1a" + }, + { + "m_Id": "952d0fa5cd744df0b434cd38e9a90b93" + }, + { + "m_Id": "21a7a380e66d42e780e2a2a1baa630d5" + }, + { + "m_Id": "2c10b97b92c947ceb307a93759c0228b" + }, + { + "m_Id": "1be90d4f96a841748b0c95219b12ad27" + }, + { + "m_Id": "5fbe253f3e444f2aa8ac717f9c856619" + }, + { + "m_Id": "5bd258837c514ff7ab0bf7027e762c18" + }, + { + "m_Id": "998db5e5901e45b29040eb2099370071" + }, + { + "m_Id": "a6c38edd2e8743a9b057ba8452b9f129" + }, + { + "m_Id": "82af2db1018543d7832af96c1cfc981f" + }, + { + "m_Id": "3ec4797e381747829ef4712c85fcf7a1" + }, + { + "m_Id": "b0b352c4503a43d083a64e57352b29a0" + }, + { + "m_Id": "424dbeeb009344efa29c304c4979e3d6" + }, + { + "m_Id": "05805bc6fcc941fd889922555c6c86d7" + }, + { + "m_Id": "a4ad98d8828c424384229c344ebe2ed0" + }, + { + "m_Id": "3e372195f4bd4845852a37839e5b602d" + }, + { + "m_Id": "a6bbb32e8d884be9bb36db91fe4b81b1" + }, + { + "m_Id": "ced40c943add479a86f25f7fb5ed59da" + } + ], + "m_Keywords": [], + "m_Dropdowns": [], + "m_CategoryData": [ + { + "m_Id": "469965f1c9284b7eb032d415d6295b2c" + } + ], + "m_Nodes": [ + { + "m_Id": "b1188549725543d485436c2e921ffbb2" + }, + { + "m_Id": "4488af8ff6a7421298a7e827f567263b" + }, + { + "m_Id": "7e0fadb2533f496192c1ad3e78642010" + }, + { + "m_Id": "aa87c72ac0e64469acc34f936f00b3d0" + }, + { + "m_Id": "105b1ed1aa714e41bbe1ef5472bdb11f" + }, + { + "m_Id": "150533bad8e2424aaa2c74e253af8592" + }, + { + "m_Id": "1c4df61c2fea404eb3b87b270d7c59bc" + }, + { + "m_Id": "8135ca333f8f4ea78163743e6ec1f55c" + }, + { + "m_Id": "36f1b4d96f2941c39e5cd95d9c1d2ce6" + }, + { + "m_Id": "9c228fac287d446296b91a4acf5cec59" + }, + { + "m_Id": "52798bdb86f6400e86489a7a368e9f8b" + }, + { + "m_Id": "f383b24f0bc6434dafe44b3e3d338a63" + }, + { + "m_Id": "85a1ad8e741e41759002e8cdc8cd0b96" + }, + { + "m_Id": "f3d31c1f18d8491a8ecf5cbc37e4b7db" + }, + { + "m_Id": "f23a8b2b7c85478388ff7a8c8a6de740" + }, + { + "m_Id": "e818605f8f5a4f01bf61caaa33693581" + }, + { + "m_Id": "85b5940eb77e4625812ded7215bab8d7" + }, + { + "m_Id": "cdddee3a537c464697357f11b966f9b8" + }, + { + "m_Id": "88253223d2c34ecfab92b0c344048f94" + }, + { + "m_Id": "c7ddee91dc5b48dc828309c77fdb0b88" + }, + { + "m_Id": "1e12726617b24675958e942eb62e4b09" + }, + { + "m_Id": "2ac79705aa9e415dbb74ec215233fd1b" + }, + { + "m_Id": "44317f2e371447e2a8d894f8a021a235" + }, + { + "m_Id": "7984fd094e1147bdabb4e26fbd3d31c8" + }, + { + "m_Id": "91890fe48ebe4717aea61ecaf3ad4861" + }, + { + "m_Id": "19075add867e4757b9520d18fe8de1d0" + }, + { + "m_Id": "fdb77c3e92ee497b88ca5dc46dc45350" + }, + { + "m_Id": "c234e5216678436195ee1a5914bc79da" + }, + { + "m_Id": "4648b46ad29a4008a80de4f8a5a5b813" + }, + { + "m_Id": "59bd90a849624124bae6464ee3669aa6" + }, + { + "m_Id": "a535f3bcbeb14622bb177eb6f46e76f4" + }, + { + "m_Id": "9e87ce9607e14015a3790c528ca5dfda" + }, + { + "m_Id": "285f6a9863d54ed2a8150727ad749456" + }, + { + "m_Id": "b163c9f1666644b0bba62cf0e12df7bc" + }, + { + "m_Id": "a455bd79094c4413a7b7dd80ca8b9368" + }, + { + "m_Id": "dbcb748279484a4590e53518c49122b8" + }, + { + "m_Id": "04dc152dd2ba4d519391577eb1156235" + }, + { + "m_Id": "9f0de188085746d5a19073da1de85ddb" + }, + { + "m_Id": "ec184d6d9fb2494897774c9e7d279e6d" + }, + { + "m_Id": "95928bcb6a284b8d88105a84c2e1d3ce" + }, + { + "m_Id": "4f194ff591484e908fc2bcdacbcf2570" + }, + { + "m_Id": "6e8946a245e842b38231d4a241bfb3ef" + }, + { + "m_Id": "cb7117ecb1d047a8b2cb00ed552cb181" + }, + { + "m_Id": "3c50439118b2496f9e390021b0964606" + }, + { + "m_Id": "3e231021af7b47ba97f2871e7f25d0fe" + }, + { + "m_Id": "aa3e347d733e48f7b65d8a8847370eec" + }, + { + "m_Id": "2a552a0b828f457c911aa19561e410ae" + }, + { + "m_Id": "acd0cd5a177f4a97bf23db7219305e3f" + }, + { + "m_Id": "51378bae98a94c309785d14cd5cbb453" + }, + { + "m_Id": "9e6e50a71d9843b49b62ebe1cf7d3d59" + }, + { + "m_Id": "7444469eb9884253819add9ef96baa25" + }, + { + "m_Id": "67a519f507384ff1861df5d8d5b486be" + }, + { + "m_Id": "48390d02257d41bf98eace1deaa4c539" + }, + { + "m_Id": "f4ecc442a2d246759f7c2c0412953d28" + }, + { + "m_Id": "7f2e6b5f15364ed9835d67d0cf4f8f65" + }, + { + "m_Id": "aca823a8188948c782eddaf0f45e1868" + }, + { + "m_Id": "7d78a616c2754cc28d1f32cf66ade611" + }, + { + "m_Id": "163beb4431c34f538340bc0af0991e6f" + }, + { + "m_Id": "39f2f84f30304d859fb07569e2695f60" + }, + { + "m_Id": "42a586e4f6ec40eeaba891b7fd133864" + }, + { + "m_Id": "4abff6ff92fa4a05b203f10580988335" + }, + { + "m_Id": "319916a5921343f7b7eef0e50dc93def" + }, + { + "m_Id": "f814deb543c24fbbafbcdb5071d96022" + }, + { + "m_Id": "65c8e64a7535466e933eed08a2f77532" + }, + { + "m_Id": "63c7cd57fc3c45a9a97b514fdae32693" + }, + { + "m_Id": "d4df208fc23b42f2b52364124f1b661c" + }, + { + "m_Id": "9d3c3383d5934a17bf9efbb7fd9e9043" + }, + { + "m_Id": "aef5c44f84e04c3185e0b93e95e34204" + }, + { + "m_Id": "c9d7f0dbae7d422985a1cc87c025e76b" + }, + { + "m_Id": "faace8101df943d8956faa31728cb004" + }, + { + "m_Id": "007c75c776ac4f1babe9cd7ae1fc4f14" + }, + { + "m_Id": "b571db753a1948d5a6f1de4e7d0c7238" + }, + { + "m_Id": "9147636b0cfa466a9b37a013d8f693bf" + }, + { + "m_Id": "bc9afcb18afa4ccc82d2cdc34d3f4641" + }, + { + "m_Id": "b4a40cb6acd441acb83cfe0240bf910d" + }, + { + "m_Id": "56c25395796e4d2fbe5c892d428d1620" + }, + { + "m_Id": "6b2f65c1463f4f7bad16c54a95d2fe75" + }, + { + "m_Id": "109f638d1f9b49d4991d6d21a86d4eb7" + }, + { + "m_Id": "dff7a66b353a4023b29c9d937da77960" + }, + { + "m_Id": "7a80e8839f0e4a1d9a6c0814f8793ee6" + }, + { + "m_Id": "7d7696aa6d184b4fb9c316a9dec37aee" + }, + { + "m_Id": "ec1f2e8bc9fd4ae38b133c60ee6c49b8" + }, + { + "m_Id": "2db15d90c2204143b225ec4ef08d0755" + }, + { + "m_Id": "e591df3a1eb94e259b762f2830b407e2" + } + ], + "m_GroupDatas": [ + { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + { + "m_Id": "d0a791a544614667962a9a9a9ce0c68a" + }, + { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + { + "m_Id": "ecf16c34d46f4502ac601f0c38c7576b" + }, + { + "m_Id": "98934a69591249d5b8b92b39045359a3" + }, + { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + { + "m_Id": "d258902c6ec74942afdb9ebf8c1d07f8" + }, + { + "m_Id": "daaf032a109749a88c9b8ff8e1f8b541" + } + ], + "m_StickyNoteDatas": [], + "m_Edges": [ + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "007c75c776ac4f1babe9cd7ae1fc4f14" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "b571db753a1948d5a6f1de4e7d0c7238" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "04dc152dd2ba4d519391577eb1156235" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "b163c9f1666644b0bba62cf0e12df7bc" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "105b1ed1aa714e41bbe1ef5472bdb11f" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "b4a40cb6acd441acb83cfe0240bf910d" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "109f638d1f9b49d4991d6d21a86d4eb7" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "ec1f2e8bc9fd4ae38b133c60ee6c49b8" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "150533bad8e2424aaa2c74e253af8592" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "319916a5921343f7b7eef0e50dc93def" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "150533bad8e2424aaa2c74e253af8592" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "65c8e64a7535466e933eed08a2f77532" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "150533bad8e2424aaa2c74e253af8592" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "9c228fac287d446296b91a4acf5cec59" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "150533bad8e2424aaa2c74e253af8592" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "f814deb543c24fbbafbcdb5071d96022" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "163beb4431c34f538340bc0af0991e6f" + }, + "m_SlotId": 4 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "7984fd094e1147bdabb4e26fbd3d31c8" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "19075add867e4757b9520d18fe8de1d0" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "e818605f8f5a4f01bf61caaa33693581" + }, + "m_SlotId": 5 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "1c4df61c2fea404eb3b87b270d7c59bc" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "e818605f8f5a4f01bf61caaa33693581" + }, + "m_SlotId": 4 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "1e12726617b24675958e942eb62e4b09" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "dff7a66b353a4023b29c9d937da77960" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "285f6a9863d54ed2a8150727ad749456" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "59bd90a849624124bae6464ee3669aa6" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "2a552a0b828f457c911aa19561e410ae" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "51378bae98a94c309785d14cd5cbb453" + }, + "m_SlotId": 6 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "2ac79705aa9e415dbb74ec215233fd1b" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "7984fd094e1147bdabb4e26fbd3d31c8" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "2db15d90c2204143b225ec4ef08d0755" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "fdb77c3e92ee497b88ca5dc46dc45350" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "319916a5921343f7b7eef0e50dc93def" + }, + "m_SlotId": 7 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "4abff6ff92fa4a05b203f10580988335" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "36f1b4d96f2941c39e5cd95d9c1d2ce6" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "85a1ad8e741e41759002e8cdc8cd0b96" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "39f2f84f30304d859fb07569e2695f60" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "163beb4431c34f538340bc0af0991e6f" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "3e231021af7b47ba97f2871e7f25d0fe" + }, + "m_SlotId": 5 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "6e8946a245e842b38231d4a241bfb3ef" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "42a586e4f6ec40eeaba891b7fd133864" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "cdddee3a537c464697357f11b966f9b8" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "44317f2e371447e2a8d894f8a021a235" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "2ac79705aa9e415dbb74ec215233fd1b" + }, + "m_SlotId": 3 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "4488af8ff6a7421298a7e827f567263b" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "44317f2e371447e2a8d894f8a021a235" + }, + "m_SlotId": 3 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "4648b46ad29a4008a80de4f8a5a5b813" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "c234e5216678436195ee1a5914bc79da" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "4abff6ff92fa4a05b203f10580988335" + }, + "m_SlotId": 4 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "e818605f8f5a4f01bf61caaa33693581" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "4f194ff591484e908fc2bcdacbcf2570" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "9f0de188085746d5a19073da1de85ddb" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "51378bae98a94c309785d14cd5cbb453" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "aa3e347d733e48f7b65d8a8847370eec" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "51378bae98a94c309785d14cd5cbb453" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "aca823a8188948c782eddaf0f45e1868" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "52798bdb86f6400e86489a7a368e9f8b" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "f383b24f0bc6434dafe44b3e3d338a63" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "56c25395796e4d2fbe5c892d428d1620" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "7a80e8839f0e4a1d9a6c0814f8793ee6" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "59bd90a849624124bae6464ee3669aa6" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "f23a8b2b7c85478388ff7a8c8a6de740" + }, + "m_SlotId": 4 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "63c7cd57fc3c45a9a97b514fdae32693" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "56c25395796e4d2fbe5c892d428d1620" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "65c8e64a7535466e933eed08a2f77532" + }, + "m_SlotId": 7 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "4abff6ff92fa4a05b203f10580988335" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "67a519f507384ff1861df5d8d5b486be" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "51378bae98a94c309785d14cd5cbb453" + }, + "m_SlotId": 4 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "6b2f65c1463f4f7bad16c54a95d2fe75" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "7d7696aa6d184b4fb9c316a9dec37aee" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "7444469eb9884253819add9ef96baa25" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "51378bae98a94c309785d14cd5cbb453" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "7984fd094e1147bdabb4e26fbd3d31c8" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "91890fe48ebe4717aea61ecaf3ad4861" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "7a80e8839f0e4a1d9a6c0814f8793ee6" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "65c8e64a7535466e933eed08a2f77532" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "7d7696aa6d184b4fb9c316a9dec37aee" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "319916a5921343f7b7eef0e50dc93def" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "7d78a616c2754cc28d1f32cf66ade611" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "f23a8b2b7c85478388ff7a8c8a6de740" + }, + "m_SlotId": 3 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "7e0fadb2533f496192c1ad3e78642010" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "88253223d2c34ecfab92b0c344048f94" + }, + "m_SlotId": 5 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "8135ca333f8f4ea78163743e6ec1f55c" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "f23a8b2b7c85478388ff7a8c8a6de740" + }, + "m_SlotId": 5 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "85a1ad8e741e41759002e8cdc8cd0b96" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "88253223d2c34ecfab92b0c344048f94" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "85a1ad8e741e41759002e8cdc8cd0b96" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "e818605f8f5a4f01bf61caaa33693581" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "85b5940eb77e4625812ded7215bab8d7" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "f23a8b2b7c85478388ff7a8c8a6de740" + }, + "m_SlotId": 6 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "88253223d2c34ecfab92b0c344048f94" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "44317f2e371447e2a8d894f8a021a235" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "9147636b0cfa466a9b37a013d8f693bf" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "faace8101df943d8956faa31728cb004" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "91890fe48ebe4717aea61ecaf3ad4861" + }, + "m_SlotId": 1 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "3e231021af7b47ba97f2871e7f25d0fe" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "91890fe48ebe4717aea61ecaf3ad4861" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "3e231021af7b47ba97f2871e7f25d0fe" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "91890fe48ebe4717aea61ecaf3ad4861" + }, + "m_SlotId": 3 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "3e231021af7b47ba97f2871e7f25d0fe" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "91890fe48ebe4717aea61ecaf3ad4861" + }, + "m_SlotId": 4 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "cb7117ecb1d047a8b2cb00ed552cb181" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "95928bcb6a284b8d88105a84c2e1d3ce" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "a455bd79094c4413a7b7dd80ca8b9368" + }, + "m_SlotId": 4 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "9c228fac287d446296b91a4acf5cec59" + }, + "m_SlotId": 7 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "4abff6ff92fa4a05b203f10580988335" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "9d3c3383d5934a17bf9efbb7fd9e9043" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "7a80e8839f0e4a1d9a6c0814f8793ee6" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "9d3c3383d5934a17bf9efbb7fd9e9043" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "7d7696aa6d184b4fb9c316a9dec37aee" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "9d3c3383d5934a17bf9efbb7fd9e9043" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "ec1f2e8bc9fd4ae38b133c60ee6c49b8" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "9e6e50a71d9843b49b62ebe1cf7d3d59" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "acd0cd5a177f4a97bf23db7219305e3f" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "9e87ce9607e14015a3790c528ca5dfda" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "c234e5216678436195ee1a5914bc79da" + }, + "m_SlotId": 4 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "9f0de188085746d5a19073da1de85ddb" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "7d78a616c2754cc28d1f32cf66ade611" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "a455bd79094c4413a7b7dd80ca8b9368" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "b163c9f1666644b0bba62cf0e12df7bc" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "a535f3bcbeb14622bb177eb6f46e76f4" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "c234e5216678436195ee1a5914bc79da" + }, + "m_SlotId": 3 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "aa3e347d733e48f7b65d8a8847370eec" + }, + "m_SlotId": 1 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "2ac79705aa9e415dbb74ec215233fd1b" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "aa87c72ac0e64469acc34f936f00b3d0" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "88253223d2c34ecfab92b0c344048f94" + }, + "m_SlotId": 4 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "acd0cd5a177f4a97bf23db7219305e3f" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "51378bae98a94c309785d14cd5cbb453" + }, + "m_SlotId": 5 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "acd0cd5a177f4a97bf23db7219305e3f" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "51378bae98a94c309785d14cd5cbb453" + }, + "m_SlotId": 7 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "aef5c44f84e04c3185e0b93e95e34204" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "109f638d1f9b49d4991d6d21a86d4eb7" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "b1188549725543d485436c2e921ffbb2" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "7d78a616c2754cc28d1f32cf66ade611" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "b163c9f1666644b0bba62cf0e12df7bc" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "9f0de188085746d5a19073da1de85ddb" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "b4a40cb6acd441acb83cfe0240bf910d" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "dff7a66b353a4023b29c9d937da77960" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "b571db753a1948d5a6f1de4e7d0c7238" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "bc9afcb18afa4ccc82d2cdc34d3f4641" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "b571db753a1948d5a6f1de4e7d0c7238" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "bc9afcb18afa4ccc82d2cdc34d3f4641" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "bc9afcb18afa4ccc82d2cdc34d3f4641" + }, + "m_SlotId": 6 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "faace8101df943d8956faa31728cb004" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "c234e5216678436195ee1a5914bc79da" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "fdb77c3e92ee497b88ca5dc46dc45350" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "c7ddee91dc5b48dc828309c77fdb0b88" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "88253223d2c34ecfab92b0c344048f94" + }, + "m_SlotId": 3 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "c9d7f0dbae7d422985a1cc87c025e76b" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "e818605f8f5a4f01bf61caaa33693581" + }, + "m_SlotId": 6 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "cdddee3a537c464697357f11b966f9b8" + }, + "m_SlotId": 7 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "88253223d2c34ecfab92b0c344048f94" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "d4df208fc23b42f2b52364124f1b661c" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "6b2f65c1463f4f7bad16c54a95d2fe75" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "dbcb748279484a4590e53518c49122b8" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "a455bd79094c4413a7b7dd80ca8b9368" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "dff7a66b353a4023b29c9d937da77960" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "cdddee3a537c464697357f11b966f9b8" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "e818605f8f5a4f01bf61caaa33693581" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "f23a8b2b7c85478388ff7a8c8a6de740" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "ec184d6d9fb2494897774c9e7d279e6d" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "a455bd79094c4413a7b7dd80ca8b9368" + }, + "m_SlotId": 3 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "ec1f2e8bc9fd4ae38b133c60ee6c49b8" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "f814deb543c24fbbafbcdb5071d96022" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "f23a8b2b7c85478388ff7a8c8a6de740" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "aa3e347d733e48f7b65d8a8847370eec" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "f383b24f0bc6434dafe44b3e3d338a63" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "85a1ad8e741e41759002e8cdc8cd0b96" + }, + "m_SlotId": 3 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "f3d31c1f18d8491a8ecf5cbc37e4b7db" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "e818605f8f5a4f01bf61caaa33693581" + }, + "m_SlotId": 3 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "f814deb543c24fbbafbcdb5071d96022" + }, + "m_SlotId": 7 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "4abff6ff92fa4a05b203f10580988335" + }, + "m_SlotId": 3 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "faace8101df943d8956faa31728cb004" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "109f638d1f9b49d4991d6d21a86d4eb7" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "faace8101df943d8956faa31728cb004" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "56c25395796e4d2fbe5c892d428d1620" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "faace8101df943d8956faa31728cb004" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "6b2f65c1463f4f7bad16c54a95d2fe75" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "faace8101df943d8956faa31728cb004" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "b4a40cb6acd441acb83cfe0240bf910d" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "fdb77c3e92ee497b88ca5dc46dc45350" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "59bd90a849624124bae6464ee3669aa6" + }, + "m_SlotId": 1 + } + } + ], + "m_VertexContext": { + "m_Position": { + "x": -2506.000244140625, + "y": -3749.0 + }, + "m_Blocks": [ + { + "m_Id": "48390d02257d41bf98eace1deaa4c539" + }, + { + "m_Id": "f4ecc442a2d246759f7c2c0412953d28" + }, + { + "m_Id": "7f2e6b5f15364ed9835d67d0cf4f8f65" + } + ] + }, + "m_FragmentContext": { + "m_Position": { + "x": -2506.000244140625, + "y": -3480.0 + }, + "m_Blocks": [ + { + "m_Id": "aca823a8188948c782eddaf0f45e1868" + }, + { + "m_Id": "6e8946a245e842b38231d4a241bfb3ef" + }, + { + "m_Id": "cb7117ecb1d047a8b2cb00ed552cb181" + }, + { + "m_Id": "3c50439118b2496f9e390021b0964606" + }, + { + "m_Id": "e591df3a1eb94e259b762f2830b407e2" + } + ] + }, + "m_PreviewData": { + "serializedMesh": { + "m_SerializedMesh": "{\"mesh\":{\"fileID\":10210,\"guid\":\"0000000000000000e000000000000000\",\"type\":0}}", + "m_Guid": "" + }, + "preventRotation": false + }, + "m_Path": "TextMeshPro/SRP", + "m_GraphPrecision": 0, + "m_PreviewMode": 2, + "m_OutputNode": { + "m_Id": "" + }, + "m_ActiveTargets": [ + { + "m_Id": "7cf0e63037a74dc2a9f591225c678ff4" + } + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "007c75c776ac4f1babe9cd7ae1fc4f14", + "m_Group": { + "m_Id": "daaf032a109749a88c9b8ff8e1f8b541" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5722.99951171875, + "y": -3827.0, + "width": 134.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "1356dc7cbdfa4199a6535d3bbf4cd536" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "3e372195f4bd4845852a37839e5b602d" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.Rendering.HighDefinition.ShaderGraph.BuiltinData", + "m_ObjectId": "00996039d61e400a9e854ce591ac35a0", + "m_Distortion": false, + "m_DistortionMode": 0, + "m_DistortionDepthTest": true, + "m_AddPrecomputedVelocity": false, + "m_TransparentWritesMotionVec": false, + "m_DepthOffset": false, + "m_ConservativeDepthOffset": false, + "m_TransparencyFog": true, + "m_AlphaTestShadow": false, + "m_BackThenFrontRendering": false, + "m_TransparentDepthPrepass": false, + "m_TransparentDepthPostpass": false, + "m_TransparentPerPixelSorting": false, + "m_SupportLodCrossFade": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.GroupData", + "m_ObjectId": "013228b0fdf1424097798f0973a9a4fb", + "m_Title": "Face Texture", + "m_Position": { + "x": -4824.0, + "y": -2949.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "02559cbe5ad441a3904ccb75ded2b2c5", + "m_Id": 5, + "m_DisplayName": "Color2", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Color2", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "03182b3263304258b265266325c21f65", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "045c4f6b050549c7a0efb208e6349779", + "m_Id": 7, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "04dc152dd2ba4d519391577eb1156235", + "m_Group": { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4534.0, + "y": -2747.0, + "width": 150.99998474121095, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "3d04f5ba6e7b40d281f22eb424145acd" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "c9ec735d1a1046769e5601b2c97c849a" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "04dfcc9ff13a4bf282ed46faec39d15c", + "m_Id": 4, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "05805bc6fcc941fd889922555c6c86d7", + "m_Guid": { + "m_GuidSerialized": "fe84e680-4cee-4ca5-be86-2e293a9ba093" + }, + "m_Name": "Ambient Shadow", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_05805bc6fcc941fd889922555c6c86d7", + "m_OverrideReferenceName": "_Ambient", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.30000001192092898, + "m_FloatType": 1, + "m_RangeValues": { + "x": 0.0, + "y": 1.0 + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector4ShaderProperty", + "m_ObjectId": "0580d4b7e3a049049569f4508643a724", + "m_Guid": { + "m_GuidSerialized": "eefb88c5-7665-45dc-b3c2-7cf98b9990d6" + }, + "m_Name": "Softness", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector4_D64EC33D", + "m_OverrideReferenceName": "_Softness", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "068ae649e00b40e198ec5a30ad741fab", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "0699eea947fc426cbfeb8744cf120222", + "m_Id": 1, + "m_DisplayName": "Color", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Color", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector4ShaderProperty", + "m_ObjectId": "07946387933e416db576b677f0711e5f", + "m_Guid": { + "m_GuidSerialized": "21d612fb-8153-41f8-9e2f-9de044c19fbf" + }, + "m_Name": "_FaceTex_ST", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector4_1A08AD4A", + "m_OverrideReferenceName": "_FaceTex_ST", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "082e9706dffc4c188270980d4e44ce0f", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "0848ba750e0341198cf0bbd413e0efe4", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "09b1b86c1c074337a4c439d3a308dd2e", + "m_Id": 7, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "0a67ca5280214bd794dc0ad66b5710a9", + "m_Id": 4, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "0b57f2d35157477ab2b29a5aac14ae8b", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "0ba4932e164847878ddb7b7bcff96985", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "0c4dc51f26484c26ad88a3fe4002abcd", + "m_Id": 2, + "m_DisplayName": "Color (1)", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Color", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "0d6a57754b824f6db9cefa6953bc06a9", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "e00": 2.0, + "e01": 2.0, + "e02": 2.0, + "e03": 2.0, + "e10": 2.0, + "e11": 2.0, + "e12": 2.0, + "e13": 2.0, + "e20": 2.0, + "e21": 2.0, + "e22": 2.0, + "e23": 2.0, + "e30": 2.0, + "e31": 2.0, + "e32": 2.0, + "e33": 2.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "0d7878dd226d4cfb81a991dc312309fc", + "m_Id": 0, + "m_DisplayName": "Underlay Dilate", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "0f7ffb6d2de4447f9736780cbcee8e07", + "m_Id": 4, + "m_DisplayName": "AnimSpeed", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "AnimSpeed", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "0fac35636fca4474a6afaefc3c757775", + "m_Id": 1, + "m_DisplayName": "Alpha", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Alpha", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "105b1ed1aa714e41bbe1ef5472bdb11f", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4923.99951171875, + "y": -4233.0, + "width": 158.99998474121095, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "8a08179f99d649d289b8053d5fa0ad22" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "49e7c3ad55ce458797f0e60c950cb965" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.MultiplyNode", + "m_ObjectId": "109f638d1f9b49d4991d6d21a86d4eb7", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Multiply", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5098.99951171875, + "y": -3182.0, + "width": 130.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "880bb02c6c6b49b18aa6ebc66dc566a0" + }, + { + "m_Id": "1b9cd8f5f4004e2eaf8afbaab803bc04" + }, + { + "m_Id": "b224a1cf80604103ad085c799995f3c2" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "10a99c07aad742349d258db16838c129", + "m_Id": 1, + "m_DisplayName": "Alpha", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Alpha", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "1196ae398cc348349ab0c1a23fdab4bd", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DMaterialSlot", + "m_ObjectId": "1356dc7cbdfa4199a6535d3bbf4cd536", + "m_Id": 0, + "m_DisplayName": "_MainTex", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "14ad19bf20a140dd88d58452d7df688b", + "m_Id": 5, + "m_DisplayName": "Softness", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Softness", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 1.0, + "z": 1.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "150533bad8e2424aaa2c74e253af8592", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4955.0, + "y": -3487.0, + "width": 134.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "72fb5a0d7796446b9e2b929cb32facdc" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "3e372195f4bd4845852a37839e5b602d" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SplitNode", + "m_ObjectId": "163beb4431c34f538340bc0af0991e6f", + "m_Group": { + "m_Id": "ecf16c34d46f4502ac601f0c38c7576b" + }, + "m_Name": "Split", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -3284.0, + "y": -3516.0, + "width": 119.99999237060547, + "height": 149.0 + } + }, + "m_Slots": [ + { + "m_Id": "4c334de01ecd429baa7652fc6002536b" + }, + { + "m_Id": "e2d28f29bbac4983a401574480b5ca28" + }, + { + "m_Id": "6a7af6143e114a538663e71f56731a21" + }, + { + "m_Id": "3e25be96bb3747738c238cf3a741d5df" + }, + { + "m_Id": "4907352322c644ebacdf2ca30f2994fd" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "19075add867e4757b9520d18fe8de1d0", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4291.99951171875, + "y": -3197.0, + "width": 124.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "4c28ee9109014fa086e5de7a3993341d" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "0580d4b7e3a049049569f4508643a724" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "1b9cd8f5f4004e2eaf8afbaab803bc04", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "e00": 2.0, + "e01": 2.0, + "e02": 2.0, + "e03": 2.0, + "e10": 2.0, + "e11": 2.0, + "e12": 2.0, + "e13": 2.0, + "e20": 2.0, + "e21": 2.0, + "e22": 2.0, + "e23": 2.0, + "e30": 2.0, + "e31": 2.0, + "e32": 2.0, + "e33": 2.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "1bdde3efd3b7464b8934c555be0f8a48", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "1be90d4f96a841748b0c95219b12ad27", + "m_Guid": { + "m_GuidSerialized": "4c91c146-43bb-4de8-948a-fbf8b1da10e1" + }, + "m_Name": "Bevel Offset", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_97690701", + "m_OverrideReferenceName": "_BevelOffset", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 1, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.0, + "m_FloatType": 1, + "m_RangeValues": { + "x": -0.5, + "y": 0.5 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "1c4df61c2fea404eb3b87b270d7c59bc", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4311.0, + "y": -3221.0, + "width": 148.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "f864c900600e427ba7793f00c715e971" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "867a4ae13c0d4a028c71bc1063824c14" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "1d35fa1fb5004f96a65ace54fbe4f1ad", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "1db37082bf844442804487b4944352de", + "m_Id": 4, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DMaterialSlot", + "m_ObjectId": "1df58cfa4dad4c449d01ee1c5ea05f2e", + "m_Id": 0, + "m_DisplayName": "_MainTex", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVNode", + "m_ObjectId": "1e12726617b24675958e942eb62e4b09", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "UV", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4772.0, + "y": -4404.0, + "width": 145.00001525878907, + "height": 130.0 + } + }, + "m_Slots": [ + { + "m_Id": "0848ba750e0341198cf0bbd413e0efe4" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_OutputChannel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "1f247658c7ba45fb93c41f51e21acb0d", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "1f46181633594ae0a1fb2adb76b42981", + "m_Id": 5, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "200245fc8bbe4826b209ab5f7ffe074c", + "m_Id": 3, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "204dacb5a95b424facf11cb6f65bd188", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BooleanMaterialSlot", + "m_ObjectId": "215a82c127204988b751de7d3a39b955", + "m_Id": 6, + "m_DisplayName": "Outline", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Outline", + "m_StageCapability": 3, + "m_Value": false, + "m_DefaultValue": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SamplerStateMaterialSlot", + "m_ObjectId": "215b30ae27784ec3a13360a9029af283", + "m_Id": 3, + "m_DisplayName": "Sampler", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Sampler", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Internal.BooleanShaderProperty", + "m_ObjectId": "21a7a380e66d42e780e2a2a1baa630d5", + "m_Guid": { + "m_GuidSerialized": "b2d0099f-e605-49f5-9959-e7cacae37aa3" + }, + "m_Name": "Bevel Type", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Boolean_21a7a380e66d42e780e2a2a1baa630d5", + "m_OverrideReferenceName": "_BevelType", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": false +} + +{ + "m_SGVersion": 3, + "m_Type": "UnityEditor.ShaderGraph.Internal.ColorShaderProperty", + "m_ObjectId": "22b7f3c2bb7b48c0a7fdeb50e33e7d5e", + "m_Guid": { + "m_GuidSerialized": "cd167d3a-7465-4d5a-86fc-0f22dc0ef908" + }, + "m_Name": "Outline Color 1", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Color_5550EB71", + "m_OverrideReferenceName": "_OutlineColor1", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "r": 0.0, + "g": 1.0, + "b": 1.0, + "a": 1.0 + }, + "isMainColor": false, + "m_ColorMode": 1 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "232b1aa09e67479abae141d3c76d3c5b", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "256d41e89a204d22951450de1c38051d", + "m_Id": 0, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector3MaterialSlot", + "m_ObjectId": "26e48352a08441bfa694dcea54c06e36", + "m_Id": 5, + "m_DisplayName": "RGB", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGB", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [ + "X", + "Y", + "Z" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "281bcee4777040f8a31ee0e10344e98d", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "285f6a9863d54ed2a8150727ad749456", + "m_Group": { + "m_Id": "98934a69591249d5b8b92b39045359a3" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4181.99951171875, + "y": -2415.0, + "width": 154.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "b42e6dbfbc864097af182cbff5c0c1fb" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "22b7f3c2bb7b48c0a7fdeb50e33e7d5e" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.Rendering.HighDefinition.ShaderGraph.HDUnlitSubTarget", + "m_ObjectId": "29b1a6d4abc94131be838c0bc77892fc" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.IsFrontFaceNode", + "m_ObjectId": "2a552a0b828f457c911aa19561e410ae", + "m_Group": { + "m_Id": "d258902c6ec74942afdb9ebf8c1d07f8" + }, + "m_Name": "Is Front Face", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4282.0, + "y": -3681.3330078125, + "width": 121.99999237060547, + "height": 77.33348846435547 + } + }, + "m_Slots": [ + { + "m_Id": "2ef1d888dc9d49e59d6a6950897ddc93" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.CustomFunctionNode", + "m_ObjectId": "2ac79705aa9e415dbb74ec215233fd1b", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Composite (Custom Function)", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -3350.0, + "y": -3810.0, + "width": 213.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "a75f7ac601c446469802fe7754c1f279" + }, + { + "m_Id": "8c38a5d8327f456e9783740c05382619" + }, + { + "m_Id": "facc84930f544fd7a0205a6176b18ac0" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SourceType": 0, + "m_FunctionName": "Composite", + "m_FunctionSource": "96de908384869cd409c75efa351d5edf", + "m_FunctionBody": "Enter function body here..." +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "2b01ea3023e34c94af1754e4dcea8f2e", + "m_Id": 0, + "m_DisplayName": "Face Color", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BooleanMaterialSlot", + "m_ObjectId": "2bf5f2fdd2984599b7323d10cfb1d240", + "m_Id": 1, + "m_DisplayName": "Filter", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Filter", + "m_StageCapability": 3, + "m_Value": false, + "m_DefaultValue": false +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "2c10b97b92c947ceb307a93759c0228b", + "m_Guid": { + "m_GuidSerialized": "6be0b8ff-a766-4c6b-a6e4-3a72758ac95f" + }, + "m_Name": "Bevel Amount", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_B01DD93E", + "m_OverrideReferenceName": "_BevelAmount", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 1, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.25, + "m_FloatType": 1, + "m_RangeValues": { + "x": 0.0, + "y": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "2c7a9460724b47daad8df1be144de7c6", + "m_Id": 3, + "m_DisplayName": "Transform", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Transform", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector2ShaderProperty", + "m_ObjectId": "2d0a269511e34bd1ba9056d2c939dff2", + "m_Guid": { + "m_GuidSerialized": "edbe73dc-53ab-4bc1-9d64-ab36e0e05f03" + }, + "m_Name": "_FaceUVSpeed", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector2_3A8E0F13", + "m_OverrideReferenceName": "_FaceUVSpeed", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "2db15d90c2204143b225ec4ef08d0755", + "m_Group": { + "m_Id": "98934a69591249d5b8b92b39045359a3" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4387.0, + "y": -2405.0, + "width": 163.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "def8e0b9d8384982bc5b4c32d877e458" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "46fbf3eeb0ea4470869cba7443249295" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "2e4eb1ef08bb44178c82e53872485e0f", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BooleanMaterialSlot", + "m_ObjectId": "2ef1d888dc9d49e59d6a6950897ddc93", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 2, + "m_Value": true, + "m_DefaultValue": true +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.Rendering.HighDefinition.ShaderGraph.SystemData", + "m_ObjectId": "305e3be306674fcd8bb02273d27ee5b7", + "m_MaterialNeedsUpdateHash": 1, + "m_SurfaceType": 1, + "m_RenderingPass": 4, + "m_BlendMode": 0, + "m_ZTest": 4, + "m_ZWrite": false, + "m_TransparentCullMode": 2, + "m_OpaqueCullMode": 2, + "m_SortPriority": 0, + "m_AlphaTest": true, + "m_TransparentDepthPrepass": false, + "m_TransparentDepthPostpass": false, + "m_SupportLodCrossFade": false, + "m_DoubleSidedMode": 0, + "m_DOTSInstancing": false, + "m_CustomVelocity": false, + "m_Tessellation": false, + "m_TessellationMode": 0, + "m_TessellationFactorMinDistance": 20.0, + "m_TessellationFactorMaxDistance": 50.0, + "m_TessellationFactorTriangleSize": 100.0, + "m_TessellationShapeFactor": 0.75, + "m_TessellationBackFaceCullEpsilon": -0.25, + "m_TessellationMaxDisplacement": 0.009999999776482582, + "m_DebugSymbols": false, + "m_Version": 2, + "inspectorFoldoutMask": 9 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "30ca940fe2794c949f2a1d4d2caaa446", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SampleTexture2DNode", + "m_ObjectId": "319916a5921343f7b7eef0e50dc93def", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Sample Texture 2D", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4791.0, + "y": -3245.0, + "width": 183.99998474121095, + "height": 253.0 + } + }, + "m_Slots": [ + { + "m_Id": "d219977210094c0082c517d8dc00c8bb" + }, + { + "m_Id": "f48f04ad45d046a8b88e71731ed506e7" + }, + { + "m_Id": "e6e80c6b0db545cda26b079a9a78fbb3" + }, + { + "m_Id": "c6bdb985bc16435fa72f5a3c81bb633c" + }, + { + "m_Id": "d1a17e42e7a04dc38984e3c01149445b" + }, + { + "m_Id": "fb15d0ba56d54a6192f11e107aeb5fa8" + }, + { + "m_Id": "c35312edaa2344788b1964ee2f63a236" + }, + { + "m_Id": "c88fcbaeea954a5f9c68c339fa8b604d" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_TextureType": 0, + "m_NormalMapSpace": 0, + "m_EnableGlobalMipBias": true, + "m_MipSamplingMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "34a67e0fef884f9399e674d9eeaf720c", + "m_Id": 6, + "m_DisplayName": "Color3", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Color3", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "34a72a5ebb04402384a4fd3748111a37", + "m_Id": 0, + "m_DisplayName": "Alpha Clip Threshold", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "AlphaClipThreshold", + "m_StageCapability": 2, + "m_Value": 0.0010000000474974514, + "m_DefaultValue": 0.5, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DMaterialSlot", + "m_ObjectId": "3535ae87c6dd4769b52b20d9eca61069", + "m_Id": 0, + "m_DisplayName": "_MainTex", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SamplerStateMaterialSlot", + "m_ObjectId": "35cbea6373dd4e4f8d0fea36e8add392", + "m_Id": 3, + "m_DisplayName": "Sampler", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Sampler", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "36a0c473c4c04c3a930dd38f3920d410", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "e00": 2.0, + "e01": 2.0, + "e02": 2.0, + "e03": 2.0, + "e10": 2.0, + "e11": 2.0, + "e12": 2.0, + "e13": 2.0, + "e20": 2.0, + "e21": 2.0, + "e22": 2.0, + "e23": 2.0, + "e30": 2.0, + "e31": 2.0, + "e32": 2.0, + "e33": 2.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVNode", + "m_ObjectId": "36f1b4d96f2941c39e5cd95d9c1d2ce6", + "m_Group": { + "m_Id": "d0a791a544614667962a9a9a9ce0c68a" + }, + "m_Name": "UV", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -6008.99951171875, + "y": -3341.0, + "width": 144.99998474121095, + "height": 130.0 + } + }, + "m_Slots": [ + { + "m_Id": "65b3dc13b2b6484283ffe5abfe87a06a" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_OutputChannel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "373f1de8db6c429c9d46c781f741d7a4", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "e00": 2.0, + "e01": 2.0, + "e02": 2.0, + "e03": 2.0, + "e10": 2.0, + "e11": 2.0, + "e12": 2.0, + "e13": 2.0, + "e20": 2.0, + "e21": 2.0, + "e22": 2.0, + "e23": 2.0, + "e30": 2.0, + "e31": 2.0, + "e32": 2.0, + "e33": 2.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "3802c81c3be24823aa1d7c9997a33c29", + "m_Id": 2, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "3915c1927ffe49f8967304321cfbe497", + "m_Id": 4, + "m_DisplayName": "Atlas", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Atlas", + "m_StageCapability": 3, + "m_BareResource": true, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "39a382d661e2484da71f04c43f48e55f", + "m_Id": 3, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.VertexColorNode", + "m_ObjectId": "39f2f84f30304d859fb07569e2695f60", + "m_Group": { + "m_Id": "ecf16c34d46f4502ac601f0c38c7576b" + }, + "m_Name": "Vertex Color", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -3423.000244140625, + "y": -3516.0, + "width": 116.0, + "height": 94.0 + } + }, + "m_Slots": [ + { + "m_Id": "4b2d9ea03bf64fa19dcae1511d2581da" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 2, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "3c50439118b2496f9e390021b0964606", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.AlphaClipThreshold", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -3028.0, + "y": -3054.0, + "width": 200.0, + "height": 40.66650390625 + } + }, + "m_Slots": [ + { + "m_Id": "34a72a5ebb04402384a4fd3748111a37" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.AlphaClipThreshold" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DMaterialSlot", + "m_ObjectId": "3d04f5ba6e7b40d281f22eb424145acd", + "m_Id": 0, + "m_DisplayName": "Face Texture", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "3db1608e927e4102a3c3a88e9fcab39a", + "m_Id": 3, + "m_DisplayName": "Transform", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Transform", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "3dccd64e7f324bc1a75c1479d7a67c51", + "m_Id": 0, + "m_DisplayName": "In", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "In", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.CombineNode", + "m_ObjectId": "3e231021af7b47ba97f2871e7f25d0fe", + "m_Group": { + "m_Id": "ecf16c34d46f4502ac601f0c38c7576b" + }, + "m_Name": "Combine", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -2803.000244140625, + "y": -3520.0, + "width": 140.0, + "height": 166.0 + } + }, + "m_Slots": [ + { + "m_Id": "6ccaced3889e4503a9414d808ec33981" + }, + { + "m_Id": "7f3d71a6c96847c099da45f95aafbecb" + }, + { + "m_Id": "d8edec16956c4f15b7d51d6ec10753f4" + }, + { + "m_Id": "39a382d661e2484da71f04c43f48e55f" + }, + { + "m_Id": "8764669016f6442f8152593c18a649d7" + }, + { + "m_Id": "26e48352a08441bfa694dcea54c06e36" + }, + { + "m_Id": "3e94a0d106064bdb864c960512ef4026" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "3e25be96bb3747738c238cf3a741d5df", + "m_Id": 3, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Internal.Texture2DShaderProperty", + "m_ObjectId": "3e372195f4bd4845852a37839e5b602d", + "m_Guid": { + "m_GuidSerialized": "60abd046-2a1a-48cd-a0af-2f702f7f53ab" + }, + "m_Name": "_MainTex", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Texture2D_90CBF488", + "m_OverrideReferenceName": "_MainTex", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 1, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "m_SerializedTexture": "{\"texture\":{\"fileID\":28684132378477856,\"guid\":\"8f586378b4e144a9851e7b34d9b748ee\",\"type\":2}}", + "m_Guid": "" + }, + "isMainTexture": false, + "useTilingAndOffset": false, + "m_Modifiable": true, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "3e94a0d106064bdb864c960512ef4026", + "m_Id": 6, + "m_DisplayName": "RG", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RG", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "3ec4797e381747829ef4712c85fcf7a1", + "m_Guid": { + "m_GuidSerialized": "020d65cc-50a8-4b8a-a624-90d7b489f549" + }, + "m_Name": "Specular Power", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_3ec4797e381747829ef4712c85fcf7a1", + "m_OverrideReferenceName": "_SpecularPower", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 1.0, + "m_FloatType": 1, + "m_RangeValues": { + "x": 0.0, + "y": 4.0 + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector2ShaderProperty", + "m_ObjectId": "3fdf4b7bc5d4426492dcc057603ef4a6", + "m_Guid": { + "m_GuidSerialized": "675d2567-3fca-4da6-9462-dfa4924950f1" + }, + "m_Name": "_OutlineUVSpeed", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector2_D66D89E6", + "m_OverrideReferenceName": "_OutlineUVSpeed", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "400d0b6c95dd4540ad3da3e8cb7e50b2", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "41986ac6400d46709d0ef043a67f6b34", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "41b9b79b3859472882bcea393703eec0", + "m_Id": 0, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "424dbeeb009344efa29c304c4979e3d6", + "m_Guid": { + "m_GuidSerialized": "314c37de-c6f2-4463-866d-8588f6fc119e" + }, + "m_Name": "Diffuse Shadow", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_424dbeeb009344efa29c304c4979e3d6", + "m_OverrideReferenceName": "_Diffuse", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.30000001192092898, + "m_FloatType": 1, + "m_RangeValues": { + "x": 0.0, + "y": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "42a586e4f6ec40eeaba891b7fd133864", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4934.0, + "y": -4442.99951171875, + "width": 133.99998474121095, + "height": 33.999996185302737 + } + }, + "m_Slots": [ + { + "m_Id": "da7a06d393a44089842070d51d2aa0a6" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "3e372195f4bd4845852a37839e5b602d" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.GroupData", + "m_ObjectId": "42cadae0923e4969b50bbc3f78185934", + "m_Title": "Face + 3 Outlines + Underlay", + "m_Position": { + "x": -5468.0, + "y": -3558.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "4328cdbf78b94c038fd614c59bfe1cac", + "m_Id": 0, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.CustomFunctionNode", + "m_ObjectId": "44317f2e371447e2a8d894f8a021a235", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "Layer1 (Custom Function)", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4001.0, + "y": -4168.0, + "width": 191.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "10a99c07aad742349d258db16838c129" + }, + { + "m_Id": "b85d677872b44421bf5536f42ba0267c" + }, + { + "m_Id": "75aba700d74d4b2687bf3166cf1da3e2" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SourceType": 0, + "m_FunctionName": "Layer1", + "m_FunctionSource": "96de908384869cd409c75efa351d5edf", + "m_FunctionBody": "Enter function body here..." +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "44806230fa384c1e95f9c5918a14f056", + "m_Id": 7, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "4488af8ff6a7421298a7e827f567263b", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4226.0, + "y": -4109.0, + "width": 158.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "66f69ef16eac4eb48357bde804cf3c39" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "8cf8aae64c1d443f9303126886b40f17" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.ColorRGBMaterialSlot", + "m_ObjectId": "4590bfa2a0664b65b6f073bae33a071f", + "m_Id": 0, + "m_DisplayName": "Emission", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Emission", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [], + "m_ColorMode": 1, + "m_DefaultColor": { + "r": 0.0, + "g": 0.0, + "b": 0.0, + "a": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVNode", + "m_ObjectId": "4648b46ad29a4008a80de4f8a5a5b813", + "m_Group": { + "m_Id": "98934a69591249d5b8b92b39045359a3" + }, + "m_Name": "UV", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4613.0, + "y": -2415.0, + "width": 145.0, + "height": 130.0 + } + }, + "m_Slots": [ + { + "m_Id": "b2baf44eae52473cb6cda7b1debece01" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_OutputChannel": 1 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.CategoryData", + "m_ObjectId": "469965f1c9284b7eb032d415d6295b2c", + "m_Name": "", + "m_ChildObjectList": [ + { + "m_Id": "dc75c4e3a1bc4bb0a128086c2b0679a5" + }, + { + "m_Id": "867a4ae13c0d4a028c71bc1063824c14" + }, + { + "m_Id": "22b7f3c2bb7b48c0a7fdeb50e33e7d5e" + }, + { + "m_Id": "53073e5ea924459fa6681a4943e9f947" + }, + { + "m_Id": "7a046f410ce64aa88438b0bfd412c045" + }, + { + "m_Id": "636180f6e0504f2baaa5cc086980cb47" + }, + { + "m_Id": "74b41464cbed4e9e8e23af5ab9be40cf" + }, + { + "m_Id": "8ed907a2cc7949b68a283ae243ea1977" + }, + { + "m_Id": "cb3c0c3f08654b068bea44c4ffb15f4a" + }, + { + "m_Id": "0580d4b7e3a049049569f4508643a724" + }, + { + "m_Id": "c9ec735d1a1046769e5601b2c97c849a" + }, + { + "m_Id": "2d0a269511e34bd1ba9056d2c939dff2" + }, + { + "m_Id": "07946387933e416db576b677f0711e5f" + }, + { + "m_Id": "46fbf3eeb0ea4470869cba7443249295" + }, + { + "m_Id": "ec79eb447dfd47a9b3380344c6a60f43" + }, + { + "m_Id": "3fdf4b7bc5d4426492dcc057603ef4a6" + }, + { + "m_Id": "8cf8aae64c1d443f9303126886b40f17" + }, + { + "m_Id": "49e7c3ad55ce458797f0e60c950cb965" + }, + { + "m_Id": "81e8ed0534534674a74263e6161a2a1a" + }, + { + "m_Id": "952d0fa5cd744df0b434cd38e9a90b93" + }, + { + "m_Id": "21a7a380e66d42e780e2a2a1baa630d5" + }, + { + "m_Id": "2c10b97b92c947ceb307a93759c0228b" + }, + { + "m_Id": "1be90d4f96a841748b0c95219b12ad27" + }, + { + "m_Id": "5fbe253f3e444f2aa8ac717f9c856619" + }, + { + "m_Id": "5bd258837c514ff7ab0bf7027e762c18" + }, + { + "m_Id": "998db5e5901e45b29040eb2099370071" + }, + { + "m_Id": "a6c38edd2e8743a9b057ba8452b9f129" + }, + { + "m_Id": "82af2db1018543d7832af96c1cfc981f" + }, + { + "m_Id": "3ec4797e381747829ef4712c85fcf7a1" + }, + { + "m_Id": "b0b352c4503a43d083a64e57352b29a0" + }, + { + "m_Id": "424dbeeb009344efa29c304c4979e3d6" + }, + { + "m_Id": "05805bc6fcc941fd889922555c6c86d7" + }, + { + "m_Id": "a4ad98d8828c424384229c344ebe2ed0" + }, + { + "m_Id": "3e372195f4bd4845852a37839e5b602d" + }, + { + "m_Id": "a6bbb32e8d884be9bb36db91fe4b81b1" + }, + { + "m_Id": "ced40c943add479a86f25f7fb5ed59da" + } + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Internal.Texture2DShaderProperty", + "m_ObjectId": "46fbf3eeb0ea4470869cba7443249295", + "m_Guid": { + "m_GuidSerialized": "be87c5a3-e361-4b95-89c8-911c39a51c0d" + }, + "m_Name": "Outline Texture", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Texture2D_A0B54237", + "m_OverrideReferenceName": "_OutlineTex", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "m_SerializedTexture": "{\"texture\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "isMainTexture": false, + "useTilingAndOffset": false, + "m_Modifiable": true, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "47d020251e9841a5b1f0fd64396026a1", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "48390d02257d41bf98eace1deaa4c539", + "m_Group": { + "m_Id": "" + }, + "m_Name": "VertexDescription.Position", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "8036d0e6090b456e9b4ea87227868236" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Position" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.GroupData", + "m_ObjectId": "484b51c50485473b819c4f05087b32d7", + "m_Title": "Underlay", + "m_Position": { + "x": -5253.0, + "y": -4542.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "4907352322c644ebacdf2ca30f2994fd", + "m_Id": 4, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector2ShaderProperty", + "m_ObjectId": "49e7c3ad55ce458797f0e60c950cb965", + "m_Guid": { + "m_GuidSerialized": "31b55db9-0da1-4ec4-af2b-d83747ed5bc4" + }, + "m_Name": "Underlay Offset", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector2_CE9DEDB3", + "m_OverrideReferenceName": "_UnderlayOffset", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "4a66dcbe712a4d40bd8f355b834594b5", + "m_Id": 6, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.CombineNode", + "m_ObjectId": "4abff6ff92fa4a05b203f10580988335", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Combine", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4323.99951171875, + "y": -3498.0, + "width": 140.0, + "height": 166.0 + } + }, + "m_Slots": [ + { + "m_Id": "b015d1b7e4134c59baf6851e7649802c" + }, + { + "m_Id": "d9dc4839ee2847999110bdb234d6041a" + }, + { + "m_Id": "91d6a9a5fbc04ea49075cb51835e7264" + }, + { + "m_Id": "f42ad06b3c6a45d3ab33de904c063412" + }, + { + "m_Id": "ed6c215a65584deeaefad1d2c7743044" + }, + { + "m_Id": "edbee7a8952b46529ac5ad0365775774" + }, + { + "m_Id": "70337a74f6ad4b7bb6befc825219bab1" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "4b2d9ea03bf64fa19dcae1511d2581da", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "4bda5c294e1949138d033640e1d385b4", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "4c28ee9109014fa086e5de7a3993341d", + "m_Id": 0, + "m_DisplayName": "Softness", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "4c334de01ecd429baa7652fc6002536b", + "m_Id": 0, + "m_DisplayName": "In", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "In", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "4d1cb1a475df49f9a148195a65f5453a", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "4d9ce48719d143748f9f8e22da6f9ddc", + "m_Id": 5, + "m_DisplayName": "TextureWidth", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "TextureWidth", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "4e64dac49ddc47c3b5b1e27b17a08304", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "4eb3c00a1ca44e10be833b7ca61ff059", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"fileID\":-2362172177983852347,\"guid\":\"dda5bcb0d1e9515498f6e4e038bbefe6\",\"type\":2}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "4f194ff591484e908fc2bcdacbcf2570", + "m_Group": { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4310.0, + "y": -2771.0, + "width": 134.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "2b01ea3023e34c94af1754e4dcea8f2e" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "dc75c4e3a1bc4bb0a128086c2b0679a5" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "509e6f38505b4b0695b263706a55028f", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"fileID\":-2362172177983852347,\"guid\":\"dda5bcb0d1e9515498f6e4e038bbefe6\",\"type\":2}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.CustomFunctionNode", + "m_ObjectId": "51378bae98a94c309785d14cd5cbb453", + "m_Group": { + "m_Id": "d258902c6ec74942afdb9ebf8c1d07f8" + }, + "m_Name": "GetSurfaceNormal (Custom Function)", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4067.333251953125, + "y": -3881.99951171875, + "width": 263.9999694824219, + "height": 189.99998474121095 + } + }, + "m_Slots": [ + { + "m_Id": "5b0077c23eae443887872f84227deccc" + }, + { + "m_Id": "3915c1927ffe49f8967304321cfbe497" + }, + { + "m_Id": "4d9ce48719d143748f9f8e22da6f9ddc" + }, + { + "m_Id": "ebd6d75abcb84108bcadbfe7ee5f6244" + }, + { + "m_Id": "ef9738ec7e894772a14e9dce441c16c6" + }, + { + "m_Id": "9eeec1a9713045af8845cea263d5ea48" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SourceType": 0, + "m_FunctionName": "GetSurfaceNormal", + "m_FunctionSource": "96de908384869cd409c75efa351d5edf", + "m_FunctionBody": "Enter function body here..." +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SamplerStateMaterialSlot", + "m_ObjectId": "51f76f8a53ad43a4ad028426548ce9ba", + "m_Id": 3, + "m_DisplayName": "Sampler", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Sampler", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "52798bdb86f6400e86489a7a368e9f8b", + "m_Group": { + "m_Id": "d0a791a544614667962a9a9a9ce0c68a" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -6154.99951171875, + "y": -3169.0, + "width": 134.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "1df58cfa4dad4c449d01ee1c5ea05f2e" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "3e372195f4bd4845852a37839e5b602d" + } +} + +{ + "m_SGVersion": 3, + "m_Type": "UnityEditor.ShaderGraph.Internal.ColorShaderProperty", + "m_ObjectId": "53073e5ea924459fa6681a4943e9f947", + "m_Guid": { + "m_GuidSerialized": "5fdac24e-2d58-4471-80ce-79c3ab9a2564" + }, + "m_Name": "Outline Color 2", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Color_DBAB5AEC", + "m_OverrideReferenceName": "_OutlineColor2", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "r": 0.009433984756469727, + "g": 0.02534518577158451, + "b": 1.0, + "a": 1.0 + }, + "isMainColor": false, + "m_ColorMode": 1 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "54d7a93ffec5490aa4591da23a21b693", + "m_Id": 1, + "m_DisplayName": "G", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "55ffa45ec3654d5e88089fb40d2b0465", + "m_Id": 4, + "m_DisplayName": "AnimSpeed", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "AnimSpeed", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.MultiplyNode", + "m_ObjectId": "56c25395796e4d2fbe5c892d428d1620", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Multiply", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5102.99951171875, + "y": -3427.0, + "width": 130.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "9eb8137a6c2e41bbafdc8b0732dd47a3" + }, + { + "m_Id": "36a0c473c4c04c3a930dd38f3920d410" + }, + { + "m_Id": "068ae649e00b40e198ec5a30ad741fab" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "57abc172afd449e2a4d567f93432507b", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "582d6e289dbe4fdca7cf0307273eaa2f", + "m_Id": 0, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.MultiplyNode", + "m_ObjectId": "59bd90a849624124bae6464ee3669aa6", + "m_Group": { + "m_Id": "98934a69591249d5b8b92b39045359a3" + }, + "m_Name": "Multiply", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4005.999755859375, + "y": -2395.0, + "width": 130.0, + "height": 117.99999237060547 + } + }, + "m_Slots": [ + { + "m_Id": "2e4eb1ef08bb44178c82e53872485e0f" + }, + { + "m_Id": "8695190a5e614f2d90081871a8a06fc2" + }, + { + "m_Id": "81bdb47901ef48e5a588c6724b1b0142" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector3MaterialSlot", + "m_ObjectId": "5b0077c23eae443887872f84227deccc", + "m_Id": 0, + "m_DisplayName": "Normal", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Normal", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [ + "X", + "Y", + "Z" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "5b3ff4ee364f4d7a923b530ad60d8762", + "m_Id": 0, + "m_DisplayName": "Width", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Width", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "5bd258837c514ff7ab0bf7027e762c18", + "m_Guid": { + "m_GuidSerialized": "2d8f3ee9-1307-4b58-a60d-526e86b07109" + }, + "m_Name": "Bevel Roundness", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_AB6A015F", + "m_OverrideReferenceName": "_BevelRoundness", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.0, + "m_FloatType": 1, + "m_RangeValues": { + "x": 0.0, + "y": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "5da82bf481f8489ebd05e997f617f51b", + "m_Id": 4, + "m_DisplayName": "Isoperimeter", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Isoperimeter", + "m_StageCapability": 3, + "m_Value": 4.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "5e42524569844befad16fda5a94eb9cb", + "m_Id": 0, + "m_DisplayName": "R", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "5fbe253f3e444f2aa8ac717f9c856619", + "m_Guid": { + "m_GuidSerialized": "0a61c93f-6430-4aa6-af07-79bc3b411ccd" + }, + "m_Name": "Bevel Width", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_B50BBFCC", + "m_OverrideReferenceName": "_BevelWidth", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.5, + "m_FloatType": 1, + "m_RangeValues": { + "x": 0.0, + "y": 0.5 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "61133d79a89048c195f54939b2a1d30a", + "m_Id": 2, + "m_DisplayName": "Alpha", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Alpha", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "61a6ac5f29344d109411f26850ab0a96", + "m_Id": 6, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "6271438664e74b3fbf723bd6a1f50f8b", + "m_Id": 6, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "62bc551cea604e88b7858cc37d96a98a", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector2ShaderProperty", + "m_ObjectId": "636180f6e0504f2baaa5cc086980cb47", + "m_Guid": { + "m_GuidSerialized": "c1223e37-093d-4d5a-b2b0-cd9cc3e4f88e" + }, + "m_Name": "Outline Offset 1", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector2_636180f6e0504f2baaa5cc086980cb47", + "m_OverrideReferenceName": "_OutlineOffset1", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "63c7cd57fc3c45a9a97b514fdae32693", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5266.99951171875, + "y": -3387.0, + "width": 156.99998474121095, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "c422a9a9ff824176aad2241f58c44d0b" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "636180f6e0504f2baaa5cc086980cb47" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "641eda269d7b4da9acb65f8d50035ea9", + "m_Id": 0, + "m_DisplayName": "SSR", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "SSR", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "65b3dc13b2b6484283ffe5abfe87a06a", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SampleTexture2DNode", + "m_ObjectId": "65c8e64a7535466e933eed08a2f77532", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Sample Texture 2D", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4791.0, + "y": -3499.0, + "width": 183.99998474121095, + "height": 253.0 + } + }, + "m_Slots": [ + { + "m_Id": "256d41e89a204d22951450de1c38051d" + }, + { + "m_Id": "0a67ca5280214bd794dc0ad66b5710a9" + }, + { + "m_Id": "ebbd94a7102a4457a48ac492de3bff14" + }, + { + "m_Id": "6271438664e74b3fbf723bd6a1f50f8b" + }, + { + "m_Id": "c9b722d107ce4cd6a748c883472b9b0f" + }, + { + "m_Id": "74cf69e61bef44589521f1bf2bf3c59a" + }, + { + "m_Id": "6e532f83d1c44e839bcfc5845d3b01d6" + }, + { + "m_Id": "cb5e9f9567e84f8fa5463efc0e256e19" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_TextureType": 0, + "m_NormalMapSpace": 0, + "m_EnableGlobalMipBias": true, + "m_MipSamplingMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "66f69ef16eac4eb48357bde804cf3c39", + "m_Id": 0, + "m_DisplayName": "_UnderlayColor", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "67a519f507384ff1861df5d8d5b486be", + "m_Group": { + "m_Id": "d258902c6ec74942afdb9ebf8c1d07f8" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4278.0, + "y": -3939.99951171875, + "width": 135.3330078125, + "height": 33.999996185302737 + } + }, + "m_Slots": [ + { + "m_Id": "c3e6d7c20c184bf39fd8822130e693e7" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "3e372195f4bd4845852a37839e5b602d" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "68ec7c31365549d6a8ce883edfc02de2", + "m_Id": 4, + "m_DisplayName": "Color1", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Color1", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "6a7af6143e114a538663e71f56731a21", + "m_Id": 2, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.MultiplyNode", + "m_ObjectId": "6b2f65c1463f4f7bad16c54a95d2fe75", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Multiply", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5101.0, + "y": -3301.0, + "width": 130.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "1d35fa1fb5004f96a65ace54fbe4f1ad" + }, + { + "m_Id": "fa6de3be9f5b4411b5081b49e645f424" + }, + { + "m_Id": "400d0b6c95dd4540ad3da3e8cb7e50b2" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "6ccaced3889e4503a9414d808ec33981", + "m_Id": 0, + "m_DisplayName": "R", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "6dfc1177dd0541a7a780fbf911ad1956", + "m_Id": 0, + "m_DisplayName": "_OutlineTex_ST", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "6e13f3cd573c467a94379f45d96cb690", + "m_Id": 2, + "m_DisplayName": "SSR", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "SSR", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "6e532f83d1c44e839bcfc5845d3b01d6", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "6e8946a245e842b38231d4a241bfb3ef", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.BaseColor", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -3026.0, + "y": -3110.0, + "width": 200.0, + "height": 40.66650390625 + } + }, + "m_Slots": [ + { + "m_Id": "ef0b93f78372439696f50711eaf57d90" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.BaseColor" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "6fbdcc5a972b4fa883dc5f21e525a376", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "70337a74f6ad4b7bb6befc825219bab1", + "m_Id": 6, + "m_DisplayName": "RG", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RG", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "712da461f71a454db59d349f752d41ee", + "m_Id": 2, + "m_DisplayName": "Height", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Height", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "71dd947935b64ce38f0d25406dde447b", + "m_Id": 5, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "724e17584e97443e9e285dfa7253c8e3", + "m_Id": 0, + "m_DisplayName": "Alpha", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Alpha", + "m_StageCapability": 2, + "m_Value": 0.15000000596046449, + "m_DefaultValue": 1.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DMaterialSlot", + "m_ObjectId": "72fb5a0d7796446b9e2b929cb32facdc", + "m_Id": 0, + "m_DisplayName": "_MainTex", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVNode", + "m_ObjectId": "7444469eb9884253819add9ef96baa25", + "m_Group": { + "m_Id": "d258902c6ec74942afdb9ebf8c1d07f8" + }, + "m_Name": "UV", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4298.0, + "y": -3809.99951171875, + "width": 144.66648864746095, + "height": 129.33323669433595 + } + }, + "m_Slots": [ + { + "m_Id": "03182b3263304258b265266325c21f65" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_OutputChannel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "748c31bbcecc4b30bec2e42c0612175b", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector2ShaderProperty", + "m_ObjectId": "74b41464cbed4e9e8e23af5ab9be40cf", + "m_Guid": { + "m_GuidSerialized": "41afbdcb-f3ae-4340-8973-1c1998c992a2" + }, + "m_Name": "Outline Offset 2", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "", + "m_OverrideReferenceName": "_OutlineOffset2", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "74cf69e61bef44589521f1bf2bf3c59a", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "757174b6f25040fdbb20355a21752222", + "m_Id": 0, + "m_DisplayName": "Outline Offset 2", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "75aba700d74d4b2687bf3166cf1da3e2", + "m_Id": 2, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "75c5657544c648058b20cea090f48dbf", + "m_Id": 0, + "m_DisplayName": "_OutlineUVSpeed", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "767769f736d5478cba5f10a415e28e7f", + "m_Id": 5, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "773b90134e894e429203c0c83e80b9de", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "77e28f3e930b4c249145630ec961af95", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.Rendering.HighDefinition.ShaderGraph.HDUnlitData", + "m_ObjectId": "77ebd01f5b3149ad810a5acbffc85921", + "m_EnableShadowMatte": false, + "m_DistortionOnly": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BooleanMaterialSlot", + "m_ObjectId": "79147f6986644769b58d9ed64fe771e1", + "m_Id": 0, + "m_DisplayName": "OutlineMode", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": false, + "m_DefaultValue": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.MultiplyNode", + "m_ObjectId": "7984fd094e1147bdabb4e26fbd3d31c8", + "m_Group": { + "m_Id": "ecf16c34d46f4502ac601f0c38c7576b" + }, + "m_Name": "Multiply", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -3113.000244140625, + "y": -3468.0, + "width": 130.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "082e9706dffc4c188270980d4e44ce0f" + }, + { + "m_Id": "f2a351a5375c441b8d9ab7e2c9545a77" + }, + { + "m_Id": "41986ac6400d46709d0ef043a67f6b34" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 3, + "m_Type": "UnityEditor.ShaderGraph.Internal.ColorShaderProperty", + "m_ObjectId": "7a046f410ce64aa88438b0bfd412c045", + "m_Guid": { + "m_GuidSerialized": "d47271f5-5a84-47bf-a09e-c825d2aeb013" + }, + "m_Name": "Outline Color 3", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Color_551702C5", + "m_OverrideReferenceName": "_OutlineColor3", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "r": 0.0, + "g": 0.0, + "b": 0.0, + "a": 1.0 + }, + "isMainColor": false, + "m_ColorMode": 1 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "7a0f504e4175406dbd8134250f4e350b", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SubtractNode", + "m_ObjectId": "7a80e8839f0e4a1d9a6c0814f8793ee6", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Subtract", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4961.99951171875, + "y": -3452.0, + "width": 130.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "6fbdcc5a972b4fa883dc5f21e525a376" + }, + { + "m_Id": "0ba4932e164847878ddb7b7bcff96985" + }, + { + "m_Id": "9178663316db43d582f1c4a127d307c6" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "7acfafd73b8c4dfab8c55c18a887e087", + "m_Id": 4, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "7b3b88c5975841d6b6d5c3c5515055a0", + "m_Id": 3, + "m_DisplayName": "Texel Width", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Texel Width", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "7b8a19bd115e4167a25b59cb3218a817", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "7c27ccb2c2dc4ca59c5438c3358630ca", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.Rendering.HighDefinition.ShaderGraph.HDTarget", + "m_ObjectId": "7cf0e63037a74dc2a9f591225c678ff4", + "m_ActiveSubTarget": { + "m_Id": "29b1a6d4abc94131be838c0bc77892fc" + }, + "m_Datas": [ + { + "m_Id": "00996039d61e400a9e854ce591ac35a0" + }, + { + "m_Id": "305e3be306674fcd8bb02273d27ee5b7" + }, + { + "m_Id": "77ebd01f5b3149ad810a5acbffc85921" + } + ], + "m_CustomEditorGUI": "TMPro.EditorUtilities.TMP_SDF_HDRPUnlitShaderGUI", + "m_SupportVFX": false, + "m_SupportLineRendering": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SubtractNode", + "m_ObjectId": "7d7696aa6d184b4fb9c316a9dec37aee", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Subtract", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4959.0, + "y": -3326.0, + "width": 130.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "4d1cb1a475df49f9a148195a65f5453a" + }, + { + "m_Id": "47d020251e9841a5b1f0fd64396026a1" + }, + { + "m_Id": "62bc551cea604e88b7858cc37d96a98a" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.MultiplyNode", + "m_ObjectId": "7d78a616c2754cc28d1f32cf66ade611", + "m_Group": { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + "m_Name": "Multiply", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4006.000244140625, + "y": -2795.0, + "width": 130.0, + "height": 117.99999237060547 + } + }, + "m_Slots": [ + { + "m_Id": "d9bcb754db834583b6518c5ed5152114" + }, + { + "m_Id": "861d4258049a4a3e8164f7297090f88e" + }, + { + "m_Id": "a7c06457d7454693a8bc3dc95257b2c2" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "7e0fadb2533f496192c1ad3e78642010", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4444.0, + "y": -4188.0, + "width": 173.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "d48c3871e3064027a10ae9f4babd3be0" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "952d0fa5cd744df0b434cd38e9a90b93" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "7f2e6b5f15364ed9835d67d0cf4f8f65", + "m_Group": { + "m_Id": "" + }, + "m_Name": "VertexDescription.Tangent", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -2586.0, + "y": -3592.0, + "width": 200.0, + "height": 41.0 + } + }, + "m_Slots": [ + { + "m_Id": "85ff8667d72947edada4e9fb4ff60559" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Tangent" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "7f3d71a6c96847c099da45f95aafbecb", + "m_Id": 1, + "m_DisplayName": "G", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PositionMaterialSlot", + "m_ObjectId": "8036d0e6090b456e9b4ea87227868236", + "m_Id": 0, + "m_DisplayName": "Position", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Position", + "m_StageCapability": 1, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [ + "X", + "Y", + "Z" + ], + "m_Space": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "80e665a5eeb64730a51742f698bf0d48", + "m_Id": 4, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "8135ca333f8f4ea78163743e6ec1f55c", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4081.999755859375, + "y": -3140.0, + "width": 156.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "d6a6a119394e4082a11bc024a6e42ef8" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "53073e5ea924459fa6681a4943e9f947" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "81bdb47901ef48e5a588c6724b1b0142", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "81e8ed0534534674a74263e6161a2a1a", + "m_Guid": { + "m_GuidSerialized": "78aab961-c4a8-41f3-b203-1239c3b33b13" + }, + "m_Name": "Underlay Dilate", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_D48690B9", + "m_OverrideReferenceName": "_UnderlayDilate", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.0, + "m_FloatType": 0, + "m_RangeValues": { + "x": 0.0, + "y": 1.0 + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "82af2db1018543d7832af96c1cfc981f", + "m_Guid": { + "m_GuidSerialized": "37906c7b-9a3a-454b-a62a-9aa097e64bde" + }, + "m_Name": "Light Angle", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_82af2db1018543d7832af96c1cfc981f", + "m_OverrideReferenceName": "_LightAngle", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.0, + "m_FloatType": 1, + "m_RangeValues": { + "x": 0.0, + "y": 6.28000020980835 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "82d5443fe54d4a3b9420f8745d00a632", + "m_Id": 5, + "m_DisplayName": "Softness", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Softness", + "m_StageCapability": 3, + "m_Value": 8.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "84dc74cdbd8c45e1b189e4fd9a69942d", + "m_Id": 0, + "m_DisplayName": "Outline Offset 3", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.CustomFunctionNode", + "m_ObjectId": "85a1ad8e741e41759002e8cdc8cd0b96", + "m_Group": { + "m_Id": "d0a791a544614667962a9a9a9ce0c68a" + }, + "m_Name": "ScreenSpaceRatio (Custom Function)", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5802.0, + "y": -3363.0, + "width": 258.0, + "height": 142.0 + } + }, + "m_Slots": [ + { + "m_Id": "6e13f3cd573c467a94379f45d96cb690" + }, + { + "m_Id": "8e6ed600f6504f4083092f5b511e44c4" + }, + { + "m_Id": "93b161cce4504cb79c97b6d8db178de7" + }, + { + "m_Id": "2bf5f2fdd2984599b7323d10cfb1d240" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SourceType": 0, + "m_FunctionName": "ScreenSpaceRatio", + "m_FunctionSource": "96de908384869cd409c75efa351d5edf", + "m_FunctionBody": "Enter function body here..." +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "85b5940eb77e4625812ded7215bab8d7", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4081.999755859375, + "y": -3096.0, + "width": 156.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "ada023d617104472b8ab75a81558c0a1" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "7a046f410ce64aa88438b0bfd412c045" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.TangentMaterialSlot", + "m_ObjectId": "85ff8667d72947edada4e9fb4ff60559", + "m_Id": 0, + "m_DisplayName": "Tangent", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Tangent", + "m_StageCapability": 1, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [ + "X", + "Y", + "Z" + ], + "m_Space": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "861d4258049a4a3e8164f7297090f88e", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "e00": 2.0, + "e01": 2.0, + "e02": 2.0, + "e03": 2.0, + "e10": 2.0, + "e11": 2.0, + "e12": 2.0, + "e13": 2.0, + "e20": 2.0, + "e21": 2.0, + "e22": 2.0, + "e23": 2.0, + "e30": 2.0, + "e31": 2.0, + "e32": 2.0, + "e33": 2.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector4ShaderProperty", + "m_ObjectId": "867a4ae13c0d4a028c71bc1063824c14", + "m_Guid": { + "m_GuidSerialized": "d483c212-0a30-4f6d-b94d-9abbc83a6522" + }, + "m_Name": "Outline Width", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector4_C68C9E14", + "m_OverrideReferenceName": "_IsoPerimeter", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 2, + "m_Hidden": false, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "8695190a5e614f2d90081871a8a06fc2", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "e00": 2.0, + "e01": 2.0, + "e02": 2.0, + "e03": 2.0, + "e10": 2.0, + "e11": 2.0, + "e12": 2.0, + "e13": 2.0, + "e20": 2.0, + "e21": 2.0, + "e22": 2.0, + "e23": 2.0, + "e30": 2.0, + "e31": 2.0, + "e32": 2.0, + "e33": 2.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "8764669016f6442f8152593c18a649d7", + "m_Id": 4, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "880bb02c6c6b49b18aa6ebc66dc566a0", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.CustomFunctionNode", + "m_ObjectId": "88253223d2c34ecfab92b0c344048f94", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "ComputeSDF (Custom Function)", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4226.0, + "y": -4323.0, + "width": 227.99998474121095, + "height": 190.0 + } + }, + "m_Slots": [ + { + "m_Id": "c52a1744a9a14989b0ae452ad6de6061" + }, + { + "m_Id": "a03db80c558b4f87a330c5ae0a9443a5" + }, + { + "m_Id": "8f1b1d1e8ff24b3284993e52354e54fa" + }, + { + "m_Id": "5da82bf481f8489ebd05e997f617f51b" + }, + { + "m_Id": "82d5443fe54d4a3b9420f8745d00a632" + }, + { + "m_Id": "61133d79a89048c195f54939b2a1d30a" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SourceType": 0, + "m_FunctionName": "ComputeSDF", + "m_FunctionSource": "96de908384869cd409c75efa351d5edf", + "m_FunctionBody": "Enter function body here..." +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "8a08179f99d649d289b8053d5fa0ad22", + "m_Id": 0, + "m_DisplayName": "Underlay Offset", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "8a39319405ad44cb8b7aae71c41dcd01", + "m_Id": 4, + "m_DisplayName": "Texel Height", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Texel Height", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "8b66f4e6bc9d4662b3218ac33a69839f", + "m_Id": 5, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "8c38a5d8327f456e9783740c05382619", + "m_Id": 3, + "m_DisplayName": "Color2", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Color2", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "8cbd81814903479ea1d3151c1f38183e", + "m_Id": 6, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 3, + "m_Type": "UnityEditor.ShaderGraph.Internal.ColorShaderProperty", + "m_ObjectId": "8cf8aae64c1d443f9303126886b40f17", + "m_Guid": { + "m_GuidSerialized": "8d78c9a5-aaef-41fb-af68-2358e401d7ac" + }, + "m_Name": "_UnderlayColor", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Color_2F5FE804", + "m_OverrideReferenceName": "_UnderlayColor", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "r": 0.0, + "g": 0.0, + "b": 0.0, + "a": 1.0 + }, + "isMainColor": false, + "m_ColorMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "8e6ed600f6504f4083092f5b511e44c4", + "m_Id": 0, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector2ShaderProperty", + "m_ObjectId": "8ed907a2cc7949b68a283ae243ea1977", + "m_Guid": { + "m_GuidSerialized": "36803443-a9bc-4f3c-a4f2-7d66a5417ac1" + }, + "m_Name": "Outline Offset 3", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "", + "m_OverrideReferenceName": "_OutlineOffset3", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "8f1b1d1e8ff24b3284993e52354e54fa", + "m_Id": 3, + "m_DisplayName": "SDR", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "SDR", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "9147636b0cfa466a9b37a013d8f693bf", + "m_Group": { + "m_Id": "daaf032a109749a88c9b8ff8e1f8b541" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5421.99951171875, + "y": -3902.0, + "width": 153.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "a4f471e3221c4134b291bd9d2ba22db6" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "a6bbb32e8d884be9bb36db91fe4b81b1" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "9178663316db43d582f1c4a127d307c6", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SplitNode", + "m_ObjectId": "91890fe48ebe4717aea61ecaf3ad4861", + "m_Group": { + "m_Id": "ecf16c34d46f4502ac601f0c38c7576b" + }, + "m_Name": "Split", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -2983.000244140625, + "y": -3468.0, + "width": 119.99999237060547, + "height": 149.0 + } + }, + "m_Slots": [ + { + "m_Id": "3dccd64e7f324bc1a75c1479d7a67c51" + }, + { + "m_Id": "e444f2c81d1e48329fa2c91005277e8d" + }, + { + "m_Id": "b2c26292b7434733878a9b042f44de89" + }, + { + "m_Id": "964fea1fd4b24f4daf5bef84c4b45118" + }, + { + "m_Id": "deac82280a2b43078e0e40863e2d974c" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "91d6a9a5fbc04ea49075cb51835e7264", + "m_Id": 2, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "928621a3ca2d41c89a10336bbbc81ddc", + "m_Id": 5, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "9327cb5f5e6b46f1bd79f91ef9dca3b7", + "m_Id": 3, + "m_DisplayName": "Texel Width", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Texel Width", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "93b161cce4504cb79c97b6d8db178de7", + "m_Id": 3, + "m_DisplayName": "TextureSize", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "TextureSize", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "945b45993dd84a979755b98c48138f72", + "m_Id": 0, + "m_DisplayName": "Width", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Width", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "952d0fa5cd744df0b434cd38e9a90b93", + "m_Guid": { + "m_GuidSerialized": "ce395871-ddeb-47c3-a31d-07855800c197" + }, + "m_Name": "_UnderlaySoftness", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_F2B9E3EF", + "m_OverrideReferenceName": "_UnderlaySoftness", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.0, + "m_FloatType": 0, + "m_RangeValues": { + "x": 0.0, + "y": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "95928bcb6a284b8d88105a84c2e1d3ce", + "m_Group": { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4788.0, + "y": -2591.0, + "width": 155.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "d880558893fb442b9320cf55885d1117" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "2d0a269511e34bd1ba9056d2c939dff2" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "964fea1fd4b24f4daf5bef84c4b45118", + "m_Id": 3, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.GroupData", + "m_ObjectId": "98934a69591249d5b8b92b39045359a3", + "m_Title": "Outline1 Texture", + "m_Position": { + "x": -4670.00048828125, + "y": -2474.0 + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "998db5e5901e45b29040eb2099370071", + "m_Guid": { + "m_GuidSerialized": "6f383614-f2ad-4269-be8f-87b0ecb03cf0" + }, + "m_Name": "Bevel Clamp", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_5BD7E808", + "m_OverrideReferenceName": "_BevelClamp", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.0, + "m_FloatType": 1, + "m_RangeValues": { + "x": 0.0, + "y": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SampleTexture2DNode", + "m_ObjectId": "9c228fac287d446296b91a4acf5cec59", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Sample Texture 2D", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4600.0, + "y": -3498.0, + "width": 183.99998474121095, + "height": 253.0 + } + }, + "m_Slots": [ + { + "m_Id": "582d6e289dbe4fdca7cf0307273eaa2f" + }, + { + "m_Id": "1db37082bf844442804487b4944352de" + }, + { + "m_Id": "8b66f4e6bc9d4662b3218ac33a69839f" + }, + { + "m_Id": "4a66dcbe712a4d40bd8f355b834594b5" + }, + { + "m_Id": "a0285c9c381a49cba194709efa0a7c85" + }, + { + "m_Id": "b2728d0dd3ce40678867c94a7d977916" + }, + { + "m_Id": "e141833aa78b4fd59ecad949beb43a78" + }, + { + "m_Id": "51f76f8a53ad43a4ad028426548ce9ba" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_TextureType": 0, + "m_NormalMapSpace": 0, + "m_EnableGlobalMipBias": true, + "m_MipSamplingMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "9c26fdddba244d36a854298c00473247", + "m_Id": 3, + "m_DisplayName": "SDR", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "SDR", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVNode", + "m_ObjectId": "9d3c3383d5934a17bf9efbb7fd9e9043", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "UV", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5443.0, + "y": -3315.0, + "width": 144.99998474121095, + "height": 130.0 + } + }, + "m_Slots": [ + { + "m_Id": "232b1aa09e67479abae141d3c76d3c5b" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_OutputChannel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "9e6e50a71d9843b49b62ebe1cf7d3d59", + "m_Group": { + "m_Id": "d258902c6ec74942afdb9ebf8c1d07f8" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4486.0, + "y": -3865.99951171875, + "width": 135.3330078125, + "height": 33.999996185302737 + } + }, + "m_Slots": [ + { + "m_Id": "3535ae87c6dd4769b52b20d9eca61069" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "3e372195f4bd4845852a37839e5b602d" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "9e87ce9607e14015a3790c528ca5dfda", + "m_Group": { + "m_Id": "98934a69591249d5b8b92b39045359a3" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4635.0, + "y": -2239.0, + "width": 167.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "75c5657544c648058b20cea090f48dbf" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "3fdf4b7bc5d4426492dcc057603ef4a6" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "9eb8137a6c2e41bbafdc8b0732dd47a3", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BooleanMaterialSlot", + "m_ObjectId": "9eeec1a9713045af8845cea263d5ea48", + "m_Id": 6, + "m_DisplayName": "IsFront", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "IsFront", + "m_StageCapability": 3, + "m_Value": false, + "m_DefaultValue": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.MultiplyNode", + "m_ObjectId": "9f0de188085746d5a19073da1de85ddb", + "m_Group": { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + "m_Name": "Multiply", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4160.0, + "y": -2771.0, + "width": 130.0, + "height": 117.99999237060547 + } + }, + "m_Slots": [ + { + "m_Id": "7c27ccb2c2dc4ca59c5438c3358630ca" + }, + { + "m_Id": "373f1de8db6c429c9d46c781f741d7a4" + }, + { + "m_Id": "fd0b096ed5b74f9e9ec51327be200731" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "9f42c5a9bc2f45baa095a80e7b8b485a", + "m_Id": 4, + "m_DisplayName": "Texel Height", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Texel Height", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "a0285c9c381a49cba194709efa0a7c85", + "m_Id": 7, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "a03db80c558b4f87a330c5ae0a9443a5", + "m_Id": 1, + "m_DisplayName": "SD", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "SD", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.NormalMaterialSlot", + "m_ObjectId": "a3f8b6e8ae7f48e2989a029904401502", + "m_Id": 0, + "m_DisplayName": "Normal", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Normal", + "m_StageCapability": 1, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [ + "X", + "Y", + "Z" + ], + "m_Space": 0 +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.CustomFunctionNode", + "m_ObjectId": "a455bd79094c4413a7b7dd80ca8b9368", + "m_Group": { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + "m_Name": "GenerateUV (Custom Function)", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4606.99951171875, + "y": -2689.0, + "width": 221.99998474121095, + "height": 142.0 + } + }, + "m_Slots": [ + { + "m_Id": "dcd51c93d3b64f05a938b3334f343654" + }, + { + "m_Id": "2c7a9460724b47daad8df1be144de7c6" + }, + { + "m_Id": "55ffa45ec3654d5e88089fb40d2b0465" + }, + { + "m_Id": "e495a9f7a11f4eb89334e83be154ceb9" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SourceType": 0, + "m_FunctionName": "GenerateUV", + "m_FunctionSource": "96de908384869cd409c75efa351d5edf", + "m_FunctionBody": "Enter function body here..." +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.SamplerStateShaderProperty", + "m_ObjectId": "a4ad98d8828c424384229c344ebe2ed0", + "m_Guid": { + "m_GuidSerialized": "f98fc1a2-bb81-4bd1-a207-23d3a90d518e" + }, + "m_Name": "SamplerState", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "SamplerState_a4ad98d8828c424384229c344ebe2ed0", + "m_OverrideReferenceName": "", + "m_GeneratePropertyBlock": false, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "m_filter": 0, + "m_wrap": 1, + "m_anisotropic": 0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "a4f471e3221c4134b291bd9d2ba22db6", + "m_Id": 0, + "m_DisplayName": "_GradientScale", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "a535f3bcbeb14622bb177eb6f46e76f4", + "m_Group": { + "m_Id": "98934a69591249d5b8b92b39045359a3" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4645.00048828125, + "y": -2285.0, + "width": 177.00001525878907, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "6dfc1177dd0541a7a780fbf911ad1956" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "ec79eb447dfd47a9b3380344c6a60f43" + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "a6bbb32e8d884be9bb36db91fe4b81b1", + "m_Guid": { + "m_GuidSerialized": "6aa76edf-7b80-46ac-add4-406cf1d85493" + }, + "m_Name": "_GradientScale", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_EAE27356", + "m_OverrideReferenceName": "_GradientScale", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 1, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 10.0, + "m_FloatType": 0, + "m_RangeValues": { + "x": 0.0, + "y": 1.0 + } +} + +{ + "m_SGVersion": 3, + "m_Type": "UnityEditor.ShaderGraph.Internal.ColorShaderProperty", + "m_ObjectId": "a6c38edd2e8743a9b057ba8452b9f129", + "m_Guid": { + "m_GuidSerialized": "9fc942ee-4a1d-4ced-a5a6-81893e3ddb63" + }, + "m_Name": "Light Color", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Color_a6c38edd2e8743a9b057ba8452b9f129", + "m_OverrideReferenceName": "_SpecularColor", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "r": 1.0, + "g": 1.0, + "b": 1.0, + "a": 1.0 + }, + "isMainColor": false, + "m_ColorMode": 1 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "a75f7ac601c446469802fe7754c1f279", + "m_Id": 0, + "m_DisplayName": "Color1", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Color1", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "a7942746b5564dc7bbbae1deb2403022", + "m_Id": 0, + "m_DisplayName": "_GradientScale", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "a7c06457d7454693a8bc3dc95257b2c2", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "aa2794b8f0e24bf281d22e0fef0647be", + "m_Id": 2, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.CustomFunctionNode", + "m_ObjectId": "aa3e347d733e48f7b65d8a8847370eec", + "m_Group": { + "m_Id": "" + }, + "m_Name": "EvaluateLight (Custom Function)", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -3631.0, + "y": -3810.0, + "width": 230.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "0699eea947fc426cbfeb8744cf120222" + }, + { + "m_Id": "0c4dc51f26484c26ad88a3fe4002abcd" + }, + { + "m_Id": "d5173cc3c6cd4f1998550f3187a3e9c8" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SourceType": 0, + "m_FunctionName": "EvaluateLight", + "m_FunctionSource": "96de908384869cd409c75efa351d5edf", + "m_FunctionBody": "Enter function body here..." +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "aa87c72ac0e64469acc34f936f00b3d0", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4444.0, + "y": -4225.0, + "width": 193.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "0d7878dd226d4cfb81a991dc312309fc" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "81e8ed0534534674a74263e6161a2a1a" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "abd59150589b436cadf8c9e6f43ccb8e", + "m_Id": 0, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "aca823a8188948c782eddaf0f45e1868", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.NormalOS", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -2542.0, + "y": -3404.000244140625, + "width": 200.0, + "height": 40.66650390625 + } + }, + "m_Slots": [ + { + "m_Id": "e386b183a18245a796b024022f7f3074" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.NormalOS" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DPropertiesNode", + "m_ObjectId": "acd0cd5a177f4a97bf23db7219305e3f", + "m_Group": { + "m_Id": "d258902c6ec74942afdb9ebf8c1d07f8" + }, + "m_Name": "Texel Size", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4348.0, + "y": -3905.99951171875, + "width": 185.33299255371095, + "height": 101.33324432373047 + } + }, + "m_Slots": [ + { + "m_Id": "945b45993dd84a979755b98c48138f72" + }, + { + "m_Id": "e51a636b2621440eb94cc802c1cf4bfc" + }, + { + "m_Id": "1bdde3efd3b7464b8934c555be0f8a48" + }, + { + "m_Id": "f1fb18f75405424884a776bfd24e79e9" + }, + { + "m_Id": "9f42c5a9bc2f45baa095a80e7b8b485a" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "ada023d617104472b8ab75a81558c0a1", + "m_Id": 0, + "m_DisplayName": "Outline Color 3", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "aef5c44f84e04c3185e0b93e95e34204", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5264.99951171875, + "y": -3142.0, + "width": 159.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "84dc74cdbd8c45e1b189e4fd9a69942d" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "8ed907a2cc7949b68a283ae243ea1977" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "b000f852aa984e9dae25b125a4607f4e", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "b015d1b7e4134c59baf6851e7649802c", + "m_Id": 0, + "m_DisplayName": "R", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "b0b352c4503a43d083a64e57352b29a0", + "m_Guid": { + "m_GuidSerialized": "01cfcc78-60aa-4f71-a1e3-8d8df6dae253" + }, + "m_Name": "Reflectivity Power", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_b0b352c4503a43d083a64e57352b29a0", + "m_OverrideReferenceName": "_Reflectivity", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 5.0, + "m_FloatType": 1, + "m_RangeValues": { + "x": 5.0, + "y": 15.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.VertexColorNode", + "m_ObjectId": "b1188549725543d485436c2e921ffbb2", + "m_Group": { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + "m_Name": "Vertex Color", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4146.0, + "y": -2869.0, + "width": 116.0, + "height": 94.0 + } + }, + "m_Slots": [ + { + "m_Id": "281bcee4777040f8a31ee0e10344e98d" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 2, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SampleTexture2DNode", + "m_ObjectId": "b163c9f1666644b0bba62cf0e12df7bc", + "m_Group": { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + "m_Name": "Sample Texture 2D", + "m_DrawState": { + "m_Expanded": false, + "m_Position": { + "serializedVersion": "2", + "x": -4367.0, + "y": -2713.0, + "width": 180.0, + "height": 181.0 + } + }, + "m_Slots": [ + { + "m_Id": "cce40479b6284b6fa3174db9f09d0ac9" + }, + { + "m_Id": "80e665a5eeb64730a51742f698bf0d48" + }, + { + "m_Id": "1f46181633594ae0a1fb2adb76b42981" + }, + { + "m_Id": "8cbd81814903479ea1d3151c1f38183e" + }, + { + "m_Id": "cfaf3f3a5a1146e194cddad30c95aada" + }, + { + "m_Id": "b43489e37a5c4df88f15844292a55ec7" + }, + { + "m_Id": "cd7281fb41aa4e61ac0fdf71d4f4bd46" + }, + { + "m_Id": "f01d52cdcb1647aab35782b4af535efd" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_TextureType": 0, + "m_NormalMapSpace": 1, + "m_EnableGlobalMipBias": true, + "m_MipSamplingMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "b224a1cf80604103ad085c799995f3c2", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "b2728d0dd3ce40678867c94a7d977916", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"fileID\":-2362172177983852347,\"guid\":\"dda5bcb0d1e9515498f6e4e038bbefe6\",\"type\":2}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "b2baf44eae52473cb6cda7b1debece01", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "b2c26292b7434733878a9b042f44de89", + "m_Id": 2, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "b42e6dbfbc864097af182cbff5c0c1fb", + "m_Id": 0, + "m_DisplayName": "Outline Color 1", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "b43489e37a5c4df88f15844292a55ec7", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"fileID\":-2362172177983852347,\"guid\":\"dda5bcb0d1e9515498f6e4e038bbefe6\",\"type\":2}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.MultiplyNode", + "m_ObjectId": "b4a40cb6acd441acb83cfe0240bf910d", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "Multiply", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4750.99951171875, + "y": -4274.0, + "width": 130.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "d0b10e52e21941b183f5f635894c76c8" + }, + { + "m_Id": "0d6a57754b824f6db9cefa6953bc06a9" + }, + { + "m_Id": "773b90134e894e429203c0c83e80b9de" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DPropertiesNode", + "m_ObjectId": "b571db753a1948d5a6f1de4e7d0c7238", + "m_Group": { + "m_Id": "daaf032a109749a88c9b8ff8e1f8b541" + }, + "m_Name": "Texel Size", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5581.99951171875, + "y": -3867.0, + "width": 183.99998474121095, + "height": 100.99999237060547 + } + }, + "m_Slots": [ + { + "m_Id": "5b3ff4ee364f4d7a923b530ad60d8762" + }, + { + "m_Id": "c183b5bd9bbe45089f93996e73110918" + }, + { + "m_Id": "1196ae398cc348349ab0c1a23fdab4bd" + }, + { + "m_Id": "9327cb5f5e6b46f1bd79f91ef9dca3b7" + }, + { + "m_Id": "d804b5a6c657409196addf2b39199a4f" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "b691728a389a417d9b4f2d02541209c2", + "m_Id": 6, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "b7f9ac55517141868bfb9d2ad6429792", + "m_Id": 6, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "b85d677872b44421bf5536f42ba0267c", + "m_Id": 3, + "m_DisplayName": "Color0", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Color0", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.CombineNode", + "m_ObjectId": "bc9afcb18afa4ccc82d2cdc34d3f4641", + "m_Group": { + "m_Id": "daaf032a109749a88c9b8ff8e1f8b541" + }, + "m_Name": "Combine", + "m_DrawState": { + "m_Expanded": false, + "m_Position": { + "serializedVersion": "2", + "x": -5392.0, + "y": -3867.0, + "width": 125.99999237060547, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "5e42524569844befad16fda5a94eb9cb" + }, + { + "m_Id": "54d7a93ffec5490aa4591da23a21b693" + }, + { + "m_Id": "aa2794b8f0e24bf281d22e0fef0647be" + }, + { + "m_Id": "200245fc8bbe4826b209ab5f7ffe074c" + }, + { + "m_Id": "fc2e62201c5847e798fd939314413fcd" + }, + { + "m_Id": "fe11fa80cc1847a5a37f6757d521cf25" + }, + { + "m_Id": "de0c6f7f7af94defa6c3dbc6433de9d4" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "c183b5bd9bbe45089f93996e73110918", + "m_Id": 2, + "m_DisplayName": "Height", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Height", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.CustomFunctionNode", + "m_ObjectId": "c234e5216678436195ee1a5914bc79da", + "m_Group": { + "m_Id": "98934a69591249d5b8b92b39045359a3" + }, + "m_Name": "GenerateUV (Custom Function)", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4446.0, + "y": -2347.0, + "width": 222.0, + "height": 142.0 + } + }, + "m_Slots": [ + { + "m_Id": "f68d9dee5cbc43cdb355d8fadae602d3" + }, + { + "m_Id": "3db1608e927e4102a3c3a88e9fcab39a" + }, + { + "m_Id": "0f7ffb6d2de4447f9736780cbcee8e07" + }, + { + "m_Id": "d4954b7bbbb0412cbc997bcbe7dfa808" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SourceType": 0, + "m_FunctionName": "GenerateUV", + "m_FunctionSource": "96de908384869cd409c75efa351d5edf", + "m_FunctionBody": "Enter function body here..." +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "c35312edaa2344788b1964ee2f63a236", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DMaterialSlot", + "m_ObjectId": "c3e6d7c20c184bf39fd8822130e693e7", + "m_Id": 0, + "m_DisplayName": "_MainTex", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "c422a9a9ff824176aad2241f58c44d0b", + "m_Id": 0, + "m_DisplayName": "Outline Offset 1", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "c478c32c45884c57a62f7b2aa8ddc3b0", + "m_Id": 2, + "m_DisplayName": "Alpha", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Alpha", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "c52a1744a9a14989b0ae452ad6de6061", + "m_Id": 0, + "m_DisplayName": "SSR", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "SSR", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "c6bdb985bc16435fa72f5a3c81bb633c", + "m_Id": 6, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "c7d4094601ac4bc1aead609c72b1f1c1", + "m_Id": 4, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "c7ddee91dc5b48dc828309c77fdb0b88", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4444.0, + "y": -4266.0, + "width": 153.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "a7942746b5564dc7bbbae1deb2403022" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "a6bbb32e8d884be9bb36db91fe4b81b1" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SamplerStateMaterialSlot", + "m_ObjectId": "c88fcbaeea954a5f9c68c339fa8b604d", + "m_Id": 3, + "m_DisplayName": "Sampler", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Sampler", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "c9b722d107ce4cd6a748c883472b9b0f", + "m_Id": 7, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "c9d7f0dbae7d422985a1cc87c025e76b", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4315.0, + "y": -3165.0, + "width": 144.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "79147f6986644769b58d9ed64fe771e1" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "cb3c0c3f08654b068bea44c4ffb15f4a" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Internal.Texture2DShaderProperty", + "m_ObjectId": "c9ec735d1a1046769e5601b2c97c849a", + "m_Guid": { + "m_GuidSerialized": "281a9526-c332-4471-a44e-ece4a1e95ef6" + }, + "m_Name": "Face Texture", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Texture2D_75569DEA", + "m_OverrideReferenceName": "_FaceTex", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "m_SerializedTexture": "{\"texture\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "isMainTexture": false, + "useTilingAndOffset": false, + "m_Modifiable": true, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "ca2a1083dc014f39ab8af0cdf140866b", + "m_Id": 0, + "m_DisplayName": "_FaceTex_ST", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Internal.BooleanShaderProperty", + "m_ObjectId": "cb3c0c3f08654b068bea44c4ffb15f4a", + "m_Guid": { + "m_GuidSerialized": "21009d12-8d94-4273-b0d0-a8ee0608ddcf" + }, + "m_Name": "OutlineMode", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Boolean_cb3c0c3f08654b068bea44c4ffb15f4a", + "m_OverrideReferenceName": "_OutlineMode", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SamplerStateMaterialSlot", + "m_ObjectId": "cb5e9f9567e84f8fa5463efc0e256e19", + "m_Id": 3, + "m_DisplayName": "Sampler", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Sampler", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "cb7117ecb1d047a8b2cb00ed552cb181", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.Alpha", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -3032.66650390625, + "y": -3029.33349609375, + "width": 200.0, + "height": 41.33349609375 + } + }, + "m_Slots": [ + { + "m_Id": "724e17584e97443e9e285dfa7253c8e3" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.Alpha" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "cc88101667c9488f9c5a716e851c1b21", + "m_Id": 3, + "m_DisplayName": "Color0", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Color0", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "cce40479b6284b6fa3174db9f09d0ac9", + "m_Id": 0, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "cd7281fb41aa4e61ac0fdf71d4f4bd46", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SamplerStateMaterialSlot", + "m_ObjectId": "cda5e3b4c1054bf3a65c0b7ec6bc778a", + "m_Id": 3, + "m_DisplayName": "Sampler", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Sampler", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SampleTexture2DNode", + "m_ObjectId": "cdddee3a537c464697357f11b966f9b8", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "Sample Texture 2D", + "m_DrawState": { + "m_Expanded": false, + "m_Position": { + "serializedVersion": "2", + "x": -4420.0, + "y": -4483.0, + "width": 156.0, + "height": 181.0 + } + }, + "m_Slots": [ + { + "m_Id": "41b9b79b3859472882bcea393703eec0" + }, + { + "m_Id": "c7d4094601ac4bc1aead609c72b1f1c1" + }, + { + "m_Id": "767769f736d5478cba5f10a415e28e7f" + }, + { + "m_Id": "b691728a389a417d9b4f2d02541209c2" + }, + { + "m_Id": "045c4f6b050549c7a0efb208e6349779" + }, + { + "m_Id": "509e6f38505b4b0695b263706a55028f" + }, + { + "m_Id": "204dacb5a95b424facf11cb6f65bd188" + }, + { + "m_Id": "35cbea6373dd4e4f8d0fea36e8add392" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_TextureType": 0, + "m_NormalMapSpace": 0, + "m_EnableGlobalMipBias": true, + "m_MipSamplingMode": 0 +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "ced40c943add479a86f25f7fb5ed59da", + "m_Guid": { + "m_GuidSerialized": "af17e4ab-54fe-4482-a9c5-4e4bc9076517" + }, + "m_Name": "_ScaleRatioA", + "m_DefaultRefNameVersion": 1, + "m_RefNameGeneratedByDisplayName": "_ScaleRatioA", + "m_DefaultReferenceName": "_ScaleRatioA", + "m_OverrideReferenceName": "", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.0, + "m_FloatType": 0, + "m_RangeValues": { + "x": 0.0, + "y": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "cfaf3f3a5a1146e194cddad30c95aada", + "m_Id": 7, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.GroupData", + "m_ObjectId": "d0a791a544614667962a9a9a9ce0c68a", + "m_Title": "Screen Space Ratio", + "m_Position": { + "x": -6179.99951171875, + "y": -3422.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "d0b10e52e21941b183f5f635894c76c8", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "d1a17e42e7a04dc38984e3c01149445b", + "m_Id": 7, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "d219977210094c0082c517d8dc00c8bb", + "m_Id": 0, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.GroupData", + "m_ObjectId": "d258902c6ec74942afdb9ebf8c1d07f8", + "m_Title": "Generate Normal", + "m_Position": { + "x": -4511.33349609375, + "y": -3999.3330078125 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "d30452ac6b244ecca03df4d7b4de9f81", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "d48c3871e3064027a10ae9f4babd3be0", + "m_Id": 0, + "m_DisplayName": "_UnderlaySoftness", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "d4954b7bbbb0412cbc997bcbe7dfa808", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "d4df208fc23b42f2b52364124f1b661c", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5268.0, + "y": -3261.0, + "width": 159.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "757174b6f25040fdbb20355a21752222" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "74b41464cbed4e9e8e23af5ab9be40cf" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector3MaterialSlot", + "m_ObjectId": "d5173cc3c6cd4f1998550f3187a3e9c8", + "m_Id": 0, + "m_DisplayName": "Normal", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Normal", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [ + "X", + "Y", + "Z" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "d6a6a119394e4082a11bc024a6e42ef8", + "m_Id": 0, + "m_DisplayName": "Outline Color 2", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "d804b5a6c657409196addf2b39199a4f", + "m_Id": 4, + "m_DisplayName": "Texel Height", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Texel Height", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "d880558893fb442b9320cf55885d1117", + "m_Id": 0, + "m_DisplayName": "_FaceUVSpeed", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "d8edec16956c4f15b7d51d6ec10753f4", + "m_Id": 2, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "d9bcb754db834583b6518c5ed5152114", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "d9dc4839ee2847999110bdb234d6041a", + "m_Id": 1, + "m_DisplayName": "G", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DMaterialSlot", + "m_ObjectId": "da7a06d393a44089842070d51d2aa0a6", + "m_Id": 0, + "m_DisplayName": "_MainTex", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.GroupData", + "m_ObjectId": "daaf032a109749a88c9b8ff8e1f8b541", + "m_Title": "Offset Scale", + "m_Position": { + "x": -5747.99951171875, + "y": -3961.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVNode", + "m_ObjectId": "dbcb748279484a4590e53518c49122b8", + "m_Group": { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + "m_Name": "UV", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4778.0, + "y": -2771.0, + "width": 145.0, + "height": 130.0 + } + }, + "m_Slots": [ + { + "m_Id": "7a0f504e4175406dbd8134250f4e350b" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_OutputChannel": 1 +} + +{ + "m_SGVersion": 3, + "m_Type": "UnityEditor.ShaderGraph.Internal.ColorShaderProperty", + "m_ObjectId": "dc75c4e3a1bc4bb0a128086c2b0679a5", + "m_Guid": { + "m_GuidSerialized": "85cd941f-2fd2-43a3-b0fa-9f728bfb4220" + }, + "m_Name": "Face Color", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Color_99AFBB3D", + "m_OverrideReferenceName": "_FaceColor", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "r": 1.0, + "g": 1.0, + "b": 1.0, + "a": 1.0 + }, + "isMainColor": false, + "m_ColorMode": 1 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "dcd51c93d3b64f05a938b3334f343654", + "m_Id": 0, + "m_DisplayName": "UV_1", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV_1", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "de0c6f7f7af94defa6c3dbc6433de9d4", + "m_Id": 6, + "m_DisplayName": "RG", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RG", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "deac82280a2b43078e0e40863e2d974c", + "m_Id": 4, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DMaterialSlot", + "m_ObjectId": "def8e0b9d8384982bc5b4c32d877e458", + "m_Id": 0, + "m_DisplayName": "Outline Texture", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SubtractNode", + "m_ObjectId": "dff7a66b353a4023b29c9d937da77960", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "Subtract", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4602.0, + "y": -4298.0, + "width": 130.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "7b8a19bd115e4167a25b59cb3218a817" + }, + { + "m_Id": "0b57f2d35157477ab2b29a5aac14ae8b" + }, + { + "m_Id": "e9e06fcb161e44ba8cc9f6f60264df78" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "e141833aa78b4fd59ecad949beb43a78", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "e2d28f29bbac4983a401574480b5ca28", + "m_Id": 1, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.NormalMaterialSlot", + "m_ObjectId": "e386b183a18245a796b024022f7f3074", + "m_Id": 0, + "m_DisplayName": "Normal (Object Space)", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "NormalOS", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [ + "X", + "Y", + "Z" + ], + "m_Space": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "e444f2c81d1e48329fa2c91005277e8d", + "m_Id": 1, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "e495a9f7a11f4eb89334e83be154ceb9", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "e51a636b2621440eb94cc802c1cf4bfc", + "m_Id": 2, + "m_DisplayName": "Height", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Height", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "e591df3a1eb94e259b762f2830b407e2", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.Emission", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "4590bfa2a0664b65b6f073bae33a071f" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.Emission" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "e6e80c6b0db545cda26b079a9a78fbb3", + "m_Id": 5, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.CustomFunctionNode", + "m_ObjectId": "e818605f8f5a4f01bf61caaa33693581", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "ComputeSDF44 (Custom Function)", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4144.0, + "y": -3369.0, + "width": 244.0, + "height": 214.0 + } + }, + "m_Slots": [ + { + "m_Id": "641eda269d7b4da9acb65f8d50035ea9" + }, + { + "m_Id": "f6823778a3cf42d5bbe8a83e5f9c9fa3" + }, + { + "m_Id": "9c26fdddba244d36a854298c00473247" + }, + { + "m_Id": "f684c5678e9e4f078157a3ab7ef5057b" + }, + { + "m_Id": "14ad19bf20a140dd88d58452d7df688b" + }, + { + "m_Id": "215a82c127204988b751de7d3a39b955" + }, + { + "m_Id": "c478c32c45884c57a62f7b2aa8ddc3b0" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SourceType": 0, + "m_FunctionName": "ComputeSDF44", + "m_FunctionSource": "96de908384869cd409c75efa351d5edf", + "m_FunctionBody": "Enter function body here..." +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "e9e06fcb161e44ba8cc9f6f60264df78", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "ebbd94a7102a4457a48ac492de3bff14", + "m_Id": 5, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "ebd6d75abcb84108bcadbfe7ee5f6244", + "m_Id": 7, + "m_DisplayName": "TextureHeight", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "TextureHeight", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "ec184d6d9fb2494897774c9e7d279e6d", + "m_Group": { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4799.0, + "y": -2625.0, + "width": 165.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "ca2a1083dc014f39ab8af0cdf140866b" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "07946387933e416db576b677f0711e5f" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SubtractNode", + "m_ObjectId": "ec1f2e8bc9fd4ae38b133c60ee6c49b8", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Subtract", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4957.99951171875, + "y": -3204.0, + "width": 130.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "748c31bbcecc4b30bec2e42c0612175b" + }, + { + "m_Id": "4bda5c294e1949138d033640e1d385b4" + }, + { + "m_Id": "4e64dac49ddc47c3b5b1e27b17a08304" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector4ShaderProperty", + "m_ObjectId": "ec79eb447dfd47a9b3380344c6a60f43", + "m_Guid": { + "m_GuidSerialized": "54c77f8b-0534-4b35-a3f0-83ab2ebe6c1f" + }, + "m_Name": "_OutlineTex_ST", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector4_1774DE83", + "m_OverrideReferenceName": "_OutlineTex_ST", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.GroupData", + "m_ObjectId": "ecf16c34d46f4502ac601f0c38c7576b", + "m_Title": "Vertex Color", + "m_Position": { + "x": -3448.000244140625, + "y": -3579.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "ed1d1f1613334c3bb904dd08161cd7e5", + "m_Id": 0, + "m_DisplayName": "_GradientScale", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "ed6c215a65584deeaefad1d2c7743044", + "m_Id": 4, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector3MaterialSlot", + "m_ObjectId": "edbee7a8952b46529ac5ad0365775774", + "m_Id": 5, + "m_DisplayName": "RGB", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGB", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.ColorRGBMaterialSlot", + "m_ObjectId": "ef0b93f78372439696f50711eaf57d90", + "m_Id": 0, + "m_DisplayName": "Base Color", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "BaseColor", + "m_StageCapability": 2, + "m_Value": { + "x": 0.7353569269180298, + "y": 0.7353569269180298, + "z": 0.7353569269180298 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [ + "X", + "Y", + "Z" + ], + "m_ColorMode": 0, + "m_DefaultColor": { + "r": 0.5, + "g": 0.5, + "b": 0.5, + "a": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "ef9738ec7e894772a14e9dce441c16c6", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SamplerStateMaterialSlot", + "m_ObjectId": "f01d52cdcb1647aab35782b4af535efd", + "m_Id": 3, + "m_DisplayName": "Sampler", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Sampler", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "f1fb18f75405424884a776bfd24e79e9", + "m_Id": 3, + "m_DisplayName": "Texel Width", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Texel Width", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.CustomFunctionNode", + "m_ObjectId": "f23a8b2b7c85478388ff7a8c8a6de740", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Layer4 (Custom Function)", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -3849.999755859375, + "y": -3286.0, + "width": 193.0, + "height": 189.99998474121095 + } + }, + "m_Slots": [ + { + "m_Id": "0fac35636fca4474a6afaefc3c757775" + }, + { + "m_Id": "cc88101667c9488f9c5a716e851c1b21" + }, + { + "m_Id": "68ec7c31365549d6a8ce883edfc02de2" + }, + { + "m_Id": "02559cbe5ad441a3904ccb75ded2b2c5" + }, + { + "m_Id": "34a67e0fef884f9399e674d9eeaf720c" + }, + { + "m_Id": "3802c81c3be24823aa1d7c9997a33c29" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SourceType": 0, + "m_FunctionName": "Layer4", + "m_FunctionSource": "96de908384869cd409c75efa351d5edf", + "m_FunctionBody": "Enter function body here..." +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "f2903158b3624759bca1fcd843698078", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "x": 2.0, + "y": 2.0, + "z": 2.0, + "w": 2.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "f2a351a5375c441b8d9ab7e2c9545a77", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "e00": 2.0, + "e01": 2.0, + "e02": 2.0, + "e03": 2.0, + "e10": 2.0, + "e11": 2.0, + "e12": 2.0, + "e13": 2.0, + "e20": 2.0, + "e21": 2.0, + "e22": 2.0, + "e23": 2.0, + "e30": 2.0, + "e31": 2.0, + "e32": 2.0, + "e33": 2.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DPropertiesNode", + "m_ObjectId": "f383b24f0bc6434dafe44b3e3d338a63", + "m_Group": { + "m_Id": "d0a791a544614667962a9a9a9ce0c68a" + }, + "m_Name": "Texel Size", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -6012.99951171875, + "y": -3209.0, + "width": 183.99998474121095, + "height": 100.99999237060547 + } + }, + "m_Slots": [ + { + "m_Id": "fb5e1e2a67c14602808358686bb75091" + }, + { + "m_Id": "712da461f71a454db59d349f752d41ee" + }, + { + "m_Id": "b000f852aa984e9dae25b125a4607f4e" + }, + { + "m_Id": "7b3b88c5975841d6b6d5c3c5515055a0" + }, + { + "m_Id": "8a39319405ad44cb8b7aae71c41dcd01" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "f3d31c1f18d8491a8ecf5cbc37e4b7db", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4321.99951171875, + "y": -3246.0, + "width": 153.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "ed1d1f1613334c3bb904dd08161cd7e5" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "a6bbb32e8d884be9bb36db91fe4b81b1" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "f42ad06b3c6a45d3ab33de904c063412", + "m_Id": 3, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "f48f04ad45d046a8b88e71731ed506e7", + "m_Id": 4, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "f4ecc442a2d246759f7c2c0412953d28", + "m_Group": { + "m_Id": "" + }, + "m_Name": "VertexDescription.Normal", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "a3f8b6e8ae7f48e2989a029904401502" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Normal" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "f6823778a3cf42d5bbe8a83e5f9c9fa3", + "m_Id": 1, + "m_DisplayName": "SD", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "SD", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "f684c5678e9e4f078157a3ab7ef5057b", + "m_Id": 4, + "m_DisplayName": "Isoperimeter", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Isoperimeter", + "m_StageCapability": 3, + "m_Value": { + "x": 3.0, + "y": 2.0, + "z": 1.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "f68d9dee5cbc43cdb355d8fadae602d3", + "m_Id": 0, + "m_DisplayName": "UV_1", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV_1", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SampleTexture2DNode", + "m_ObjectId": "f814deb543c24fbbafbcdb5071d96022", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Sample Texture 2D", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4600.0, + "y": -3245.0, + "width": 183.99998474121095, + "height": 253.0 + } + }, + "m_Slots": [ + { + "m_Id": "abd59150589b436cadf8c9e6f43ccb8e" + }, + { + "m_Id": "7acfafd73b8c4dfab8c55c18a887e087" + }, + { + "m_Id": "928621a3ca2d41c89a10336bbbc81ddc" + }, + { + "m_Id": "b7f9ac55517141868bfb9d2ad6429792" + }, + { + "m_Id": "09b1b86c1c074337a4c439d3a308dd2e" + }, + { + "m_Id": "1f247658c7ba45fb93c41f51e21acb0d" + }, + { + "m_Id": "d30452ac6b244ecca03df4d7b4de9f81" + }, + { + "m_Id": "215b30ae27784ec3a13360a9029af283" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_TextureType": 0, + "m_NormalMapSpace": 0, + "m_EnableGlobalMipBias": true, + "m_MipSamplingMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "f864c900600e427ba7793f00c715e971", + "m_Id": 0, + "m_DisplayName": "Outline Width", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "fa6de3be9f5b4411b5081b49e645f424", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "e00": 2.0, + "e01": 2.0, + "e02": 2.0, + "e03": 2.0, + "e10": 2.0, + "e11": 2.0, + "e12": 2.0, + "e13": 2.0, + "e20": 2.0, + "e21": 2.0, + "e22": 2.0, + "e23": 2.0, + "e30": 2.0, + "e31": 2.0, + "e32": 2.0, + "e33": 2.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DivideNode", + "m_ObjectId": "faace8101df943d8956faa31728cb004", + "m_Group": { + "m_Id": "daaf032a109749a88c9b8ff8e1f8b541" + }, + "m_Name": "Divide", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5254.99951171875, + "y": -3891.0, + "width": 130.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "77e28f3e930b4c249145630ec961af95" + }, + { + "m_Id": "f2903158b3624759bca1fcd843698078" + }, + { + "m_Id": "30ca940fe2794c949f2a1d4d2caaa446" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "facc84930f544fd7a0205a6176b18ac0", + "m_Id": 2, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "fb15d0ba56d54a6192f11e107aeb5fa8", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "fb5e1e2a67c14602808358686bb75091", + "m_Id": 0, + "m_DisplayName": "Width", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Width", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "fc2e62201c5847e798fd939314413fcd", + "m_Id": 4, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "fd0b096ed5b74f9e9ec51327be200731", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SampleTexture2DNode", + "m_ObjectId": "fdb77c3e92ee497b88ca5dc46dc45350", + "m_Group": { + "m_Id": "98934a69591249d5b8b92b39045359a3" + }, + "m_Name": "Sample Texture 2D", + "m_DrawState": { + "m_Expanded": false, + "m_Position": { + "serializedVersion": "2", + "x": -4208.0, + "y": -2371.0, + "width": 180.0, + "height": 180.0 + } + }, + "m_Slots": [ + { + "m_Id": "4328cdbf78b94c038fd614c59bfe1cac" + }, + { + "m_Id": "04dfcc9ff13a4bf282ed46faec39d15c" + }, + { + "m_Id": "71dd947935b64ce38f0d25406dde447b" + }, + { + "m_Id": "61a6ac5f29344d109411f26850ab0a96" + }, + { + "m_Id": "44806230fa384c1e95f9c5918a14f056" + }, + { + "m_Id": "4eb3c00a1ca44e10be833b7ca61ff059" + }, + { + "m_Id": "57abc172afd449e2a4d567f93432507b" + }, + { + "m_Id": "cda5e3b4c1054bf3a65c0b7ec6bc778a" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_TextureType": 0, + "m_NormalMapSpace": 0, + "m_EnableGlobalMipBias": true, + "m_MipSamplingMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector3MaterialSlot", + "m_ObjectId": "fe11fa80cc1847a5a37f6757d521cf25", + "m_Id": 5, + "m_DisplayName": "RGB", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGB", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [] +} + diff --git a/Assets/TextMesh Pro/Shaders/TMP_SDF-HDRP UNLIT.shadergraph.meta b/Assets/TextMesh Pro/Shaders/TMP_SDF-HDRP UNLIT.shadergraph.meta new file mode 100644 index 0000000000..a2f732a3c3 --- /dev/null +++ b/Assets/TextMesh Pro/Shaders/TMP_SDF-HDRP UNLIT.shadergraph.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: f63d574838ccfb44f84acc05fed0af48 +ScriptedImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 2 + userData: + assetBundleName: + assetBundleVariant: + script: {fileID: 11500000, guid: 625f186215c104763be7675aa2d941aa, type: 3} diff --git a/Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile Masking.shader b/Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile Masking.shader index 7019aaf4b0..603df2c767 100644 --- a/Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile Masking.shader +++ b/Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile Masking.shader @@ -6,14 +6,14 @@ Shader "TextMeshPro/Mobile/Distance Field - Masking" { Properties { - [HDR]_FaceColor ("Face Color", Color) = (1,1,1,1) + _FaceColor ("Face Color", Color) = (1,1,1,1) _FaceDilate ("Face Dilate", Range(-1,1)) = 0 - [HDR]_OutlineColor ("Outline Color", Color) = (0,0,0,1) + _OutlineColor ("Outline Color", Color) = (0,0,0,1) _OutlineWidth ("Outline Thickness", Range(0,1)) = 0 _OutlineSoftness ("Outline Softness", Range(0,1)) = 0 - [HDR]_UnderlayColor ("Border Color", Color) = (0,0,0,.5) + _UnderlayColor ("Border Color", Color) = (0,0,0,.5) _UnderlayOffsetX ("Border OffsetX", Range(-1,1)) = 0 _UnderlayOffsetY ("Border OffsetY", Range(-1,1)) = 0 _UnderlayDilate ("Border Dilate", Range(-1,1)) = 0 @@ -99,35 +99,41 @@ SubShader { #include "UnityUI.cginc" #include "TMPro_Properties.cginc" - struct vertex_t { + struct vertex_t + { float4 vertex : POSITION; float3 normal : NORMAL; fixed4 color : COLOR; - float2 texcoord0 : TEXCOORD0; + float4 texcoord0 : TEXCOORD0; float2 texcoord1 : TEXCOORD1; }; - struct pixel_t { + struct pixel_t + { float4 vertex : SV_POSITION; fixed4 faceColor : COLOR; fixed4 outlineColor : COLOR1; float4 texcoord0 : TEXCOORD0; // Texture UV, Mask UV half4 param : TEXCOORD1; // Scale(x), BiasIn(y), BiasOut(z), Bias(w) half4 mask : TEXCOORD2; // Position in clip space(xy), Softness(zw) - #if (UNDERLAY_ON | UNDERLAY_INNER) + + #if (UNDERLAY_ON | UNDERLAY_INNER) float4 texcoord1 : TEXCOORD3; // Texture UV, alpha, reserved half2 underlayParam : TEXCOORD4; // Scale(x), Bias(y) - #endif + #endif }; float _MaskWipeControl; float _MaskEdgeSoftness; fixed4 _MaskEdgeColor; bool _MaskInverse; + float _UIMaskSoftnessX; + float _UIMaskSoftnessY; + int _UIVertexColorAlwaysGammaSpace; pixel_t VertShader(vertex_t input) { - float bold = step(input.texcoord1.y, 0); + float bold = step(input.texcoord0.w, 0); float4 vert = input.vertex; vert.x += _VertexOffsetX; @@ -138,7 +144,7 @@ SubShader { pixelSize /= float2(_ScaleX, _ScaleY) * abs(mul((float2x2)UNITY_MATRIX_P, _ScreenParams.xy)); float scale = rsqrt(dot(pixelSize, pixelSize)); - scale *= abs(input.texcoord1.y) * _GradientScale * (_Sharpness + 1); + scale *= abs(input.texcoord0.w) * _GradientScale * (_Sharpness + 1); if(UNITY_MATRIX_P[3][3] == 0) scale = lerp(abs(scale) * (1 - _PerspectiveFilter), scale, abs(dot(UnityObjectToWorldNormal(input.normal.xyz), normalize(WorldSpaceViewDir(vert))))); float weight = lerp(_WeightNormal, _WeightBold, bold) / 4.0; @@ -150,6 +156,10 @@ SubShader { float bias = (0.5 - weight) * scale - 0.5; float outline = _OutlineWidth * _ScaleRatioA * 0.5 * scale; + if (_UIVertexColorAlwaysGammaSpace && !IsGammaSpace()) + { + input.color.rgb = UIGammaToLinear(input.color.rgb); + } float opacity = input.color.a; #if (UNDERLAY_ON | UNDERLAY_INNER) opacity = 1.0; @@ -163,7 +173,7 @@ SubShader { outlineColor.rgb *= outlineColor.a; outlineColor = lerp(faceColor, outlineColor, sqrt(min(1.0, (outline * 2)))); - #if (UNDERLAY_ON | UNDERLAY_INNER) + #if (UNDERLAY_ON | UNDERLAY_INNER) layerScale /= 1 + ((_UnderlaySoftness * _ScaleRatioC) * layerScale); float layerBias = (.5 - weight) * layerScale - .5 - ((_UnderlayDilate * _ScaleRatioC) * .5 * layerScale); @@ -171,11 +181,12 @@ SubShader { float x = -(_UnderlayOffsetX * _ScaleRatioC) * _GradientScale / _TextureWidth; float y = -(_UnderlayOffsetY * _ScaleRatioC) * _GradientScale / _TextureHeight; float2 layerOffset = float2(x, y); - #endif + #endif // Generate UV for the Masking Texture float4 clampedRect = clamp(_ClipRect, -2e10, 2e10); float2 maskUV = (vert.xy - clampedRect.xy) / (clampedRect.zw - clampedRect.xy); + const half2 maskSoftness = half2(max(_UIMaskSoftnessX, _MaskSoftnessX), max(_UIMaskSoftnessY, _MaskSoftnessY)); // Structure for pixel shader pixel_t output = { @@ -184,11 +195,11 @@ SubShader { outlineColor, float4(input.texcoord0.x, input.texcoord0.y, maskUV.x, maskUV.y), half4(scale, bias - outline, bias + outline, bias), - half4(vert.xy * 2 - clampedRect.xy - clampedRect.zw, 0.25 / (0.25 * half2(_MaskSoftnessX, _MaskSoftnessY) + pixelSize.xy)), - #if (UNDERLAY_ON | UNDERLAY_INNER) + half4(vert.xy * 2 - clampedRect.xy - clampedRect.zw, 0.25 / (0.25 * maskSoftness + pixelSize.xy)), + #if (UNDERLAY_ON | UNDERLAY_INNER) float4(input.texcoord0 + layerOffset, input.color.a, 0), half2(layerScale, layerBias), - #endif + #endif }; return output; @@ -201,41 +212,41 @@ SubShader { half d = tex2D(_MainTex, input.texcoord0.xy).a * input.param.x; half4 c = input.faceColor * saturate(d - input.param.w); - #ifdef OUTLINE_ON + #ifdef OUTLINE_ON c = lerp(input.outlineColor, input.faceColor, saturate(d - input.param.z)); c *= saturate(d - input.param.y); - #endif + #endif - #if UNDERLAY_ON + #if UNDERLAY_ON d = tex2D(_MainTex, input.texcoord1.xy).a * input.underlayParam.x; c += float4(_UnderlayColor.rgb * _UnderlayColor.a, _UnderlayColor.a) * saturate(d - input.underlayParam.y) * (1 - c.a); - #endif + #endif - #if UNDERLAY_INNER + #if UNDERLAY_INNER half sd = saturate(d - input.param.z); d = tex2D(_MainTex, input.texcoord1.xy).a * input.underlayParam.x; c += float4(_UnderlayColor.rgb * _UnderlayColor.a, _UnderlayColor.a) * (1 - saturate(d - input.underlayParam.y)) * sd * (1 - c.a); - #endif + #endif - // Alternative implementation to UnityGet2DClipping with support for softness. - //#if UNITY_UI_CLIP_RECT + // Alternative implementation to UnityGet2DClipping with support for softness. + //#if UNITY_UI_CLIP_RECT half2 m = saturate((_ClipRect.zw - _ClipRect.xy - abs(input.mask.xy)) * input.mask.zw); c *= m.x * m.y; - //#endif + //#endif - float a = abs(_MaskInverse - tex2D(_MaskTex, input.texcoord0.zw).a); - float t = a + (1 - _MaskWipeControl) * _MaskEdgeSoftness - _MaskWipeControl; - a = saturate(t / _MaskEdgeSoftness); - c.rgb = lerp(_MaskEdgeColor.rgb*c.a, c.rgb, a); - c *= a; + float a = abs(_MaskInverse - tex2D(_MaskTex, input.texcoord0.zw).a); + float t = a + (1 - _MaskWipeControl) * _MaskEdgeSoftness - _MaskWipeControl; + a = saturate(t / _MaskEdgeSoftness); + c.rgb = lerp(_MaskEdgeColor.rgb*c.a, c.rgb, a); + c *= a; - #if (UNDERLAY_ON | UNDERLAY_INNER) + #if (UNDERLAY_ON | UNDERLAY_INNER) c *= input.texcoord1.z; - #endif + #endif - #if UNITY_UI_ALPHACLIP + #if UNITY_UI_ALPHACLIP clip(c.a - 0.001); - #endif + #endif return c; } diff --git a/Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile Overlay.shader b/Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile Overlay.shader index ce82bed5d2..3edca76c6b 100644 --- a/Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile Overlay.shader +++ b/Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile Overlay.shader @@ -6,14 +6,14 @@ Shader "TextMeshPro/Mobile/Distance Field Overlay" { Properties { - [HDR]_FaceColor ("Face Color", Color) = (1,1,1,1) + _FaceColor ("Face Color", Color) = (1,1,1,1) _FaceDilate ("Face Dilate", Range(-1,1)) = 0 - [HDR]_OutlineColor ("Outline Color", Color) = (0,0,0,1) + _OutlineColor ("Outline Color", Color) = (0,0,0,1) _OutlineWidth ("Outline Thickness", Range(0,1)) = 0 _OutlineSoftness ("Outline Softness", Range(0,1)) = 0 - [HDR]_UnderlayColor ("Border Color", Color) = (0,0,0,.5) + _UnderlayColor ("Border Color", Color) = (0,0,0,.5) _UnderlayOffsetX ("Border OffsetX", Range(-1,1)) = 0 _UnderlayOffsetY ("Border OffsetY", Range(-1,1)) = 0 _UnderlayDilate ("Border Dilate", Range(-1,1)) = 0 @@ -93,16 +93,18 @@ SubShader { #include "UnityUI.cginc" #include "TMPro_Properties.cginc" - struct vertex_t { + struct vertex_t + { UNITY_VERTEX_INPUT_INSTANCE_ID float4 vertex : POSITION; float3 normal : NORMAL; fixed4 color : COLOR; - float2 texcoord0 : TEXCOORD0; + float4 texcoord0 : TEXCOORD0; float2 texcoord1 : TEXCOORD1; }; - struct pixel_t { + struct pixel_t + { UNITY_VERTEX_INPUT_INSTANCE_ID UNITY_VERTEX_OUTPUT_STEREO float4 vertex : SV_POSITION; @@ -111,12 +113,17 @@ SubShader { float4 texcoord0 : TEXCOORD0; // Texture UV, Mask UV half4 param : TEXCOORD1; // Scale(x), BiasIn(y), BiasOut(z), Bias(w) half4 mask : TEXCOORD2; // Position in clip space(xy), Softness(zw) - #if (UNDERLAY_ON | UNDERLAY_INNER) + + #if (UNDERLAY_ON | UNDERLAY_INNER) float4 texcoord1 : TEXCOORD3; // Texture UV, alpha, reserved half2 underlayParam : TEXCOORD4; // Scale(x), Bias(y) - #endif + #endif }; + float _UIMaskSoftnessX; + float _UIMaskSoftnessY; + int _UIVertexColorAlwaysGammaSpace; + pixel_t VertShader(vertex_t input) { @@ -127,7 +134,7 @@ SubShader { UNITY_TRANSFER_INSTANCE_ID(input, output); UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(output); - float bold = step(input.texcoord1.y, 0); + float bold = step(input.texcoord0.w, 0); float4 vert = input.vertex; vert.x += _VertexOffsetX; @@ -138,7 +145,7 @@ SubShader { pixelSize /= float2(_ScaleX, _ScaleY) * abs(mul((float2x2)UNITY_MATRIX_P, _ScreenParams.xy)); float scale = rsqrt(dot(pixelSize, pixelSize)); - scale *= abs(input.texcoord1.y) * _GradientScale * (_Sharpness + 1); + scale *= abs(input.texcoord0.w) * _GradientScale * (_Sharpness + 1); if(UNITY_MATRIX_P[3][3] == 0) scale = lerp(abs(scale) * (1 - _PerspectiveFilter), scale, abs(dot(UnityObjectToWorldNormal(input.normal.xyz), normalize(WorldSpaceViewDir(vert))))); float weight = lerp(_WeightNormal, _WeightBold, bold) / 4.0; @@ -150,10 +157,14 @@ SubShader { float bias = (0.5 - weight) * scale - 0.5; float outline = _OutlineWidth * _ScaleRatioA * 0.5 * scale; + if (_UIVertexColorAlwaysGammaSpace && !IsGammaSpace()) + { + input.color.rgb = UIGammaToLinear(input.color.rgb); + } float opacity = input.color.a; - #if (UNDERLAY_ON | UNDERLAY_INNER) + #if (UNDERLAY_ON | UNDERLAY_INNER) opacity = 1.0; - #endif + #endif fixed4 faceColor = fixed4(input.color.rgb, opacity) * _FaceColor; faceColor.rgb *= faceColor.a; @@ -163,14 +174,14 @@ SubShader { outlineColor.rgb *= outlineColor.a; outlineColor = lerp(faceColor, outlineColor, sqrt(min(1.0, (outline * 2)))); - #if (UNDERLAY_ON | UNDERLAY_INNER) + #if (UNDERLAY_ON | UNDERLAY_INNER) layerScale /= 1 + ((_UnderlaySoftness * _ScaleRatioC) * layerScale); float layerBias = (.5 - weight) * layerScale - .5 - ((_UnderlayDilate * _ScaleRatioC) * .5 * layerScale); float x = -(_UnderlayOffsetX * _ScaleRatioC) * _GradientScale / _TextureWidth; float y = -(_UnderlayOffsetY * _ScaleRatioC) * _GradientScale / _TextureHeight; float2 layerOffset = float2(x, y); - #endif + #endif // Generate UV for the Masking Texture float4 clampedRect = clamp(_ClipRect, -2e10, 2e10); @@ -182,7 +193,8 @@ SubShader { output.outlineColor = outlineColor; output.texcoord0 = float4(input.texcoord0.x, input.texcoord0.y, maskUV.x, maskUV.y); output.param = half4(scale, bias - outline, bias + outline, bias); - output.mask = half4(vert.xy * 2 - clampedRect.xy - clampedRect.zw, 0.25 / (0.25 * half2(_MaskSoftnessX, _MaskSoftnessY) + pixelSize.xy)); + const half2 maskSoftness = half2(max(_UIMaskSoftnessX, _MaskSoftnessX), max(_UIMaskSoftnessY, _MaskSoftnessY)); + output.mask = half4(vert.xy * 2 - clampedRect.xy - clampedRect.zw, 0.25 / (0.25 * maskSoftness + pixelSize.xy)); #if (UNDERLAY_ON || UNDERLAY_INNER) output.texcoord1 = float4(input.texcoord0 + layerOffset, input.color.a, 0); output.underlayParam = half2(layerScale, layerBias); @@ -200,35 +212,35 @@ SubShader { half d = tex2D(_MainTex, input.texcoord0.xy).a * input.param.x; half4 c = input.faceColor * saturate(d - input.param.w); - #ifdef OUTLINE_ON + #ifdef OUTLINE_ON c = lerp(input.outlineColor, input.faceColor, saturate(d - input.param.z)); c *= saturate(d - input.param.y); - #endif + #endif - #if UNDERLAY_ON + #if UNDERLAY_ON d = tex2D(_MainTex, input.texcoord1.xy).a * input.underlayParam.x; c += float4(_UnderlayColor.rgb * _UnderlayColor.a, _UnderlayColor.a) * saturate(d - input.underlayParam.y) * (1 - c.a); - #endif + #endif - #if UNDERLAY_INNER + #if UNDERLAY_INNER half sd = saturate(d - input.param.z); d = tex2D(_MainTex, input.texcoord1.xy).a * input.underlayParam.x; c += float4(_UnderlayColor.rgb * _UnderlayColor.a, _UnderlayColor.a) * (1 - saturate(d - input.underlayParam.y)) * sd * (1 - c.a); - #endif + #endif - // Alternative implementation to UnityGet2DClipping with support for softness. - #if UNITY_UI_CLIP_RECT + // Alternative implementation to UnityGet2DClipping with support for softness. + #if UNITY_UI_CLIP_RECT half2 m = saturate((_ClipRect.zw - _ClipRect.xy - abs(input.mask.xy)) * input.mask.zw); c *= m.x * m.y; - #endif + #endif - #if (UNDERLAY_ON | UNDERLAY_INNER) + #if (UNDERLAY_ON | UNDERLAY_INNER) c *= input.texcoord1.z; - #endif + #endif - #if UNITY_UI_ALPHACLIP + #if UNITY_UI_ALPHACLIP clip(c.a - 0.001); - #endif + #endif return c; } diff --git a/Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile SSD.shader b/Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile SSD.shader index df4d5b0b0f..43b317d3fb 100644 --- a/Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile SSD.shader +++ b/Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile SSD.shader @@ -6,14 +6,14 @@ Shader "TextMeshPro/Mobile/Distance Field SSD" { Properties { - [HDR]_FaceColor ("Face Color", Color) = (1,1,1,1) + _FaceColor ("Face Color", Color) = (1,1,1,1) _FaceDilate ("Face Dilate", Range(-1,1)) = 0 - [HDR]_OutlineColor ("Outline Color", Color) = (0,0,0,1) + _OutlineColor ("Outline Color", Color) = (0,0,0,1) _OutlineWidth ("Outline Thickness", Range(0,1)) = 0 _OutlineSoftness ("Outline Softness", Range(0,1)) = 0 - [HDR]_UnderlayColor ("Border Color", Color) = (0,0,0,.5) + _UnderlayColor ("Border Color", Color) = (0,0,0,.5) _UnderlayOffsetX ("Border OffsetX", Range(-1,1)) = 0 _UnderlayOffsetY ("Border OffsetY", Range(-1,1)) = 0 _UnderlayDilate ("Border Dilate", Range(-1,1)) = 0 diff --git a/Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile-2-Pass.shader b/Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile-2-Pass.shader new file mode 100644 index 0000000000..2c8e8dad9b --- /dev/null +++ b/Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile-2-Pass.shader @@ -0,0 +1,389 @@ +// Simplified SDF shader: +// - No Shading Option (bevel / bump / env map) +// - No Glow Option +// - Softness is applied on both side of the outline + +Shader "TextMeshPro/Mobile/Distance Field - 2 Pass" { + +Properties { + _FaceColor ("Face Color", Color) = (1,1,1,1) + _FaceDilate ("Face Dilate", Range(-1,1)) = 0 + + _OutlineColor ("Outline Color", Color) = (0,0,0,1) + _OutlineWidth ("Outline Thickness", Range(0,1)) = 0 + _OutlineSoftness ("Outline Softness", Range(0,1)) = 0 + + _UnderlayColor ("Border Color", Color) = (0,0,0,.5) + _UnderlayOffsetX ("Border OffsetX", Range(-1,1)) = 0 + _UnderlayOffsetY ("Border OffsetY", Range(-1,1)) = 0 + _UnderlayDilate ("Border Dilate", Range(-1,1)) = 0 + _UnderlaySoftness ("Border Softness", Range(0,1)) = 0 + + _WeightNormal ("Weight Normal", float) = 0 + _WeightBold ("Weight Bold", float) = .5 + + _ShaderFlags ("Flags", float) = 0 + _ScaleRatioA ("Scale RatioA", float) = 1 + _ScaleRatioB ("Scale RatioB", float) = 1 + _ScaleRatioC ("Scale RatioC", float) = 1 + + _MainTex ("Font Atlas", 2D) = "white" {} + _TextureWidth ("Texture Width", float) = 512 + _TextureHeight ("Texture Height", float) = 512 + _GradientScale ("Gradient Scale", float) = 5 + _ScaleX ("Scale X", float) = 1 + _ScaleY ("Scale Y", float) = 1 + _PerspectiveFilter ("Perspective Correction", Range(0, 1)) = 0.875 + _Sharpness ("Sharpness", Range(-1,1)) = 0 + + _VertexOffsetX ("Vertex OffsetX", float) = 0 + _VertexOffsetY ("Vertex OffsetY", float) = 0 + + _ClipRect ("Clip Rect", vector) = (-32767, -32767, 32767, 32767) + _MaskSoftnessX ("Mask SoftnessX", float) = 0 + _MaskSoftnessY ("Mask SoftnessY", float) = 0 + + _StencilComp ("Stencil Comparison", Float) = 8 + _Stencil ("Stencil ID", Float) = 0 + _StencilOp ("Stencil Operation", Float) = 0 + _StencilWriteMask ("Stencil Write Mask", Float) = 255 + _StencilReadMask ("Stencil Read Mask", Float) = 255 + + _CullMode ("Cull Mode", Float) = 0 + _ColorMask ("Color Mask", Float) = 15 +} + +SubShader { + + // Draw Outline and Underlay + Name "Outline" + + Tags + { + "Queue"="Transparent" + "IgnoreProjector"="True" + "RenderType"="Transparent" + } + + Stencil + { + Ref [_Stencil] + Comp [_StencilComp] + Pass [_StencilOp] + ReadMask [_StencilReadMask] + WriteMask [_StencilWriteMask] + } + + Cull [_CullMode] + ZWrite Off + Lighting Off + Fog { Mode Off } + ZTest [unity_GUIZTestMode] + Blend One OneMinusSrcAlpha + ColorMask [_ColorMask] + + Pass { + CGPROGRAM + #pragma vertex VertShader + #pragma fragment PixShader + #pragma shader_feature __ OUTLINE_ON + #pragma shader_feature __ UNDERLAY_ON UNDERLAY_INNER + + #pragma multi_compile __ UNITY_UI_CLIP_RECT + #pragma multi_compile __ UNITY_UI_ALPHACLIP + + #include "UnityCG.cginc" + #include "UnityUI.cginc" + #include "TMPro_Properties.cginc" + + struct vertex_t { + UNITY_VERTEX_INPUT_INSTANCE_ID + float4 vertex : POSITION; + float3 normal : NORMAL; + fixed4 color : COLOR; + float4 texcoord0 : TEXCOORD0; + float2 texcoord1 : TEXCOORD1; + }; + + struct pixel_t { + UNITY_VERTEX_INPUT_INSTANCE_ID + UNITY_VERTEX_OUTPUT_STEREO + float4 vertex : SV_POSITION; + fixed4 faceColor : COLOR; + fixed4 outlineColor : COLOR1; + float4 texcoord0 : TEXCOORD0; // Texture UV, Mask UV + half4 param : TEXCOORD1; // Scale(x), BiasIn(y), BiasOut(z), Bias(w) + half4 mask : TEXCOORD2; // Position in clip space(xy), Softness(zw) + #if (UNDERLAY_ON | UNDERLAY_INNER) + float4 texcoord1 : TEXCOORD3; // Texture UV, alpha, reserved + half2 underlayParam : TEXCOORD4; // Scale(x), Bias(y) + #endif + }; + + float _UIMaskSoftnessX; + float _UIMaskSoftnessY; + + pixel_t VertShader(vertex_t input) + { + pixel_t output; + + UNITY_INITIALIZE_OUTPUT(pixel_t, output); + UNITY_SETUP_INSTANCE_ID(input); + UNITY_TRANSFER_INSTANCE_ID(input, output); + UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(output); + + const float bold = step(input.texcoord0.w, 0); + + float4 vert = input.vertex; + vert.x += _VertexOffsetX; + vert.y += _VertexOffsetY; + float4 vPosition = UnityObjectToClipPos(vert); + + float2 pixelSize = vPosition.w; + pixelSize /= float2(_ScaleX, _ScaleY) * abs(mul((float2x2)UNITY_MATRIX_P, _ScreenParams.xy)); + + float scale = rsqrt(dot(pixelSize, pixelSize)); + scale *= abs(input.texcoord0.w) * _GradientScale * (_Sharpness + 1); + if(UNITY_MATRIX_P[3][3] == 0) scale = lerp(abs(scale) * (1 - _PerspectiveFilter), scale, abs(dot(UnityObjectToWorldNormal(input.normal.xyz), normalize(WorldSpaceViewDir(vert))))); + + float weight = lerp(_WeightNormal, _WeightBold, bold) / 4.0; + weight = (weight + _FaceDilate) * _ScaleRatioA * 0.5; + + float layerScale = scale; + + scale /= 1 + (_OutlineSoftness * _ScaleRatioA * scale); + float bias = (0.5 - weight) * scale - 0.5; + const float outline = _OutlineWidth * _ScaleRatioA * 0.5 * scale; + + float opacity = input.color.a; + #if (UNDERLAY_ON | UNDERLAY_INNER) + opacity = 1.0; + #endif + + fixed4 faceColor = fixed4(input.color.rgb, opacity) * _FaceColor; + faceColor.rgb *= faceColor.a; + + fixed4 outlineColor = _OutlineColor; + outlineColor.a *= opacity; + outlineColor.rgb *= outlineColor.a; + //outlineColor = lerp(faceColor, outlineColor, sqrt(min(1.0, outline * 2))); + + #if (UNDERLAY_ON | UNDERLAY_INNER) + layerScale /= 1 + ((_UnderlaySoftness * _ScaleRatioC) * layerScale); + float layerBias = (.5 - weight) * layerScale - .5 - ((_UnderlayDilate * _ScaleRatioC) * .5 * layerScale); + + float x = -(_UnderlayOffsetX * _ScaleRatioC) * _GradientScale / _TextureWidth; + float y = -(_UnderlayOffsetY * _ScaleRatioC) * _GradientScale / _TextureHeight; + float2 layerOffset = float2(x, y); + #endif + + // Generate UV for the Masking Texture + float4 clampedRect = clamp(_ClipRect, -2e10, 2e10); + float2 maskUV = (vert.xy - clampedRect.xy) / (clampedRect.zw - clampedRect.xy); + + // Populate structure for pixel shader + output.vertex = vPosition; + output.faceColor = faceColor; + output.outlineColor = outlineColor; + output.texcoord0 = float4(input.texcoord0.x, input.texcoord0.y, maskUV.x, maskUV.y); + output.param = half4(scale, bias - outline, bias + outline, bias); + + const half2 maskSoftness = half2(max(_UIMaskSoftnessX, _MaskSoftnessX), max(_UIMaskSoftnessY, _MaskSoftnessY)); + output.mask = half4(vert.xy * 2 - clampedRect.xy - clampedRect.zw, 0.25 / (0.25 * maskSoftness + pixelSize.xy)); + #if (UNDERLAY_ON || UNDERLAY_INNER) + output.texcoord1 = float4(input.texcoord0 + layerOffset, input.color.a, 0); + output.underlayParam = half2(layerScale, layerBias); + #endif + + return output; + } + + + // PIXEL SHADER + fixed4 PixShader(pixel_t input) : SV_Target + { + UNITY_SETUP_INSTANCE_ID(input); + + half d = tex2D(_MainTex, input.texcoord0.xy).a * input.param.x; + half4 c = half4(0, 0, 0, 0); + + #if OUTLINE_ON + c = input.outlineColor * saturate(d - input.param.y); + #endif + + #if UNDERLAY_ON + d = tex2D(_MainTex, input.texcoord1.xy).a * input.underlayParam.x; + c += float4(_UnderlayColor.rgb * _UnderlayColor.a, _UnderlayColor.a) * saturate(d - input.underlayParam.y) * (1 - c.a); + #endif + + #if UNDERLAY_INNER + half sd = saturate(d - input.param.z); + d = tex2D(_MainTex, input.texcoord1.xy).a * input.underlayParam.x; + c += float4(_UnderlayColor.rgb * _UnderlayColor.a, _UnderlayColor.a) * (1 - saturate(d - input.underlayParam.y)) * sd * (1 - c.a); + #endif + + // Alternative implementation to UnityGet2DClipping with support for softness. + #if UNITY_UI_CLIP_RECT + half2 m = saturate((_ClipRect.zw - _ClipRect.xy - abs(input.mask.xy)) * input.mask.zw); + c *= m.x * m.y; + #endif + + #if (UNDERLAY_ON | UNDERLAY_INNER) + c *= input.texcoord1.z; + #endif + + #if UNITY_UI_ALPHACLIP + clip(c.a - 0.001); + #endif + + return c; + } + ENDCG + } + + + // Draw face + Name "Face" + + Tags + { + "Queue"="Transparent" + "IgnoreProjector"="True" + "RenderType"="Transparent" + } + + Stencil + { + Ref [_Stencil] + Comp [_StencilComp] + Pass [_StencilOp] + ReadMask [_StencilReadMask] + WriteMask [_StencilWriteMask] + } + + Cull [_CullMode] + ZWrite Off + Lighting Off + Fog { Mode Off } + ZTest [unity_GUIZTestMode] + Blend One OneMinusSrcAlpha + ColorMask [_ColorMask] + + Pass { + CGPROGRAM + #pragma vertex VertShader + #pragma fragment PixShader + + #pragma multi_compile __ UNITY_UI_CLIP_RECT + #pragma multi_compile __ UNITY_UI_ALPHACLIP + + #include "UnityCG.cginc" + #include "UnityUI.cginc" + #include "TMPro_Properties.cginc" + + struct vertex_t { + UNITY_VERTEX_INPUT_INSTANCE_ID + float4 vertex : POSITION; + float3 normal : NORMAL; + fixed4 color : COLOR; + float4 texcoord0 : TEXCOORD0; + float2 texcoord1 : TEXCOORD1; + }; + + struct pixel_t { + UNITY_VERTEX_INPUT_INSTANCE_ID + UNITY_VERTEX_OUTPUT_STEREO + float4 vertex : SV_POSITION; + fixed4 faceColor : COLOR; + float4 texcoord0 : TEXCOORD0; // Texture UV, Mask UV + half2 param : TEXCOORD1; // Scale(x), BiasIn(y), BiasOut(z), Bias(w) + half4 mask : TEXCOORD2; // Position in clip space(xy), Softness(zw) + }; + + float _UIMaskSoftnessX; + float _UIMaskSoftnessY; + int _UIVertexColorAlwaysGammaSpace; + + + pixel_t VertShader(vertex_t input) + { + pixel_t output; + + UNITY_INITIALIZE_OUTPUT(pixel_t, output); + UNITY_SETUP_INSTANCE_ID(input); + UNITY_TRANSFER_INSTANCE_ID(input, output); + UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(output); + + const float bold = step(input.texcoord0.w, 0); + + float4 vert = input.vertex; + vert.x += _VertexOffsetX; + vert.y += _VertexOffsetY; + float4 vPosition = UnityObjectToClipPos(vert); + + float2 pixelSize = vPosition.w; + pixelSize /= float2(_ScaleX, _ScaleY) * abs(mul((float2x2)UNITY_MATRIX_P, _ScreenParams.xy)); + + float scale = rsqrt(dot(pixelSize, pixelSize)); + scale *= abs(input.texcoord0.w) * _GradientScale * (_Sharpness + 1); + if(UNITY_MATRIX_P[3][3] == 0) scale = lerp(abs(scale) * (1 - _PerspectiveFilter), scale, abs(dot(UnityObjectToWorldNormal(input.normal.xyz), normalize(WorldSpaceViewDir(vert))))); + + float weight = lerp(_WeightNormal, _WeightBold, bold) / 4.0; + weight = (weight + _FaceDilate) * _ScaleRatioA * 0.5; + + scale /= 1 + (_OutlineSoftness * _ScaleRatioA * scale); + float bias = (0.5 - weight) * scale - 0.5; + + if (_UIVertexColorAlwaysGammaSpace && !IsGammaSpace()) + { + input.color.rgb = UIGammaToLinear(input.color.rgb); + } + float opacity = input.color.a; + + fixed4 faceColor = fixed4(input.color.rgb, opacity) * _FaceColor; + faceColor.rgb *= faceColor.a; + + // Generate UV for the Masking Texture + float4 clampedRect = clamp(_ClipRect, -2e10, 2e10); + float2 maskUV = (vert.xy - clampedRect.xy) / (clampedRect.zw - clampedRect.xy); + + // Populate structure for pixel shader + output.vertex = vPosition; + output.faceColor = faceColor; + output.texcoord0 = float4(input.texcoord0.x, input.texcoord0.y, maskUV.x, maskUV.y); + output.param = half2(scale, bias); + + const half2 maskSoftness = half2(max(_UIMaskSoftnessX, _MaskSoftnessX), max(_UIMaskSoftnessY, _MaskSoftnessY)); + output.mask = half4(vert.xy * 2 - clampedRect.xy - clampedRect.zw, 0.25 / (0.25 * maskSoftness + pixelSize.xy)); + + return output; + } + + + // PIXEL SHADER + fixed4 PixShader(pixel_t input) : SV_Target + { + UNITY_SETUP_INSTANCE_ID(input); + + half d = tex2D(_MainTex, input.texcoord0.xy).a * input.param.x; + half4 c = input.faceColor * saturate(d - input.param.y); + + // Alternative implementation to UnityGet2DClipping with support for softness. + #if UNITY_UI_CLIP_RECT + half2 m = saturate((_ClipRect.zw - _ClipRect.xy - abs(input.mask.xy)) * input.mask.zw); + c *= m.x * m.y; + #endif + + #if UNITY_UI_ALPHACLIP + clip(c.a - 0.001); + #endif + + return c; + } + ENDCG + } + +} + +CustomEditor "TMPro.EditorUtilities.TMP_SDFShaderGUI" +} diff --git a/Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile-2-Pass.shader.meta b/Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile-2-Pass.shader.meta new file mode 100644 index 0000000000..75bd98d82a --- /dev/null +++ b/Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile-2-Pass.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 0178fcb869bafef4690d177d31d17db8 +ShaderImporter: + externalObjects: {} + defaultTextures: [] + nonModifiableTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile.shader b/Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile.shader index d3f5866c87..b899d6e9d7 100644 --- a/Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile.shader +++ b/Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile.shader @@ -6,14 +6,14 @@ Shader "TextMeshPro/Mobile/Distance Field" { Properties { - [HDR]_FaceColor ("Face Color", Color) = (1,1,1,1) + _FaceColor ("Face Color", Color) = (1,1,1,1) _FaceDilate ("Face Dilate", Range(-1,1)) = 0 - [HDR]_OutlineColor ("Outline Color", Color) = (0,0,0,1) + _OutlineColor ("Outline Color", Color) = (0,0,0,1) _OutlineWidth ("Outline Thickness", Range(0,1)) = 0 _OutlineSoftness ("Outline Softness", Range(0,1)) = 0 - [HDR]_UnderlayColor ("Border Color", Color) = (0,0,0,.5) + _UnderlayColor ("Border Color", Color) = (0,0,0,.5) _UnderlayOffsetX ("Border OffsetX", Range(-1,1)) = 0 _UnderlayOffsetY ("Border OffsetY", Range(-1,1)) = 0 _UnderlayDilate ("Border Dilate", Range(-1,1)) = 0 @@ -81,6 +81,7 @@ SubShader { Pass { CGPROGRAM + #pragma enable_d3d11_debug_symbols #pragma vertex VertShader #pragma fragment PixShader #pragma shader_feature __ OUTLINE_ON @@ -98,7 +99,7 @@ SubShader { float4 vertex : POSITION; float3 normal : NORMAL; fixed4 color : COLOR; - float2 texcoord0 : TEXCOORD0; + float4 texcoord0 : TEXCOORD0; float2 texcoord1 : TEXCOORD1; }; @@ -117,6 +118,9 @@ SubShader { #endif }; + float _UIMaskSoftnessX; + float _UIMaskSoftnessY; + int _UIVertexColorAlwaysGammaSpace; pixel_t VertShader(vertex_t input) { @@ -127,7 +131,7 @@ SubShader { UNITY_TRANSFER_INSTANCE_ID(input, output); UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(output); - float bold = step(input.texcoord1.y, 0); + float bold = step(input.texcoord0.w, 0); float4 vert = input.vertex; vert.x += _VertexOffsetX; @@ -138,7 +142,7 @@ SubShader { pixelSize /= float2(_ScaleX, _ScaleY) * abs(mul((float2x2)UNITY_MATRIX_P, _ScreenParams.xy)); float scale = rsqrt(dot(pixelSize, pixelSize)); - scale *= abs(input.texcoord1.y) * _GradientScale * (_Sharpness + 1); + scale *= abs(input.texcoord0.w) * _GradientScale * (_Sharpness + 1); if(UNITY_MATRIX_P[3][3] == 0) scale = lerp(abs(scale) * (1 - _PerspectiveFilter), scale, abs(dot(UnityObjectToWorldNormal(input.normal.xyz), normalize(WorldSpaceViewDir(vert))))); float weight = lerp(_WeightNormal, _WeightBold, bold) / 4.0; @@ -150,7 +154,11 @@ SubShader { float bias = (0.5 - weight) * scale - 0.5; float outline = _OutlineWidth * _ScaleRatioA * 0.5 * scale; - float opacity = input.color.a; + if (_UIVertexColorAlwaysGammaSpace && !IsGammaSpace()) + { + input.color.rgb = UIGammaToLinear(input.color.rgb); + } + float opacity = input.color.a; #if (UNDERLAY_ON | UNDERLAY_INNER) opacity = 1.0; #endif @@ -182,7 +190,9 @@ SubShader { output.outlineColor = outlineColor; output.texcoord0 = float4(input.texcoord0.x, input.texcoord0.y, maskUV.x, maskUV.y); output.param = half4(scale, bias - outline, bias + outline, bias); - output.mask = half4(vert.xy * 2 - clampedRect.xy - clampedRect.zw, 0.25 / (0.25 * half2(_MaskSoftnessX, _MaskSoftnessY) + pixelSize.xy)); + + const half2 maskSoftness = half2(max(_UIMaskSoftnessX, _MaskSoftnessX), max(_UIMaskSoftnessY, _MaskSoftnessY)); + output.mask = half4(vert.xy * 2 - clampedRect.xy - clampedRect.zw, 0.25 / (0.25 * maskSoftness + pixelSize.xy)); #if (UNDERLAY_ON || UNDERLAY_INNER) output.texcoord1 = float4(input.texcoord0 + layerOffset, input.color.a, 0); output.underlayParam = half2(layerScale, layerBias); diff --git a/Assets/TextMesh Pro/Shaders/TMP_SDF-Surface-Mobile.shader b/Assets/TextMesh Pro/Shaders/TMP_SDF-Surface-Mobile.shader index be764aeb95..68d0dfaafc 100644 --- a/Assets/TextMesh Pro/Shaders/TMP_SDF-Surface-Mobile.shader +++ b/Assets/TextMesh Pro/Shaders/TMP_SDF-Surface-Mobile.shader @@ -7,15 +7,15 @@ Shader "TextMeshPro/Mobile/Distance Field (Surface)" { Properties { _FaceTex ("Fill Texture", 2D) = "white" {} - [HDR]_FaceColor ("Fill Color", Color) = (1,1,1,1) + _FaceColor ("Fill Color", Color) = (1,1,1,1) _FaceDilate ("Face Dilate", Range(-1,1)) = 0 - [HDR]_OutlineColor ("Outline Color", Color) = (0,0,0,1) + _OutlineColor ("Outline Color", Color) = (0,0,0,1) _OutlineTex ("Outline Texture", 2D) = "white" {} _OutlineWidth ("Outline Thickness", Range(0, 1)) = 0 _OutlineSoftness ("Outline Softness", Range(0,1)) = 0 - [HDR]_GlowColor ("Color", Color) = (0, 1, 0, 0.5) + _GlowColor ("Color", Color) = (0, 1, 0, 0.5) _GlowOffset ("Offset", Range(-1,1)) = 0 _GlowInner ("Inner", Range(0,1)) = 0.05 _GlowOuter ("Outer", Range(0,1)) = 0.05 @@ -99,7 +99,8 @@ SubShader { #pragma multi_compile_shadowcaster #include "UnityCG.cginc" - struct v2f { + struct v2f + { V2F_SHADOW_CASTER; float2 uv : TEXCOORD1; float2 uv2 : TEXCOORD3; diff --git a/Assets/TextMesh Pro/Shaders/TMP_SDF-Surface.shader b/Assets/TextMesh Pro/Shaders/TMP_SDF-Surface.shader index bcb2bb273a..281e60db73 100644 --- a/Assets/TextMesh Pro/Shaders/TMP_SDF-Surface.shader +++ b/Assets/TextMesh Pro/Shaders/TMP_SDF-Surface.shader @@ -4,10 +4,10 @@ Properties { _FaceTex ("Fill Texture", 2D) = "white" {} _FaceUVSpeedX ("Face UV Speed X", Range(-5, 5)) = 0.0 _FaceUVSpeedY ("Face UV Speed Y", Range(-5, 5)) = 0.0 - [HDR]_FaceColor ("Fill Color", Color) = (1,1,1,1) + _FaceColor ("Fill Color", Color) = (1,1,1,1) _FaceDilate ("Face Dilate", Range(-1,1)) = 0 - [HDR]_OutlineColor ("Outline Color", Color) = (0,0,0,1) + _OutlineColor ("Outline Color", Color) = (0,0,0,1) _OutlineTex ("Outline Texture", 2D) = "white" {} _OutlineUVSpeedX ("Outline UV Speed X", Range(-5, 5)) = 0.0 _OutlineUVSpeedY ("Outline UV Speed Y", Range(-5, 5)) = 0.0 @@ -28,12 +28,12 @@ Properties { _ReflectOutlineColor ("Outline Color", Color) = (0,0,0,1) _Cube ("Reflection Cubemap", Cube) = "black" { /* TexGen CubeReflect */ } _EnvMatrixRotation ("Texture Rotation", vector) = (0, 0, 0, 0) - [HDR]_SpecColor ("Specular Color", Color) = (0,0,0,1) + _SpecColor ("Specular Color", Color) = (0,0,0,1) _FaceShininess ("Face Shininess", Range(0,1)) = 0 _OutlineShininess ("Outline Shininess", Range(0,1)) = 0 - [HDR]_GlowColor ("Color", Color) = (0, 1, 0, 0.5) + _GlowColor ("Color", Color) = (0, 1, 0, 0.5) _GlowOffset ("Offset", Range(-1,1)) = 0 _GlowInner ("Inner", Range(0,1)) = 0.05 _GlowOuter ("Outer", Range(0,1)) = 0.05 @@ -118,7 +118,8 @@ SubShader { #pragma multi_compile_shadowcaster #include "UnityCG.cginc" - struct v2f { + struct v2f + { V2F_SHADOW_CASTER; float2 uv : TEXCOORD1; float2 uv2 : TEXCOORD3; diff --git a/Assets/TextMesh Pro/Shaders/TMP_SDF-URP Lit.shadergraph b/Assets/TextMesh Pro/Shaders/TMP_SDF-URP Lit.shadergraph new file mode 100644 index 0000000000..7922d39342 --- /dev/null +++ b/Assets/TextMesh Pro/Shaders/TMP_SDF-URP Lit.shadergraph @@ -0,0 +1,11932 @@ +{ + "m_SGVersion": 3, + "m_Type": "UnityEditor.ShaderGraph.GraphData", + "m_ObjectId": "386c36a1c4c34ea29deb680fb82cfe8b", + "m_Properties": [ + { + "m_Id": "dc75c4e3a1bc4bb0a128086c2b0679a5" + }, + { + "m_Id": "867a4ae13c0d4a028c71bc1063824c14" + }, + { + "m_Id": "22b7f3c2bb7b48c0a7fdeb50e33e7d5e" + }, + { + "m_Id": "53073e5ea924459fa6681a4943e9f947" + }, + { + "m_Id": "7a046f410ce64aa88438b0bfd412c045" + }, + { + "m_Id": "636180f6e0504f2baaa5cc086980cb47" + }, + { + "m_Id": "74b41464cbed4e9e8e23af5ab9be40cf" + }, + { + "m_Id": "8ed907a2cc7949b68a283ae243ea1977" + }, + { + "m_Id": "cb3c0c3f08654b068bea44c4ffb15f4a" + }, + { + "m_Id": "0580d4b7e3a049049569f4508643a724" + }, + { + "m_Id": "c9ec735d1a1046769e5601b2c97c849a" + }, + { + "m_Id": "2d0a269511e34bd1ba9056d2c939dff2" + }, + { + "m_Id": "07946387933e416db576b677f0711e5f" + }, + { + "m_Id": "46fbf3eeb0ea4470869cba7443249295" + }, + { + "m_Id": "ec79eb447dfd47a9b3380344c6a60f43" + }, + { + "m_Id": "3fdf4b7bc5d4426492dcc057603ef4a6" + }, + { + "m_Id": "8cf8aae64c1d443f9303126886b40f17" + }, + { + "m_Id": "49e7c3ad55ce458797f0e60c950cb965" + }, + { + "m_Id": "81e8ed0534534674a74263e6161a2a1a" + }, + { + "m_Id": "952d0fa5cd744df0b434cd38e9a90b93" + }, + { + "m_Id": "21a7a380e66d42e780e2a2a1baa630d5" + }, + { + "m_Id": "2c10b97b92c947ceb307a93759c0228b" + }, + { + "m_Id": "1be90d4f96a841748b0c95219b12ad27" + }, + { + "m_Id": "5fbe253f3e444f2aa8ac717f9c856619" + }, + { + "m_Id": "5bd258837c514ff7ab0bf7027e762c18" + }, + { + "m_Id": "998db5e5901e45b29040eb2099370071" + }, + { + "m_Id": "a6c38edd2e8743a9b057ba8452b9f129" + }, + { + "m_Id": "82af2db1018543d7832af96c1cfc981f" + }, + { + "m_Id": "3ec4797e381747829ef4712c85fcf7a1" + }, + { + "m_Id": "b0b352c4503a43d083a64e57352b29a0" + }, + { + "m_Id": "424dbeeb009344efa29c304c4979e3d6" + }, + { + "m_Id": "05805bc6fcc941fd889922555c6c86d7" + }, + { + "m_Id": "a4ad98d8828c424384229c344ebe2ed0" + }, + { + "m_Id": "3e372195f4bd4845852a37839e5b602d" + }, + { + "m_Id": "a6bbb32e8d884be9bb36db91fe4b81b1" + }, + { + "m_Id": "59a09f50a7ca4cd3a0d248a0f3730b6a" + } + ], + "m_Keywords": [], + "m_Dropdowns": [], + "m_CategoryData": [ + { + "m_Id": "7c73ccc923e744b98f19148b971a6090" + } + ], + "m_Nodes": [ + { + "m_Id": "b1188549725543d485436c2e921ffbb2" + }, + { + "m_Id": "4488af8ff6a7421298a7e827f567263b" + }, + { + "m_Id": "7e0fadb2533f496192c1ad3e78642010" + }, + { + "m_Id": "aa87c72ac0e64469acc34f936f00b3d0" + }, + { + "m_Id": "105b1ed1aa714e41bbe1ef5472bdb11f" + }, + { + "m_Id": "150533bad8e2424aaa2c74e253af8592" + }, + { + "m_Id": "1c4df61c2fea404eb3b87b270d7c59bc" + }, + { + "m_Id": "8135ca333f8f4ea78163743e6ec1f55c" + }, + { + "m_Id": "36f1b4d96f2941c39e5cd95d9c1d2ce6" + }, + { + "m_Id": "9c228fac287d446296b91a4acf5cec59" + }, + { + "m_Id": "52798bdb86f6400e86489a7a368e9f8b" + }, + { + "m_Id": "f383b24f0bc6434dafe44b3e3d338a63" + }, + { + "m_Id": "85a1ad8e741e41759002e8cdc8cd0b96" + }, + { + "m_Id": "f3d31c1f18d8491a8ecf5cbc37e4b7db" + }, + { + "m_Id": "f23a8b2b7c85478388ff7a8c8a6de740" + }, + { + "m_Id": "e818605f8f5a4f01bf61caaa33693581" + }, + { + "m_Id": "85b5940eb77e4625812ded7215bab8d7" + }, + { + "m_Id": "cdddee3a537c464697357f11b966f9b8" + }, + { + "m_Id": "88253223d2c34ecfab92b0c344048f94" + }, + { + "m_Id": "c7ddee91dc5b48dc828309c77fdb0b88" + }, + { + "m_Id": "1e12726617b24675958e942eb62e4b09" + }, + { + "m_Id": "2ac79705aa9e415dbb74ec215233fd1b" + }, + { + "m_Id": "44317f2e371447e2a8d894f8a021a235" + }, + { + "m_Id": "7984fd094e1147bdabb4e26fbd3d31c8" + }, + { + "m_Id": "91890fe48ebe4717aea61ecaf3ad4861" + }, + { + "m_Id": "19075add867e4757b9520d18fe8de1d0" + }, + { + "m_Id": "fdb77c3e92ee497b88ca5dc46dc45350" + }, + { + "m_Id": "c234e5216678436195ee1a5914bc79da" + }, + { + "m_Id": "4648b46ad29a4008a80de4f8a5a5b813" + }, + { + "m_Id": "59bd90a849624124bae6464ee3669aa6" + }, + { + "m_Id": "a535f3bcbeb14622bb177eb6f46e76f4" + }, + { + "m_Id": "9e87ce9607e14015a3790c528ca5dfda" + }, + { + "m_Id": "285f6a9863d54ed2a8150727ad749456" + }, + { + "m_Id": "b163c9f1666644b0bba62cf0e12df7bc" + }, + { + "m_Id": "a455bd79094c4413a7b7dd80ca8b9368" + }, + { + "m_Id": "dbcb748279484a4590e53518c49122b8" + }, + { + "m_Id": "04dc152dd2ba4d519391577eb1156235" + }, + { + "m_Id": "9f0de188085746d5a19073da1de85ddb" + }, + { + "m_Id": "ec184d6d9fb2494897774c9e7d279e6d" + }, + { + "m_Id": "95928bcb6a284b8d88105a84c2e1d3ce" + }, + { + "m_Id": "4f194ff591484e908fc2bcdacbcf2570" + }, + { + "m_Id": "6e8946a245e842b38231d4a241bfb3ef" + }, + { + "m_Id": "cb7117ecb1d047a8b2cb00ed552cb181" + }, + { + "m_Id": "3c50439118b2496f9e390021b0964606" + }, + { + "m_Id": "3e231021af7b47ba97f2871e7f25d0fe" + }, + { + "m_Id": "aa3e347d733e48f7b65d8a8847370eec" + }, + { + "m_Id": "2a552a0b828f457c911aa19561e410ae" + }, + { + "m_Id": "acd0cd5a177f4a97bf23db7219305e3f" + }, + { + "m_Id": "51378bae98a94c309785d14cd5cbb453" + }, + { + "m_Id": "9e6e50a71d9843b49b62ebe1cf7d3d59" + }, + { + "m_Id": "7444469eb9884253819add9ef96baa25" + }, + { + "m_Id": "67a519f507384ff1861df5d8d5b486be" + }, + { + "m_Id": "48390d02257d41bf98eace1deaa4c539" + }, + { + "m_Id": "f4ecc442a2d246759f7c2c0412953d28" + }, + { + "m_Id": "7f2e6b5f15364ed9835d67d0cf4f8f65" + }, + { + "m_Id": "aca823a8188948c782eddaf0f45e1868" + }, + { + "m_Id": "7d78a616c2754cc28d1f32cf66ade611" + }, + { + "m_Id": "163beb4431c34f538340bc0af0991e6f" + }, + { + "m_Id": "39f2f84f30304d859fb07569e2695f60" + }, + { + "m_Id": "42a586e4f6ec40eeaba891b7fd133864" + }, + { + "m_Id": "4abff6ff92fa4a05b203f10580988335" + }, + { + "m_Id": "319916a5921343f7b7eef0e50dc93def" + }, + { + "m_Id": "f814deb543c24fbbafbcdb5071d96022" + }, + { + "m_Id": "65c8e64a7535466e933eed08a2f77532" + }, + { + "m_Id": "63c7cd57fc3c45a9a97b514fdae32693" + }, + { + "m_Id": "d4df208fc23b42f2b52364124f1b661c" + }, + { + "m_Id": "9d3c3383d5934a17bf9efbb7fd9e9043" + }, + { + "m_Id": "aef5c44f84e04c3185e0b93e95e34204" + }, + { + "m_Id": "c9d7f0dbae7d422985a1cc87c025e76b" + }, + { + "m_Id": "faace8101df943d8956faa31728cb004" + }, + { + "m_Id": "007c75c776ac4f1babe9cd7ae1fc4f14" + }, + { + "m_Id": "b571db753a1948d5a6f1de4e7d0c7238" + }, + { + "m_Id": "9147636b0cfa466a9b37a013d8f693bf" + }, + { + "m_Id": "bc9afcb18afa4ccc82d2cdc34d3f4641" + }, + { + "m_Id": "b4a40cb6acd441acb83cfe0240bf910d" + }, + { + "m_Id": "56c25395796e4d2fbe5c892d428d1620" + }, + { + "m_Id": "6b2f65c1463f4f7bad16c54a95d2fe75" + }, + { + "m_Id": "109f638d1f9b49d4991d6d21a86d4eb7" + }, + { + "m_Id": "dff7a66b353a4023b29c9d937da77960" + }, + { + "m_Id": "7a80e8839f0e4a1d9a6c0814f8793ee6" + }, + { + "m_Id": "7d7696aa6d184b4fb9c316a9dec37aee" + }, + { + "m_Id": "ec1f2e8bc9fd4ae38b133c60ee6c49b8" + }, + { + "m_Id": "2db15d90c2204143b225ec4ef08d0755" + }, + { + "m_Id": "86e21b7b6b7a44238607e41b8a9fb9a4" + }, + { + "m_Id": "0c10df95ee1d4b0a8a00558af49ec45f" + }, + { + "m_Id": "e591df3a1eb94e259b762f2830b407e2" + }, + { + "m_Id": "83c51d5b2f7b4eb785248f419181cb87" + }, + { + "m_Id": "ad3e1d26f4404555a8dd29223caaf1ef" + } + ], + "m_GroupDatas": [ + { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + { + "m_Id": "d0a791a544614667962a9a9a9ce0c68a" + }, + { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + { + "m_Id": "ecf16c34d46f4502ac601f0c38c7576b" + }, + { + "m_Id": "98934a69591249d5b8b92b39045359a3" + }, + { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + { + "m_Id": "d258902c6ec74942afdb9ebf8c1d07f8" + }, + { + "m_Id": "daaf032a109749a88c9b8ff8e1f8b541" + } + ], + "m_StickyNoteDatas": [], + "m_Edges": [ + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "007c75c776ac4f1babe9cd7ae1fc4f14" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "b571db753a1948d5a6f1de4e7d0c7238" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "04dc152dd2ba4d519391577eb1156235" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "b163c9f1666644b0bba62cf0e12df7bc" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "105b1ed1aa714e41bbe1ef5472bdb11f" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "b4a40cb6acd441acb83cfe0240bf910d" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "109f638d1f9b49d4991d6d21a86d4eb7" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "ec1f2e8bc9fd4ae38b133c60ee6c49b8" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "150533bad8e2424aaa2c74e253af8592" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "319916a5921343f7b7eef0e50dc93def" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "150533bad8e2424aaa2c74e253af8592" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "65c8e64a7535466e933eed08a2f77532" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "150533bad8e2424aaa2c74e253af8592" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "9c228fac287d446296b91a4acf5cec59" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "150533bad8e2424aaa2c74e253af8592" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "f814deb543c24fbbafbcdb5071d96022" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "163beb4431c34f538340bc0af0991e6f" + }, + "m_SlotId": 4 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "7984fd094e1147bdabb4e26fbd3d31c8" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "19075add867e4757b9520d18fe8de1d0" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "e818605f8f5a4f01bf61caaa33693581" + }, + "m_SlotId": 5 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "1c4df61c2fea404eb3b87b270d7c59bc" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "e818605f8f5a4f01bf61caaa33693581" + }, + "m_SlotId": 4 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "1e12726617b24675958e942eb62e4b09" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "dff7a66b353a4023b29c9d937da77960" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "285f6a9863d54ed2a8150727ad749456" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "59bd90a849624124bae6464ee3669aa6" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "2a552a0b828f457c911aa19561e410ae" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "51378bae98a94c309785d14cd5cbb453" + }, + "m_SlotId": 6 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "2ac79705aa9e415dbb74ec215233fd1b" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "7984fd094e1147bdabb4e26fbd3d31c8" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "2db15d90c2204143b225ec4ef08d0755" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "fdb77c3e92ee497b88ca5dc46dc45350" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "319916a5921343f7b7eef0e50dc93def" + }, + "m_SlotId": 7 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "4abff6ff92fa4a05b203f10580988335" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "36f1b4d96f2941c39e5cd95d9c1d2ce6" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "85a1ad8e741e41759002e8cdc8cd0b96" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "39f2f84f30304d859fb07569e2695f60" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "163beb4431c34f538340bc0af0991e6f" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "3e231021af7b47ba97f2871e7f25d0fe" + }, + "m_SlotId": 5 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "6e8946a245e842b38231d4a241bfb3ef" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "42a586e4f6ec40eeaba891b7fd133864" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "cdddee3a537c464697357f11b966f9b8" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "44317f2e371447e2a8d894f8a021a235" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "2ac79705aa9e415dbb74ec215233fd1b" + }, + "m_SlotId": 3 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "4488af8ff6a7421298a7e827f567263b" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "44317f2e371447e2a8d894f8a021a235" + }, + "m_SlotId": 3 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "4648b46ad29a4008a80de4f8a5a5b813" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "c234e5216678436195ee1a5914bc79da" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "4abff6ff92fa4a05b203f10580988335" + }, + "m_SlotId": 4 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "e818605f8f5a4f01bf61caaa33693581" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "4f194ff591484e908fc2bcdacbcf2570" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "9f0de188085746d5a19073da1de85ddb" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "51378bae98a94c309785d14cd5cbb453" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "aa3e347d733e48f7b65d8a8847370eec" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "51378bae98a94c309785d14cd5cbb453" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "aca823a8188948c782eddaf0f45e1868" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "52798bdb86f6400e86489a7a368e9f8b" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "f383b24f0bc6434dafe44b3e3d338a63" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "56c25395796e4d2fbe5c892d428d1620" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "7a80e8839f0e4a1d9a6c0814f8793ee6" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "59bd90a849624124bae6464ee3669aa6" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "f23a8b2b7c85478388ff7a8c8a6de740" + }, + "m_SlotId": 4 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "63c7cd57fc3c45a9a97b514fdae32693" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "56c25395796e4d2fbe5c892d428d1620" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "65c8e64a7535466e933eed08a2f77532" + }, + "m_SlotId": 7 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "4abff6ff92fa4a05b203f10580988335" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "67a519f507384ff1861df5d8d5b486be" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "51378bae98a94c309785d14cd5cbb453" + }, + "m_SlotId": 4 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "6b2f65c1463f4f7bad16c54a95d2fe75" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "7d7696aa6d184b4fb9c316a9dec37aee" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "7444469eb9884253819add9ef96baa25" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "51378bae98a94c309785d14cd5cbb453" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "7984fd094e1147bdabb4e26fbd3d31c8" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "91890fe48ebe4717aea61ecaf3ad4861" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "7a80e8839f0e4a1d9a6c0814f8793ee6" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "65c8e64a7535466e933eed08a2f77532" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "7d7696aa6d184b4fb9c316a9dec37aee" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "319916a5921343f7b7eef0e50dc93def" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "7d78a616c2754cc28d1f32cf66ade611" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "f23a8b2b7c85478388ff7a8c8a6de740" + }, + "m_SlotId": 3 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "7e0fadb2533f496192c1ad3e78642010" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "88253223d2c34ecfab92b0c344048f94" + }, + "m_SlotId": 5 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "8135ca333f8f4ea78163743e6ec1f55c" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "f23a8b2b7c85478388ff7a8c8a6de740" + }, + "m_SlotId": 5 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "85a1ad8e741e41759002e8cdc8cd0b96" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "88253223d2c34ecfab92b0c344048f94" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "85a1ad8e741e41759002e8cdc8cd0b96" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "e818605f8f5a4f01bf61caaa33693581" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "85b5940eb77e4625812ded7215bab8d7" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "f23a8b2b7c85478388ff7a8c8a6de740" + }, + "m_SlotId": 6 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "88253223d2c34ecfab92b0c344048f94" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "44317f2e371447e2a8d894f8a021a235" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "9147636b0cfa466a9b37a013d8f693bf" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "faace8101df943d8956faa31728cb004" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "91890fe48ebe4717aea61ecaf3ad4861" + }, + "m_SlotId": 1 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "3e231021af7b47ba97f2871e7f25d0fe" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "91890fe48ebe4717aea61ecaf3ad4861" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "3e231021af7b47ba97f2871e7f25d0fe" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "91890fe48ebe4717aea61ecaf3ad4861" + }, + "m_SlotId": 3 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "3e231021af7b47ba97f2871e7f25d0fe" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "91890fe48ebe4717aea61ecaf3ad4861" + }, + "m_SlotId": 4 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "cb7117ecb1d047a8b2cb00ed552cb181" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "95928bcb6a284b8d88105a84c2e1d3ce" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "a455bd79094c4413a7b7dd80ca8b9368" + }, + "m_SlotId": 4 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "9c228fac287d446296b91a4acf5cec59" + }, + "m_SlotId": 7 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "4abff6ff92fa4a05b203f10580988335" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "9d3c3383d5934a17bf9efbb7fd9e9043" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "7a80e8839f0e4a1d9a6c0814f8793ee6" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "9d3c3383d5934a17bf9efbb7fd9e9043" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "7d7696aa6d184b4fb9c316a9dec37aee" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "9d3c3383d5934a17bf9efbb7fd9e9043" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "ec1f2e8bc9fd4ae38b133c60ee6c49b8" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "9e6e50a71d9843b49b62ebe1cf7d3d59" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "acd0cd5a177f4a97bf23db7219305e3f" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "9e87ce9607e14015a3790c528ca5dfda" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "c234e5216678436195ee1a5914bc79da" + }, + "m_SlotId": 4 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "9f0de188085746d5a19073da1de85ddb" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "7d78a616c2754cc28d1f32cf66ade611" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "a455bd79094c4413a7b7dd80ca8b9368" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "b163c9f1666644b0bba62cf0e12df7bc" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "a535f3bcbeb14622bb177eb6f46e76f4" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "c234e5216678436195ee1a5914bc79da" + }, + "m_SlotId": 3 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "aa3e347d733e48f7b65d8a8847370eec" + }, + "m_SlotId": 1 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "2ac79705aa9e415dbb74ec215233fd1b" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "aa87c72ac0e64469acc34f936f00b3d0" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "88253223d2c34ecfab92b0c344048f94" + }, + "m_SlotId": 4 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "acd0cd5a177f4a97bf23db7219305e3f" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "51378bae98a94c309785d14cd5cbb453" + }, + "m_SlotId": 5 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "acd0cd5a177f4a97bf23db7219305e3f" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "51378bae98a94c309785d14cd5cbb453" + }, + "m_SlotId": 7 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "aef5c44f84e04c3185e0b93e95e34204" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "109f638d1f9b49d4991d6d21a86d4eb7" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "b1188549725543d485436c2e921ffbb2" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "7d78a616c2754cc28d1f32cf66ade611" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "b163c9f1666644b0bba62cf0e12df7bc" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "9f0de188085746d5a19073da1de85ddb" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "b4a40cb6acd441acb83cfe0240bf910d" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "dff7a66b353a4023b29c9d937da77960" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "b571db753a1948d5a6f1de4e7d0c7238" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "bc9afcb18afa4ccc82d2cdc34d3f4641" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "b571db753a1948d5a6f1de4e7d0c7238" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "bc9afcb18afa4ccc82d2cdc34d3f4641" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "bc9afcb18afa4ccc82d2cdc34d3f4641" + }, + "m_SlotId": 6 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "faace8101df943d8956faa31728cb004" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "c234e5216678436195ee1a5914bc79da" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "fdb77c3e92ee497b88ca5dc46dc45350" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "c7ddee91dc5b48dc828309c77fdb0b88" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "88253223d2c34ecfab92b0c344048f94" + }, + "m_SlotId": 3 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "c9d7f0dbae7d422985a1cc87c025e76b" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "e818605f8f5a4f01bf61caaa33693581" + }, + "m_SlotId": 6 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "cdddee3a537c464697357f11b966f9b8" + }, + "m_SlotId": 7 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "88253223d2c34ecfab92b0c344048f94" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "d4df208fc23b42f2b52364124f1b661c" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "6b2f65c1463f4f7bad16c54a95d2fe75" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "dbcb748279484a4590e53518c49122b8" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "a455bd79094c4413a7b7dd80ca8b9368" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "dff7a66b353a4023b29c9d937da77960" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "cdddee3a537c464697357f11b966f9b8" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "e818605f8f5a4f01bf61caaa33693581" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "f23a8b2b7c85478388ff7a8c8a6de740" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "ec184d6d9fb2494897774c9e7d279e6d" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "a455bd79094c4413a7b7dd80ca8b9368" + }, + "m_SlotId": 3 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "ec1f2e8bc9fd4ae38b133c60ee6c49b8" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "f814deb543c24fbbafbcdb5071d96022" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "f23a8b2b7c85478388ff7a8c8a6de740" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "aa3e347d733e48f7b65d8a8847370eec" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "f383b24f0bc6434dafe44b3e3d338a63" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "85a1ad8e741e41759002e8cdc8cd0b96" + }, + "m_SlotId": 3 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "f3d31c1f18d8491a8ecf5cbc37e4b7db" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "e818605f8f5a4f01bf61caaa33693581" + }, + "m_SlotId": 3 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "f814deb543c24fbbafbcdb5071d96022" + }, + "m_SlotId": 7 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "4abff6ff92fa4a05b203f10580988335" + }, + "m_SlotId": 3 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "faace8101df943d8956faa31728cb004" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "109f638d1f9b49d4991d6d21a86d4eb7" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "faace8101df943d8956faa31728cb004" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "56c25395796e4d2fbe5c892d428d1620" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "faace8101df943d8956faa31728cb004" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "6b2f65c1463f4f7bad16c54a95d2fe75" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "faace8101df943d8956faa31728cb004" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "b4a40cb6acd441acb83cfe0240bf910d" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "fdb77c3e92ee497b88ca5dc46dc45350" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "59bd90a849624124bae6464ee3669aa6" + }, + "m_SlotId": 1 + } + } + ], + "m_VertexContext": { + "m_Position": { + "x": -2506.000244140625, + "y": -3749.0 + }, + "m_Blocks": [ + { + "m_Id": "48390d02257d41bf98eace1deaa4c539" + }, + { + "m_Id": "f4ecc442a2d246759f7c2c0412953d28" + }, + { + "m_Id": "7f2e6b5f15364ed9835d67d0cf4f8f65" + } + ] + }, + "m_FragmentContext": { + "m_Position": { + "x": -2506.000244140625, + "y": -3480.0 + }, + "m_Blocks": [ + { + "m_Id": "aca823a8188948c782eddaf0f45e1868" + }, + { + "m_Id": "6e8946a245e842b38231d4a241bfb3ef" + }, + { + "m_Id": "cb7117ecb1d047a8b2cb00ed552cb181" + }, + { + "m_Id": "3c50439118b2496f9e390021b0964606" + }, + { + "m_Id": "86e21b7b6b7a44238607e41b8a9fb9a4" + }, + { + "m_Id": "0c10df95ee1d4b0a8a00558af49ec45f" + }, + { + "m_Id": "e591df3a1eb94e259b762f2830b407e2" + }, + { + "m_Id": "83c51d5b2f7b4eb785248f419181cb87" + }, + { + "m_Id": "ad3e1d26f4404555a8dd29223caaf1ef" + } + ] + }, + "m_PreviewData": { + "serializedMesh": { + "m_SerializedMesh": "{\"mesh\":{\"fileID\":10210,\"guid\":\"0000000000000000e000000000000000\",\"type\":0}}", + "m_Guid": "" + }, + "preventRotation": false + }, + "m_Path": "TextMeshPro/SRP", + "m_GraphPrecision": 0, + "m_PreviewMode": 2, + "m_OutputNode": { + "m_Id": "" + }, + "m_ActiveTargets": [ + { + "m_Id": "94300469581b4924ac7dda496811d45d" + } + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "007c75c776ac4f1babe9cd7ae1fc4f14", + "m_Group": { + "m_Id": "daaf032a109749a88c9b8ff8e1f8b541" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5722.99951171875, + "y": -3827.0, + "width": 134.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "1356dc7cbdfa4199a6535d3bbf4cd536" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "3e372195f4bd4845852a37839e5b602d" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.GroupData", + "m_ObjectId": "013228b0fdf1424097798f0973a9a4fb", + "m_Title": "Face Texture", + "m_Position": { + "x": -4813.0, + "y": -2949.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "02559cbe5ad441a3904ccb75ded2b2c5", + "m_Id": 5, + "m_DisplayName": "Color2", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Color2", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "03182b3263304258b265266325c21f65", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "045c4f6b050549c7a0efb208e6349779", + "m_Id": 7, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "04dc152dd2ba4d519391577eb1156235", + "m_Group": { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4536.00048828125, + "y": -2723.000244140625, + "width": 151.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "3d04f5ba6e7b40d281f22eb424145acd" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "c9ec735d1a1046769e5601b2c97c849a" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "04dfcc9ff13a4bf282ed46faec39d15c", + "m_Id": 4, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "05805bc6fcc941fd889922555c6c86d7", + "m_Guid": { + "m_GuidSerialized": "fe84e680-4cee-4ca5-be86-2e293a9ba093" + }, + "m_Name": "Ambient Shadow", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_05805bc6fcc941fd889922555c6c86d7", + "m_OverrideReferenceName": "_Ambient", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.30000001192092898, + "m_FloatType": 1, + "m_RangeValues": { + "x": 0.0, + "y": 1.0 + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector4ShaderProperty", + "m_ObjectId": "0580d4b7e3a049049569f4508643a724", + "m_Guid": { + "m_GuidSerialized": "eefb88c5-7665-45dc-b3c2-7cf98b9990d6" + }, + "m_Name": "Softness", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector4_D64EC33D", + "m_OverrideReferenceName": "_Softness", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "068ae649e00b40e198ec5a30ad741fab", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "0699eea947fc426cbfeb8744cf120222", + "m_Id": 1, + "m_DisplayName": "Color", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Color", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector4ShaderProperty", + "m_ObjectId": "07946387933e416db576b677f0711e5f", + "m_Guid": { + "m_GuidSerialized": "21d612fb-8153-41f8-9e2f-9de044c19fbf" + }, + "m_Name": "_FaceTex_ST", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector4_1A08AD4A", + "m_OverrideReferenceName": "_FaceTex_ST", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "x": 2.0, + "y": 2.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "0801f576ce79452483b42e485405244d", + "m_Id": 0, + "m_DisplayName": "Smoothness", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Smoothness", + "m_StageCapability": 2, + "m_Value": 0.5, + "m_DefaultValue": 0.5, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "082e9706dffc4c188270980d4e44ce0f", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "0848ba750e0341198cf0bbd413e0efe4", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "09b1b86c1c074337a4c439d3a308dd2e", + "m_Id": 7, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "0a67ca5280214bd794dc0ad66b5710a9", + "m_Id": 4, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "0b57f2d35157477ab2b29a5aac14ae8b", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "0ba4932e164847878ddb7b7bcff96985", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "0c10df95ee1d4b0a8a00558af49ec45f", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.NormalTS", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "a0206f980dc6455f84f5a8442838c726" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.NormalTS" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "0c4dc51f26484c26ad88a3fe4002abcd", + "m_Id": 2, + "m_DisplayName": "Color (1)", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Color", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "0d6a57754b824f6db9cefa6953bc06a9", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "e00": 2.0, + "e01": 2.0, + "e02": 2.0, + "e03": 2.0, + "e10": 2.0, + "e11": 2.0, + "e12": 2.0, + "e13": 2.0, + "e20": 2.0, + "e21": 2.0, + "e22": 2.0, + "e23": 2.0, + "e30": 2.0, + "e31": 2.0, + "e32": 2.0, + "e33": 2.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "0d7878dd226d4cfb81a991dc312309fc", + "m_Id": 0, + "m_DisplayName": "Underlay Dilate", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "0f7ffb6d2de4447f9736780cbcee8e07", + "m_Id": 4, + "m_DisplayName": "AnimSpeed", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "AnimSpeed", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "0fac35636fca4474a6afaefc3c757775", + "m_Id": 1, + "m_DisplayName": "Alpha", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Alpha", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "105b1ed1aa714e41bbe1ef5472bdb11f", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4923.99951171875, + "y": -4233.0, + "width": 158.99998474121095, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "8a08179f99d649d289b8053d5fa0ad22" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "49e7c3ad55ce458797f0e60c950cb965" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.MultiplyNode", + "m_ObjectId": "109f638d1f9b49d4991d6d21a86d4eb7", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Multiply", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5098.99951171875, + "y": -3182.0, + "width": 130.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "880bb02c6c6b49b18aa6ebc66dc566a0" + }, + { + "m_Id": "1b9cd8f5f4004e2eaf8afbaab803bc04" + }, + { + "m_Id": "b224a1cf80604103ad085c799995f3c2" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "10a99c07aad742349d258db16838c129", + "m_Id": 1, + "m_DisplayName": "Alpha", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Alpha", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "1196ae398cc348349ab0c1a23fdab4bd", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "129f271ebc77450994e18f0a30579bf5", + "m_Id": 3, + "m_DisplayName": "Texel Width", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Texel Width", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DMaterialSlot", + "m_ObjectId": "1356dc7cbdfa4199a6535d3bbf4cd536", + "m_Id": 0, + "m_DisplayName": "_MainTex", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "14ad19bf20a140dd88d58452d7df688b", + "m_Id": 5, + "m_DisplayName": "Softness", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Softness", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 1.0, + "z": 1.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "150533bad8e2424aaa2c74e253af8592", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4955.0, + "y": -3487.0, + "width": 134.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "72fb5a0d7796446b9e2b929cb32facdc" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "3e372195f4bd4845852a37839e5b602d" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SplitNode", + "m_ObjectId": "163beb4431c34f538340bc0af0991e6f", + "m_Group": { + "m_Id": "ecf16c34d46f4502ac601f0c38c7576b" + }, + "m_Name": "Split", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -3284.0, + "y": -3516.0, + "width": 119.99999237060547, + "height": 149.0 + } + }, + "m_Slots": [ + { + "m_Id": "4c334de01ecd429baa7652fc6002536b" + }, + { + "m_Id": "e2d28f29bbac4983a401574480b5ca28" + }, + { + "m_Id": "6a7af6143e114a538663e71f56731a21" + }, + { + "m_Id": "3e25be96bb3747738c238cf3a741d5df" + }, + { + "m_Id": "4907352322c644ebacdf2ca30f2994fd" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "19075add867e4757b9520d18fe8de1d0", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4292.0, + "y": -3213.000244140625, + "width": 124.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "4c28ee9109014fa086e5de7a3993341d" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "0580d4b7e3a049049569f4508643a724" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "1b9cd8f5f4004e2eaf8afbaab803bc04", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "e00": 2.0, + "e01": 2.0, + "e02": 2.0, + "e03": 2.0, + "e10": 2.0, + "e11": 2.0, + "e12": 2.0, + "e13": 2.0, + "e20": 2.0, + "e21": 2.0, + "e22": 2.0, + "e23": 2.0, + "e30": 2.0, + "e31": 2.0, + "e32": 2.0, + "e33": 2.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "1bdde3efd3b7464b8934c555be0f8a48", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "1be90d4f96a841748b0c95219b12ad27", + "m_Guid": { + "m_GuidSerialized": "4c91c146-43bb-4de8-948a-fbf8b1da10e1" + }, + "m_Name": "Bevel Offset", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_97690701", + "m_OverrideReferenceName": "_BevelOffset", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 1, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.0, + "m_FloatType": 1, + "m_RangeValues": { + "x": -0.5, + "y": 0.5 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "1c4df61c2fea404eb3b87b270d7c59bc", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4316.0, + "y": -3247.000244140625, + "width": 148.00001525878907, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "f864c900600e427ba7793f00c715e971" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "867a4ae13c0d4a028c71bc1063824c14" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "1d35fa1fb5004f96a65ace54fbe4f1ad", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "1db37082bf844442804487b4944352de", + "m_Id": 4, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DMaterialSlot", + "m_ObjectId": "1df58cfa4dad4c449d01ee1c5ea05f2e", + "m_Id": 0, + "m_DisplayName": "_MainTex", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVNode", + "m_ObjectId": "1e12726617b24675958e942eb62e4b09", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "UV", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4772.0, + "y": -4404.0, + "width": 145.00001525878907, + "height": 130.0 + } + }, + "m_Slots": [ + { + "m_Id": "0848ba750e0341198cf0bbd413e0efe4" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_OutputChannel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "1f247658c7ba45fb93c41f51e21acb0d", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "1f46181633594ae0a1fb2adb76b42981", + "m_Id": 5, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "200245fc8bbe4826b209ab5f7ffe074c", + "m_Id": 3, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "204dacb5a95b424facf11cb6f65bd188", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BooleanMaterialSlot", + "m_ObjectId": "215a82c127204988b751de7d3a39b955", + "m_Id": 6, + "m_DisplayName": "Outline", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Outline", + "m_StageCapability": 3, + "m_Value": false, + "m_DefaultValue": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SamplerStateMaterialSlot", + "m_ObjectId": "215b30ae27784ec3a13360a9029af283", + "m_Id": 3, + "m_DisplayName": "Sampler", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Sampler", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Internal.BooleanShaderProperty", + "m_ObjectId": "21a7a380e66d42e780e2a2a1baa630d5", + "m_Guid": { + "m_GuidSerialized": "b2d0099f-e605-49f5-9959-e7cacae37aa3" + }, + "m_Name": "Bevel Type", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Boolean_21a7a380e66d42e780e2a2a1baa630d5", + "m_OverrideReferenceName": "_BevelType", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": false +} + +{ + "m_SGVersion": 3, + "m_Type": "UnityEditor.ShaderGraph.Internal.ColorShaderProperty", + "m_ObjectId": "22b7f3c2bb7b48c0a7fdeb50e33e7d5e", + "m_Guid": { + "m_GuidSerialized": "cd167d3a-7465-4d5a-86fc-0f22dc0ef908" + }, + "m_Name": "Outline Color 1", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Color_5550EB71", + "m_OverrideReferenceName": "_OutlineColor1", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "r": 0.0, + "g": 1.0, + "b": 1.0, + "a": 1.0 + }, + "isMainColor": false, + "m_ColorMode": 1 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "232b1aa09e67479abae141d3c76d3c5b", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "256d41e89a204d22951450de1c38051d", + "m_Id": 0, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector3MaterialSlot", + "m_ObjectId": "26e48352a08441bfa694dcea54c06e36", + "m_Id": 5, + "m_DisplayName": "RGB", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGB", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [ + "X", + "Y", + "Z" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "281bcee4777040f8a31ee0e10344e98d", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "285f6a9863d54ed2a8150727ad749456", + "m_Group": { + "m_Id": "98934a69591249d5b8b92b39045359a3" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4181.99951171875, + "y": -2415.0, + "width": 154.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "b42e6dbfbc864097af182cbff5c0c1fb" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "22b7f3c2bb7b48c0a7fdeb50e33e7d5e" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.IsFrontFaceNode", + "m_ObjectId": "2a552a0b828f457c911aa19561e410ae", + "m_Group": { + "m_Id": "d258902c6ec74942afdb9ebf8c1d07f8" + }, + "m_Name": "Is Front Face", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4282.0, + "y": -3681.3330078125, + "width": 121.99999237060547, + "height": 77.33348846435547 + } + }, + "m_Slots": [ + { + "m_Id": "2ef1d888dc9d49e59d6a6950897ddc93" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.CustomFunctionNode", + "m_ObjectId": "2ac79705aa9e415dbb74ec215233fd1b", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Composite (Custom Function)", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -3350.0, + "y": -3810.0, + "width": 213.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "a75f7ac601c446469802fe7754c1f279" + }, + { + "m_Id": "8c38a5d8327f456e9783740c05382619" + }, + { + "m_Id": "facc84930f544fd7a0205a6176b18ac0" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SourceType": 0, + "m_FunctionName": "Composite", + "m_FunctionSource": "96de908384869cd409c75efa351d5edf", + "m_FunctionBody": "Enter function body here..." +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "2b01ea3023e34c94af1754e4dcea8f2e", + "m_Id": 0, + "m_DisplayName": "Face Color", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BooleanMaterialSlot", + "m_ObjectId": "2bf5f2fdd2984599b7323d10cfb1d240", + "m_Id": 1, + "m_DisplayName": "Filter", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Filter", + "m_StageCapability": 3, + "m_Value": false, + "m_DefaultValue": false +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "2c10b97b92c947ceb307a93759c0228b", + "m_Guid": { + "m_GuidSerialized": "6be0b8ff-a766-4c6b-a6e4-3a72758ac95f" + }, + "m_Name": "Bevel Amount", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_B01DD93E", + "m_OverrideReferenceName": "_BevelAmount", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 1, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.0, + "m_FloatType": 1, + "m_RangeValues": { + "x": 0.0, + "y": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "2c7a9460724b47daad8df1be144de7c6", + "m_Id": 3, + "m_DisplayName": "Transform", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Transform", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector2ShaderProperty", + "m_ObjectId": "2d0a269511e34bd1ba9056d2c939dff2", + "m_Guid": { + "m_GuidSerialized": "edbe73dc-53ab-4bc1-9d64-ab36e0e05f03" + }, + "m_Name": "_FaceUVSpeed", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector2_3A8E0F13", + "m_OverrideReferenceName": "_FaceUVSpeed", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "2db15d90c2204143b225ec4ef08d0755", + "m_Group": { + "m_Id": "98934a69591249d5b8b92b39045359a3" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4387.00048828125, + "y": -2381.0, + "width": 163.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "def8e0b9d8384982bc5b4c32d877e458" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "46fbf3eeb0ea4470869cba7443249295" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "2e4eb1ef08bb44178c82e53872485e0f", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BooleanMaterialSlot", + "m_ObjectId": "2ef1d888dc9d49e59d6a6950897ddc93", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 2, + "m_Value": true, + "m_DefaultValue": true +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "30ca940fe2794c949f2a1d4d2caaa446", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SampleTexture2DNode", + "m_ObjectId": "319916a5921343f7b7eef0e50dc93def", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Sample Texture 2D", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4791.0, + "y": -3245.0, + "width": 183.99998474121095, + "height": 253.0 + } + }, + "m_Slots": [ + { + "m_Id": "d219977210094c0082c517d8dc00c8bb" + }, + { + "m_Id": "f48f04ad45d046a8b88e71731ed506e7" + }, + { + "m_Id": "e6e80c6b0db545cda26b079a9a78fbb3" + }, + { + "m_Id": "c6bdb985bc16435fa72f5a3c81bb633c" + }, + { + "m_Id": "d1a17e42e7a04dc38984e3c01149445b" + }, + { + "m_Id": "fb15d0ba56d54a6192f11e107aeb5fa8" + }, + { + "m_Id": "c35312edaa2344788b1964ee2f63a236" + }, + { + "m_Id": "c88fcbaeea954a5f9c68c339fa8b604d" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_TextureType": 0, + "m_NormalMapSpace": 0, + "m_EnableGlobalMipBias": true, + "m_MipSamplingMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "34a67e0fef884f9399e674d9eeaf720c", + "m_Id": 6, + "m_DisplayName": "Color3", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Color3", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "34a72a5ebb04402384a4fd3748111a37", + "m_Id": 0, + "m_DisplayName": "Alpha Clip Threshold", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "AlphaClipThreshold", + "m_StageCapability": 2, + "m_Value": 0.0010000000474974514, + "m_DefaultValue": 0.5, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DMaterialSlot", + "m_ObjectId": "3535ae87c6dd4769b52b20d9eca61069", + "m_Id": 0, + "m_DisplayName": "_MainTex", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SamplerStateMaterialSlot", + "m_ObjectId": "35cbea6373dd4e4f8d0fea36e8add392", + "m_Id": 3, + "m_DisplayName": "Sampler", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Sampler", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "36a0c473c4c04c3a930dd38f3920d410", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "e00": 2.0, + "e01": 2.0, + "e02": 2.0, + "e03": 2.0, + "e10": 2.0, + "e11": 2.0, + "e12": 2.0, + "e13": 2.0, + "e20": 2.0, + "e21": 2.0, + "e22": 2.0, + "e23": 2.0, + "e30": 2.0, + "e31": 2.0, + "e32": 2.0, + "e33": 2.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVNode", + "m_ObjectId": "36f1b4d96f2941c39e5cd95d9c1d2ce6", + "m_Group": { + "m_Id": "d0a791a544614667962a9a9a9ce0c68a" + }, + "m_Name": "UV", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -6008.99951171875, + "y": -3341.0, + "width": 144.99998474121095, + "height": 130.0 + } + }, + "m_Slots": [ + { + "m_Id": "65b3dc13b2b6484283ffe5abfe87a06a" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_OutputChannel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "373f1de8db6c429c9d46c781f741d7a4", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "e00": 2.0, + "e01": 2.0, + "e02": 2.0, + "e03": 2.0, + "e10": 2.0, + "e11": 2.0, + "e12": 2.0, + "e13": 2.0, + "e20": 2.0, + "e21": 2.0, + "e22": 2.0, + "e23": 2.0, + "e30": 2.0, + "e31": 2.0, + "e32": 2.0, + "e33": 2.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "3802c81c3be24823aa1d7c9997a33c29", + "m_Id": 2, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "3915c1927ffe49f8967304321cfbe497", + "m_Id": 4, + "m_DisplayName": "Atlas", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Atlas", + "m_StageCapability": 3, + "m_BareResource": true, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "39a382d661e2484da71f04c43f48e55f", + "m_Id": 3, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.VertexColorNode", + "m_ObjectId": "39f2f84f30304d859fb07569e2695f60", + "m_Group": { + "m_Id": "ecf16c34d46f4502ac601f0c38c7576b" + }, + "m_Name": "Vertex Color", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -3423.000244140625, + "y": -3516.0, + "width": 116.0, + "height": 94.0 + } + }, + "m_Slots": [ + { + "m_Id": "4b2d9ea03bf64fa19dcae1511d2581da" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 2, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "3c50439118b2496f9e390021b0964606", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.AlphaClipThreshold", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -3028.0, + "y": -3054.0, + "width": 200.0, + "height": 40.66650390625 + } + }, + "m_Slots": [ + { + "m_Id": "34a72a5ebb04402384a4fd3748111a37" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.AlphaClipThreshold" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DMaterialSlot", + "m_ObjectId": "3d04f5ba6e7b40d281f22eb424145acd", + "m_Id": 0, + "m_DisplayName": "Face Texture", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "3db1608e927e4102a3c3a88e9fcab39a", + "m_Id": 3, + "m_DisplayName": "Transform", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Transform", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "3dccd64e7f324bc1a75c1479d7a67c51", + "m_Id": 0, + "m_DisplayName": "In", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "In", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.CombineNode", + "m_ObjectId": "3e231021af7b47ba97f2871e7f25d0fe", + "m_Group": { + "m_Id": "ecf16c34d46f4502ac601f0c38c7576b" + }, + "m_Name": "Combine", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -2803.000244140625, + "y": -3520.0, + "width": 140.0, + "height": 166.0 + } + }, + "m_Slots": [ + { + "m_Id": "6ccaced3889e4503a9414d808ec33981" + }, + { + "m_Id": "7f3d71a6c96847c099da45f95aafbecb" + }, + { + "m_Id": "d8edec16956c4f15b7d51d6ec10753f4" + }, + { + "m_Id": "39a382d661e2484da71f04c43f48e55f" + }, + { + "m_Id": "8764669016f6442f8152593c18a649d7" + }, + { + "m_Id": "26e48352a08441bfa694dcea54c06e36" + }, + { + "m_Id": "3e94a0d106064bdb864c960512ef4026" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "3e25be96bb3747738c238cf3a741d5df", + "m_Id": 3, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Internal.Texture2DShaderProperty", + "m_ObjectId": "3e372195f4bd4845852a37839e5b602d", + "m_Guid": { + "m_GuidSerialized": "60abd046-2a1a-48cd-a0af-2f702f7f53ab" + }, + "m_Name": "_MainTex", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Texture2D_90CBF488", + "m_OverrideReferenceName": "_MainTex", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 1, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "m_SerializedTexture": "{\"texture\":{\"fileID\":28684132378477856,\"guid\":\"8f586378b4e144a9851e7b34d9b748ee\",\"type\":2}}", + "m_Guid": "" + }, + "isMainTexture": false, + "useTilingAndOffset": false, + "m_Modifiable": true, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "3e94a0d106064bdb864c960512ef4026", + "m_Id": 6, + "m_DisplayName": "RG", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RG", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "3ec4797e381747829ef4712c85fcf7a1", + "m_Guid": { + "m_GuidSerialized": "020d65cc-50a8-4b8a-a624-90d7b489f549" + }, + "m_Name": "Specular Power", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_3ec4797e381747829ef4712c85fcf7a1", + "m_OverrideReferenceName": "_SpecularPower", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.0, + "m_FloatType": 1, + "m_RangeValues": { + "x": 0.0, + "y": 4.0 + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector2ShaderProperty", + "m_ObjectId": "3fdf4b7bc5d4426492dcc057603ef4a6", + "m_Guid": { + "m_GuidSerialized": "675d2567-3fca-4da6-9462-dfa4924950f1" + }, + "m_Name": "_OutlineUVSpeed", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector2_D66D89E6", + "m_OverrideReferenceName": "_OutlineUVSpeed", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "3ffa095f304e42d2827aa230e2ae3887", + "m_Id": 4, + "m_DisplayName": "Texel Height", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Texel Height", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "400d0b6c95dd4540ad3da3e8cb7e50b2", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "41986ac6400d46709d0ef043a67f6b34", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "41b9b79b3859472882bcea393703eec0", + "m_Id": 0, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "424dbeeb009344efa29c304c4979e3d6", + "m_Guid": { + "m_GuidSerialized": "314c37de-c6f2-4463-866d-8588f6fc119e" + }, + "m_Name": "Diffuse Shadow", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_424dbeeb009344efa29c304c4979e3d6", + "m_OverrideReferenceName": "_Diffuse", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.30000001192092898, + "m_FloatType": 1, + "m_RangeValues": { + "x": 0.0, + "y": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "42a586e4f6ec40eeaba891b7fd133864", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4934.0, + "y": -4442.99951171875, + "width": 133.99998474121095, + "height": 33.999996185302737 + } + }, + "m_Slots": [ + { + "m_Id": "da7a06d393a44089842070d51d2aa0a6" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "3e372195f4bd4845852a37839e5b602d" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.GroupData", + "m_ObjectId": "42cadae0923e4969b50bbc3f78185934", + "m_Title": "Face + 3 Outlines + Underlay", + "m_Position": { + "x": -5468.0, + "y": -3558.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "4328cdbf78b94c038fd614c59bfe1cac", + "m_Id": 0, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.CustomFunctionNode", + "m_ObjectId": "44317f2e371447e2a8d894f8a021a235", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "Layer1 (Custom Function)", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4004.999755859375, + "y": -4173.0, + "width": 191.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "10a99c07aad742349d258db16838c129" + }, + { + "m_Id": "b85d677872b44421bf5536f42ba0267c" + }, + { + "m_Id": "75aba700d74d4b2687bf3166cf1da3e2" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SourceType": 0, + "m_FunctionName": "Layer1", + "m_FunctionSource": "96de908384869cd409c75efa351d5edf", + "m_FunctionBody": "Enter function body here..." +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "44806230fa384c1e95f9c5918a14f056", + "m_Id": 7, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "4488af8ff6a7421298a7e827f567263b", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4226.0, + "y": -4109.0, + "width": 158.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "66f69ef16eac4eb48357bde804cf3c39" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "8cf8aae64c1d443f9303126886b40f17" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.ColorRGBMaterialSlot", + "m_ObjectId": "4590bfa2a0664b65b6f073bae33a071f", + "m_Id": 0, + "m_DisplayName": "Emission", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Emission", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [], + "m_ColorMode": 1, + "m_DefaultColor": { + "r": 0.0, + "g": 0.0, + "b": 0.0, + "a": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVNode", + "m_ObjectId": "4648b46ad29a4008a80de4f8a5a5b813", + "m_Group": { + "m_Id": "98934a69591249d5b8b92b39045359a3" + }, + "m_Name": "UV", + "m_DrawState": { + "m_Expanded": false, + "m_Position": { + "serializedVersion": "2", + "x": -4615.00048828125, + "y": -2415.000244140625, + "width": 145.0, + "height": 130.00001525878907 + } + }, + "m_Slots": [ + { + "m_Id": "b2baf44eae52473cb6cda7b1debece01" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_OutputChannel": 1 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Internal.Texture2DShaderProperty", + "m_ObjectId": "46fbf3eeb0ea4470869cba7443249295", + "m_Guid": { + "m_GuidSerialized": "be87c5a3-e361-4b95-89c8-911c39a51c0d" + }, + "m_Name": "Outline Texture", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Texture2D_A0B54237", + "m_OverrideReferenceName": "_OutlineTex", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "m_SerializedTexture": "{\"texture\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "isMainTexture": false, + "useTilingAndOffset": false, + "m_Modifiable": true, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "47d020251e9841a5b1f0fd64396026a1", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "48390d02257d41bf98eace1deaa4c539", + "m_Group": { + "m_Id": "" + }, + "m_Name": "VertexDescription.Position", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "8036d0e6090b456e9b4ea87227868236" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Position" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.GroupData", + "m_ObjectId": "484b51c50485473b819c4f05087b32d7", + "m_Title": "Underlay", + "m_Position": { + "x": -5253.0, + "y": -4542.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "4907352322c644ebacdf2ca30f2994fd", + "m_Id": 4, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector2ShaderProperty", + "m_ObjectId": "49e7c3ad55ce458797f0e60c950cb965", + "m_Guid": { + "m_GuidSerialized": "31b55db9-0da1-4ec4-af2b-d83747ed5bc4" + }, + "m_Name": "Underlay Offset", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector2_CE9DEDB3", + "m_OverrideReferenceName": "_UnderlayOffset", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "4a66dcbe712a4d40bd8f355b834594b5", + "m_Id": 6, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.CombineNode", + "m_ObjectId": "4abff6ff92fa4a05b203f10580988335", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Combine", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4308.0, + "y": -3498.000244140625, + "width": 140.0, + "height": 166.00001525878907 + } + }, + "m_Slots": [ + { + "m_Id": "b015d1b7e4134c59baf6851e7649802c" + }, + { + "m_Id": "d9dc4839ee2847999110bdb234d6041a" + }, + { + "m_Id": "91d6a9a5fbc04ea49075cb51835e7264" + }, + { + "m_Id": "f42ad06b3c6a45d3ab33de904c063412" + }, + { + "m_Id": "ed6c215a65584deeaefad1d2c7743044" + }, + { + "m_Id": "edbee7a8952b46529ac5ad0365775774" + }, + { + "m_Id": "70337a74f6ad4b7bb6befc825219bab1" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "4b2d9ea03bf64fa19dcae1511d2581da", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "4bda5c294e1949138d033640e1d385b4", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "4c28ee9109014fa086e5de7a3993341d", + "m_Id": 0, + "m_DisplayName": "Softness", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "4c334de01ecd429baa7652fc6002536b", + "m_Id": 0, + "m_DisplayName": "In", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "In", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "4d1cb1a475df49f9a148195a65f5453a", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "4d9ce48719d143748f9f8e22da6f9ddc", + "m_Id": 5, + "m_DisplayName": "TextureWidth", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "TextureWidth", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "4e64dac49ddc47c3b5b1e27b17a08304", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "4eb3c00a1ca44e10be833b7ca61ff059", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"fileID\":-2362172177983852347,\"guid\":\"dda5bcb0d1e9515498f6e4e038bbefe6\",\"type\":2}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "4f194ff591484e908fc2bcdacbcf2570", + "m_Group": { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4303.00048828125, + "y": -2771.0, + "width": 134.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "2b01ea3023e34c94af1754e4dcea8f2e" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "dc75c4e3a1bc4bb0a128086c2b0679a5" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "509e6f38505b4b0695b263706a55028f", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"fileID\":-2362172177983852347,\"guid\":\"dda5bcb0d1e9515498f6e4e038bbefe6\",\"type\":2}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.CustomFunctionNode", + "m_ObjectId": "51378bae98a94c309785d14cd5cbb453", + "m_Group": { + "m_Id": "d258902c6ec74942afdb9ebf8c1d07f8" + }, + "m_Name": "GetSurfaceNormal (Custom Function)", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4067.333251953125, + "y": -3881.99951171875, + "width": 263.9999694824219, + "height": 189.99998474121095 + } + }, + "m_Slots": [ + { + "m_Id": "5b0077c23eae443887872f84227deccc" + }, + { + "m_Id": "3915c1927ffe49f8967304321cfbe497" + }, + { + "m_Id": "4d9ce48719d143748f9f8e22da6f9ddc" + }, + { + "m_Id": "ebd6d75abcb84108bcadbfe7ee5f6244" + }, + { + "m_Id": "ef9738ec7e894772a14e9dce441c16c6" + }, + { + "m_Id": "9eeec1a9713045af8845cea263d5ea48" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SourceType": 0, + "m_FunctionName": "GetSurfaceNormal", + "m_FunctionSource": "96de908384869cd409c75efa351d5edf", + "m_FunctionBody": "Enter function body here..." +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SamplerStateMaterialSlot", + "m_ObjectId": "51f76f8a53ad43a4ad028426548ce9ba", + "m_Id": 3, + "m_DisplayName": "Sampler", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Sampler", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "52798bdb86f6400e86489a7a368e9f8b", + "m_Group": { + "m_Id": "d0a791a544614667962a9a9a9ce0c68a" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -6154.99951171875, + "y": -3169.0, + "width": 134.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "1df58cfa4dad4c449d01ee1c5ea05f2e" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "3e372195f4bd4845852a37839e5b602d" + } +} + +{ + "m_SGVersion": 3, + "m_Type": "UnityEditor.ShaderGraph.Internal.ColorShaderProperty", + "m_ObjectId": "53073e5ea924459fa6681a4943e9f947", + "m_Guid": { + "m_GuidSerialized": "5fdac24e-2d58-4471-80ce-79c3ab9a2564" + }, + "m_Name": "Outline Color 2", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Color_DBAB5AEC", + "m_OverrideReferenceName": "_OutlineColor2", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "r": 0.009433984756469727, + "g": 0.02534518577158451, + "b": 1.0, + "a": 1.0 + }, + "isMainColor": false, + "m_ColorMode": 1 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "54d7a93ffec5490aa4591da23a21b693", + "m_Id": 1, + "m_DisplayName": "G", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "55a3403c16184e63b4e78607a6a20cd8", + "m_Id": 3, + "m_DisplayName": "Texel Width", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Texel Width", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "55ffa45ec3654d5e88089fb40d2b0465", + "m_Id": 4, + "m_DisplayName": "AnimSpeed", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "AnimSpeed", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.MultiplyNode", + "m_ObjectId": "56c25395796e4d2fbe5c892d428d1620", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Multiply", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5102.99951171875, + "y": -3427.0, + "width": 130.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "9eb8137a6c2e41bbafdc8b0732dd47a3" + }, + { + "m_Id": "36a0c473c4c04c3a930dd38f3920d410" + }, + { + "m_Id": "068ae649e00b40e198ec5a30ad741fab" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "57abc172afd449e2a4d567f93432507b", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "582d6e289dbe4fdca7cf0307273eaa2f", + "m_Id": 0, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "59a09f50a7ca4cd3a0d248a0f3730b6a", + "m_Guid": { + "m_GuidSerialized": "3f9e6596-fd53-48cc-96a5-4c4f0cfbb2ba" + }, + "m_Name": "_ScaleRatioA", + "m_DefaultRefNameVersion": 1, + "m_RefNameGeneratedByDisplayName": "_ScaleRatioA", + "m_DefaultReferenceName": "_ScaleRatioA", + "m_OverrideReferenceName": "", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.0, + "m_FloatType": 0, + "m_RangeValues": { + "x": 0.0, + "y": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.MultiplyNode", + "m_ObjectId": "59bd90a849624124bae6464ee3669aa6", + "m_Group": { + "m_Id": "98934a69591249d5b8b92b39045359a3" + }, + "m_Name": "Multiply", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4008.999755859375, + "y": -2394.0, + "width": 130.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "2e4eb1ef08bb44178c82e53872485e0f" + }, + { + "m_Id": "8695190a5e614f2d90081871a8a06fc2" + }, + { + "m_Id": "81bdb47901ef48e5a588c6724b1b0142" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector3MaterialSlot", + "m_ObjectId": "5b0077c23eae443887872f84227deccc", + "m_Id": 0, + "m_DisplayName": "Normal", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Normal", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [ + "X", + "Y", + "Z" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "5b3ff4ee364f4d7a923b530ad60d8762", + "m_Id": 0, + "m_DisplayName": "Width", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Width", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "5bd258837c514ff7ab0bf7027e762c18", + "m_Guid": { + "m_GuidSerialized": "2d8f3ee9-1307-4b58-a60d-526e86b07109" + }, + "m_Name": "Bevel Roundness", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_AB6A015F", + "m_OverrideReferenceName": "_BevelRoundness", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.0, + "m_FloatType": 1, + "m_RangeValues": { + "x": 0.0, + "y": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "5da82bf481f8489ebd05e997f617f51b", + "m_Id": 4, + "m_DisplayName": "Isoperimeter", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Isoperimeter", + "m_StageCapability": 3, + "m_Value": 4.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "5e42524569844befad16fda5a94eb9cb", + "m_Id": 0, + "m_DisplayName": "R", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "5fbe253f3e444f2aa8ac717f9c856619", + "m_Guid": { + "m_GuidSerialized": "0a61c93f-6430-4aa6-af07-79bc3b411ccd" + }, + "m_Name": "Bevel Width", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_B50BBFCC", + "m_OverrideReferenceName": "_BevelWidth", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.5, + "m_FloatType": 1, + "m_RangeValues": { + "x": 0.0, + "y": 0.5 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "61133d79a89048c195f54939b2a1d30a", + "m_Id": 2, + "m_DisplayName": "Alpha", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Alpha", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "61a6ac5f29344d109411f26850ab0a96", + "m_Id": 6, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "6271438664e74b3fbf723bd6a1f50f8b", + "m_Id": 6, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "62bc551cea604e88b7858cc37d96a98a", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector2ShaderProperty", + "m_ObjectId": "636180f6e0504f2baaa5cc086980cb47", + "m_Guid": { + "m_GuidSerialized": "c1223e37-093d-4d5a-b2b0-cd9cc3e4f88e" + }, + "m_Name": "Outline Offset 1", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector2_636180f6e0504f2baaa5cc086980cb47", + "m_OverrideReferenceName": "_OutlineOffset1", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "63c7cd57fc3c45a9a97b514fdae32693", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5266.99951171875, + "y": -3387.0, + "width": 156.99998474121095, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "c422a9a9ff824176aad2241f58c44d0b" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "636180f6e0504f2baaa5cc086980cb47" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "641eda269d7b4da9acb65f8d50035ea9", + "m_Id": 0, + "m_DisplayName": "SSR", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "SSR", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "65b3dc13b2b6484283ffe5abfe87a06a", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SampleTexture2DNode", + "m_ObjectId": "65c8e64a7535466e933eed08a2f77532", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Sample Texture 2D", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4791.0, + "y": -3499.0, + "width": 183.99998474121095, + "height": 253.0 + } + }, + "m_Slots": [ + { + "m_Id": "256d41e89a204d22951450de1c38051d" + }, + { + "m_Id": "0a67ca5280214bd794dc0ad66b5710a9" + }, + { + "m_Id": "ebbd94a7102a4457a48ac492de3bff14" + }, + { + "m_Id": "6271438664e74b3fbf723bd6a1f50f8b" + }, + { + "m_Id": "c9b722d107ce4cd6a748c883472b9b0f" + }, + { + "m_Id": "74cf69e61bef44589521f1bf2bf3c59a" + }, + { + "m_Id": "6e532f83d1c44e839bcfc5845d3b01d6" + }, + { + "m_Id": "cb5e9f9567e84f8fa5463efc0e256e19" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_TextureType": 0, + "m_NormalMapSpace": 0, + "m_EnableGlobalMipBias": true, + "m_MipSamplingMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "66f69ef16eac4eb48357bde804cf3c39", + "m_Id": 0, + "m_DisplayName": "_UnderlayColor", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "67a519f507384ff1861df5d8d5b486be", + "m_Group": { + "m_Id": "d258902c6ec74942afdb9ebf8c1d07f8" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4278.0, + "y": -3939.99951171875, + "width": 135.3330078125, + "height": 33.999996185302737 + } + }, + "m_Slots": [ + { + "m_Id": "c3e6d7c20c184bf39fd8822130e693e7" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "3e372195f4bd4845852a37839e5b602d" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "68ec7c31365549d6a8ce883edfc02de2", + "m_Id": 4, + "m_DisplayName": "Color1", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Color1", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "6a7af6143e114a538663e71f56731a21", + "m_Id": 2, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.MultiplyNode", + "m_ObjectId": "6b2f65c1463f4f7bad16c54a95d2fe75", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Multiply", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5101.0, + "y": -3301.0, + "width": 130.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "1d35fa1fb5004f96a65ace54fbe4f1ad" + }, + { + "m_Id": "fa6de3be9f5b4411b5081b49e645f424" + }, + { + "m_Id": "400d0b6c95dd4540ad3da3e8cb7e50b2" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "6ccaced3889e4503a9414d808ec33981", + "m_Id": 0, + "m_DisplayName": "R", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "6dfc1177dd0541a7a780fbf911ad1956", + "m_Id": 0, + "m_DisplayName": "_OutlineTex_ST", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "6e13f3cd573c467a94379f45d96cb690", + "m_Id": 2, + "m_DisplayName": "SSR", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "SSR", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "6e532f83d1c44e839bcfc5845d3b01d6", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "6e8946a245e842b38231d4a241bfb3ef", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.BaseColor", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -3026.0, + "y": -3110.0, + "width": 200.0, + "height": 40.66650390625 + } + }, + "m_Slots": [ + { + "m_Id": "ef0b93f78372439696f50711eaf57d90" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.BaseColor" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "6fbdcc5a972b4fa883dc5f21e525a376", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "7027aaab25924266a063a05df0aa39b3", + "m_Id": 0, + "m_DisplayName": "UV_1", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV_1", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "70337a74f6ad4b7bb6befc825219bab1", + "m_Id": 6, + "m_DisplayName": "RG", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RG", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "712da461f71a454db59d349f752d41ee", + "m_Id": 2, + "m_DisplayName": "Height", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Height", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "71dd947935b64ce38f0d25406dde447b", + "m_Id": 5, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "724e17584e97443e9e285dfa7253c8e3", + "m_Id": 0, + "m_DisplayName": "Alpha", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Alpha", + "m_StageCapability": 2, + "m_Value": 0.15000000596046449, + "m_DefaultValue": 1.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DMaterialSlot", + "m_ObjectId": "72fb5a0d7796446b9e2b929cb32facdc", + "m_Id": 0, + "m_DisplayName": "_MainTex", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVNode", + "m_ObjectId": "7444469eb9884253819add9ef96baa25", + "m_Group": { + "m_Id": "d258902c6ec74942afdb9ebf8c1d07f8" + }, + "m_Name": "UV", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4298.0, + "y": -3809.99951171875, + "width": 144.66648864746095, + "height": 129.33323669433595 + } + }, + "m_Slots": [ + { + "m_Id": "03182b3263304258b265266325c21f65" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_OutputChannel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "748c31bbcecc4b30bec2e42c0612175b", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector2ShaderProperty", + "m_ObjectId": "74b41464cbed4e9e8e23af5ab9be40cf", + "m_Guid": { + "m_GuidSerialized": "41afbdcb-f3ae-4340-8973-1c1998c992a2" + }, + "m_Name": "Outline Offset 2", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "", + "m_OverrideReferenceName": "_OutlineOffset2", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "74cf69e61bef44589521f1bf2bf3c59a", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "757174b6f25040fdbb20355a21752222", + "m_Id": 0, + "m_DisplayName": "Outline Offset 2", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "75aba700d74d4b2687bf3166cf1da3e2", + "m_Id": 2, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "75c5657544c648058b20cea090f48dbf", + "m_Id": 0, + "m_DisplayName": "_OutlineUVSpeed", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "767769f736d5478cba5f10a415e28e7f", + "m_Id": 5, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "773b90134e894e429203c0c83e80b9de", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "77e28f3e930b4c249145630ec961af95", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BooleanMaterialSlot", + "m_ObjectId": "79147f6986644769b58d9ed64fe771e1", + "m_Id": 0, + "m_DisplayName": "OutlineMode", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": false, + "m_DefaultValue": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.MultiplyNode", + "m_ObjectId": "7984fd094e1147bdabb4e26fbd3d31c8", + "m_Group": { + "m_Id": "ecf16c34d46f4502ac601f0c38c7576b" + }, + "m_Name": "Multiply", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -3113.000244140625, + "y": -3468.0, + "width": 130.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "082e9706dffc4c188270980d4e44ce0f" + }, + { + "m_Id": "f2a351a5375c441b8d9ab7e2c9545a77" + }, + { + "m_Id": "41986ac6400d46709d0ef043a67f6b34" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 3, + "m_Type": "UnityEditor.ShaderGraph.Internal.ColorShaderProperty", + "m_ObjectId": "7a046f410ce64aa88438b0bfd412c045", + "m_Guid": { + "m_GuidSerialized": "d47271f5-5a84-47bf-a09e-c825d2aeb013" + }, + "m_Name": "Outline Color 3", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Color_551702C5", + "m_OverrideReferenceName": "_OutlineColor3", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "r": 0.0, + "g": 0.0, + "b": 0.0, + "a": 1.0 + }, + "isMainColor": false, + "m_ColorMode": 1 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "7a0f504e4175406dbd8134250f4e350b", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SubtractNode", + "m_ObjectId": "7a80e8839f0e4a1d9a6c0814f8793ee6", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Subtract", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4961.99951171875, + "y": -3452.0, + "width": 130.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "6fbdcc5a972b4fa883dc5f21e525a376" + }, + { + "m_Id": "0ba4932e164847878ddb7b7bcff96985" + }, + { + "m_Id": "9178663316db43d582f1c4a127d307c6" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "7acfafd73b8c4dfab8c55c18a887e087", + "m_Id": 4, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "7b144a976914480baf430c0f6f7f4def", + "m_Id": 3, + "m_DisplayName": "Texel Width", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Texel Width", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "7b8a19bd115e4167a25b59cb3218a817", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "7c27ccb2c2dc4ca59c5438c3358630ca", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.CategoryData", + "m_ObjectId": "7c73ccc923e744b98f19148b971a6090", + "m_Name": "", + "m_ChildObjectList": [ + { + "m_Id": "dc75c4e3a1bc4bb0a128086c2b0679a5" + }, + { + "m_Id": "867a4ae13c0d4a028c71bc1063824c14" + }, + { + "m_Id": "22b7f3c2bb7b48c0a7fdeb50e33e7d5e" + }, + { + "m_Id": "53073e5ea924459fa6681a4943e9f947" + }, + { + "m_Id": "7a046f410ce64aa88438b0bfd412c045" + }, + { + "m_Id": "636180f6e0504f2baaa5cc086980cb47" + }, + { + "m_Id": "74b41464cbed4e9e8e23af5ab9be40cf" + }, + { + "m_Id": "8ed907a2cc7949b68a283ae243ea1977" + }, + { + "m_Id": "cb3c0c3f08654b068bea44c4ffb15f4a" + }, + { + "m_Id": "0580d4b7e3a049049569f4508643a724" + }, + { + "m_Id": "c9ec735d1a1046769e5601b2c97c849a" + }, + { + "m_Id": "2d0a269511e34bd1ba9056d2c939dff2" + }, + { + "m_Id": "07946387933e416db576b677f0711e5f" + }, + { + "m_Id": "46fbf3eeb0ea4470869cba7443249295" + }, + { + "m_Id": "ec79eb447dfd47a9b3380344c6a60f43" + }, + { + "m_Id": "3fdf4b7bc5d4426492dcc057603ef4a6" + }, + { + "m_Id": "8cf8aae64c1d443f9303126886b40f17" + }, + { + "m_Id": "49e7c3ad55ce458797f0e60c950cb965" + }, + { + "m_Id": "81e8ed0534534674a74263e6161a2a1a" + }, + { + "m_Id": "952d0fa5cd744df0b434cd38e9a90b93" + }, + { + "m_Id": "21a7a380e66d42e780e2a2a1baa630d5" + }, + { + "m_Id": "2c10b97b92c947ceb307a93759c0228b" + }, + { + "m_Id": "1be90d4f96a841748b0c95219b12ad27" + }, + { + "m_Id": "5fbe253f3e444f2aa8ac717f9c856619" + }, + { + "m_Id": "5bd258837c514ff7ab0bf7027e762c18" + }, + { + "m_Id": "998db5e5901e45b29040eb2099370071" + }, + { + "m_Id": "a6c38edd2e8743a9b057ba8452b9f129" + }, + { + "m_Id": "82af2db1018543d7832af96c1cfc981f" + }, + { + "m_Id": "3ec4797e381747829ef4712c85fcf7a1" + }, + { + "m_Id": "b0b352c4503a43d083a64e57352b29a0" + }, + { + "m_Id": "424dbeeb009344efa29c304c4979e3d6" + }, + { + "m_Id": "05805bc6fcc941fd889922555c6c86d7" + }, + { + "m_Id": "a4ad98d8828c424384229c344ebe2ed0" + }, + { + "m_Id": "3e372195f4bd4845852a37839e5b602d" + }, + { + "m_Id": "a6bbb32e8d884be9bb36db91fe4b81b1" + }, + { + "m_Id": "59a09f50a7ca4cd3a0d248a0f3730b6a" + } + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SubtractNode", + "m_ObjectId": "7d7696aa6d184b4fb9c316a9dec37aee", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Subtract", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4959.0, + "y": -3326.0, + "width": 130.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "4d1cb1a475df49f9a148195a65f5453a" + }, + { + "m_Id": "47d020251e9841a5b1f0fd64396026a1" + }, + { + "m_Id": "62bc551cea604e88b7858cc37d96a98a" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.MultiplyNode", + "m_ObjectId": "7d78a616c2754cc28d1f32cf66ade611", + "m_Group": { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + "m_Name": "Multiply", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4006.999755859375, + "y": -2796.0, + "width": 130.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "d9bcb754db834583b6518c5ed5152114" + }, + { + "m_Id": "861d4258049a4a3e8164f7297090f88e" + }, + { + "m_Id": "a7c06457d7454693a8bc3dc95257b2c2" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "7e0fadb2533f496192c1ad3e78642010", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4444.0, + "y": -4188.0, + "width": 173.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "d48c3871e3064027a10ae9f4babd3be0" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "952d0fa5cd744df0b434cd38e9a90b93" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "7f2e6b5f15364ed9835d67d0cf4f8f65", + "m_Group": { + "m_Id": "" + }, + "m_Name": "VertexDescription.Tangent", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -2586.0, + "y": -3592.0, + "width": 200.0, + "height": 41.0 + } + }, + "m_Slots": [ + { + "m_Id": "85ff8667d72947edada4e9fb4ff60559" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Tangent" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "7f3d71a6c96847c099da45f95aafbecb", + "m_Id": 1, + "m_DisplayName": "G", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PositionMaterialSlot", + "m_ObjectId": "8036d0e6090b456e9b4ea87227868236", + "m_Id": 0, + "m_DisplayName": "Position", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Position", + "m_StageCapability": 1, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [ + "X", + "Y", + "Z" + ], + "m_Space": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "80e665a5eeb64730a51742f698bf0d48", + "m_Id": 4, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "8135ca333f8f4ea78163743e6ec1f55c", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4081.999755859375, + "y": -3140.0, + "width": 156.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "d6a6a119394e4082a11bc024a6e42ef8" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "53073e5ea924459fa6681a4943e9f947" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "81bdb47901ef48e5a588c6724b1b0142", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "81e8ed0534534674a74263e6161a2a1a", + "m_Guid": { + "m_GuidSerialized": "78aab961-c4a8-41f3-b203-1239c3b33b13" + }, + "m_Name": "Underlay Dilate", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_D48690B9", + "m_OverrideReferenceName": "_UnderlayDilate", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.0, + "m_FloatType": 0, + "m_RangeValues": { + "x": 0.0, + "y": 1.0 + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "82af2db1018543d7832af96c1cfc981f", + "m_Guid": { + "m_GuidSerialized": "37906c7b-9a3a-454b-a62a-9aa097e64bde" + }, + "m_Name": "Light Angle", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_82af2db1018543d7832af96c1cfc981f", + "m_OverrideReferenceName": "_LightAngle", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.0, + "m_FloatType": 1, + "m_RangeValues": { + "x": 0.0, + "y": 6.28000020980835 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "82d5443fe54d4a3b9420f8745d00a632", + "m_Id": 5, + "m_DisplayName": "Softness", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Softness", + "m_StageCapability": 3, + "m_Value": 8.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "836f639bd89d42f9b3a0470c3094815e", + "m_Id": 4, + "m_DisplayName": "Texel Height", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Texel Height", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "83c51d5b2f7b4eb785248f419181cb87", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.Occlusion", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "944ebbc49c8a4cddb5834e3beab965a2" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.Occlusion" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "84dc74cdbd8c45e1b189e4fd9a69942d", + "m_Id": 0, + "m_DisplayName": "Outline Offset 3", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.CustomFunctionNode", + "m_ObjectId": "85a1ad8e741e41759002e8cdc8cd0b96", + "m_Group": { + "m_Id": "d0a791a544614667962a9a9a9ce0c68a" + }, + "m_Name": "ScreenSpaceRatio (Custom Function)", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5800.99951171875, + "y": -3363.0, + "width": 258.0, + "height": 142.0 + } + }, + "m_Slots": [ + { + "m_Id": "6e13f3cd573c467a94379f45d96cb690" + }, + { + "m_Id": "8e6ed600f6504f4083092f5b511e44c4" + }, + { + "m_Id": "93b161cce4504cb79c97b6d8db178de7" + }, + { + "m_Id": "2bf5f2fdd2984599b7323d10cfb1d240" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SourceType": 0, + "m_FunctionName": "ScreenSpaceRatio", + "m_FunctionSource": "96de908384869cd409c75efa351d5edf", + "m_FunctionBody": "Enter function body here..." +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "85b5940eb77e4625812ded7215bab8d7", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4081.999755859375, + "y": -3096.0, + "width": 156.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "ada023d617104472b8ab75a81558c0a1" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "7a046f410ce64aa88438b0bfd412c045" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.TangentMaterialSlot", + "m_ObjectId": "85ff8667d72947edada4e9fb4ff60559", + "m_Id": 0, + "m_DisplayName": "Tangent", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Tangent", + "m_StageCapability": 1, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [ + "X", + "Y", + "Z" + ], + "m_Space": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "861d4258049a4a3e8164f7297090f88e", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "e00": 2.0, + "e01": 2.0, + "e02": 2.0, + "e03": 2.0, + "e10": 2.0, + "e11": 2.0, + "e12": 2.0, + "e13": 2.0, + "e20": 2.0, + "e21": 2.0, + "e22": 2.0, + "e23": 2.0, + "e30": 2.0, + "e31": 2.0, + "e32": 2.0, + "e33": 2.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector4ShaderProperty", + "m_ObjectId": "867a4ae13c0d4a028c71bc1063824c14", + "m_Guid": { + "m_GuidSerialized": "d483c212-0a30-4f6d-b94d-9abbc83a6522" + }, + "m_Name": "Outline Width", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector4_C68C9E14", + "m_OverrideReferenceName": "_IsoPerimeter", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 2, + "m_Hidden": false, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "8695190a5e614f2d90081871a8a06fc2", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "e00": 2.0, + "e01": 2.0, + "e02": 2.0, + "e03": 2.0, + "e10": 2.0, + "e11": 2.0, + "e12": 2.0, + "e13": 2.0, + "e20": 2.0, + "e21": 2.0, + "e22": 2.0, + "e23": 2.0, + "e30": 2.0, + "e31": 2.0, + "e32": 2.0, + "e33": 2.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "86e21b7b6b7a44238607e41b8a9fb9a4", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.Smoothness", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "0801f576ce79452483b42e485405244d" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.Smoothness" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "8764669016f6442f8152593c18a649d7", + "m_Id": 4, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "880bb02c6c6b49b18aa6ebc66dc566a0", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.CustomFunctionNode", + "m_ObjectId": "88253223d2c34ecfab92b0c344048f94", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "ComputeSDF (Custom Function)", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4226.0, + "y": -4323.0, + "width": 227.99998474121095, + "height": 190.0 + } + }, + "m_Slots": [ + { + "m_Id": "c52a1744a9a14989b0ae452ad6de6061" + }, + { + "m_Id": "a03db80c558b4f87a330c5ae0a9443a5" + }, + { + "m_Id": "8f1b1d1e8ff24b3284993e52354e54fa" + }, + { + "m_Id": "5da82bf481f8489ebd05e997f617f51b" + }, + { + "m_Id": "82d5443fe54d4a3b9420f8745d00a632" + }, + { + "m_Id": "61133d79a89048c195f54939b2a1d30a" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SourceType": 0, + "m_FunctionName": "ComputeSDF", + "m_FunctionSource": "96de908384869cd409c75efa351d5edf", + "m_FunctionBody": "Enter function body here..." +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "8a08179f99d649d289b8053d5fa0ad22", + "m_Id": 0, + "m_DisplayName": "Underlay Offset", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "8b66f4e6bc9d4662b3218ac33a69839f", + "m_Id": 5, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "8c38a5d8327f456e9783740c05382619", + "m_Id": 3, + "m_DisplayName": "Color2", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Color2", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "8cbd81814903479ea1d3151c1f38183e", + "m_Id": 6, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 3, + "m_Type": "UnityEditor.ShaderGraph.Internal.ColorShaderProperty", + "m_ObjectId": "8cf8aae64c1d443f9303126886b40f17", + "m_Guid": { + "m_GuidSerialized": "8d78c9a5-aaef-41fb-af68-2358e401d7ac" + }, + "m_Name": "_UnderlayColor", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Color_2F5FE804", + "m_OverrideReferenceName": "_UnderlayColor", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "r": 0.0, + "g": 0.0, + "b": 0.0, + "a": 1.0 + }, + "isMainColor": false, + "m_ColorMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "8e6aee1173864e58be589084897a3f35", + "m_Id": 0, + "m_DisplayName": "UV_1", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV_1", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "8e6ed600f6504f4083092f5b511e44c4", + "m_Id": 0, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector2ShaderProperty", + "m_ObjectId": "8ed907a2cc7949b68a283ae243ea1977", + "m_Guid": { + "m_GuidSerialized": "36803443-a9bc-4f3c-a4f2-7d66a5417ac1" + }, + "m_Name": "Outline Offset 3", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "", + "m_OverrideReferenceName": "_OutlineOffset3", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "8f1b1d1e8ff24b3284993e52354e54fa", + "m_Id": 3, + "m_DisplayName": "SDR", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "SDR", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "9147636b0cfa466a9b37a013d8f693bf", + "m_Group": { + "m_Id": "daaf032a109749a88c9b8ff8e1f8b541" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5421.99951171875, + "y": -3902.0, + "width": 153.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "a4f471e3221c4134b291bd9d2ba22db6" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "a6bbb32e8d884be9bb36db91fe4b81b1" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "9178663316db43d582f1c4a127d307c6", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SplitNode", + "m_ObjectId": "91890fe48ebe4717aea61ecaf3ad4861", + "m_Group": { + "m_Id": "ecf16c34d46f4502ac601f0c38c7576b" + }, + "m_Name": "Split", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -2983.000244140625, + "y": -3468.0, + "width": 119.99999237060547, + "height": 149.0 + } + }, + "m_Slots": [ + { + "m_Id": "3dccd64e7f324bc1a75c1479d7a67c51" + }, + { + "m_Id": "e444f2c81d1e48329fa2c91005277e8d" + }, + { + "m_Id": "b2c26292b7434733878a9b042f44de89" + }, + { + "m_Id": "964fea1fd4b24f4daf5bef84c4b45118" + }, + { + "m_Id": "deac82280a2b43078e0e40863e2d974c" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "91d6a9a5fbc04ea49075cb51835e7264", + "m_Id": 2, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "928621a3ca2d41c89a10336bbbc81ddc", + "m_Id": 5, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "93b161cce4504cb79c97b6d8db178de7", + "m_Id": 3, + "m_DisplayName": "TextureSize", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "TextureSize", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.Rendering.Universal.ShaderGraph.UniversalTarget", + "m_ObjectId": "94300469581b4924ac7dda496811d45d", + "m_Datas": [], + "m_ActiveSubTarget": { + "m_Id": "a0b9274619da48a59f26fe58997479ee" + }, + "m_AllowMaterialOverride": false, + "m_SurfaceType": 1, + "m_ZTestMode": 4, + "m_ZWriteControl": 0, + "m_AlphaMode": 0, + "m_RenderFace": 0, + "m_AlphaClip": true, + "m_CastShadows": true, + "m_ReceiveShadows": true, + "m_AdditionalMotionVectorMode": 0, + "m_AlembicMotionVectors": false, + "m_SupportsLODCrossFade": false, + "m_CustomEditorGUI": "TMPro.EditorUtilities.TMP_SDFShaderGUI", + "m_SupportVFX": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "944ebbc49c8a4cddb5834e3beab965a2", + "m_Id": 0, + "m_DisplayName": "Ambient Occlusion", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Occlusion", + "m_StageCapability": 2, + "m_Value": 1.0, + "m_DefaultValue": 1.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "945b45993dd84a979755b98c48138f72", + "m_Id": 0, + "m_DisplayName": "Width", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Width", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "952d0fa5cd744df0b434cd38e9a90b93", + "m_Guid": { + "m_GuidSerialized": "ce395871-ddeb-47c3-a31d-07855800c197" + }, + "m_Name": "_UnderlaySoftness", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_F2B9E3EF", + "m_OverrideReferenceName": "_UnderlaySoftness", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.0, + "m_FloatType": 0, + "m_RangeValues": { + "x": 0.0, + "y": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "95928bcb6a284b8d88105a84c2e1d3ce", + "m_Group": { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4778.00048828125, + "y": -2581.000244140625, + "width": 155.00001525878907, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "d880558893fb442b9320cf55885d1117" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "2d0a269511e34bd1ba9056d2c939dff2" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "964fea1fd4b24f4daf5bef84c4b45118", + "m_Id": 3, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.GroupData", + "m_ObjectId": "98934a69591249d5b8b92b39045359a3", + "m_Title": "Outline1 Texture", + "m_Position": { + "x": -4670.00048828125, + "y": -2474.000244140625 + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "998db5e5901e45b29040eb2099370071", + "m_Guid": { + "m_GuidSerialized": "6f383614-f2ad-4269-be8f-87b0ecb03cf0" + }, + "m_Name": "Bevel Clamp", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_5BD7E808", + "m_OverrideReferenceName": "_BevelClamp", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.0, + "m_FloatType": 1, + "m_RangeValues": { + "x": 0.0, + "y": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SampleTexture2DNode", + "m_ObjectId": "9c228fac287d446296b91a4acf5cec59", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Sample Texture 2D", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4600.0, + "y": -3498.0, + "width": 183.99998474121095, + "height": 253.0 + } + }, + "m_Slots": [ + { + "m_Id": "582d6e289dbe4fdca7cf0307273eaa2f" + }, + { + "m_Id": "1db37082bf844442804487b4944352de" + }, + { + "m_Id": "8b66f4e6bc9d4662b3218ac33a69839f" + }, + { + "m_Id": "4a66dcbe712a4d40bd8f355b834594b5" + }, + { + "m_Id": "a0285c9c381a49cba194709efa0a7c85" + }, + { + "m_Id": "b2728d0dd3ce40678867c94a7d977916" + }, + { + "m_Id": "e141833aa78b4fd59ecad949beb43a78" + }, + { + "m_Id": "51f76f8a53ad43a4ad028426548ce9ba" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_TextureType": 0, + "m_NormalMapSpace": 0, + "m_EnableGlobalMipBias": true, + "m_MipSamplingMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "9c26fdddba244d36a854298c00473247", + "m_Id": 3, + "m_DisplayName": "SDR", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "SDR", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVNode", + "m_ObjectId": "9d3c3383d5934a17bf9efbb7fd9e9043", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "UV", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5443.0, + "y": -3315.0, + "width": 144.99998474121095, + "height": 130.0 + } + }, + "m_Slots": [ + { + "m_Id": "232b1aa09e67479abae141d3c76d3c5b" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_OutputChannel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "9e6e50a71d9843b49b62ebe1cf7d3d59", + "m_Group": { + "m_Id": "d258902c6ec74942afdb9ebf8c1d07f8" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4486.0, + "y": -3865.99951171875, + "width": 135.3330078125, + "height": 33.999996185302737 + } + }, + "m_Slots": [ + { + "m_Id": "3535ae87c6dd4769b52b20d9eca61069" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "3e372195f4bd4845852a37839e5b602d" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "9e87ce9607e14015a3790c528ca5dfda", + "m_Group": { + "m_Id": "98934a69591249d5b8b92b39045359a3" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4635.00048828125, + "y": -2239.0, + "width": 167.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "75c5657544c648058b20cea090f48dbf" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "3fdf4b7bc5d4426492dcc057603ef4a6" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "9eb8137a6c2e41bbafdc8b0732dd47a3", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BooleanMaterialSlot", + "m_ObjectId": "9eeec1a9713045af8845cea263d5ea48", + "m_Id": 6, + "m_DisplayName": "IsFront", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "IsFront", + "m_StageCapability": 3, + "m_Value": false, + "m_DefaultValue": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.MultiplyNode", + "m_ObjectId": "9f0de188085746d5a19073da1de85ddb", + "m_Group": { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + "m_Name": "Multiply", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4152.0, + "y": -2771.0, + "width": 130.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "7c27ccb2c2dc4ca59c5438c3358630ca" + }, + { + "m_Id": "373f1de8db6c429c9d46c781f741d7a4" + }, + { + "m_Id": "fd0b096ed5b74f9e9ec51327be200731" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.NormalMaterialSlot", + "m_ObjectId": "a0206f980dc6455f84f5a8442838c726", + "m_Id": 0, + "m_DisplayName": "Normal (Tangent Space)", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "NormalTS", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [], + "m_Space": 3 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "a0285c9c381a49cba194709efa0a7c85", + "m_Id": 7, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "a03db80c558b4f87a330c5ae0a9443a5", + "m_Id": 1, + "m_DisplayName": "SD", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "SD", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 2, + "m_Type": "UnityEditor.Rendering.Universal.ShaderGraph.UniversalLitSubTarget", + "m_ObjectId": "a0b9274619da48a59f26fe58997479ee", + "m_WorkflowMode": 1, + "m_NormalDropOffSpace": 0, + "m_ClearCoat": false, + "m_BlendModePreserveSpecular": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.NormalMaterialSlot", + "m_ObjectId": "a3f8b6e8ae7f48e2989a029904401502", + "m_Id": 0, + "m_DisplayName": "Normal", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Normal", + "m_StageCapability": 1, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [ + "X", + "Y", + "Z" + ], + "m_Space": 0 +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.CustomFunctionNode", + "m_ObjectId": "a455bd79094c4413a7b7dd80ca8b9368", + "m_Group": { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + "m_Name": "GenerateUV (Custom Function)", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4606.99951171875, + "y": -2689.0, + "width": 221.99998474121095, + "height": 142.0 + } + }, + "m_Slots": [ + { + "m_Id": "7027aaab25924266a063a05df0aa39b3" + }, + { + "m_Id": "2c7a9460724b47daad8df1be144de7c6" + }, + { + "m_Id": "55ffa45ec3654d5e88089fb40d2b0465" + }, + { + "m_Id": "e495a9f7a11f4eb89334e83be154ceb9" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SourceType": 0, + "m_FunctionName": "GenerateUV", + "m_FunctionSource": "96de908384869cd409c75efa351d5edf", + "m_FunctionBody": "Enter function body here..." +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.SamplerStateShaderProperty", + "m_ObjectId": "a4ad98d8828c424384229c344ebe2ed0", + "m_Guid": { + "m_GuidSerialized": "f98fc1a2-bb81-4bd1-a207-23d3a90d518e" + }, + "m_Name": "SamplerState", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "SamplerState_a4ad98d8828c424384229c344ebe2ed0", + "m_OverrideReferenceName": "", + "m_GeneratePropertyBlock": false, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "m_filter": 0, + "m_wrap": 1, + "m_anisotropic": 0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "a4f471e3221c4134b291bd9d2ba22db6", + "m_Id": 0, + "m_DisplayName": "_GradientScale", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "a535f3bcbeb14622bb177eb6f46e76f4", + "m_Group": { + "m_Id": "98934a69591249d5b8b92b39045359a3" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4628.00048828125, + "y": -2283.0, + "width": 157.00001525878907, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "6dfc1177dd0541a7a780fbf911ad1956" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "ec79eb447dfd47a9b3380344c6a60f43" + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "a6bbb32e8d884be9bb36db91fe4b81b1", + "m_Guid": { + "m_GuidSerialized": "6aa76edf-7b80-46ac-add4-406cf1d85493" + }, + "m_Name": "_GradientScale", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_EAE27356", + "m_OverrideReferenceName": "_GradientScale", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 1, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 10.0, + "m_FloatType": 0, + "m_RangeValues": { + "x": 0.0, + "y": 1.0 + } +} + +{ + "m_SGVersion": 3, + "m_Type": "UnityEditor.ShaderGraph.Internal.ColorShaderProperty", + "m_ObjectId": "a6c38edd2e8743a9b057ba8452b9f129", + "m_Guid": { + "m_GuidSerialized": "9fc942ee-4a1d-4ced-a5a6-81893e3ddb63" + }, + "m_Name": "Light Color", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Color_a6c38edd2e8743a9b057ba8452b9f129", + "m_OverrideReferenceName": "_SpecularColor", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "r": 1.0, + "g": 1.0, + "b": 1.0, + "a": 1.0 + }, + "isMainColor": false, + "m_ColorMode": 1 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "a75f7ac601c446469802fe7754c1f279", + "m_Id": 0, + "m_DisplayName": "Color1", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Color1", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "a7942746b5564dc7bbbae1deb2403022", + "m_Id": 0, + "m_DisplayName": "_GradientScale", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "a7c06457d7454693a8bc3dc95257b2c2", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "aa2794b8f0e24bf281d22e0fef0647be", + "m_Id": 2, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.CustomFunctionNode", + "m_ObjectId": "aa3e347d733e48f7b65d8a8847370eec", + "m_Group": { + "m_Id": "" + }, + "m_Name": "EvaluateLight (Custom Function)", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -3631.0, + "y": -3810.0, + "width": 230.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "0699eea947fc426cbfeb8744cf120222" + }, + { + "m_Id": "0c4dc51f26484c26ad88a3fe4002abcd" + }, + { + "m_Id": "d5173cc3c6cd4f1998550f3187a3e9c8" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SourceType": 0, + "m_FunctionName": "EvaluateLight", + "m_FunctionSource": "96de908384869cd409c75efa351d5edf", + "m_FunctionBody": "Enter function body here..." +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "aa87c72ac0e64469acc34f936f00b3d0", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4444.0, + "y": -4225.0, + "width": 193.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "0d7878dd226d4cfb81a991dc312309fc" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "81e8ed0534534674a74263e6161a2a1a" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "abd59150589b436cadf8c9e6f43ccb8e", + "m_Id": 0, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "aca823a8188948c782eddaf0f45e1868", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.NormalOS", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -2542.0, + "y": -3404.000244140625, + "width": 200.0, + "height": 40.66650390625 + } + }, + "m_Slots": [ + { + "m_Id": "e386b183a18245a796b024022f7f3074" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.NormalOS" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DPropertiesNode", + "m_ObjectId": "acd0cd5a177f4a97bf23db7219305e3f", + "m_Group": { + "m_Id": "d258902c6ec74942afdb9ebf8c1d07f8" + }, + "m_Name": "Texel Size", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4348.0, + "y": -3905.99951171875, + "width": 185.33299255371095, + "height": 101.33324432373047 + } + }, + "m_Slots": [ + { + "m_Id": "945b45993dd84a979755b98c48138f72" + }, + { + "m_Id": "e51a636b2621440eb94cc802c1cf4bfc" + }, + { + "m_Id": "1bdde3efd3b7464b8934c555be0f8a48" + }, + { + "m_Id": "129f271ebc77450994e18f0a30579bf5" + }, + { + "m_Id": "3ffa095f304e42d2827aa230e2ae3887" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "ad3e1d26f4404555a8dd29223caaf1ef", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.Metallic", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "b46afdad84944599b00e887d2ce29cc3" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.Metallic" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "ada023d617104472b8ab75a81558c0a1", + "m_Id": 0, + "m_DisplayName": "Outline Color 3", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "aef5c44f84e04c3185e0b93e95e34204", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5264.99951171875, + "y": -3142.0, + "width": 159.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "84dc74cdbd8c45e1b189e4fd9a69942d" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "8ed907a2cc7949b68a283ae243ea1977" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "b000f852aa984e9dae25b125a4607f4e", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "b015d1b7e4134c59baf6851e7649802c", + "m_Id": 0, + "m_DisplayName": "R", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "b0b352c4503a43d083a64e57352b29a0", + "m_Guid": { + "m_GuidSerialized": "01cfcc78-60aa-4f71-a1e3-8d8df6dae253" + }, + "m_Name": "Reflectivity Power", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_b0b352c4503a43d083a64e57352b29a0", + "m_OverrideReferenceName": "_Reflectivity", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 5.0, + "m_FloatType": 1, + "m_RangeValues": { + "x": 5.0, + "y": 15.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.VertexColorNode", + "m_ObjectId": "b1188549725543d485436c2e921ffbb2", + "m_Group": { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + "m_Name": "Vertex Color", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4142.0, + "y": -2890.0, + "width": 116.0, + "height": 94.0 + } + }, + "m_Slots": [ + { + "m_Id": "281bcee4777040f8a31ee0e10344e98d" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 2, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SampleTexture2DNode", + "m_ObjectId": "b163c9f1666644b0bba62cf0e12df7bc", + "m_Group": { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + "m_Name": "Sample Texture 2D", + "m_DrawState": { + "m_Expanded": false, + "m_Position": { + "serializedVersion": "2", + "x": -4367.0, + "y": -2713.0, + "width": 180.0, + "height": 181.0 + } + }, + "m_Slots": [ + { + "m_Id": "cce40479b6284b6fa3174db9f09d0ac9" + }, + { + "m_Id": "80e665a5eeb64730a51742f698bf0d48" + }, + { + "m_Id": "1f46181633594ae0a1fb2adb76b42981" + }, + { + "m_Id": "8cbd81814903479ea1d3151c1f38183e" + }, + { + "m_Id": "cfaf3f3a5a1146e194cddad30c95aada" + }, + { + "m_Id": "b43489e37a5c4df88f15844292a55ec7" + }, + { + "m_Id": "cd7281fb41aa4e61ac0fdf71d4f4bd46" + }, + { + "m_Id": "f01d52cdcb1647aab35782b4af535efd" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_TextureType": 0, + "m_NormalMapSpace": 1, + "m_EnableGlobalMipBias": true, + "m_MipSamplingMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "b224a1cf80604103ad085c799995f3c2", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "b2728d0dd3ce40678867c94a7d977916", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"fileID\":-2362172177983852347,\"guid\":\"dda5bcb0d1e9515498f6e4e038bbefe6\",\"type\":2}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "b2baf44eae52473cb6cda7b1debece01", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "b2c26292b7434733878a9b042f44de89", + "m_Id": 2, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "b42e6dbfbc864097af182cbff5c0c1fb", + "m_Id": 0, + "m_DisplayName": "Outline Color 1", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "b43489e37a5c4df88f15844292a55ec7", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"fileID\":-2362172177983852347,\"guid\":\"dda5bcb0d1e9515498f6e4e038bbefe6\",\"type\":2}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "b467be738d0e454995e380cbf526efe3", + "m_Id": 4, + "m_DisplayName": "Texel Height", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Texel Height", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "b46afdad84944599b00e887d2ce29cc3", + "m_Id": 0, + "m_DisplayName": "Metallic", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Metallic", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.MultiplyNode", + "m_ObjectId": "b4a40cb6acd441acb83cfe0240bf910d", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "Multiply", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4750.99951171875, + "y": -4274.0, + "width": 130.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "d0b10e52e21941b183f5f635894c76c8" + }, + { + "m_Id": "0d6a57754b824f6db9cefa6953bc06a9" + }, + { + "m_Id": "773b90134e894e429203c0c83e80b9de" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DPropertiesNode", + "m_ObjectId": "b571db753a1948d5a6f1de4e7d0c7238", + "m_Group": { + "m_Id": "daaf032a109749a88c9b8ff8e1f8b541" + }, + "m_Name": "Texel Size", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5581.99951171875, + "y": -3867.0, + "width": 183.99998474121095, + "height": 100.99999237060547 + } + }, + "m_Slots": [ + { + "m_Id": "5b3ff4ee364f4d7a923b530ad60d8762" + }, + { + "m_Id": "c183b5bd9bbe45089f93996e73110918" + }, + { + "m_Id": "1196ae398cc348349ab0c1a23fdab4bd" + }, + { + "m_Id": "7b144a976914480baf430c0f6f7f4def" + }, + { + "m_Id": "836f639bd89d42f9b3a0470c3094815e" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "b691728a389a417d9b4f2d02541209c2", + "m_Id": 6, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "b7f9ac55517141868bfb9d2ad6429792", + "m_Id": 6, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "b85d677872b44421bf5536f42ba0267c", + "m_Id": 3, + "m_DisplayName": "Color0", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Color0", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.CombineNode", + "m_ObjectId": "bc9afcb18afa4ccc82d2cdc34d3f4641", + "m_Group": { + "m_Id": "daaf032a109749a88c9b8ff8e1f8b541" + }, + "m_Name": "Combine", + "m_DrawState": { + "m_Expanded": false, + "m_Position": { + "serializedVersion": "2", + "x": -5392.0, + "y": -3867.0, + "width": 125.99999237060547, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "5e42524569844befad16fda5a94eb9cb" + }, + { + "m_Id": "54d7a93ffec5490aa4591da23a21b693" + }, + { + "m_Id": "aa2794b8f0e24bf281d22e0fef0647be" + }, + { + "m_Id": "200245fc8bbe4826b209ab5f7ffe074c" + }, + { + "m_Id": "fc2e62201c5847e798fd939314413fcd" + }, + { + "m_Id": "fe11fa80cc1847a5a37f6757d521cf25" + }, + { + "m_Id": "de0c6f7f7af94defa6c3dbc6433de9d4" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "c183b5bd9bbe45089f93996e73110918", + "m_Id": 2, + "m_DisplayName": "Height", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Height", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.CustomFunctionNode", + "m_ObjectId": "c234e5216678436195ee1a5914bc79da", + "m_Group": { + "m_Id": "98934a69591249d5b8b92b39045359a3" + }, + "m_Name": "GenerateUV (Custom Function)", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4446.0, + "y": -2347.0, + "width": 221.99998474121095, + "height": 142.0 + } + }, + "m_Slots": [ + { + "m_Id": "8e6aee1173864e58be589084897a3f35" + }, + { + "m_Id": "3db1608e927e4102a3c3a88e9fcab39a" + }, + { + "m_Id": "0f7ffb6d2de4447f9736780cbcee8e07" + }, + { + "m_Id": "d4954b7bbbb0412cbc997bcbe7dfa808" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SourceType": 0, + "m_FunctionName": "GenerateUV", + "m_FunctionSource": "96de908384869cd409c75efa351d5edf", + "m_FunctionBody": "Enter function body here..." +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "c35312edaa2344788b1964ee2f63a236", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DMaterialSlot", + "m_ObjectId": "c3e6d7c20c184bf39fd8822130e693e7", + "m_Id": 0, + "m_DisplayName": "_MainTex", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "c422a9a9ff824176aad2241f58c44d0b", + "m_Id": 0, + "m_DisplayName": "Outline Offset 1", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "c478c32c45884c57a62f7b2aa8ddc3b0", + "m_Id": 2, + "m_DisplayName": "Alpha", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Alpha", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "c52a1744a9a14989b0ae452ad6de6061", + "m_Id": 0, + "m_DisplayName": "SSR", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "SSR", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "c6bdb985bc16435fa72f5a3c81bb633c", + "m_Id": 6, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "c7d4094601ac4bc1aead609c72b1f1c1", + "m_Id": 4, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "c7ddee91dc5b48dc828309c77fdb0b88", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4444.0, + "y": -4266.0, + "width": 153.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "a7942746b5564dc7bbbae1deb2403022" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "a6bbb32e8d884be9bb36db91fe4b81b1" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SamplerStateMaterialSlot", + "m_ObjectId": "c88fcbaeea954a5f9c68c339fa8b604d", + "m_Id": 3, + "m_DisplayName": "Sampler", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Sampler", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "c9b722d107ce4cd6a748c883472b9b0f", + "m_Id": 7, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "c9d7f0dbae7d422985a1cc87c025e76b", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4312.0, + "y": -3179.000244140625, + "width": 144.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "79147f6986644769b58d9ed64fe771e1" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "cb3c0c3f08654b068bea44c4ffb15f4a" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Internal.Texture2DShaderProperty", + "m_ObjectId": "c9ec735d1a1046769e5601b2c97c849a", + "m_Guid": { + "m_GuidSerialized": "281a9526-c332-4471-a44e-ece4a1e95ef6" + }, + "m_Name": "Face Texture", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Texture2D_75569DEA", + "m_OverrideReferenceName": "_FaceTex", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "m_SerializedTexture": "{\"texture\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "isMainTexture": false, + "useTilingAndOffset": false, + "m_Modifiable": true, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "ca2a1083dc014f39ab8af0cdf140866b", + "m_Id": 0, + "m_DisplayName": "_FaceTex_ST", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Internal.BooleanShaderProperty", + "m_ObjectId": "cb3c0c3f08654b068bea44c4ffb15f4a", + "m_Guid": { + "m_GuidSerialized": "21009d12-8d94-4273-b0d0-a8ee0608ddcf" + }, + "m_Name": "OutlineMode", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Boolean_cb3c0c3f08654b068bea44c4ffb15f4a", + "m_OverrideReferenceName": "_OutlineMode", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SamplerStateMaterialSlot", + "m_ObjectId": "cb5e9f9567e84f8fa5463efc0e256e19", + "m_Id": 3, + "m_DisplayName": "Sampler", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Sampler", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "cb7117ecb1d047a8b2cb00ed552cb181", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.Alpha", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -3032.66650390625, + "y": -3029.33349609375, + "width": 200.0, + "height": 41.33349609375 + } + }, + "m_Slots": [ + { + "m_Id": "724e17584e97443e9e285dfa7253c8e3" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.Alpha" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "cc88101667c9488f9c5a716e851c1b21", + "m_Id": 3, + "m_DisplayName": "Color0", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Color0", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "cce40479b6284b6fa3174db9f09d0ac9", + "m_Id": 0, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "cd7281fb41aa4e61ac0fdf71d4f4bd46", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SamplerStateMaterialSlot", + "m_ObjectId": "cda5e3b4c1054bf3a65c0b7ec6bc778a", + "m_Id": 3, + "m_DisplayName": "Sampler", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Sampler", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SampleTexture2DNode", + "m_ObjectId": "cdddee3a537c464697357f11b966f9b8", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "Sample Texture 2D", + "m_DrawState": { + "m_Expanded": false, + "m_Position": { + "serializedVersion": "2", + "x": -4420.0, + "y": -4483.0, + "width": 156.0, + "height": 181.0 + } + }, + "m_Slots": [ + { + "m_Id": "41b9b79b3859472882bcea393703eec0" + }, + { + "m_Id": "c7d4094601ac4bc1aead609c72b1f1c1" + }, + { + "m_Id": "767769f736d5478cba5f10a415e28e7f" + }, + { + "m_Id": "b691728a389a417d9b4f2d02541209c2" + }, + { + "m_Id": "045c4f6b050549c7a0efb208e6349779" + }, + { + "m_Id": "509e6f38505b4b0695b263706a55028f" + }, + { + "m_Id": "204dacb5a95b424facf11cb6f65bd188" + }, + { + "m_Id": "35cbea6373dd4e4f8d0fea36e8add392" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_TextureType": 0, + "m_NormalMapSpace": 0, + "m_EnableGlobalMipBias": true, + "m_MipSamplingMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "cfaf3f3a5a1146e194cddad30c95aada", + "m_Id": 7, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.GroupData", + "m_ObjectId": "d0a791a544614667962a9a9a9ce0c68a", + "m_Title": "Screen Space Ratio", + "m_Position": { + "x": -6179.99951171875, + "y": -3422.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "d0b10e52e21941b183f5f635894c76c8", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "d1a17e42e7a04dc38984e3c01149445b", + "m_Id": 7, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "d219977210094c0082c517d8dc00c8bb", + "m_Id": 0, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.GroupData", + "m_ObjectId": "d258902c6ec74942afdb9ebf8c1d07f8", + "m_Title": "Generate Normal", + "m_Position": { + "x": -4511.33349609375, + "y": -3999.3330078125 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "d30452ac6b244ecca03df4d7b4de9f81", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "d48c3871e3064027a10ae9f4babd3be0", + "m_Id": 0, + "m_DisplayName": "_UnderlaySoftness", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "d4954b7bbbb0412cbc997bcbe7dfa808", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "d4df208fc23b42f2b52364124f1b661c", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5268.0, + "y": -3261.0, + "width": 159.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "757174b6f25040fdbb20355a21752222" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "74b41464cbed4e9e8e23af5ab9be40cf" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector3MaterialSlot", + "m_ObjectId": "d5173cc3c6cd4f1998550f3187a3e9c8", + "m_Id": 0, + "m_DisplayName": "Normal", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Normal", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [ + "X", + "Y", + "Z" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "d6a6a119394e4082a11bc024a6e42ef8", + "m_Id": 0, + "m_DisplayName": "Outline Color 2", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "d880558893fb442b9320cf55885d1117", + "m_Id": 0, + "m_DisplayName": "_FaceUVSpeed", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "d8edec16956c4f15b7d51d6ec10753f4", + "m_Id": 2, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "d9bcb754db834583b6518c5ed5152114", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "d9dc4839ee2847999110bdb234d6041a", + "m_Id": 1, + "m_DisplayName": "G", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DMaterialSlot", + "m_ObjectId": "da7a06d393a44089842070d51d2aa0a6", + "m_Id": 0, + "m_DisplayName": "_MainTex", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.GroupData", + "m_ObjectId": "daaf032a109749a88c9b8ff8e1f8b541", + "m_Title": "Offset Scale", + "m_Position": { + "x": -5747.99951171875, + "y": -3961.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVNode", + "m_ObjectId": "dbcb748279484a4590e53518c49122b8", + "m_Group": { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + "m_Name": "UV", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4776.00048828125, + "y": -2757.000244140625, + "width": 145.0, + "height": 130.00001525878907 + } + }, + "m_Slots": [ + { + "m_Id": "7a0f504e4175406dbd8134250f4e350b" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_OutputChannel": 1 +} + +{ + "m_SGVersion": 3, + "m_Type": "UnityEditor.ShaderGraph.Internal.ColorShaderProperty", + "m_ObjectId": "dc75c4e3a1bc4bb0a128086c2b0679a5", + "m_Guid": { + "m_GuidSerialized": "85cd941f-2fd2-43a3-b0fa-9f728bfb4220" + }, + "m_Name": "Face Color", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Color_99AFBB3D", + "m_OverrideReferenceName": "_FaceColor", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "r": 1.0, + "g": 1.0, + "b": 1.0, + "a": 1.0 + }, + "isMainColor": false, + "m_ColorMode": 1 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "de0c6f7f7af94defa6c3dbc6433de9d4", + "m_Id": 6, + "m_DisplayName": "RG", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RG", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "deac82280a2b43078e0e40863e2d974c", + "m_Id": 4, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DMaterialSlot", + "m_ObjectId": "def8e0b9d8384982bc5b4c32d877e458", + "m_Id": 0, + "m_DisplayName": "Outline Texture", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SubtractNode", + "m_ObjectId": "dff7a66b353a4023b29c9d937da77960", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "Subtract", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4602.0, + "y": -4298.0, + "width": 130.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "7b8a19bd115e4167a25b59cb3218a817" + }, + { + "m_Id": "0b57f2d35157477ab2b29a5aac14ae8b" + }, + { + "m_Id": "e9e06fcb161e44ba8cc9f6f60264df78" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "e141833aa78b4fd59ecad949beb43a78", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "e2d28f29bbac4983a401574480b5ca28", + "m_Id": 1, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.NormalMaterialSlot", + "m_ObjectId": "e386b183a18245a796b024022f7f3074", + "m_Id": 0, + "m_DisplayName": "Normal (Object Space)", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "NormalOS", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [ + "X", + "Y", + "Z" + ], + "m_Space": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "e444f2c81d1e48329fa2c91005277e8d", + "m_Id": 1, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "e495a9f7a11f4eb89334e83be154ceb9", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "e51a636b2621440eb94cc802c1cf4bfc", + "m_Id": 2, + "m_DisplayName": "Height", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Height", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "e591df3a1eb94e259b762f2830b407e2", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.Emission", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "4590bfa2a0664b65b6f073bae33a071f" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.Emission" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "e6e80c6b0db545cda26b079a9a78fbb3", + "m_Id": 5, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.CustomFunctionNode", + "m_ObjectId": "e818605f8f5a4f01bf61caaa33693581", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "ComputeSDF44 (Custom Function)", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4144.0, + "y": -3369.0, + "width": 244.0, + "height": 214.0 + } + }, + "m_Slots": [ + { + "m_Id": "641eda269d7b4da9acb65f8d50035ea9" + }, + { + "m_Id": "f6823778a3cf42d5bbe8a83e5f9c9fa3" + }, + { + "m_Id": "9c26fdddba244d36a854298c00473247" + }, + { + "m_Id": "f684c5678e9e4f078157a3ab7ef5057b" + }, + { + "m_Id": "14ad19bf20a140dd88d58452d7df688b" + }, + { + "m_Id": "215a82c127204988b751de7d3a39b955" + }, + { + "m_Id": "c478c32c45884c57a62f7b2aa8ddc3b0" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SourceType": 0, + "m_FunctionName": "ComputeSDF44", + "m_FunctionSource": "96de908384869cd409c75efa351d5edf", + "m_FunctionBody": "Enter function body here..." +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "e9e06fcb161e44ba8cc9f6f60264df78", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "ebbd94a7102a4457a48ac492de3bff14", + "m_Id": 5, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "ebd6d75abcb84108bcadbfe7ee5f6244", + "m_Id": 7, + "m_DisplayName": "TextureHeight", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "TextureHeight", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "ec184d6d9fb2494897774c9e7d279e6d", + "m_Group": { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4778.00048828125, + "y": -2626.0, + "width": 145.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "ca2a1083dc014f39ab8af0cdf140866b" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "07946387933e416db576b677f0711e5f" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SubtractNode", + "m_ObjectId": "ec1f2e8bc9fd4ae38b133c60ee6c49b8", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Subtract", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4957.99951171875, + "y": -3204.0, + "width": 130.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "748c31bbcecc4b30bec2e42c0612175b" + }, + { + "m_Id": "4bda5c294e1949138d033640e1d385b4" + }, + { + "m_Id": "4e64dac49ddc47c3b5b1e27b17a08304" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector4ShaderProperty", + "m_ObjectId": "ec79eb447dfd47a9b3380344c6a60f43", + "m_Guid": { + "m_GuidSerialized": "54c77f8b-0534-4b35-a3f0-83ab2ebe6c1f" + }, + "m_Name": "_OutlineTex_ST", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector4_1774DE83", + "m_OverrideReferenceName": "_OutlineTex_ST", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.GroupData", + "m_ObjectId": "ecf16c34d46f4502ac601f0c38c7576b", + "m_Title": "Vertex Color", + "m_Position": { + "x": -3448.000244140625, + "y": -3579.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "ed1d1f1613334c3bb904dd08161cd7e5", + "m_Id": 0, + "m_DisplayName": "_GradientScale", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "ed6c215a65584deeaefad1d2c7743044", + "m_Id": 4, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector3MaterialSlot", + "m_ObjectId": "edbee7a8952b46529ac5ad0365775774", + "m_Id": 5, + "m_DisplayName": "RGB", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGB", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.ColorRGBMaterialSlot", + "m_ObjectId": "ef0b93f78372439696f50711eaf57d90", + "m_Id": 0, + "m_DisplayName": "Base Color", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "BaseColor", + "m_StageCapability": 2, + "m_Value": { + "x": 0.7353569269180298, + "y": 0.7353569269180298, + "z": 0.7353569269180298 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [ + "X", + "Y", + "Z" + ], + "m_ColorMode": 0, + "m_DefaultColor": { + "r": 0.5, + "g": 0.5, + "b": 0.5, + "a": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "ef9738ec7e894772a14e9dce441c16c6", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SamplerStateMaterialSlot", + "m_ObjectId": "f01d52cdcb1647aab35782b4af535efd", + "m_Id": 3, + "m_DisplayName": "Sampler", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Sampler", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.CustomFunctionNode", + "m_ObjectId": "f23a8b2b7c85478388ff7a8c8a6de740", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Layer4 (Custom Function)", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -3849.999755859375, + "y": -3286.0, + "width": 193.0, + "height": 189.99998474121095 + } + }, + "m_Slots": [ + { + "m_Id": "0fac35636fca4474a6afaefc3c757775" + }, + { + "m_Id": "cc88101667c9488f9c5a716e851c1b21" + }, + { + "m_Id": "68ec7c31365549d6a8ce883edfc02de2" + }, + { + "m_Id": "02559cbe5ad441a3904ccb75ded2b2c5" + }, + { + "m_Id": "34a67e0fef884f9399e674d9eeaf720c" + }, + { + "m_Id": "3802c81c3be24823aa1d7c9997a33c29" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SourceType": 0, + "m_FunctionName": "Layer4", + "m_FunctionSource": "96de908384869cd409c75efa351d5edf", + "m_FunctionBody": "Enter function body here..." +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "f2903158b3624759bca1fcd843698078", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "x": 2.0, + "y": 2.0, + "z": 2.0, + "w": 2.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "f2a351a5375c441b8d9ab7e2c9545a77", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "e00": 2.0, + "e01": 2.0, + "e02": 2.0, + "e03": 2.0, + "e10": 2.0, + "e11": 2.0, + "e12": 2.0, + "e13": 2.0, + "e20": 2.0, + "e21": 2.0, + "e22": 2.0, + "e23": 2.0, + "e30": 2.0, + "e31": 2.0, + "e32": 2.0, + "e33": 2.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DPropertiesNode", + "m_ObjectId": "f383b24f0bc6434dafe44b3e3d338a63", + "m_Group": { + "m_Id": "d0a791a544614667962a9a9a9ce0c68a" + }, + "m_Name": "Texel Size", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -6012.99951171875, + "y": -3209.0, + "width": 183.99998474121095, + "height": 100.99999237060547 + } + }, + "m_Slots": [ + { + "m_Id": "fb5e1e2a67c14602808358686bb75091" + }, + { + "m_Id": "712da461f71a454db59d349f752d41ee" + }, + { + "m_Id": "b000f852aa984e9dae25b125a4607f4e" + }, + { + "m_Id": "55a3403c16184e63b4e78607a6a20cd8" + }, + { + "m_Id": "b467be738d0e454995e380cbf526efe3" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "f3d31c1f18d8491a8ecf5cbc37e4b7db", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4321.0, + "y": -3281.000244140625, + "width": 153.00001525878907, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "ed1d1f1613334c3bb904dd08161cd7e5" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "a6bbb32e8d884be9bb36db91fe4b81b1" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "f42ad06b3c6a45d3ab33de904c063412", + "m_Id": 3, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "f48f04ad45d046a8b88e71731ed506e7", + "m_Id": 4, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "f4ecc442a2d246759f7c2c0412953d28", + "m_Group": { + "m_Id": "" + }, + "m_Name": "VertexDescription.Normal", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "a3f8b6e8ae7f48e2989a029904401502" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Normal" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "f6823778a3cf42d5bbe8a83e5f9c9fa3", + "m_Id": 1, + "m_DisplayName": "SD", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "SD", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "f684c5678e9e4f078157a3ab7ef5057b", + "m_Id": 4, + "m_DisplayName": "Isoperimeter", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Isoperimeter", + "m_StageCapability": 3, + "m_Value": { + "x": 3.0, + "y": 2.0, + "z": 1.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SampleTexture2DNode", + "m_ObjectId": "f814deb543c24fbbafbcdb5071d96022", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Sample Texture 2D", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4600.0, + "y": -3245.0, + "width": 183.99998474121095, + "height": 253.0 + } + }, + "m_Slots": [ + { + "m_Id": "abd59150589b436cadf8c9e6f43ccb8e" + }, + { + "m_Id": "7acfafd73b8c4dfab8c55c18a887e087" + }, + { + "m_Id": "928621a3ca2d41c89a10336bbbc81ddc" + }, + { + "m_Id": "b7f9ac55517141868bfb9d2ad6429792" + }, + { + "m_Id": "09b1b86c1c074337a4c439d3a308dd2e" + }, + { + "m_Id": "1f247658c7ba45fb93c41f51e21acb0d" + }, + { + "m_Id": "d30452ac6b244ecca03df4d7b4de9f81" + }, + { + "m_Id": "215b30ae27784ec3a13360a9029af283" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_TextureType": 0, + "m_NormalMapSpace": 0, + "m_EnableGlobalMipBias": true, + "m_MipSamplingMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "f864c900600e427ba7793f00c715e971", + "m_Id": 0, + "m_DisplayName": "Outline Width", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "fa6de3be9f5b4411b5081b49e645f424", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "e00": 2.0, + "e01": 2.0, + "e02": 2.0, + "e03": 2.0, + "e10": 2.0, + "e11": 2.0, + "e12": 2.0, + "e13": 2.0, + "e20": 2.0, + "e21": 2.0, + "e22": 2.0, + "e23": 2.0, + "e30": 2.0, + "e31": 2.0, + "e32": 2.0, + "e33": 2.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DivideNode", + "m_ObjectId": "faace8101df943d8956faa31728cb004", + "m_Group": { + "m_Id": "daaf032a109749a88c9b8ff8e1f8b541" + }, + "m_Name": "Divide", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5254.99951171875, + "y": -3891.0, + "width": 130.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "77e28f3e930b4c249145630ec961af95" + }, + { + "m_Id": "f2903158b3624759bca1fcd843698078" + }, + { + "m_Id": "30ca940fe2794c949f2a1d4d2caaa446" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "facc84930f544fd7a0205a6176b18ac0", + "m_Id": 2, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "fb15d0ba56d54a6192f11e107aeb5fa8", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "fb5e1e2a67c14602808358686bb75091", + "m_Id": 0, + "m_DisplayName": "Width", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Width", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "fc2e62201c5847e798fd939314413fcd", + "m_Id": 4, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "fd0b096ed5b74f9e9ec51327be200731", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SampleTexture2DNode", + "m_ObjectId": "fdb77c3e92ee497b88ca5dc46dc45350", + "m_Group": { + "m_Id": "98934a69591249d5b8b92b39045359a3" + }, + "m_Name": "Sample Texture 2D", + "m_DrawState": { + "m_Expanded": false, + "m_Position": { + "serializedVersion": "2", + "x": -4208.0, + "y": -2371.0, + "width": 180.0, + "height": 180.0 + } + }, + "m_Slots": [ + { + "m_Id": "4328cdbf78b94c038fd614c59bfe1cac" + }, + { + "m_Id": "04dfcc9ff13a4bf282ed46faec39d15c" + }, + { + "m_Id": "71dd947935b64ce38f0d25406dde447b" + }, + { + "m_Id": "61a6ac5f29344d109411f26850ab0a96" + }, + { + "m_Id": "44806230fa384c1e95f9c5918a14f056" + }, + { + "m_Id": "4eb3c00a1ca44e10be833b7ca61ff059" + }, + { + "m_Id": "57abc172afd449e2a4d567f93432507b" + }, + { + "m_Id": "cda5e3b4c1054bf3a65c0b7ec6bc778a" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_TextureType": 0, + "m_NormalMapSpace": 0, + "m_EnableGlobalMipBias": true, + "m_MipSamplingMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector3MaterialSlot", + "m_ObjectId": "fe11fa80cc1847a5a37f6757d521cf25", + "m_Id": 5, + "m_DisplayName": "RGB", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGB", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [] +} + diff --git a/Assets/TextMesh Pro/Shaders/TMP_SDF-URP Lit.shadergraph.meta b/Assets/TextMesh Pro/Shaders/TMP_SDF-URP Lit.shadergraph.meta new file mode 100644 index 0000000000..54c945eb51 --- /dev/null +++ b/Assets/TextMesh Pro/Shaders/TMP_SDF-URP Lit.shadergraph.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: a3d800b099a06e0478fb790c5e79057a +ScriptedImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 2 + userData: + assetBundleName: + assetBundleVariant: + script: {fileID: 11500000, guid: 625f186215c104763be7675aa2d941aa, type: 3} diff --git a/Assets/TextMesh Pro/Shaders/TMP_SDF-URP Unlit.shadergraph b/Assets/TextMesh Pro/Shaders/TMP_SDF-URP Unlit.shadergraph new file mode 100644 index 0000000000..d7d31de8c3 --- /dev/null +++ b/Assets/TextMesh Pro/Shaders/TMP_SDF-URP Unlit.shadergraph @@ -0,0 +1,11629 @@ +{ + "m_SGVersion": 3, + "m_Type": "UnityEditor.ShaderGraph.GraphData", + "m_ObjectId": "386c36a1c4c34ea29deb680fb82cfe8b", + "m_Properties": [ + { + "m_Id": "dc75c4e3a1bc4bb0a128086c2b0679a5" + }, + { + "m_Id": "867a4ae13c0d4a028c71bc1063824c14" + }, + { + "m_Id": "22b7f3c2bb7b48c0a7fdeb50e33e7d5e" + }, + { + "m_Id": "53073e5ea924459fa6681a4943e9f947" + }, + { + "m_Id": "7a046f410ce64aa88438b0bfd412c045" + }, + { + "m_Id": "636180f6e0504f2baaa5cc086980cb47" + }, + { + "m_Id": "74b41464cbed4e9e8e23af5ab9be40cf" + }, + { + "m_Id": "8ed907a2cc7949b68a283ae243ea1977" + }, + { + "m_Id": "cb3c0c3f08654b068bea44c4ffb15f4a" + }, + { + "m_Id": "0580d4b7e3a049049569f4508643a724" + }, + { + "m_Id": "c9ec735d1a1046769e5601b2c97c849a" + }, + { + "m_Id": "2d0a269511e34bd1ba9056d2c939dff2" + }, + { + "m_Id": "07946387933e416db576b677f0711e5f" + }, + { + "m_Id": "46fbf3eeb0ea4470869cba7443249295" + }, + { + "m_Id": "ec79eb447dfd47a9b3380344c6a60f43" + }, + { + "m_Id": "3fdf4b7bc5d4426492dcc057603ef4a6" + }, + { + "m_Id": "8cf8aae64c1d443f9303126886b40f17" + }, + { + "m_Id": "49e7c3ad55ce458797f0e60c950cb965" + }, + { + "m_Id": "81e8ed0534534674a74263e6161a2a1a" + }, + { + "m_Id": "952d0fa5cd744df0b434cd38e9a90b93" + }, + { + "m_Id": "21a7a380e66d42e780e2a2a1baa630d5" + }, + { + "m_Id": "2c10b97b92c947ceb307a93759c0228b" + }, + { + "m_Id": "1be90d4f96a841748b0c95219b12ad27" + }, + { + "m_Id": "5fbe253f3e444f2aa8ac717f9c856619" + }, + { + "m_Id": "5bd258837c514ff7ab0bf7027e762c18" + }, + { + "m_Id": "998db5e5901e45b29040eb2099370071" + }, + { + "m_Id": "a6c38edd2e8743a9b057ba8452b9f129" + }, + { + "m_Id": "82af2db1018543d7832af96c1cfc981f" + }, + { + "m_Id": "3ec4797e381747829ef4712c85fcf7a1" + }, + { + "m_Id": "b0b352c4503a43d083a64e57352b29a0" + }, + { + "m_Id": "424dbeeb009344efa29c304c4979e3d6" + }, + { + "m_Id": "05805bc6fcc941fd889922555c6c86d7" + }, + { + "m_Id": "a4ad98d8828c424384229c344ebe2ed0" + }, + { + "m_Id": "3e372195f4bd4845852a37839e5b602d" + }, + { + "m_Id": "a6bbb32e8d884be9bb36db91fe4b81b1" + }, + { + "m_Id": "4a0041116f73406db7a62ae80ff54ef4" + } + ], + "m_Keywords": [], + "m_Dropdowns": [], + "m_CategoryData": [ + { + "m_Id": "bafc3d388c1e444e820897b9a3d6029a" + } + ], + "m_Nodes": [ + { + "m_Id": "b1188549725543d485436c2e921ffbb2" + }, + { + "m_Id": "4488af8ff6a7421298a7e827f567263b" + }, + { + "m_Id": "7e0fadb2533f496192c1ad3e78642010" + }, + { + "m_Id": "aa87c72ac0e64469acc34f936f00b3d0" + }, + { + "m_Id": "105b1ed1aa714e41bbe1ef5472bdb11f" + }, + { + "m_Id": "150533bad8e2424aaa2c74e253af8592" + }, + { + "m_Id": "1c4df61c2fea404eb3b87b270d7c59bc" + }, + { + "m_Id": "8135ca333f8f4ea78163743e6ec1f55c" + }, + { + "m_Id": "36f1b4d96f2941c39e5cd95d9c1d2ce6" + }, + { + "m_Id": "9c228fac287d446296b91a4acf5cec59" + }, + { + "m_Id": "52798bdb86f6400e86489a7a368e9f8b" + }, + { + "m_Id": "f383b24f0bc6434dafe44b3e3d338a63" + }, + { + "m_Id": "85a1ad8e741e41759002e8cdc8cd0b96" + }, + { + "m_Id": "f3d31c1f18d8491a8ecf5cbc37e4b7db" + }, + { + "m_Id": "f23a8b2b7c85478388ff7a8c8a6de740" + }, + { + "m_Id": "e818605f8f5a4f01bf61caaa33693581" + }, + { + "m_Id": "85b5940eb77e4625812ded7215bab8d7" + }, + { + "m_Id": "cdddee3a537c464697357f11b966f9b8" + }, + { + "m_Id": "88253223d2c34ecfab92b0c344048f94" + }, + { + "m_Id": "c7ddee91dc5b48dc828309c77fdb0b88" + }, + { + "m_Id": "1e12726617b24675958e942eb62e4b09" + }, + { + "m_Id": "2ac79705aa9e415dbb74ec215233fd1b" + }, + { + "m_Id": "44317f2e371447e2a8d894f8a021a235" + }, + { + "m_Id": "7984fd094e1147bdabb4e26fbd3d31c8" + }, + { + "m_Id": "91890fe48ebe4717aea61ecaf3ad4861" + }, + { + "m_Id": "19075add867e4757b9520d18fe8de1d0" + }, + { + "m_Id": "fdb77c3e92ee497b88ca5dc46dc45350" + }, + { + "m_Id": "c234e5216678436195ee1a5914bc79da" + }, + { + "m_Id": "4648b46ad29a4008a80de4f8a5a5b813" + }, + { + "m_Id": "59bd90a849624124bae6464ee3669aa6" + }, + { + "m_Id": "a535f3bcbeb14622bb177eb6f46e76f4" + }, + { + "m_Id": "9e87ce9607e14015a3790c528ca5dfda" + }, + { + "m_Id": "285f6a9863d54ed2a8150727ad749456" + }, + { + "m_Id": "b163c9f1666644b0bba62cf0e12df7bc" + }, + { + "m_Id": "a455bd79094c4413a7b7dd80ca8b9368" + }, + { + "m_Id": "dbcb748279484a4590e53518c49122b8" + }, + { + "m_Id": "04dc152dd2ba4d519391577eb1156235" + }, + { + "m_Id": "9f0de188085746d5a19073da1de85ddb" + }, + { + "m_Id": "ec184d6d9fb2494897774c9e7d279e6d" + }, + { + "m_Id": "95928bcb6a284b8d88105a84c2e1d3ce" + }, + { + "m_Id": "4f194ff591484e908fc2bcdacbcf2570" + }, + { + "m_Id": "6e8946a245e842b38231d4a241bfb3ef" + }, + { + "m_Id": "cb7117ecb1d047a8b2cb00ed552cb181" + }, + { + "m_Id": "3c50439118b2496f9e390021b0964606" + }, + { + "m_Id": "3e231021af7b47ba97f2871e7f25d0fe" + }, + { + "m_Id": "aa3e347d733e48f7b65d8a8847370eec" + }, + { + "m_Id": "2a552a0b828f457c911aa19561e410ae" + }, + { + "m_Id": "acd0cd5a177f4a97bf23db7219305e3f" + }, + { + "m_Id": "51378bae98a94c309785d14cd5cbb453" + }, + { + "m_Id": "9e6e50a71d9843b49b62ebe1cf7d3d59" + }, + { + "m_Id": "7444469eb9884253819add9ef96baa25" + }, + { + "m_Id": "67a519f507384ff1861df5d8d5b486be" + }, + { + "m_Id": "48390d02257d41bf98eace1deaa4c539" + }, + { + "m_Id": "f4ecc442a2d246759f7c2c0412953d28" + }, + { + "m_Id": "7f2e6b5f15364ed9835d67d0cf4f8f65" + }, + { + "m_Id": "aca823a8188948c782eddaf0f45e1868" + }, + { + "m_Id": "7d78a616c2754cc28d1f32cf66ade611" + }, + { + "m_Id": "163beb4431c34f538340bc0af0991e6f" + }, + { + "m_Id": "39f2f84f30304d859fb07569e2695f60" + }, + { + "m_Id": "42a586e4f6ec40eeaba891b7fd133864" + }, + { + "m_Id": "4abff6ff92fa4a05b203f10580988335" + }, + { + "m_Id": "319916a5921343f7b7eef0e50dc93def" + }, + { + "m_Id": "f814deb543c24fbbafbcdb5071d96022" + }, + { + "m_Id": "65c8e64a7535466e933eed08a2f77532" + }, + { + "m_Id": "63c7cd57fc3c45a9a97b514fdae32693" + }, + { + "m_Id": "d4df208fc23b42f2b52364124f1b661c" + }, + { + "m_Id": "9d3c3383d5934a17bf9efbb7fd9e9043" + }, + { + "m_Id": "aef5c44f84e04c3185e0b93e95e34204" + }, + { + "m_Id": "c9d7f0dbae7d422985a1cc87c025e76b" + }, + { + "m_Id": "faace8101df943d8956faa31728cb004" + }, + { + "m_Id": "007c75c776ac4f1babe9cd7ae1fc4f14" + }, + { + "m_Id": "b571db753a1948d5a6f1de4e7d0c7238" + }, + { + "m_Id": "9147636b0cfa466a9b37a013d8f693bf" + }, + { + "m_Id": "bc9afcb18afa4ccc82d2cdc34d3f4641" + }, + { + "m_Id": "b4a40cb6acd441acb83cfe0240bf910d" + }, + { + "m_Id": "56c25395796e4d2fbe5c892d428d1620" + }, + { + "m_Id": "6b2f65c1463f4f7bad16c54a95d2fe75" + }, + { + "m_Id": "109f638d1f9b49d4991d6d21a86d4eb7" + }, + { + "m_Id": "dff7a66b353a4023b29c9d937da77960" + }, + { + "m_Id": "7a80e8839f0e4a1d9a6c0814f8793ee6" + }, + { + "m_Id": "7d7696aa6d184b4fb9c316a9dec37aee" + }, + { + "m_Id": "ec1f2e8bc9fd4ae38b133c60ee6c49b8" + }, + { + "m_Id": "2db15d90c2204143b225ec4ef08d0755" + } + ], + "m_GroupDatas": [ + { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + { + "m_Id": "d0a791a544614667962a9a9a9ce0c68a" + }, + { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + { + "m_Id": "ecf16c34d46f4502ac601f0c38c7576b" + }, + { + "m_Id": "98934a69591249d5b8b92b39045359a3" + }, + { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + { + "m_Id": "d258902c6ec74942afdb9ebf8c1d07f8" + }, + { + "m_Id": "daaf032a109749a88c9b8ff8e1f8b541" + } + ], + "m_StickyNoteDatas": [], + "m_Edges": [ + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "007c75c776ac4f1babe9cd7ae1fc4f14" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "b571db753a1948d5a6f1de4e7d0c7238" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "04dc152dd2ba4d519391577eb1156235" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "b163c9f1666644b0bba62cf0e12df7bc" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "105b1ed1aa714e41bbe1ef5472bdb11f" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "b4a40cb6acd441acb83cfe0240bf910d" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "109f638d1f9b49d4991d6d21a86d4eb7" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "ec1f2e8bc9fd4ae38b133c60ee6c49b8" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "150533bad8e2424aaa2c74e253af8592" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "319916a5921343f7b7eef0e50dc93def" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "150533bad8e2424aaa2c74e253af8592" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "65c8e64a7535466e933eed08a2f77532" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "150533bad8e2424aaa2c74e253af8592" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "9c228fac287d446296b91a4acf5cec59" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "150533bad8e2424aaa2c74e253af8592" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "f814deb543c24fbbafbcdb5071d96022" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "163beb4431c34f538340bc0af0991e6f" + }, + "m_SlotId": 4 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "7984fd094e1147bdabb4e26fbd3d31c8" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "19075add867e4757b9520d18fe8de1d0" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "e818605f8f5a4f01bf61caaa33693581" + }, + "m_SlotId": 5 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "1c4df61c2fea404eb3b87b270d7c59bc" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "e818605f8f5a4f01bf61caaa33693581" + }, + "m_SlotId": 4 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "1e12726617b24675958e942eb62e4b09" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "dff7a66b353a4023b29c9d937da77960" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "285f6a9863d54ed2a8150727ad749456" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "59bd90a849624124bae6464ee3669aa6" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "2a552a0b828f457c911aa19561e410ae" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "51378bae98a94c309785d14cd5cbb453" + }, + "m_SlotId": 6 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "2ac79705aa9e415dbb74ec215233fd1b" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "7984fd094e1147bdabb4e26fbd3d31c8" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "2db15d90c2204143b225ec4ef08d0755" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "fdb77c3e92ee497b88ca5dc46dc45350" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "319916a5921343f7b7eef0e50dc93def" + }, + "m_SlotId": 7 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "4abff6ff92fa4a05b203f10580988335" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "36f1b4d96f2941c39e5cd95d9c1d2ce6" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "85a1ad8e741e41759002e8cdc8cd0b96" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "39f2f84f30304d859fb07569e2695f60" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "163beb4431c34f538340bc0af0991e6f" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "3e231021af7b47ba97f2871e7f25d0fe" + }, + "m_SlotId": 5 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "6e8946a245e842b38231d4a241bfb3ef" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "42a586e4f6ec40eeaba891b7fd133864" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "cdddee3a537c464697357f11b966f9b8" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "44317f2e371447e2a8d894f8a021a235" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "2ac79705aa9e415dbb74ec215233fd1b" + }, + "m_SlotId": 3 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "4488af8ff6a7421298a7e827f567263b" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "44317f2e371447e2a8d894f8a021a235" + }, + "m_SlotId": 3 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "4648b46ad29a4008a80de4f8a5a5b813" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "c234e5216678436195ee1a5914bc79da" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "4abff6ff92fa4a05b203f10580988335" + }, + "m_SlotId": 4 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "e818605f8f5a4f01bf61caaa33693581" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "4f194ff591484e908fc2bcdacbcf2570" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "9f0de188085746d5a19073da1de85ddb" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "51378bae98a94c309785d14cd5cbb453" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "aa3e347d733e48f7b65d8a8847370eec" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "51378bae98a94c309785d14cd5cbb453" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "aca823a8188948c782eddaf0f45e1868" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "52798bdb86f6400e86489a7a368e9f8b" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "f383b24f0bc6434dafe44b3e3d338a63" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "56c25395796e4d2fbe5c892d428d1620" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "7a80e8839f0e4a1d9a6c0814f8793ee6" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "59bd90a849624124bae6464ee3669aa6" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "f23a8b2b7c85478388ff7a8c8a6de740" + }, + "m_SlotId": 4 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "63c7cd57fc3c45a9a97b514fdae32693" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "56c25395796e4d2fbe5c892d428d1620" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "65c8e64a7535466e933eed08a2f77532" + }, + "m_SlotId": 7 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "4abff6ff92fa4a05b203f10580988335" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "67a519f507384ff1861df5d8d5b486be" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "51378bae98a94c309785d14cd5cbb453" + }, + "m_SlotId": 4 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "6b2f65c1463f4f7bad16c54a95d2fe75" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "7d7696aa6d184b4fb9c316a9dec37aee" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "7444469eb9884253819add9ef96baa25" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "51378bae98a94c309785d14cd5cbb453" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "7984fd094e1147bdabb4e26fbd3d31c8" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "91890fe48ebe4717aea61ecaf3ad4861" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "7a80e8839f0e4a1d9a6c0814f8793ee6" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "65c8e64a7535466e933eed08a2f77532" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "7d7696aa6d184b4fb9c316a9dec37aee" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "319916a5921343f7b7eef0e50dc93def" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "7d78a616c2754cc28d1f32cf66ade611" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "f23a8b2b7c85478388ff7a8c8a6de740" + }, + "m_SlotId": 3 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "7e0fadb2533f496192c1ad3e78642010" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "88253223d2c34ecfab92b0c344048f94" + }, + "m_SlotId": 5 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "8135ca333f8f4ea78163743e6ec1f55c" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "f23a8b2b7c85478388ff7a8c8a6de740" + }, + "m_SlotId": 5 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "85a1ad8e741e41759002e8cdc8cd0b96" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "88253223d2c34ecfab92b0c344048f94" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "85a1ad8e741e41759002e8cdc8cd0b96" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "e818605f8f5a4f01bf61caaa33693581" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "85b5940eb77e4625812ded7215bab8d7" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "f23a8b2b7c85478388ff7a8c8a6de740" + }, + "m_SlotId": 6 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "88253223d2c34ecfab92b0c344048f94" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "44317f2e371447e2a8d894f8a021a235" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "9147636b0cfa466a9b37a013d8f693bf" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "faace8101df943d8956faa31728cb004" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "91890fe48ebe4717aea61ecaf3ad4861" + }, + "m_SlotId": 1 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "3e231021af7b47ba97f2871e7f25d0fe" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "91890fe48ebe4717aea61ecaf3ad4861" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "3e231021af7b47ba97f2871e7f25d0fe" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "91890fe48ebe4717aea61ecaf3ad4861" + }, + "m_SlotId": 3 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "3e231021af7b47ba97f2871e7f25d0fe" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "91890fe48ebe4717aea61ecaf3ad4861" + }, + "m_SlotId": 4 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "cb7117ecb1d047a8b2cb00ed552cb181" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "95928bcb6a284b8d88105a84c2e1d3ce" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "a455bd79094c4413a7b7dd80ca8b9368" + }, + "m_SlotId": 4 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "9c228fac287d446296b91a4acf5cec59" + }, + "m_SlotId": 7 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "4abff6ff92fa4a05b203f10580988335" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "9d3c3383d5934a17bf9efbb7fd9e9043" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "7a80e8839f0e4a1d9a6c0814f8793ee6" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "9d3c3383d5934a17bf9efbb7fd9e9043" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "7d7696aa6d184b4fb9c316a9dec37aee" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "9d3c3383d5934a17bf9efbb7fd9e9043" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "ec1f2e8bc9fd4ae38b133c60ee6c49b8" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "9e6e50a71d9843b49b62ebe1cf7d3d59" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "acd0cd5a177f4a97bf23db7219305e3f" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "9e87ce9607e14015a3790c528ca5dfda" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "c234e5216678436195ee1a5914bc79da" + }, + "m_SlotId": 4 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "9f0de188085746d5a19073da1de85ddb" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "7d78a616c2754cc28d1f32cf66ade611" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "a455bd79094c4413a7b7dd80ca8b9368" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "b163c9f1666644b0bba62cf0e12df7bc" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "a535f3bcbeb14622bb177eb6f46e76f4" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "c234e5216678436195ee1a5914bc79da" + }, + "m_SlotId": 3 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "aa3e347d733e48f7b65d8a8847370eec" + }, + "m_SlotId": 1 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "2ac79705aa9e415dbb74ec215233fd1b" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "aa87c72ac0e64469acc34f936f00b3d0" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "88253223d2c34ecfab92b0c344048f94" + }, + "m_SlotId": 4 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "acd0cd5a177f4a97bf23db7219305e3f" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "51378bae98a94c309785d14cd5cbb453" + }, + "m_SlotId": 5 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "acd0cd5a177f4a97bf23db7219305e3f" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "51378bae98a94c309785d14cd5cbb453" + }, + "m_SlotId": 7 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "aef5c44f84e04c3185e0b93e95e34204" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "109f638d1f9b49d4991d6d21a86d4eb7" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "b1188549725543d485436c2e921ffbb2" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "7d78a616c2754cc28d1f32cf66ade611" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "b163c9f1666644b0bba62cf0e12df7bc" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "9f0de188085746d5a19073da1de85ddb" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "b4a40cb6acd441acb83cfe0240bf910d" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "dff7a66b353a4023b29c9d937da77960" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "b571db753a1948d5a6f1de4e7d0c7238" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "bc9afcb18afa4ccc82d2cdc34d3f4641" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "b571db753a1948d5a6f1de4e7d0c7238" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "bc9afcb18afa4ccc82d2cdc34d3f4641" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "bc9afcb18afa4ccc82d2cdc34d3f4641" + }, + "m_SlotId": 6 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "faace8101df943d8956faa31728cb004" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "c234e5216678436195ee1a5914bc79da" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "fdb77c3e92ee497b88ca5dc46dc45350" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "c7ddee91dc5b48dc828309c77fdb0b88" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "88253223d2c34ecfab92b0c344048f94" + }, + "m_SlotId": 3 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "c9d7f0dbae7d422985a1cc87c025e76b" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "e818605f8f5a4f01bf61caaa33693581" + }, + "m_SlotId": 6 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "cdddee3a537c464697357f11b966f9b8" + }, + "m_SlotId": 7 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "88253223d2c34ecfab92b0c344048f94" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "d4df208fc23b42f2b52364124f1b661c" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "6b2f65c1463f4f7bad16c54a95d2fe75" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "dbcb748279484a4590e53518c49122b8" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "a455bd79094c4413a7b7dd80ca8b9368" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "dff7a66b353a4023b29c9d937da77960" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "cdddee3a537c464697357f11b966f9b8" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "e818605f8f5a4f01bf61caaa33693581" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "f23a8b2b7c85478388ff7a8c8a6de740" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "ec184d6d9fb2494897774c9e7d279e6d" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "a455bd79094c4413a7b7dd80ca8b9368" + }, + "m_SlotId": 3 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "ec1f2e8bc9fd4ae38b133c60ee6c49b8" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "f814deb543c24fbbafbcdb5071d96022" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "f23a8b2b7c85478388ff7a8c8a6de740" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "aa3e347d733e48f7b65d8a8847370eec" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "f383b24f0bc6434dafe44b3e3d338a63" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "85a1ad8e741e41759002e8cdc8cd0b96" + }, + "m_SlotId": 3 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "f3d31c1f18d8491a8ecf5cbc37e4b7db" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "e818605f8f5a4f01bf61caaa33693581" + }, + "m_SlotId": 3 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "f814deb543c24fbbafbcdb5071d96022" + }, + "m_SlotId": 7 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "4abff6ff92fa4a05b203f10580988335" + }, + "m_SlotId": 3 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "faace8101df943d8956faa31728cb004" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "109f638d1f9b49d4991d6d21a86d4eb7" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "faace8101df943d8956faa31728cb004" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "56c25395796e4d2fbe5c892d428d1620" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "faace8101df943d8956faa31728cb004" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "6b2f65c1463f4f7bad16c54a95d2fe75" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "faace8101df943d8956faa31728cb004" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "b4a40cb6acd441acb83cfe0240bf910d" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "fdb77c3e92ee497b88ca5dc46dc45350" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "59bd90a849624124bae6464ee3669aa6" + }, + "m_SlotId": 1 + } + } + ], + "m_VertexContext": { + "m_Position": { + "x": -2624.000244140625, + "y": -3709.000244140625 + }, + "m_Blocks": [ + { + "m_Id": "48390d02257d41bf98eace1deaa4c539" + }, + { + "m_Id": "f4ecc442a2d246759f7c2c0412953d28" + }, + { + "m_Id": "7f2e6b5f15364ed9835d67d0cf4f8f65" + } + ] + }, + "m_FragmentContext": { + "m_Position": { + "x": -2624.000244140625, + "y": -3424.000244140625 + }, + "m_Blocks": [ + { + "m_Id": "aca823a8188948c782eddaf0f45e1868" + }, + { + "m_Id": "6e8946a245e842b38231d4a241bfb3ef" + }, + { + "m_Id": "cb7117ecb1d047a8b2cb00ed552cb181" + }, + { + "m_Id": "3c50439118b2496f9e390021b0964606" + } + ] + }, + "m_PreviewData": { + "serializedMesh": { + "m_SerializedMesh": "{\"mesh\":{\"fileID\":10210,\"guid\":\"0000000000000000e000000000000000\",\"type\":0}}", + "m_Guid": "" + }, + "preventRotation": false + }, + "m_Path": "TextMeshPro/SRP", + "m_GraphPrecision": 0, + "m_PreviewMode": 2, + "m_OutputNode": { + "m_Id": "" + }, + "m_ActiveTargets": [ + { + "m_Id": "94300469581b4924ac7dda496811d45d" + } + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "007c75c776ac4f1babe9cd7ae1fc4f14", + "m_Group": { + "m_Id": "daaf032a109749a88c9b8ff8e1f8b541" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5868.0, + "y": -3787.000244140625, + "width": 134.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "1356dc7cbdfa4199a6535d3bbf4cd536" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "3e372195f4bd4845852a37839e5b602d" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.GroupData", + "m_ObjectId": "013228b0fdf1424097798f0973a9a4fb", + "m_Title": "Face Texture", + "m_Position": { + "x": -4779.494140625, + "y": -2948.97265625 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "02559cbe5ad441a3904ccb75ded2b2c5", + "m_Id": 5, + "m_DisplayName": "Color2", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Color2", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "03182b3263304258b265266325c21f65", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "045c4f6b050549c7a0efb208e6349779", + "m_Id": 7, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "04dc152dd2ba4d519391577eb1156235", + "m_Group": { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4500.0, + "y": -2747.0, + "width": 151.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "3d04f5ba6e7b40d281f22eb424145acd" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "c9ec735d1a1046769e5601b2c97c849a" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "04dfcc9ff13a4bf282ed46faec39d15c", + "m_Id": 4, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "05805bc6fcc941fd889922555c6c86d7", + "m_Guid": { + "m_GuidSerialized": "fe84e680-4cee-4ca5-be86-2e293a9ba093" + }, + "m_Name": "Ambient Shadow", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_05805bc6fcc941fd889922555c6c86d7", + "m_OverrideReferenceName": "_Ambient", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.30000001192092898, + "m_FloatType": 1, + "m_RangeValues": { + "x": 0.0, + "y": 1.0 + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector4ShaderProperty", + "m_ObjectId": "0580d4b7e3a049049569f4508643a724", + "m_Guid": { + "m_GuidSerialized": "eefb88c5-7665-45dc-b3c2-7cf98b9990d6" + }, + "m_Name": "Softness", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector4_D64EC33D", + "m_OverrideReferenceName": "_Softness", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "068ae649e00b40e198ec5a30ad741fab", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "0699eea947fc426cbfeb8744cf120222", + "m_Id": 1, + "m_DisplayName": "Color", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Color", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector4ShaderProperty", + "m_ObjectId": "07946387933e416db576b677f0711e5f", + "m_Guid": { + "m_GuidSerialized": "21d612fb-8153-41f8-9e2f-9de044c19fbf" + }, + "m_Name": "_FaceTex_ST", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector4_1A08AD4A", + "m_OverrideReferenceName": "_FaceTex_ST", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "082e9706dffc4c188270980d4e44ce0f", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "0848ba750e0341198cf0bbd413e0efe4", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "09b1b86c1c074337a4c439d3a308dd2e", + "m_Id": 7, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "0a67ca5280214bd794dc0ad66b5710a9", + "m_Id": 4, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "0b57f2d35157477ab2b29a5aac14ae8b", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "0ba4932e164847878ddb7b7bcff96985", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "0c4dc51f26484c26ad88a3fe4002abcd", + "m_Id": 2, + "m_DisplayName": "Color (1)", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Color", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "0d6a57754b824f6db9cefa6953bc06a9", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "e00": 2.0, + "e01": 2.0, + "e02": 2.0, + "e03": 2.0, + "e10": 2.0, + "e11": 2.0, + "e12": 2.0, + "e13": 2.0, + "e20": 2.0, + "e21": 2.0, + "e22": 2.0, + "e23": 2.0, + "e30": 2.0, + "e31": 2.0, + "e32": 2.0, + "e33": 2.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "0d7878dd226d4cfb81a991dc312309fc", + "m_Id": 0, + "m_DisplayName": "Underlay Dilate", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 2, + "m_Type": "UnityEditor.Rendering.Universal.ShaderGraph.UniversalUnlitSubTarget", + "m_ObjectId": "0eeb5490760e492f8c9691086fa00929" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "0f7ffb6d2de4447f9736780cbcee8e07", + "m_Id": 4, + "m_DisplayName": "AnimSpeed", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "AnimSpeed", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "0fac35636fca4474a6afaefc3c757775", + "m_Id": 1, + "m_DisplayName": "Alpha", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Alpha", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "105b1ed1aa714e41bbe1ef5472bdb11f", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4923.99951171875, + "y": -4233.0, + "width": 158.99998474121095, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "8a08179f99d649d289b8053d5fa0ad22" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "49e7c3ad55ce458797f0e60c950cb965" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.MultiplyNode", + "m_ObjectId": "109f638d1f9b49d4991d6d21a86d4eb7", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Multiply", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5068.0, + "y": -3182.0, + "width": 130.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "880bb02c6c6b49b18aa6ebc66dc566a0" + }, + { + "m_Id": "1b9cd8f5f4004e2eaf8afbaab803bc04" + }, + { + "m_Id": "b224a1cf80604103ad085c799995f3c2" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "10a99c07aad742349d258db16838c129", + "m_Id": 1, + "m_DisplayName": "Alpha", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Alpha", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "1196ae398cc348349ab0c1a23fdab4bd", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DMaterialSlot", + "m_ObjectId": "1356dc7cbdfa4199a6535d3bbf4cd536", + "m_Id": 0, + "m_DisplayName": "_MainTex", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "14ad19bf20a140dd88d58452d7df688b", + "m_Id": 5, + "m_DisplayName": "Softness", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Softness", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 1.0, + "z": 1.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "150533bad8e2424aaa2c74e253af8592", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4923.99951171875, + "y": -3486.666259765625, + "width": 135.3330078125, + "height": 33.999996185302737 + } + }, + "m_Slots": [ + { + "m_Id": "72fb5a0d7796446b9e2b929cb32facdc" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "3e372195f4bd4845852a37839e5b602d" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SplitNode", + "m_ObjectId": "163beb4431c34f538340bc0af0991e6f", + "m_Group": { + "m_Id": "ecf16c34d46f4502ac601f0c38c7576b" + }, + "m_Name": "Split", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -3415.000244140625, + "y": -3462.0, + "width": 120.00000762939453, + "height": 149.00001525878907 + } + }, + "m_Slots": [ + { + "m_Id": "4c334de01ecd429baa7652fc6002536b" + }, + { + "m_Id": "e2d28f29bbac4983a401574480b5ca28" + }, + { + "m_Id": "6a7af6143e114a538663e71f56731a21" + }, + { + "m_Id": "3e25be96bb3747738c238cf3a741d5df" + }, + { + "m_Id": "4907352322c644ebacdf2ca30f2994fd" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "19075add867e4757b9520d18fe8de1d0", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4261.33349609375, + "y": -3197.33349609375, + "width": 124.66650390625, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "4c28ee9109014fa086e5de7a3993341d" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "0580d4b7e3a049049569f4508643a724" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "1b9cd8f5f4004e2eaf8afbaab803bc04", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "e00": 2.0, + "e01": 2.0, + "e02": 2.0, + "e03": 2.0, + "e10": 2.0, + "e11": 2.0, + "e12": 2.0, + "e13": 2.0, + "e20": 2.0, + "e21": 2.0, + "e22": 2.0, + "e23": 2.0, + "e30": 2.0, + "e31": 2.0, + "e32": 2.0, + "e33": 2.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "1bdde3efd3b7464b8934c555be0f8a48", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "1be90d4f96a841748b0c95219b12ad27", + "m_Guid": { + "m_GuidSerialized": "4c91c146-43bb-4de8-948a-fbf8b1da10e1" + }, + "m_Name": "Bevel Offset", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_97690701", + "m_OverrideReferenceName": "_BevelOffset", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 1, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.0, + "m_FloatType": 1, + "m_RangeValues": { + "x": -0.5, + "y": 0.5 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "1c4df61c2fea404eb3b87b270d7c59bc", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4280.0, + "y": -3221.33349609375, + "width": 145.3330078125, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "f864c900600e427ba7793f00c715e971" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "867a4ae13c0d4a028c71bc1063824c14" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "1d35fa1fb5004f96a65ace54fbe4f1ad", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "1d7d96a5770b4f8ebb162bdbde020bca", + "m_Id": 3, + "m_DisplayName": "Texel Width", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Texel Width", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "1db37082bf844442804487b4944352de", + "m_Id": 4, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DMaterialSlot", + "m_ObjectId": "1df58cfa4dad4c449d01ee1c5ea05f2e", + "m_Id": 0, + "m_DisplayName": "_MainTex", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVNode", + "m_ObjectId": "1e12726617b24675958e942eb62e4b09", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "UV", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4772.0, + "y": -4404.0, + "width": 145.00001525878907, + "height": 130.0 + } + }, + "m_Slots": [ + { + "m_Id": "0848ba750e0341198cf0bbd413e0efe4" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_OutputChannel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "1f247658c7ba45fb93c41f51e21acb0d", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "1f46181633594ae0a1fb2adb76b42981", + "m_Id": 5, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "200245fc8bbe4826b209ab5f7ffe074c", + "m_Id": 3, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "204dacb5a95b424facf11cb6f65bd188", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BooleanMaterialSlot", + "m_ObjectId": "215a82c127204988b751de7d3a39b955", + "m_Id": 6, + "m_DisplayName": "Outline", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Outline", + "m_StageCapability": 3, + "m_Value": false, + "m_DefaultValue": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SamplerStateMaterialSlot", + "m_ObjectId": "215b30ae27784ec3a13360a9029af283", + "m_Id": 3, + "m_DisplayName": "Sampler", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Sampler", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Internal.BooleanShaderProperty", + "m_ObjectId": "21a7a380e66d42e780e2a2a1baa630d5", + "m_Guid": { + "m_GuidSerialized": "b2d0099f-e605-49f5-9959-e7cacae37aa3" + }, + "m_Name": "Bevel Type", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Boolean_21a7a380e66d42e780e2a2a1baa630d5", + "m_OverrideReferenceName": "_BevelType", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": false +} + +{ + "m_SGVersion": 3, + "m_Type": "UnityEditor.ShaderGraph.Internal.ColorShaderProperty", + "m_ObjectId": "22b7f3c2bb7b48c0a7fdeb50e33e7d5e", + "m_Guid": { + "m_GuidSerialized": "cd167d3a-7465-4d5a-86fc-0f22dc0ef908" + }, + "m_Name": "Outline Color 1", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Color_5550EB71", + "m_OverrideReferenceName": "_OutlineColor1", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "r": 0.0, + "g": 1.0, + "b": 1.0, + "a": 1.0 + }, + "isMainColor": false, + "m_ColorMode": 1 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "232b1aa09e67479abae141d3c76d3c5b", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "256d41e89a204d22951450de1c38051d", + "m_Id": 0, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector3MaterialSlot", + "m_ObjectId": "26e48352a08441bfa694dcea54c06e36", + "m_Id": 5, + "m_DisplayName": "RGB", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGB", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [ + "X", + "Y", + "Z" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "281bcee4777040f8a31ee0e10344e98d", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "285f6a9863d54ed2a8150727ad749456", + "m_Group": { + "m_Id": "98934a69591249d5b8b92b39045359a3" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4145.0, + "y": -2406.0, + "width": 154.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "b42e6dbfbc864097af182cbff5c0c1fb" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "22b7f3c2bb7b48c0a7fdeb50e33e7d5e" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.IsFrontFaceNode", + "m_ObjectId": "2a552a0b828f457c911aa19561e410ae", + "m_Group": { + "m_Id": "d258902c6ec74942afdb9ebf8c1d07f8" + }, + "m_Name": "Is Front Face", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4282.0, + "y": -3681.3330078125, + "width": 121.99999237060547, + "height": 77.33348846435547 + } + }, + "m_Slots": [ + { + "m_Id": "2ef1d888dc9d49e59d6a6950897ddc93" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.CustomFunctionNode", + "m_ObjectId": "2ac79705aa9e415dbb74ec215233fd1b", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Composite (Custom Function)", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -3277.3330078125, + "y": -3841.33349609375, + "width": 218.666748046875, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "a75f7ac601c446469802fe7754c1f279" + }, + { + "m_Id": "8c38a5d8327f456e9783740c05382619" + }, + { + "m_Id": "facc84930f544fd7a0205a6176b18ac0" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SourceType": 0, + "m_FunctionName": "Composite", + "m_FunctionSource": "96de908384869cd409c75efa351d5edf", + "m_FunctionBody": "Enter function body here..." +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "2b01ea3023e34c94af1754e4dcea8f2e", + "m_Id": 0, + "m_DisplayName": "Face Color", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BooleanMaterialSlot", + "m_ObjectId": "2bf5f2fdd2984599b7323d10cfb1d240", + "m_Id": 1, + "m_DisplayName": "Filter", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Filter", + "m_StageCapability": 3, + "m_Value": false, + "m_DefaultValue": false +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "2c10b97b92c947ceb307a93759c0228b", + "m_Guid": { + "m_GuidSerialized": "6be0b8ff-a766-4c6b-a6e4-3a72758ac95f" + }, + "m_Name": "Bevel Amount", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_B01DD93E", + "m_OverrideReferenceName": "_BevelAmount", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 1, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.0, + "m_FloatType": 1, + "m_RangeValues": { + "x": 0.0, + "y": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "2c7a9460724b47daad8df1be144de7c6", + "m_Id": 3, + "m_DisplayName": "Transform", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Transform", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector2ShaderProperty", + "m_ObjectId": "2d0a269511e34bd1ba9056d2c939dff2", + "m_Guid": { + "m_GuidSerialized": "edbe73dc-53ab-4bc1-9d64-ab36e0e05f03" + }, + "m_Name": "_FaceUVSpeed", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector2_3A8E0F13", + "m_OverrideReferenceName": "_FaceUVSpeed", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "2db15d90c2204143b225ec4ef08d0755", + "m_Group": { + "m_Id": "98934a69591249d5b8b92b39045359a3" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4350.0, + "y": -2396.0, + "width": 163.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "def8e0b9d8384982bc5b4c32d877e458" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "46fbf3eeb0ea4470869cba7443249295" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "2e4eb1ef08bb44178c82e53872485e0f", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BooleanMaterialSlot", + "m_ObjectId": "2ef1d888dc9d49e59d6a6950897ddc93", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 2, + "m_Value": true, + "m_DefaultValue": true +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "30ca940fe2794c949f2a1d4d2caaa446", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SampleTexture2DNode", + "m_ObjectId": "319916a5921343f7b7eef0e50dc93def", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Sample Texture 2D", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4760.0, + "y": -3245.000244140625, + "width": 184.0, + "height": 253.0 + } + }, + "m_Slots": [ + { + "m_Id": "d219977210094c0082c517d8dc00c8bb" + }, + { + "m_Id": "f48f04ad45d046a8b88e71731ed506e7" + }, + { + "m_Id": "e6e80c6b0db545cda26b079a9a78fbb3" + }, + { + "m_Id": "c6bdb985bc16435fa72f5a3c81bb633c" + }, + { + "m_Id": "d1a17e42e7a04dc38984e3c01149445b" + }, + { + "m_Id": "fb15d0ba56d54a6192f11e107aeb5fa8" + }, + { + "m_Id": "c35312edaa2344788b1964ee2f63a236" + }, + { + "m_Id": "c88fcbaeea954a5f9c68c339fa8b604d" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_TextureType": 0, + "m_NormalMapSpace": 0, + "m_EnableGlobalMipBias": true, + "m_MipSamplingMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "34a67e0fef884f9399e674d9eeaf720c", + "m_Id": 6, + "m_DisplayName": "Color3", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Color3", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "34a72a5ebb04402384a4fd3748111a37", + "m_Id": 0, + "m_DisplayName": "Alpha Clip Threshold", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "AlphaClipThreshold", + "m_StageCapability": 2, + "m_Value": 0.0010000000474974514, + "m_DefaultValue": 0.5, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DMaterialSlot", + "m_ObjectId": "3535ae87c6dd4769b52b20d9eca61069", + "m_Id": 0, + "m_DisplayName": "_MainTex", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SamplerStateMaterialSlot", + "m_ObjectId": "35cbea6373dd4e4f8d0fea36e8add392", + "m_Id": 3, + "m_DisplayName": "Sampler", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Sampler", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "36a0c473c4c04c3a930dd38f3920d410", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "e00": 2.0, + "e01": 2.0, + "e02": 2.0, + "e03": 2.0, + "e10": 2.0, + "e11": 2.0, + "e12": 2.0, + "e13": 2.0, + "e20": 2.0, + "e21": 2.0, + "e22": 2.0, + "e23": 2.0, + "e30": 2.0, + "e31": 2.0, + "e32": 2.0, + "e33": 2.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVNode", + "m_ObjectId": "36f1b4d96f2941c39e5cd95d9c1d2ce6", + "m_Group": { + "m_Id": "d0a791a544614667962a9a9a9ce0c68a" + }, + "m_Name": "UV", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -6314.6669921875, + "y": -3285.3330078125, + "width": 144.6669921875, + "height": 129.33348083496095 + } + }, + "m_Slots": [ + { + "m_Id": "65b3dc13b2b6484283ffe5abfe87a06a" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_OutputChannel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "373f1de8db6c429c9d46c781f741d7a4", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "e00": 2.0, + "e01": 2.0, + "e02": 2.0, + "e03": 2.0, + "e10": 2.0, + "e11": 2.0, + "e12": 2.0, + "e13": 2.0, + "e20": 2.0, + "e21": 2.0, + "e22": 2.0, + "e23": 2.0, + "e30": 2.0, + "e31": 2.0, + "e32": 2.0, + "e33": 2.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "3802c81c3be24823aa1d7c9997a33c29", + "m_Id": 2, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "3915c1927ffe49f8967304321cfbe497", + "m_Id": 4, + "m_DisplayName": "Atlas", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Atlas", + "m_StageCapability": 3, + "m_BareResource": true, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "39a382d661e2484da71f04c43f48e55f", + "m_Id": 3, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.VertexColorNode", + "m_ObjectId": "39f2f84f30304d859fb07569e2695f60", + "m_Group": { + "m_Id": "ecf16c34d46f4502ac601f0c38c7576b" + }, + "m_Name": "Vertex Color", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -3554.000244140625, + "y": -3462.0, + "width": 116.00000762939453, + "height": 94.00000762939453 + } + }, + "m_Slots": [ + { + "m_Id": "4b2d9ea03bf64fa19dcae1511d2581da" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 2, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "3c50439118b2496f9e390021b0964606", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.AlphaClipThreshold", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -3028.0, + "y": -3054.0, + "width": 200.0, + "height": 40.66650390625 + } + }, + "m_Slots": [ + { + "m_Id": "34a72a5ebb04402384a4fd3748111a37" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.AlphaClipThreshold" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DMaterialSlot", + "m_ObjectId": "3d04f5ba6e7b40d281f22eb424145acd", + "m_Id": 0, + "m_DisplayName": "Face Texture", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "3db1608e927e4102a3c3a88e9fcab39a", + "m_Id": 3, + "m_DisplayName": "Transform", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Transform", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "3dccd64e7f324bc1a75c1479d7a67c51", + "m_Id": 0, + "m_DisplayName": "In", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "In", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.CombineNode", + "m_ObjectId": "3e231021af7b47ba97f2871e7f25d0fe", + "m_Group": { + "m_Id": "ecf16c34d46f4502ac601f0c38c7576b" + }, + "m_Name": "Combine", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -2934.000244140625, + "y": -3466.0, + "width": 141.33349609375, + "height": 166.0 + } + }, + "m_Slots": [ + { + "m_Id": "6ccaced3889e4503a9414d808ec33981" + }, + { + "m_Id": "7f3d71a6c96847c099da45f95aafbecb" + }, + { + "m_Id": "d8edec16956c4f15b7d51d6ec10753f4" + }, + { + "m_Id": "39a382d661e2484da71f04c43f48e55f" + }, + { + "m_Id": "8764669016f6442f8152593c18a649d7" + }, + { + "m_Id": "26e48352a08441bfa694dcea54c06e36" + }, + { + "m_Id": "3e94a0d106064bdb864c960512ef4026" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "3e25be96bb3747738c238cf3a741d5df", + "m_Id": 3, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Internal.Texture2DShaderProperty", + "m_ObjectId": "3e372195f4bd4845852a37839e5b602d", + "m_Guid": { + "m_GuidSerialized": "60abd046-2a1a-48cd-a0af-2f702f7f53ab" + }, + "m_Name": "_MainTex", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Texture2D_90CBF488", + "m_OverrideReferenceName": "_MainTex", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 1, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "m_SerializedTexture": "{\"texture\":{\"fileID\":28684132378477856,\"guid\":\"8f586378b4e144a9851e7b34d9b748ee\",\"type\":2}}", + "m_Guid": "" + }, + "isMainTexture": false, + "useTilingAndOffset": false, + "m_Modifiable": true, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "3e94a0d106064bdb864c960512ef4026", + "m_Id": 6, + "m_DisplayName": "RG", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RG", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "3ec4797e381747829ef4712c85fcf7a1", + "m_Guid": { + "m_GuidSerialized": "020d65cc-50a8-4b8a-a624-90d7b489f549" + }, + "m_Name": "Specular Power", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_3ec4797e381747829ef4712c85fcf7a1", + "m_OverrideReferenceName": "_SpecularPower", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.0, + "m_FloatType": 1, + "m_RangeValues": { + "x": 0.0, + "y": 4.0 + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector2ShaderProperty", + "m_ObjectId": "3fdf4b7bc5d4426492dcc057603ef4a6", + "m_Guid": { + "m_GuidSerialized": "675d2567-3fca-4da6-9462-dfa4924950f1" + }, + "m_Name": "_OutlineUVSpeed", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector2_D66D89E6", + "m_OverrideReferenceName": "_OutlineUVSpeed", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "400d0b6c95dd4540ad3da3e8cb7e50b2", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "41986ac6400d46709d0ef043a67f6b34", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "41b9b79b3859472882bcea393703eec0", + "m_Id": 0, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "424dbeeb009344efa29c304c4979e3d6", + "m_Guid": { + "m_GuidSerialized": "314c37de-c6f2-4463-866d-8588f6fc119e" + }, + "m_Name": "Diffuse Shadow", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_424dbeeb009344efa29c304c4979e3d6", + "m_OverrideReferenceName": "_Diffuse", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.30000001192092898, + "m_FloatType": 1, + "m_RangeValues": { + "x": 0.0, + "y": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "42a586e4f6ec40eeaba891b7fd133864", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4934.0, + "y": -4442.99951171875, + "width": 133.99998474121095, + "height": 33.999996185302737 + } + }, + "m_Slots": [ + { + "m_Id": "da7a06d393a44089842070d51d2aa0a6" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "3e372195f4bd4845852a37839e5b602d" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.GroupData", + "m_ObjectId": "42cadae0923e4969b50bbc3f78185934", + "m_Title": "Face + 3 Outlines + Underlay", + "m_Position": { + "x": -5437.0, + "y": -3558.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "4328cdbf78b94c038fd614c59bfe1cac", + "m_Id": 0, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.CustomFunctionNode", + "m_ObjectId": "44317f2e371447e2a8d894f8a021a235", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "Layer1 (Custom Function)", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4004.999755859375, + "y": -4173.0, + "width": 191.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "10a99c07aad742349d258db16838c129" + }, + { + "m_Id": "b85d677872b44421bf5536f42ba0267c" + }, + { + "m_Id": "75aba700d74d4b2687bf3166cf1da3e2" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SourceType": 0, + "m_FunctionName": "Layer1", + "m_FunctionSource": "96de908384869cd409c75efa351d5edf", + "m_FunctionBody": "Enter function body here..." +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "44806230fa384c1e95f9c5918a14f056", + "m_Id": 7, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "4488af8ff6a7421298a7e827f567263b", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4226.0, + "y": -4109.0, + "width": 158.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "66f69ef16eac4eb48357bde804cf3c39" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "8cf8aae64c1d443f9303126886b40f17" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVNode", + "m_ObjectId": "4648b46ad29a4008a80de4f8a5a5b813", + "m_Group": { + "m_Id": "98934a69591249d5b8b92b39045359a3" + }, + "m_Name": "UV", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4576.0, + "y": -2437.0, + "width": 145.0, + "height": 130.0 + } + }, + "m_Slots": [ + { + "m_Id": "b2baf44eae52473cb6cda7b1debece01" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_OutputChannel": 1 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Internal.Texture2DShaderProperty", + "m_ObjectId": "46fbf3eeb0ea4470869cba7443249295", + "m_Guid": { + "m_GuidSerialized": "be87c5a3-e361-4b95-89c8-911c39a51c0d" + }, + "m_Name": "Outline Texture", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Texture2D_A0B54237", + "m_OverrideReferenceName": "_OutlineTex", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "m_SerializedTexture": "{\"texture\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "isMainTexture": false, + "useTilingAndOffset": false, + "m_Modifiable": true, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "47d020251e9841a5b1f0fd64396026a1", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "48390d02257d41bf98eace1deaa4c539", + "m_Group": { + "m_Id": "" + }, + "m_Name": "VertexDescription.Position", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "8036d0e6090b456e9b4ea87227868236" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Position" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.GroupData", + "m_ObjectId": "484b51c50485473b819c4f05087b32d7", + "m_Title": "Underlay", + "m_Position": { + "x": -5253.0, + "y": -4542.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "4907352322c644ebacdf2ca30f2994fd", + "m_Id": 4, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "49dabfd48a78475882e664526b483ce1", + "m_Id": 4, + "m_DisplayName": "Texel Height", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Texel Height", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector2ShaderProperty", + "m_ObjectId": "49e7c3ad55ce458797f0e60c950cb965", + "m_Guid": { + "m_GuidSerialized": "31b55db9-0da1-4ec4-af2b-d83747ed5bc4" + }, + "m_Name": "Underlay Offset", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector2_CE9DEDB3", + "m_OverrideReferenceName": "_UnderlayOffset", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "4a0041116f73406db7a62ae80ff54ef4", + "m_Guid": { + "m_GuidSerialized": "a2d96028-f92f-4076-8376-42249ca40935" + }, + "m_Name": "_ScaleRatioA", + "m_DefaultRefNameVersion": 1, + "m_RefNameGeneratedByDisplayName": "_ScaleRatioA", + "m_DefaultReferenceName": "_ScaleRatioA", + "m_OverrideReferenceName": "", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.0, + "m_FloatType": 0, + "m_RangeValues": { + "x": 0.0, + "y": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "4a66dcbe712a4d40bd8f355b834594b5", + "m_Id": 6, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.CombineNode", + "m_ObjectId": "4abff6ff92fa4a05b203f10580988335", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Combine", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4293.3330078125, + "y": -3497.99951171875, + "width": 140.66648864746095, + "height": 166.0 + } + }, + "m_Slots": [ + { + "m_Id": "b015d1b7e4134c59baf6851e7649802c" + }, + { + "m_Id": "d9dc4839ee2847999110bdb234d6041a" + }, + { + "m_Id": "91d6a9a5fbc04ea49075cb51835e7264" + }, + { + "m_Id": "f42ad06b3c6a45d3ab33de904c063412" + }, + { + "m_Id": "ed6c215a65584deeaefad1d2c7743044" + }, + { + "m_Id": "edbee7a8952b46529ac5ad0365775774" + }, + { + "m_Id": "70337a74f6ad4b7bb6befc825219bab1" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "4b2d9ea03bf64fa19dcae1511d2581da", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "4bda5c294e1949138d033640e1d385b4", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "4c28ee9109014fa086e5de7a3993341d", + "m_Id": 0, + "m_DisplayName": "Softness", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "4c334de01ecd429baa7652fc6002536b", + "m_Id": 0, + "m_DisplayName": "In", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "In", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "4d1cb1a475df49f9a148195a65f5453a", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "4d9ce48719d143748f9f8e22da6f9ddc", + "m_Id": 5, + "m_DisplayName": "TextureWidth", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "TextureWidth", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "4e64dac49ddc47c3b5b1e27b17a08304", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "4e90ca54c0cc46a18ea600be7c80413a", + "m_Id": 0, + "m_DisplayName": "UV_1", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV_1", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "4eb3c00a1ca44e10be833b7ca61ff059", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"fileID\":-2362172177983852347,\"guid\":\"dda5bcb0d1e9515498f6e4e038bbefe6\",\"type\":2}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "4f194ff591484e908fc2bcdacbcf2570", + "m_Group": { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4255.0, + "y": -2771.0, + "width": 134.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "2b01ea3023e34c94af1754e4dcea8f2e" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "dc75c4e3a1bc4bb0a128086c2b0679a5" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "509e6f38505b4b0695b263706a55028f", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"fileID\":-2362172177983852347,\"guid\":\"dda5bcb0d1e9515498f6e4e038bbefe6\",\"type\":2}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.CustomFunctionNode", + "m_ObjectId": "51378bae98a94c309785d14cd5cbb453", + "m_Group": { + "m_Id": "d258902c6ec74942afdb9ebf8c1d07f8" + }, + "m_Name": "GetSurfaceNormal (Custom Function)", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4067.333251953125, + "y": -3881.99951171875, + "width": 263.9999694824219, + "height": 189.99998474121095 + } + }, + "m_Slots": [ + { + "m_Id": "5b0077c23eae443887872f84227deccc" + }, + { + "m_Id": "3915c1927ffe49f8967304321cfbe497" + }, + { + "m_Id": "4d9ce48719d143748f9f8e22da6f9ddc" + }, + { + "m_Id": "ebd6d75abcb84108bcadbfe7ee5f6244" + }, + { + "m_Id": "ef9738ec7e894772a14e9dce441c16c6" + }, + { + "m_Id": "9eeec1a9713045af8845cea263d5ea48" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SourceType": 0, + "m_FunctionName": "GetSurfaceNormal", + "m_FunctionSource": "96de908384869cd409c75efa351d5edf", + "m_FunctionBody": "Enter function body here..." +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SamplerStateMaterialSlot", + "m_ObjectId": "51f76f8a53ad43a4ad028426548ce9ba", + "m_Id": 3, + "m_DisplayName": "Sampler", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Sampler", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "52798bdb86f6400e86489a7a368e9f8b", + "m_Group": { + "m_Id": "d0a791a544614667962a9a9a9ce0c68a" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -6460.6669921875, + "y": -3113.333251953125, + "width": 135.33349609375, + "height": 33.999996185302737 + } + }, + "m_Slots": [ + { + "m_Id": "1df58cfa4dad4c449d01ee1c5ea05f2e" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "3e372195f4bd4845852a37839e5b602d" + } +} + +{ + "m_SGVersion": 3, + "m_Type": "UnityEditor.ShaderGraph.Internal.ColorShaderProperty", + "m_ObjectId": "53073e5ea924459fa6681a4943e9f947", + "m_Guid": { + "m_GuidSerialized": "5fdac24e-2d58-4471-80ce-79c3ab9a2564" + }, + "m_Name": "Outline Color 2", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Color_DBAB5AEC", + "m_OverrideReferenceName": "_OutlineColor2", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "r": 0.009433984756469727, + "g": 0.02534518577158451, + "b": 1.0, + "a": 1.0 + }, + "isMainColor": false, + "m_ColorMode": 1 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "54d7a93ffec5490aa4591da23a21b693", + "m_Id": 1, + "m_DisplayName": "G", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "55ffa45ec3654d5e88089fb40d2b0465", + "m_Id": 4, + "m_DisplayName": "AnimSpeed", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "AnimSpeed", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.MultiplyNode", + "m_ObjectId": "56c25395796e4d2fbe5c892d428d1620", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Multiply", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5071.99951171875, + "y": -3427.0, + "width": 129.99998474121095, + "height": 117.99999237060547 + } + }, + "m_Slots": [ + { + "m_Id": "9eb8137a6c2e41bbafdc8b0732dd47a3" + }, + { + "m_Id": "36a0c473c4c04c3a930dd38f3920d410" + }, + { + "m_Id": "068ae649e00b40e198ec5a30ad741fab" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "57abc172afd449e2a4d567f93432507b", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "582d6e289dbe4fdca7cf0307273eaa2f", + "m_Id": 0, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.MultiplyNode", + "m_ObjectId": "59bd90a849624124bae6464ee3669aa6", + "m_Group": { + "m_Id": "98934a69591249d5b8b92b39045359a3" + }, + "m_Name": "Multiply", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -3972.0, + "y": -2385.0, + "width": 130.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "2e4eb1ef08bb44178c82e53872485e0f" + }, + { + "m_Id": "8695190a5e614f2d90081871a8a06fc2" + }, + { + "m_Id": "81bdb47901ef48e5a588c6724b1b0142" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "59cea37675824d99995b370f09cef20a", + "m_Id": 4, + "m_DisplayName": "Texel Height", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Texel Height", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector3MaterialSlot", + "m_ObjectId": "5b0077c23eae443887872f84227deccc", + "m_Id": 0, + "m_DisplayName": "Normal", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Normal", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [ + "X", + "Y", + "Z" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "5b3ff4ee364f4d7a923b530ad60d8762", + "m_Id": 0, + "m_DisplayName": "Width", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Width", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "5bd258837c514ff7ab0bf7027e762c18", + "m_Guid": { + "m_GuidSerialized": "2d8f3ee9-1307-4b58-a60d-526e86b07109" + }, + "m_Name": "Bevel Roundness", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_AB6A015F", + "m_OverrideReferenceName": "_BevelRoundness", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.0, + "m_FloatType": 1, + "m_RangeValues": { + "x": 0.0, + "y": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "5da82bf481f8489ebd05e997f617f51b", + "m_Id": 4, + "m_DisplayName": "Isoperimeter", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Isoperimeter", + "m_StageCapability": 3, + "m_Value": 4.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "5e42524569844befad16fda5a94eb9cb", + "m_Id": 0, + "m_DisplayName": "R", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "5fbe253f3e444f2aa8ac717f9c856619", + "m_Guid": { + "m_GuidSerialized": "0a61c93f-6430-4aa6-af07-79bc3b411ccd" + }, + "m_Name": "Bevel Width", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_B50BBFCC", + "m_OverrideReferenceName": "_BevelWidth", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.0, + "m_FloatType": 1, + "m_RangeValues": { + "x": 0.0, + "y": 0.5 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "61133d79a89048c195f54939b2a1d30a", + "m_Id": 2, + "m_DisplayName": "Alpha", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Alpha", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "61a6ac5f29344d109411f26850ab0a96", + "m_Id": 6, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "6271438664e74b3fbf723bd6a1f50f8b", + "m_Id": 6, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "62bc551cea604e88b7858cc37d96a98a", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector2ShaderProperty", + "m_ObjectId": "636180f6e0504f2baaa5cc086980cb47", + "m_Guid": { + "m_GuidSerialized": "c1223e37-093d-4d5a-b2b0-cd9cc3e4f88e" + }, + "m_Name": "Outline Offset 1", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector2_636180f6e0504f2baaa5cc086980cb47", + "m_OverrideReferenceName": "_OutlineOffset1", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "63c7cd57fc3c45a9a97b514fdae32693", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5235.99951171875, + "y": -3386.999755859375, + "width": 141.99998474121095, + "height": 33.999996185302737 + } + }, + "m_Slots": [ + { + "m_Id": "c422a9a9ff824176aad2241f58c44d0b" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "636180f6e0504f2baaa5cc086980cb47" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "641eda269d7b4da9acb65f8d50035ea9", + "m_Id": 0, + "m_DisplayName": "SSR", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "SSR", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "65b3dc13b2b6484283ffe5abfe87a06a", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SampleTexture2DNode", + "m_ObjectId": "65c8e64a7535466e933eed08a2f77532", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Sample Texture 2D", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4759.99951171875, + "y": -3498.666259765625, + "width": 186.0, + "height": 251.33323669433595 + } + }, + "m_Slots": [ + { + "m_Id": "256d41e89a204d22951450de1c38051d" + }, + { + "m_Id": "0a67ca5280214bd794dc0ad66b5710a9" + }, + { + "m_Id": "ebbd94a7102a4457a48ac492de3bff14" + }, + { + "m_Id": "6271438664e74b3fbf723bd6a1f50f8b" + }, + { + "m_Id": "c9b722d107ce4cd6a748c883472b9b0f" + }, + { + "m_Id": "74cf69e61bef44589521f1bf2bf3c59a" + }, + { + "m_Id": "6e532f83d1c44e839bcfc5845d3b01d6" + }, + { + "m_Id": "cb5e9f9567e84f8fa5463efc0e256e19" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_TextureType": 0, + "m_NormalMapSpace": 0, + "m_EnableGlobalMipBias": true, + "m_MipSamplingMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "66f69ef16eac4eb48357bde804cf3c39", + "m_Id": 0, + "m_DisplayName": "_UnderlayColor", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "67a519f507384ff1861df5d8d5b486be", + "m_Group": { + "m_Id": "d258902c6ec74942afdb9ebf8c1d07f8" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4278.0, + "y": -3939.99951171875, + "width": 135.3330078125, + "height": 33.999996185302737 + } + }, + "m_Slots": [ + { + "m_Id": "c3e6d7c20c184bf39fd8822130e693e7" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "3e372195f4bd4845852a37839e5b602d" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "68ec7c31365549d6a8ce883edfc02de2", + "m_Id": 4, + "m_DisplayName": "Color1", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Color1", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "6a7af6143e114a538663e71f56731a21", + "m_Id": 2, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.MultiplyNode", + "m_ObjectId": "6b2f65c1463f4f7bad16c54a95d2fe75", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Multiply", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5070.0, + "y": -3301.0, + "width": 130.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "1d35fa1fb5004f96a65ace54fbe4f1ad" + }, + { + "m_Id": "fa6de3be9f5b4411b5081b49e645f424" + }, + { + "m_Id": "400d0b6c95dd4540ad3da3e8cb7e50b2" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "6ccaced3889e4503a9414d808ec33981", + "m_Id": 0, + "m_DisplayName": "R", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "6dfc1177dd0541a7a780fbf911ad1956", + "m_Id": 0, + "m_DisplayName": "_OutlineTex_ST", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "6e13f3cd573c467a94379f45d96cb690", + "m_Id": 2, + "m_DisplayName": "SSR", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "SSR", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "6e532f83d1c44e839bcfc5845d3b01d6", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "6e8946a245e842b38231d4a241bfb3ef", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.BaseColor", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -3026.0, + "y": -3110.0, + "width": 200.0, + "height": 40.66650390625 + } + }, + "m_Slots": [ + { + "m_Id": "ef0b93f78372439696f50711eaf57d90" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.BaseColor" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "6fbdcc5a972b4fa883dc5f21e525a376", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "70337a74f6ad4b7bb6befc825219bab1", + "m_Id": 6, + "m_DisplayName": "RG", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RG", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "712da461f71a454db59d349f752d41ee", + "m_Id": 2, + "m_DisplayName": "Height", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Height", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "71dd947935b64ce38f0d25406dde447b", + "m_Id": 5, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "724e17584e97443e9e285dfa7253c8e3", + "m_Id": 0, + "m_DisplayName": "Alpha", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Alpha", + "m_StageCapability": 2, + "m_Value": 0.15000000596046449, + "m_DefaultValue": 1.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DMaterialSlot", + "m_ObjectId": "72fb5a0d7796446b9e2b929cb32facdc", + "m_Id": 0, + "m_DisplayName": "_MainTex", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVNode", + "m_ObjectId": "7444469eb9884253819add9ef96baa25", + "m_Group": { + "m_Id": "d258902c6ec74942afdb9ebf8c1d07f8" + }, + "m_Name": "UV", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4298.0, + "y": -3809.99951171875, + "width": 144.66648864746095, + "height": 129.33323669433595 + } + }, + "m_Slots": [ + { + "m_Id": "03182b3263304258b265266325c21f65" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_OutputChannel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "748c31bbcecc4b30bec2e42c0612175b", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector2ShaderProperty", + "m_ObjectId": "74b41464cbed4e9e8e23af5ab9be40cf", + "m_Guid": { + "m_GuidSerialized": "41afbdcb-f3ae-4340-8973-1c1998c992a2" + }, + "m_Name": "Outline Offset 2", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "", + "m_OverrideReferenceName": "_OutlineOffset2", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "74cf69e61bef44589521f1bf2bf3c59a", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "757174b6f25040fdbb20355a21752222", + "m_Id": 0, + "m_DisplayName": "Outline Offset 2", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "75aba700d74d4b2687bf3166cf1da3e2", + "m_Id": 2, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "75c5657544c648058b20cea090f48dbf", + "m_Id": 0, + "m_DisplayName": "_OutlineUVSpeed", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "767769f736d5478cba5f10a415e28e7f", + "m_Id": 5, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "773b90134e894e429203c0c83e80b9de", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "77e28f3e930b4c249145630ec961af95", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BooleanMaterialSlot", + "m_ObjectId": "79147f6986644769b58d9ed64fe771e1", + "m_Id": 0, + "m_DisplayName": "OutlineMode", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": false, + "m_DefaultValue": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.MultiplyNode", + "m_ObjectId": "7984fd094e1147bdabb4e26fbd3d31c8", + "m_Group": { + "m_Id": "ecf16c34d46f4502ac601f0c38c7576b" + }, + "m_Name": "Multiply", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -3244.000244140625, + "y": -3414.0, + "width": 130.0, + "height": 118.00000762939453 + } + }, + "m_Slots": [ + { + "m_Id": "082e9706dffc4c188270980d4e44ce0f" + }, + { + "m_Id": "f2a351a5375c441b8d9ab7e2c9545a77" + }, + { + "m_Id": "41986ac6400d46709d0ef043a67f6b34" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 3, + "m_Type": "UnityEditor.ShaderGraph.Internal.ColorShaderProperty", + "m_ObjectId": "7a046f410ce64aa88438b0bfd412c045", + "m_Guid": { + "m_GuidSerialized": "d47271f5-5a84-47bf-a09e-c825d2aeb013" + }, + "m_Name": "Outline Color 3", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Color_551702C5", + "m_OverrideReferenceName": "_OutlineColor3", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "r": 0.0, + "g": 0.0, + "b": 0.0, + "a": 1.0 + }, + "isMainColor": false, + "m_ColorMode": 1 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "7a0f504e4175406dbd8134250f4e350b", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SubtractNode", + "m_ObjectId": "7a80e8839f0e4a1d9a6c0814f8793ee6", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Subtract", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4931.0, + "y": -3452.0, + "width": 130.0, + "height": 117.99999237060547 + } + }, + "m_Slots": [ + { + "m_Id": "6fbdcc5a972b4fa883dc5f21e525a376" + }, + { + "m_Id": "0ba4932e164847878ddb7b7bcff96985" + }, + { + "m_Id": "9178663316db43d582f1c4a127d307c6" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "7acfafd73b8c4dfab8c55c18a887e087", + "m_Id": 4, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "7b8a19bd115e4167a25b59cb3218a817", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "7c27ccb2c2dc4ca59c5438c3358630ca", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SubtractNode", + "m_ObjectId": "7d7696aa6d184b4fb9c316a9dec37aee", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Subtract", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4928.0, + "y": -3326.0, + "width": 130.0, + "height": 117.99999237060547 + } + }, + "m_Slots": [ + { + "m_Id": "4d1cb1a475df49f9a148195a65f5453a" + }, + { + "m_Id": "47d020251e9841a5b1f0fd64396026a1" + }, + { + "m_Id": "62bc551cea604e88b7858cc37d96a98a" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.MultiplyNode", + "m_ObjectId": "7d78a616c2754cc28d1f32cf66ade611", + "m_Group": { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + "m_Name": "Multiply", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -3973.0, + "y": -2796.0, + "width": 130.0, + "height": 117.99999237060547 + } + }, + "m_Slots": [ + { + "m_Id": "d9bcb754db834583b6518c5ed5152114" + }, + { + "m_Id": "861d4258049a4a3e8164f7297090f88e" + }, + { + "m_Id": "a7c06457d7454693a8bc3dc95257b2c2" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "7e0fadb2533f496192c1ad3e78642010", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4444.0, + "y": -4188.0, + "width": 173.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "d48c3871e3064027a10ae9f4babd3be0" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "952d0fa5cd744df0b434cd38e9a90b93" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "7f2e6b5f15364ed9835d67d0cf4f8f65", + "m_Group": { + "m_Id": "" + }, + "m_Name": "VertexDescription.Tangent", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -2586.0, + "y": -3592.0, + "width": 200.0, + "height": 41.0 + } + }, + "m_Slots": [ + { + "m_Id": "85ff8667d72947edada4e9fb4ff60559" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Tangent" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "7f3d71a6c96847c099da45f95aafbecb", + "m_Id": 1, + "m_DisplayName": "G", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PositionMaterialSlot", + "m_ObjectId": "8036d0e6090b456e9b4ea87227868236", + "m_Id": 0, + "m_DisplayName": "Position", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Position", + "m_StageCapability": 1, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [ + "X", + "Y", + "Z" + ], + "m_Space": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "80e665a5eeb64730a51742f698bf0d48", + "m_Id": 4, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "8135ca333f8f4ea78163743e6ec1f55c", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4050.666259765625, + "y": -3139.99951171875, + "width": 121.99999237060547, + "height": 33.999996185302737 + } + }, + "m_Slots": [ + { + "m_Id": "d6a6a119394e4082a11bc024a6e42ef8" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "53073e5ea924459fa6681a4943e9f947" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "81bdb47901ef48e5a588c6724b1b0142", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "81e8ed0534534674a74263e6161a2a1a", + "m_Guid": { + "m_GuidSerialized": "78aab961-c4a8-41f3-b203-1239c3b33b13" + }, + "m_Name": "Underlay Dilate", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_D48690B9", + "m_OverrideReferenceName": "_UnderlayDilate", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.0, + "m_FloatType": 0, + "m_RangeValues": { + "x": 0.0, + "y": 1.0 + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "82af2db1018543d7832af96c1cfc981f", + "m_Guid": { + "m_GuidSerialized": "37906c7b-9a3a-454b-a62a-9aa097e64bde" + }, + "m_Name": "Light Angle", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_82af2db1018543d7832af96c1cfc981f", + "m_OverrideReferenceName": "_LightAngle", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.0, + "m_FloatType": 1, + "m_RangeValues": { + "x": 0.0, + "y": 6.28000020980835 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "82d5443fe54d4a3b9420f8745d00a632", + "m_Id": 5, + "m_DisplayName": "Softness", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Softness", + "m_StageCapability": 3, + "m_Value": 8.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "849275cac05e4ca8bd0b38ab7ae43bf8", + "m_Id": 3, + "m_DisplayName": "Texel Width", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Texel Width", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "84dc74cdbd8c45e1b189e4fd9a69942d", + "m_Id": 0, + "m_DisplayName": "Outline Offset 3", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.CustomFunctionNode", + "m_ObjectId": "85a1ad8e741e41759002e8cdc8cd0b96", + "m_Group": { + "m_Id": "d0a791a544614667962a9a9a9ce0c68a" + }, + "m_Name": "ScreenSpaceRatio (Custom Function)", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -6112.0, + "y": -3308.0, + "width": 258.0, + "height": 142.0 + } + }, + "m_Slots": [ + { + "m_Id": "6e13f3cd573c467a94379f45d96cb690" + }, + { + "m_Id": "8e6ed600f6504f4083092f5b511e44c4" + }, + { + "m_Id": "93b161cce4504cb79c97b6d8db178de7" + }, + { + "m_Id": "2bf5f2fdd2984599b7323d10cfb1d240" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SourceType": 0, + "m_FunctionName": "ScreenSpaceRatio", + "m_FunctionSource": "96de908384869cd409c75efa351d5edf", + "m_FunctionBody": "Enter function body here..." +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "85b5940eb77e4625812ded7215bab8d7", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4050.666259765625, + "y": -3095.99951171875, + "width": 121.99999237060547, + "height": 33.999996185302737 + } + }, + "m_Slots": [ + { + "m_Id": "ada023d617104472b8ab75a81558c0a1" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "7a046f410ce64aa88438b0bfd412c045" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.TangentMaterialSlot", + "m_ObjectId": "85ff8667d72947edada4e9fb4ff60559", + "m_Id": 0, + "m_DisplayName": "Tangent", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Tangent", + "m_StageCapability": 1, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [ + "X", + "Y", + "Z" + ], + "m_Space": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "861d4258049a4a3e8164f7297090f88e", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "e00": 2.0, + "e01": 2.0, + "e02": 2.0, + "e03": 2.0, + "e10": 2.0, + "e11": 2.0, + "e12": 2.0, + "e13": 2.0, + "e20": 2.0, + "e21": 2.0, + "e22": 2.0, + "e23": 2.0, + "e30": 2.0, + "e31": 2.0, + "e32": 2.0, + "e33": 2.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector4ShaderProperty", + "m_ObjectId": "867a4ae13c0d4a028c71bc1063824c14", + "m_Guid": { + "m_GuidSerialized": "d483c212-0a30-4f6d-b94d-9abbc83a6522" + }, + "m_Name": "Outline Width", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector4_C68C9E14", + "m_OverrideReferenceName": "_IsoPerimeter", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 2, + "m_Hidden": false, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "8695190a5e614f2d90081871a8a06fc2", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "e00": 2.0, + "e01": 2.0, + "e02": 2.0, + "e03": 2.0, + "e10": 2.0, + "e11": 2.0, + "e12": 2.0, + "e13": 2.0, + "e20": 2.0, + "e21": 2.0, + "e22": 2.0, + "e23": 2.0, + "e30": 2.0, + "e31": 2.0, + "e32": 2.0, + "e33": 2.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "8764669016f6442f8152593c18a649d7", + "m_Id": 4, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "880bb02c6c6b49b18aa6ebc66dc566a0", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.CustomFunctionNode", + "m_ObjectId": "88253223d2c34ecfab92b0c344048f94", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "ComputeSDF (Custom Function)", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4226.0, + "y": -4323.0, + "width": 227.99998474121095, + "height": 190.0 + } + }, + "m_Slots": [ + { + "m_Id": "c52a1744a9a14989b0ae452ad6de6061" + }, + { + "m_Id": "a03db80c558b4f87a330c5ae0a9443a5" + }, + { + "m_Id": "8f1b1d1e8ff24b3284993e52354e54fa" + }, + { + "m_Id": "5da82bf481f8489ebd05e997f617f51b" + }, + { + "m_Id": "82d5443fe54d4a3b9420f8745d00a632" + }, + { + "m_Id": "61133d79a89048c195f54939b2a1d30a" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SourceType": 0, + "m_FunctionName": "ComputeSDF", + "m_FunctionSource": "96de908384869cd409c75efa351d5edf", + "m_FunctionBody": "Enter function body here..." +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "8902cb30b1684db8b996562e0140cb18", + "m_Id": 0, + "m_DisplayName": "UV_1", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV_1", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "8a08179f99d649d289b8053d5fa0ad22", + "m_Id": 0, + "m_DisplayName": "Underlay Offset", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "8a5d204e1abd4f6894607d1a497f6e69", + "m_Id": 3, + "m_DisplayName": "Texel Width", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Texel Width", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "8b66f4e6bc9d4662b3218ac33a69839f", + "m_Id": 5, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "8c38a5d8327f456e9783740c05382619", + "m_Id": 3, + "m_DisplayName": "Color2", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Color2", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "8cbd81814903479ea1d3151c1f38183e", + "m_Id": 6, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 3, + "m_Type": "UnityEditor.ShaderGraph.Internal.ColorShaderProperty", + "m_ObjectId": "8cf8aae64c1d443f9303126886b40f17", + "m_Guid": { + "m_GuidSerialized": "8d78c9a5-aaef-41fb-af68-2358e401d7ac" + }, + "m_Name": "_UnderlayColor", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Color_2F5FE804", + "m_OverrideReferenceName": "_UnderlayColor", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "r": 0.0, + "g": 0.0, + "b": 0.0, + "a": 1.0 + }, + "isMainColor": false, + "m_ColorMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "8e6ed600f6504f4083092f5b511e44c4", + "m_Id": 0, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector2ShaderProperty", + "m_ObjectId": "8ed907a2cc7949b68a283ae243ea1977", + "m_Guid": { + "m_GuidSerialized": "36803443-a9bc-4f3c-a4f2-7d66a5417ac1" + }, + "m_Name": "Outline Offset 3", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "", + "m_OverrideReferenceName": "_OutlineOffset3", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "8f1b1d1e8ff24b3284993e52354e54fa", + "m_Id": 3, + "m_DisplayName": "SDR", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "SDR", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "9147636b0cfa466a9b37a013d8f693bf", + "m_Group": { + "m_Id": "daaf032a109749a88c9b8ff8e1f8b541" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5567.0, + "y": -3862.000244140625, + "width": 153.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "a4f471e3221c4134b291bd9d2ba22db6" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "a6bbb32e8d884be9bb36db91fe4b81b1" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "9178663316db43d582f1c4a127d307c6", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SplitNode", + "m_ObjectId": "91890fe48ebe4717aea61ecaf3ad4861", + "m_Group": { + "m_Id": "ecf16c34d46f4502ac601f0c38c7576b" + }, + "m_Name": "Split", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -3114.000244140625, + "y": -3414.0, + "width": 120.00000762939453, + "height": 149.00001525878907 + } + }, + "m_Slots": [ + { + "m_Id": "3dccd64e7f324bc1a75c1479d7a67c51" + }, + { + "m_Id": "e444f2c81d1e48329fa2c91005277e8d" + }, + { + "m_Id": "b2c26292b7434733878a9b042f44de89" + }, + { + "m_Id": "964fea1fd4b24f4daf5bef84c4b45118" + }, + { + "m_Id": "deac82280a2b43078e0e40863e2d974c" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "91d6a9a5fbc04ea49075cb51835e7264", + "m_Id": 2, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "928621a3ca2d41c89a10336bbbc81ddc", + "m_Id": 5, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "93b161cce4504cb79c97b6d8db178de7", + "m_Id": 3, + "m_DisplayName": "TextureSize", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "TextureSize", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.Rendering.Universal.ShaderGraph.UniversalTarget", + "m_ObjectId": "94300469581b4924ac7dda496811d45d", + "m_Datas": [], + "m_ActiveSubTarget": { + "m_Id": "0eeb5490760e492f8c9691086fa00929" + }, + "m_AllowMaterialOverride": false, + "m_SurfaceType": 1, + "m_ZTestMode": 4, + "m_ZWriteControl": 0, + "m_AlphaMode": 0, + "m_RenderFace": 0, + "m_AlphaClip": true, + "m_CastShadows": true, + "m_ReceiveShadows": true, + "m_AdditionalMotionVectorMode": 0, + "m_AlembicMotionVectors": false, + "m_SupportsLODCrossFade": false, + "m_CustomEditorGUI": "TMPro.EditorUtilities.TMP_SDFShaderGUI", + "m_SupportVFX": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "945b45993dd84a979755b98c48138f72", + "m_Id": 0, + "m_DisplayName": "Width", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Width", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "952d0fa5cd744df0b434cd38e9a90b93", + "m_Guid": { + "m_GuidSerialized": "ce395871-ddeb-47c3-a31d-07855800c197" + }, + "m_Name": "_UnderlaySoftness", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_F2B9E3EF", + "m_OverrideReferenceName": "_UnderlaySoftness", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.0, + "m_FloatType": 0, + "m_RangeValues": { + "x": 0.0, + "y": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "95928bcb6a284b8d88105a84c2e1d3ce", + "m_Group": { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4744.0, + "y": -2591.0, + "width": 155.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "d880558893fb442b9320cf55885d1117" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "2d0a269511e34bd1ba9056d2c939dff2" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "964fea1fd4b24f4daf5bef84c4b45118", + "m_Id": 3, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.GroupData", + "m_ObjectId": "98934a69591249d5b8b92b39045359a3", + "m_Title": "Outline1 Texture", + "m_Position": { + "x": -4746.0, + "y": -2497.0 + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "998db5e5901e45b29040eb2099370071", + "m_Guid": { + "m_GuidSerialized": "6f383614-f2ad-4269-be8f-87b0ecb03cf0" + }, + "m_Name": "Bevel Clamp", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_5BD7E808", + "m_OverrideReferenceName": "_BevelClamp", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 0.0, + "m_FloatType": 1, + "m_RangeValues": { + "x": 0.0, + "y": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SampleTexture2DNode", + "m_ObjectId": "9c228fac287d446296b91a4acf5cec59", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Sample Texture 2D", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4569.0, + "y": -3498.000244140625, + "width": 184.0, + "height": 253.0 + } + }, + "m_Slots": [ + { + "m_Id": "582d6e289dbe4fdca7cf0307273eaa2f" + }, + { + "m_Id": "1db37082bf844442804487b4944352de" + }, + { + "m_Id": "8b66f4e6bc9d4662b3218ac33a69839f" + }, + { + "m_Id": "4a66dcbe712a4d40bd8f355b834594b5" + }, + { + "m_Id": "a0285c9c381a49cba194709efa0a7c85" + }, + { + "m_Id": "b2728d0dd3ce40678867c94a7d977916" + }, + { + "m_Id": "e141833aa78b4fd59ecad949beb43a78" + }, + { + "m_Id": "51f76f8a53ad43a4ad028426548ce9ba" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_TextureType": 0, + "m_NormalMapSpace": 0, + "m_EnableGlobalMipBias": true, + "m_MipSamplingMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "9c26fdddba244d36a854298c00473247", + "m_Id": 3, + "m_DisplayName": "SDR", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "SDR", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVNode", + "m_ObjectId": "9d3c3383d5934a17bf9efbb7fd9e9043", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "UV", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5412.0, + "y": -3315.0, + "width": 145.0, + "height": 130.0 + } + }, + "m_Slots": [ + { + "m_Id": "232b1aa09e67479abae141d3c76d3c5b" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_OutputChannel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "9e6e50a71d9843b49b62ebe1cf7d3d59", + "m_Group": { + "m_Id": "d258902c6ec74942afdb9ebf8c1d07f8" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4486.0, + "y": -3865.99951171875, + "width": 135.3330078125, + "height": 33.999996185302737 + } + }, + "m_Slots": [ + { + "m_Id": "3535ae87c6dd4769b52b20d9eca61069" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "3e372195f4bd4845852a37839e5b602d" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "9e87ce9607e14015a3790c528ca5dfda", + "m_Group": { + "m_Id": "98934a69591249d5b8b92b39045359a3" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4598.0, + "y": -2251.0, + "width": 167.00001525878907, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "75c5657544c648058b20cea090f48dbf" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "3fdf4b7bc5d4426492dcc057603ef4a6" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "9eb8137a6c2e41bbafdc8b0732dd47a3", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BooleanMaterialSlot", + "m_ObjectId": "9eeec1a9713045af8845cea263d5ea48", + "m_Id": 6, + "m_DisplayName": "IsFront", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "IsFront", + "m_StageCapability": 3, + "m_Value": false, + "m_DefaultValue": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.MultiplyNode", + "m_ObjectId": "9f0de188085746d5a19073da1de85ddb", + "m_Group": { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + "m_Name": "Multiply", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4118.0, + "y": -2771.0, + "width": 130.0, + "height": 117.99999237060547 + } + }, + "m_Slots": [ + { + "m_Id": "7c27ccb2c2dc4ca59c5438c3358630ca" + }, + { + "m_Id": "373f1de8db6c429c9d46c781f741d7a4" + }, + { + "m_Id": "fd0b096ed5b74f9e9ec51327be200731" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "a0285c9c381a49cba194709efa0a7c85", + "m_Id": 7, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "a03db80c558b4f87a330c5ae0a9443a5", + "m_Id": 1, + "m_DisplayName": "SD", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "SD", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "a161b772c7564eee804e3d58f6cb9944", + "m_Id": 4, + "m_DisplayName": "Texel Height", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Texel Height", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.NormalMaterialSlot", + "m_ObjectId": "a3f8b6e8ae7f48e2989a029904401502", + "m_Id": 0, + "m_DisplayName": "Normal", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Normal", + "m_StageCapability": 1, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [ + "X", + "Y", + "Z" + ], + "m_Space": 0 +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.CustomFunctionNode", + "m_ObjectId": "a455bd79094c4413a7b7dd80ca8b9368", + "m_Group": { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + "m_Name": "GenerateUV (Custom Function)", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4573.0, + "y": -2689.0, + "width": 222.0, + "height": 142.0 + } + }, + "m_Slots": [ + { + "m_Id": "4e90ca54c0cc46a18ea600be7c80413a" + }, + { + "m_Id": "2c7a9460724b47daad8df1be144de7c6" + }, + { + "m_Id": "55ffa45ec3654d5e88089fb40d2b0465" + }, + { + "m_Id": "e495a9f7a11f4eb89334e83be154ceb9" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SourceType": 0, + "m_FunctionName": "GenerateUV", + "m_FunctionSource": "96de908384869cd409c75efa351d5edf", + "m_FunctionBody": "Enter function body here..." +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.SamplerStateShaderProperty", + "m_ObjectId": "a4ad98d8828c424384229c344ebe2ed0", + "m_Guid": { + "m_GuidSerialized": "f98fc1a2-bb81-4bd1-a207-23d3a90d518e" + }, + "m_Name": "SamplerState", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "SamplerState_a4ad98d8828c424384229c344ebe2ed0", + "m_OverrideReferenceName": "", + "m_GeneratePropertyBlock": false, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "m_filter": 0, + "m_wrap": 1, + "m_anisotropic": 0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "a4f471e3221c4134b291bd9d2ba22db6", + "m_Id": 0, + "m_DisplayName": "_GradientScale", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "a535f3bcbeb14622bb177eb6f46e76f4", + "m_Group": { + "m_Id": "98934a69591249d5b8b92b39045359a3" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4608.0, + "y": -2293.0, + "width": 177.00001525878907, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "6dfc1177dd0541a7a780fbf911ad1956" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "ec79eb447dfd47a9b3380344c6a60f43" + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "a6bbb32e8d884be9bb36db91fe4b81b1", + "m_Guid": { + "m_GuidSerialized": "6aa76edf-7b80-46ac-add4-406cf1d85493" + }, + "m_Name": "_GradientScale", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_EAE27356", + "m_OverrideReferenceName": "_GradientScale", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 1, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 10.0, + "m_FloatType": 0, + "m_RangeValues": { + "x": 0.0, + "y": 1.0 + } +} + +{ + "m_SGVersion": 3, + "m_Type": "UnityEditor.ShaderGraph.Internal.ColorShaderProperty", + "m_ObjectId": "a6c38edd2e8743a9b057ba8452b9f129", + "m_Guid": { + "m_GuidSerialized": "9fc942ee-4a1d-4ced-a5a6-81893e3ddb63" + }, + "m_Name": "Light Color", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Color_a6c38edd2e8743a9b057ba8452b9f129", + "m_OverrideReferenceName": "_SpecularColor", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "r": 1.0, + "g": 1.0, + "b": 1.0, + "a": 1.0 + }, + "isMainColor": false, + "m_ColorMode": 1 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "a75f7ac601c446469802fe7754c1f279", + "m_Id": 0, + "m_DisplayName": "Color1", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Color1", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "a7942746b5564dc7bbbae1deb2403022", + "m_Id": 0, + "m_DisplayName": "_GradientScale", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "a7c06457d7454693a8bc3dc95257b2c2", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "aa2794b8f0e24bf281d22e0fef0647be", + "m_Id": 2, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.CustomFunctionNode", + "m_ObjectId": "aa3e347d733e48f7b65d8a8847370eec", + "m_Group": { + "m_Id": "" + }, + "m_Name": "EvaluateLight (Custom Function)", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -3633.000244140625, + "y": -3805.000244140625, + "width": 179.00001525878907, + "height": 118.00000762939453 + } + }, + "m_Slots": [ + { + "m_Id": "0699eea947fc426cbfeb8744cf120222" + }, + { + "m_Id": "0c4dc51f26484c26ad88a3fe4002abcd" + }, + { + "m_Id": "d5173cc3c6cd4f1998550f3187a3e9c8" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SourceType": 0, + "m_FunctionName": "EvaluateLight", + "m_FunctionSource": "96de908384869cd409c75efa351d5edf", + "m_FunctionBody": "Enter function body here..." +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "aa87c72ac0e64469acc34f936f00b3d0", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4444.0, + "y": -4225.0, + "width": 193.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "0d7878dd226d4cfb81a991dc312309fc" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "81e8ed0534534674a74263e6161a2a1a" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "abd59150589b436cadf8c9e6f43ccb8e", + "m_Id": 0, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "aca823a8188948c782eddaf0f45e1868", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.NormalOS", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -2542.0, + "y": -3404.000244140625, + "width": 200.0, + "height": 40.66650390625 + } + }, + "m_Slots": [ + { + "m_Id": "e386b183a18245a796b024022f7f3074" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.NormalOS" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DPropertiesNode", + "m_ObjectId": "acd0cd5a177f4a97bf23db7219305e3f", + "m_Group": { + "m_Id": "d258902c6ec74942afdb9ebf8c1d07f8" + }, + "m_Name": "Texel Size", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4348.0, + "y": -3905.99951171875, + "width": 185.33299255371095, + "height": 101.33324432373047 + } + }, + "m_Slots": [ + { + "m_Id": "945b45993dd84a979755b98c48138f72" + }, + { + "m_Id": "e51a636b2621440eb94cc802c1cf4bfc" + }, + { + "m_Id": "1bdde3efd3b7464b8934c555be0f8a48" + }, + { + "m_Id": "8a5d204e1abd4f6894607d1a497f6e69" + }, + { + "m_Id": "a161b772c7564eee804e3d58f6cb9944" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "ada023d617104472b8ab75a81558c0a1", + "m_Id": 0, + "m_DisplayName": "Outline Color 3", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "aef5c44f84e04c3185e0b93e95e34204", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5233.99951171875, + "y": -3141.999755859375, + "width": 143.99998474121095, + "height": 33.999996185302737 + } + }, + "m_Slots": [ + { + "m_Id": "84dc74cdbd8c45e1b189e4fd9a69942d" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "8ed907a2cc7949b68a283ae243ea1977" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "b000f852aa984e9dae25b125a4607f4e", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "b015d1b7e4134c59baf6851e7649802c", + "m_Id": 0, + "m_DisplayName": "R", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "b0b352c4503a43d083a64e57352b29a0", + "m_Guid": { + "m_GuidSerialized": "01cfcc78-60aa-4f71-a1e3-8d8df6dae253" + }, + "m_Name": "Reflectivity Power", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector1_b0b352c4503a43d083a64e57352b29a0", + "m_OverrideReferenceName": "_Reflectivity", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": 5.0, + "m_FloatType": 1, + "m_RangeValues": { + "x": 5.0, + "y": 15.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.VertexColorNode", + "m_ObjectId": "b1188549725543d485436c2e921ffbb2", + "m_Group": { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + "m_Name": "Vertex Color", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4108.0, + "y": -2890.0, + "width": 116.0, + "height": 94.0 + } + }, + "m_Slots": [ + { + "m_Id": "281bcee4777040f8a31ee0e10344e98d" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 2, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SampleTexture2DNode", + "m_ObjectId": "b163c9f1666644b0bba62cf0e12df7bc", + "m_Group": { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + "m_Name": "Sample Texture 2D", + "m_DrawState": { + "m_Expanded": false, + "m_Position": { + "serializedVersion": "2", + "x": -4333.0, + "y": -2713.0, + "width": 180.0, + "height": 180.0 + } + }, + "m_Slots": [ + { + "m_Id": "cce40479b6284b6fa3174db9f09d0ac9" + }, + { + "m_Id": "80e665a5eeb64730a51742f698bf0d48" + }, + { + "m_Id": "1f46181633594ae0a1fb2adb76b42981" + }, + { + "m_Id": "8cbd81814903479ea1d3151c1f38183e" + }, + { + "m_Id": "cfaf3f3a5a1146e194cddad30c95aada" + }, + { + "m_Id": "b43489e37a5c4df88f15844292a55ec7" + }, + { + "m_Id": "cd7281fb41aa4e61ac0fdf71d4f4bd46" + }, + { + "m_Id": "f01d52cdcb1647aab35782b4af535efd" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_TextureType": 0, + "m_NormalMapSpace": 1, + "m_EnableGlobalMipBias": true, + "m_MipSamplingMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "b224a1cf80604103ad085c799995f3c2", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "b2728d0dd3ce40678867c94a7d977916", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"fileID\":-2362172177983852347,\"guid\":\"dda5bcb0d1e9515498f6e4e038bbefe6\",\"type\":2}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "b2baf44eae52473cb6cda7b1debece01", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "b2c26292b7434733878a9b042f44de89", + "m_Id": 2, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "b42e6dbfbc864097af182cbff5c0c1fb", + "m_Id": 0, + "m_DisplayName": "Outline Color 1", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "b43489e37a5c4df88f15844292a55ec7", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"fileID\":-2362172177983852347,\"guid\":\"dda5bcb0d1e9515498f6e4e038bbefe6\",\"type\":2}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.MultiplyNode", + "m_ObjectId": "b4a40cb6acd441acb83cfe0240bf910d", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "Multiply", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4750.99951171875, + "y": -4274.0, + "width": 130.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "d0b10e52e21941b183f5f635894c76c8" + }, + { + "m_Id": "0d6a57754b824f6db9cefa6953bc06a9" + }, + { + "m_Id": "773b90134e894e429203c0c83e80b9de" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DPropertiesNode", + "m_ObjectId": "b571db753a1948d5a6f1de4e7d0c7238", + "m_Group": { + "m_Id": "daaf032a109749a88c9b8ff8e1f8b541" + }, + "m_Name": "Texel Size", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5727.0, + "y": -3827.000244140625, + "width": 184.0, + "height": 101.0 + } + }, + "m_Slots": [ + { + "m_Id": "5b3ff4ee364f4d7a923b530ad60d8762" + }, + { + "m_Id": "c183b5bd9bbe45089f93996e73110918" + }, + { + "m_Id": "1196ae398cc348349ab0c1a23fdab4bd" + }, + { + "m_Id": "1d7d96a5770b4f8ebb162bdbde020bca" + }, + { + "m_Id": "49dabfd48a78475882e664526b483ce1" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "b691728a389a417d9b4f2d02541209c2", + "m_Id": 6, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "b7f9ac55517141868bfb9d2ad6429792", + "m_Id": 6, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "b85d677872b44421bf5536f42ba0267c", + "m_Id": 3, + "m_DisplayName": "Color0", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Color0", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.CategoryData", + "m_ObjectId": "bafc3d388c1e444e820897b9a3d6029a", + "m_Name": "", + "m_ChildObjectList": [ + { + "m_Id": "dc75c4e3a1bc4bb0a128086c2b0679a5" + }, + { + "m_Id": "867a4ae13c0d4a028c71bc1063824c14" + }, + { + "m_Id": "22b7f3c2bb7b48c0a7fdeb50e33e7d5e" + }, + { + "m_Id": "53073e5ea924459fa6681a4943e9f947" + }, + { + "m_Id": "7a046f410ce64aa88438b0bfd412c045" + }, + { + "m_Id": "636180f6e0504f2baaa5cc086980cb47" + }, + { + "m_Id": "74b41464cbed4e9e8e23af5ab9be40cf" + }, + { + "m_Id": "8ed907a2cc7949b68a283ae243ea1977" + }, + { + "m_Id": "cb3c0c3f08654b068bea44c4ffb15f4a" + }, + { + "m_Id": "0580d4b7e3a049049569f4508643a724" + }, + { + "m_Id": "c9ec735d1a1046769e5601b2c97c849a" + }, + { + "m_Id": "2d0a269511e34bd1ba9056d2c939dff2" + }, + { + "m_Id": "07946387933e416db576b677f0711e5f" + }, + { + "m_Id": "46fbf3eeb0ea4470869cba7443249295" + }, + { + "m_Id": "ec79eb447dfd47a9b3380344c6a60f43" + }, + { + "m_Id": "3fdf4b7bc5d4426492dcc057603ef4a6" + }, + { + "m_Id": "8cf8aae64c1d443f9303126886b40f17" + }, + { + "m_Id": "49e7c3ad55ce458797f0e60c950cb965" + }, + { + "m_Id": "81e8ed0534534674a74263e6161a2a1a" + }, + { + "m_Id": "952d0fa5cd744df0b434cd38e9a90b93" + }, + { + "m_Id": "21a7a380e66d42e780e2a2a1baa630d5" + }, + { + "m_Id": "2c10b97b92c947ceb307a93759c0228b" + }, + { + "m_Id": "1be90d4f96a841748b0c95219b12ad27" + }, + { + "m_Id": "5fbe253f3e444f2aa8ac717f9c856619" + }, + { + "m_Id": "5bd258837c514ff7ab0bf7027e762c18" + }, + { + "m_Id": "998db5e5901e45b29040eb2099370071" + }, + { + "m_Id": "a6c38edd2e8743a9b057ba8452b9f129" + }, + { + "m_Id": "82af2db1018543d7832af96c1cfc981f" + }, + { + "m_Id": "3ec4797e381747829ef4712c85fcf7a1" + }, + { + "m_Id": "b0b352c4503a43d083a64e57352b29a0" + }, + { + "m_Id": "424dbeeb009344efa29c304c4979e3d6" + }, + { + "m_Id": "05805bc6fcc941fd889922555c6c86d7" + }, + { + "m_Id": "a4ad98d8828c424384229c344ebe2ed0" + }, + { + "m_Id": "3e372195f4bd4845852a37839e5b602d" + }, + { + "m_Id": "a6bbb32e8d884be9bb36db91fe4b81b1" + }, + { + "m_Id": "4a0041116f73406db7a62ae80ff54ef4" + } + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.CombineNode", + "m_ObjectId": "bc9afcb18afa4ccc82d2cdc34d3f4641", + "m_Group": { + "m_Id": "daaf032a109749a88c9b8ff8e1f8b541" + }, + "m_Name": "Combine", + "m_DrawState": { + "m_Expanded": false, + "m_Position": { + "serializedVersion": "2", + "x": -5537.0, + "y": -3827.000244140625, + "width": 126.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "5e42524569844befad16fda5a94eb9cb" + }, + { + "m_Id": "54d7a93ffec5490aa4591da23a21b693" + }, + { + "m_Id": "aa2794b8f0e24bf281d22e0fef0647be" + }, + { + "m_Id": "200245fc8bbe4826b209ab5f7ffe074c" + }, + { + "m_Id": "fc2e62201c5847e798fd939314413fcd" + }, + { + "m_Id": "fe11fa80cc1847a5a37f6757d521cf25" + }, + { + "m_Id": "de0c6f7f7af94defa6c3dbc6433de9d4" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "c183b5bd9bbe45089f93996e73110918", + "m_Id": 2, + "m_DisplayName": "Height", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Height", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.CustomFunctionNode", + "m_ObjectId": "c234e5216678436195ee1a5914bc79da", + "m_Group": { + "m_Id": "98934a69591249d5b8b92b39045359a3" + }, + "m_Name": "GenerateUV (Custom Function)", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4409.0, + "y": -2338.0, + "width": 222.0, + "height": 142.00001525878907 + } + }, + "m_Slots": [ + { + "m_Id": "8902cb30b1684db8b996562e0140cb18" + }, + { + "m_Id": "3db1608e927e4102a3c3a88e9fcab39a" + }, + { + "m_Id": "0f7ffb6d2de4447f9736780cbcee8e07" + }, + { + "m_Id": "d4954b7bbbb0412cbc997bcbe7dfa808" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SourceType": 0, + "m_FunctionName": "GenerateUV", + "m_FunctionSource": "96de908384869cd409c75efa351d5edf", + "m_FunctionBody": "Enter function body here..." +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "c35312edaa2344788b1964ee2f63a236", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DMaterialSlot", + "m_ObjectId": "c3e6d7c20c184bf39fd8822130e693e7", + "m_Id": 0, + "m_DisplayName": "_MainTex", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "c422a9a9ff824176aad2241f58c44d0b", + "m_Id": 0, + "m_DisplayName": "Outline Offset 1", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "c478c32c45884c57a62f7b2aa8ddc3b0", + "m_Id": 2, + "m_DisplayName": "Alpha", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Alpha", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "c52a1744a9a14989b0ae452ad6de6061", + "m_Id": 0, + "m_DisplayName": "SSR", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "SSR", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "c6bdb985bc16435fa72f5a3c81bb633c", + "m_Id": 6, + "m_DisplayName": "B", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "c7d4094601ac4bc1aead609c72b1f1c1", + "m_Id": 4, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "c7ddee91dc5b48dc828309c77fdb0b88", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4444.0, + "y": -4266.0, + "width": 153.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "a7942746b5564dc7bbbae1deb2403022" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "a6bbb32e8d884be9bb36db91fe4b81b1" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SamplerStateMaterialSlot", + "m_ObjectId": "c88fcbaeea954a5f9c68c339fa8b604d", + "m_Id": 3, + "m_DisplayName": "Sampler", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Sampler", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "c9b722d107ce4cd6a748c883472b9b0f", + "m_Id": 7, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "c9d7f0dbae7d422985a1cc87c025e76b", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4284.0, + "y": -3165.0, + "width": 144.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "79147f6986644769b58d9ed64fe771e1" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "cb3c0c3f08654b068bea44c4ffb15f4a" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Internal.Texture2DShaderProperty", + "m_ObjectId": "c9ec735d1a1046769e5601b2c97c849a", + "m_Guid": { + "m_GuidSerialized": "281a9526-c332-4471-a44e-ece4a1e95ef6" + }, + "m_Name": "Face Texture", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Texture2D_75569DEA", + "m_OverrideReferenceName": "_FaceTex", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "m_SerializedTexture": "{\"texture\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "isMainTexture": false, + "useTilingAndOffset": false, + "m_Modifiable": true, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "ca2a1083dc014f39ab8af0cdf140866b", + "m_Id": 0, + "m_DisplayName": "_FaceTex_ST", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Internal.BooleanShaderProperty", + "m_ObjectId": "cb3c0c3f08654b068bea44c4ffb15f4a", + "m_Guid": { + "m_GuidSerialized": "21009d12-8d94-4273-b0d0-a8ee0608ddcf" + }, + "m_Name": "OutlineMode", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Boolean_cb3c0c3f08654b068bea44c4ffb15f4a", + "m_OverrideReferenceName": "_OutlineMode", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SamplerStateMaterialSlot", + "m_ObjectId": "cb5e9f9567e84f8fa5463efc0e256e19", + "m_Id": 3, + "m_DisplayName": "Sampler", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Sampler", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "cb7117ecb1d047a8b2cb00ed552cb181", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.Alpha", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -3032.66650390625, + "y": -3029.33349609375, + "width": 200.0, + "height": 41.33349609375 + } + }, + "m_Slots": [ + { + "m_Id": "724e17584e97443e9e285dfa7253c8e3" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.Alpha" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "cc88101667c9488f9c5a716e851c1b21", + "m_Id": 3, + "m_DisplayName": "Color0", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Color0", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "cce40479b6284b6fa3174db9f09d0ac9", + "m_Id": 0, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "cd7281fb41aa4e61ac0fdf71d4f4bd46", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SamplerStateMaterialSlot", + "m_ObjectId": "cda5e3b4c1054bf3a65c0b7ec6bc778a", + "m_Id": 3, + "m_DisplayName": "Sampler", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Sampler", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SampleTexture2DNode", + "m_ObjectId": "cdddee3a537c464697357f11b966f9b8", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "Sample Texture 2D", + "m_DrawState": { + "m_Expanded": false, + "m_Position": { + "serializedVersion": "2", + "x": -4420.0, + "y": -4483.0, + "width": 156.0, + "height": 181.0 + } + }, + "m_Slots": [ + { + "m_Id": "41b9b79b3859472882bcea393703eec0" + }, + { + "m_Id": "c7d4094601ac4bc1aead609c72b1f1c1" + }, + { + "m_Id": "767769f736d5478cba5f10a415e28e7f" + }, + { + "m_Id": "b691728a389a417d9b4f2d02541209c2" + }, + { + "m_Id": "045c4f6b050549c7a0efb208e6349779" + }, + { + "m_Id": "509e6f38505b4b0695b263706a55028f" + }, + { + "m_Id": "204dacb5a95b424facf11cb6f65bd188" + }, + { + "m_Id": "35cbea6373dd4e4f8d0fea36e8add392" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_TextureType": 0, + "m_NormalMapSpace": 0, + "m_EnableGlobalMipBias": true, + "m_MipSamplingMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "cfaf3f3a5a1146e194cddad30c95aada", + "m_Id": 7, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.GroupData", + "m_ObjectId": "d0a791a544614667962a9a9a9ce0c68a", + "m_Title": "Screen Space Ratio", + "m_Position": { + "x": -6485.591796875, + "y": -3365.3779296875 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "d0b10e52e21941b183f5f635894c76c8", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "d1a17e42e7a04dc38984e3c01149445b", + "m_Id": 7, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "d219977210094c0082c517d8dc00c8bb", + "m_Id": 0, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.GroupData", + "m_ObjectId": "d258902c6ec74942afdb9ebf8c1d07f8", + "m_Title": "Generate Normal", + "m_Position": { + "x": -4511.33349609375, + "y": -3999.3330078125 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "d30452ac6b244ecca03df4d7b4de9f81", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "d48c3871e3064027a10ae9f4babd3be0", + "m_Id": 0, + "m_DisplayName": "_UnderlaySoftness", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "d4954b7bbbb0412cbc997bcbe7dfa808", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "d4df208fc23b42f2b52364124f1b661c", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5236.99951171875, + "y": -3260.999755859375, + "width": 143.99998474121095, + "height": 33.999996185302737 + } + }, + "m_Slots": [ + { + "m_Id": "757174b6f25040fdbb20355a21752222" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "74b41464cbed4e9e8e23af5ab9be40cf" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector3MaterialSlot", + "m_ObjectId": "d5173cc3c6cd4f1998550f3187a3e9c8", + "m_Id": 0, + "m_DisplayName": "Normal", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Normal", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [ + "X", + "Y", + "Z" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "d6a6a119394e4082a11bc024a6e42ef8", + "m_Id": 0, + "m_DisplayName": "Outline Color 2", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "d880558893fb442b9320cf55885d1117", + "m_Id": 0, + "m_DisplayName": "_FaceUVSpeed", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "d8edec16956c4f15b7d51d6ec10753f4", + "m_Id": 2, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "d9bcb754db834583b6518c5ed5152114", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "d9dc4839ee2847999110bdb234d6041a", + "m_Id": 1, + "m_DisplayName": "G", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DMaterialSlot", + "m_ObjectId": "da7a06d393a44089842070d51d2aa0a6", + "m_Id": 0, + "m_DisplayName": "_MainTex", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.GroupData", + "m_ObjectId": "daaf032a109749a88c9b8ff8e1f8b541", + "m_Title": "Offset Scale", + "m_Position": { + "x": -5893.0, + "y": -3921.000244140625 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVNode", + "m_ObjectId": "dbcb748279484a4590e53518c49122b8", + "m_Group": { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + "m_Name": "UV", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4744.0, + "y": -2762.0, + "width": 145.0, + "height": 130.0 + } + }, + "m_Slots": [ + { + "m_Id": "7a0f504e4175406dbd8134250f4e350b" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_OutputChannel": 1 +} + +{ + "m_SGVersion": 3, + "m_Type": "UnityEditor.ShaderGraph.Internal.ColorShaderProperty", + "m_ObjectId": "dc75c4e3a1bc4bb0a128086c2b0679a5", + "m_Guid": { + "m_GuidSerialized": "85cd941f-2fd2-43a3-b0fa-9f728bfb4220" + }, + "m_Name": "Face Color", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Color_99AFBB3D", + "m_OverrideReferenceName": "_FaceColor", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "r": 1.0, + "g": 1.0, + "b": 1.0, + "a": 1.0 + }, + "isMainColor": false, + "m_ColorMode": 1 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "de0c6f7f7af94defa6c3dbc6433de9d4", + "m_Id": 6, + "m_DisplayName": "RG", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RG", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "deac82280a2b43078e0e40863e2d974c", + "m_Id": 4, + "m_DisplayName": "A", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DMaterialSlot", + "m_ObjectId": "def8e0b9d8384982bc5b4c32d877e458", + "m_Id": 0, + "m_DisplayName": "Outline Texture", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SubtractNode", + "m_ObjectId": "dff7a66b353a4023b29c9d937da77960", + "m_Group": { + "m_Id": "484b51c50485473b819c4f05087b32d7" + }, + "m_Name": "Subtract", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4602.0, + "y": -4298.0, + "width": 130.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "7b8a19bd115e4167a25b59cb3218a817" + }, + { + "m_Id": "0b57f2d35157477ab2b29a5aac14ae8b" + }, + { + "m_Id": "e9e06fcb161e44ba8cc9f6f60264df78" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "e141833aa78b4fd59ecad949beb43a78", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "e2d28f29bbac4983a401574480b5ca28", + "m_Id": 1, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.NormalMaterialSlot", + "m_ObjectId": "e386b183a18245a796b024022f7f3074", + "m_Id": 0, + "m_DisplayName": "Normal (Object Space)", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "NormalOS", + "m_StageCapability": 2, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [ + "X", + "Y", + "Z" + ], + "m_Space": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "e444f2c81d1e48329fa2c91005277e8d", + "m_Id": 1, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "e495a9f7a11f4eb89334e83be154ceb9", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "e51a636b2621440eb94cc802c1cf4bfc", + "m_Id": 2, + "m_DisplayName": "Height", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Height", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "e6e80c6b0db545cda26b079a9a78fbb3", + "m_Id": 5, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.CustomFunctionNode", + "m_ObjectId": "e818605f8f5a4f01bf61caaa33693581", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "ComputeSDF44 (Custom Function)", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4113.0, + "y": -3368.999755859375, + "width": 243.99998474121095, + "height": 214.0 + } + }, + "m_Slots": [ + { + "m_Id": "641eda269d7b4da9acb65f8d50035ea9" + }, + { + "m_Id": "f6823778a3cf42d5bbe8a83e5f9c9fa3" + }, + { + "m_Id": "9c26fdddba244d36a854298c00473247" + }, + { + "m_Id": "f684c5678e9e4f078157a3ab7ef5057b" + }, + { + "m_Id": "14ad19bf20a140dd88d58452d7df688b" + }, + { + "m_Id": "215a82c127204988b751de7d3a39b955" + }, + { + "m_Id": "c478c32c45884c57a62f7b2aa8ddc3b0" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SourceType": 0, + "m_FunctionName": "ComputeSDF44", + "m_FunctionSource": "96de908384869cd409c75efa351d5edf", + "m_FunctionBody": "Enter function body here..." +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "e9e06fcb161e44ba8cc9f6f60264df78", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "ebbd94a7102a4457a48ac492de3bff14", + "m_Id": 5, + "m_DisplayName": "G", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "G", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "ebd6d75abcb84108bcadbfe7ee5f6244", + "m_Id": 7, + "m_DisplayName": "TextureHeight", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "TextureHeight", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "ec184d6d9fb2494897774c9e7d279e6d", + "m_Group": { + "m_Id": "013228b0fdf1424097798f0973a9a4fb" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4754.0, + "y": -2625.0, + "width": 145.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "ca2a1083dc014f39ab8af0cdf140866b" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "07946387933e416db576b677f0711e5f" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SubtractNode", + "m_ObjectId": "ec1f2e8bc9fd4ae38b133c60ee6c49b8", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Subtract", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4927.0, + "y": -3204.0, + "width": 130.0, + "height": 117.99999237060547 + } + }, + "m_Slots": [ + { + "m_Id": "748c31bbcecc4b30bec2e42c0612175b" + }, + { + "m_Id": "4bda5c294e1949138d033640e1d385b4" + }, + { + "m_Id": "4e64dac49ddc47c3b5b1e27b17a08304" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector4ShaderProperty", + "m_ObjectId": "ec79eb447dfd47a9b3380344c6a60f43", + "m_Guid": { + "m_GuidSerialized": "54c77f8b-0534-4b35-a3f0-83ab2ebe6c1f" + }, + "m_Name": "_OutlineTex_ST", + "m_DefaultRefNameVersion": 0, + "m_RefNameGeneratedByDisplayName": "", + "m_DefaultReferenceName": "Vector4_1774DE83", + "m_OverrideReferenceName": "_OutlineTex_ST", + "m_GeneratePropertyBlock": true, + "m_UseCustomSlotLabel": false, + "m_CustomSlotLabel": "", + "m_DismissedVersion": 0, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.GroupData", + "m_ObjectId": "ecf16c34d46f4502ac601f0c38c7576b", + "m_Title": "Vertex Color", + "m_Position": { + "x": -3614.000244140625, + "y": -3549.000244140625 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "ed1d1f1613334c3bb904dd08161cd7e5", + "m_Id": 0, + "m_DisplayName": "_GradientScale", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "ed6c215a65584deeaefad1d2c7743044", + "m_Id": 4, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector3MaterialSlot", + "m_ObjectId": "edbee7a8952b46529ac5ad0365775774", + "m_Id": 5, + "m_DisplayName": "RGB", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGB", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.ColorRGBMaterialSlot", + "m_ObjectId": "ef0b93f78372439696f50711eaf57d90", + "m_Id": 0, + "m_DisplayName": "Base Color", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "BaseColor", + "m_StageCapability": 2, + "m_Value": { + "x": 0.7353569269180298, + "y": 0.7353569269180298, + "z": 0.7353569269180298 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [ + "X", + "Y", + "Z" + ], + "m_ColorMode": 0, + "m_DefaultColor": { + "r": 0.5, + "g": 0.5, + "b": 0.5, + "a": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "ef9738ec7e894772a14e9dce441c16c6", + "m_Id": 2, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [ + "X", + "Y" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SamplerStateMaterialSlot", + "m_ObjectId": "f01d52cdcb1647aab35782b4af535efd", + "m_Id": 3, + "m_DisplayName": "Sampler", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Sampler", + "m_StageCapability": 3, + "m_BareResource": false +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.CustomFunctionNode", + "m_ObjectId": "f23a8b2b7c85478388ff7a8c8a6de740", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Layer4 (Custom Function)", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -3819.0, + "y": -3286.0, + "width": 193.0, + "height": 190.0 + } + }, + "m_Slots": [ + { + "m_Id": "0fac35636fca4474a6afaefc3c757775" + }, + { + "m_Id": "cc88101667c9488f9c5a716e851c1b21" + }, + { + "m_Id": "68ec7c31365549d6a8ce883edfc02de2" + }, + { + "m_Id": "02559cbe5ad441a3904ccb75ded2b2c5" + }, + { + "m_Id": "34a67e0fef884f9399e674d9eeaf720c" + }, + { + "m_Id": "3802c81c3be24823aa1d7c9997a33c29" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SourceType": 0, + "m_FunctionName": "Layer4", + "m_FunctionSource": "96de908384869cd409c75efa351d5edf", + "m_FunctionBody": "Enter function body here..." +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "f2903158b3624759bca1fcd843698078", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "x": 2.0, + "y": 2.0, + "z": 2.0, + "w": 2.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "f2a351a5375c441b8d9ab7e2c9545a77", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "e00": 2.0, + "e01": 2.0, + "e02": 2.0, + "e03": 2.0, + "e10": 2.0, + "e11": 2.0, + "e12": 2.0, + "e13": 2.0, + "e20": 2.0, + "e21": 2.0, + "e22": 2.0, + "e23": 2.0, + "e30": 2.0, + "e31": 2.0, + "e32": 2.0, + "e33": 2.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DPropertiesNode", + "m_ObjectId": "f383b24f0bc6434dafe44b3e3d338a63", + "m_Group": { + "m_Id": "d0a791a544614667962a9a9a9ce0c68a" + }, + "m_Name": "Texel Size", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -6318.6669921875, + "y": -3153.3330078125, + "width": 185.33348083496095, + "height": 101.33348846435547 + } + }, + "m_Slots": [ + { + "m_Id": "fb5e1e2a67c14602808358686bb75091" + }, + { + "m_Id": "712da461f71a454db59d349f752d41ee" + }, + { + "m_Id": "b000f852aa984e9dae25b125a4607f4e" + }, + { + "m_Id": "849275cac05e4ca8bd0b38ab7ae43bf8" + }, + { + "m_Id": "59cea37675824d99995b370f09cef20a" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "f3d31c1f18d8491a8ecf5cbc37e4b7db", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4291.33349609375, + "y": -3246.0, + "width": 154.0, + "height": 34.0 + } + }, + "m_Slots": [ + { + "m_Id": "ed1d1f1613334c3bb904dd08161cd7e5" + } + ], + "synonyms": [], + "m_Precision": 1, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "a6bbb32e8d884be9bb36db91fe4b81b1" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "f42ad06b3c6a45d3ab33de904c063412", + "m_Id": 3, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "f48f04ad45d046a8b88e71731ed506e7", + "m_Id": 4, + "m_DisplayName": "R", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "R", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "f4ecc442a2d246759f7c2c0412953d28", + "m_Group": { + "m_Id": "" + }, + "m_Name": "VertexDescription.Normal", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "a3f8b6e8ae7f48e2989a029904401502" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Normal" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "f6823778a3cf42d5bbe8a83e5f9c9fa3", + "m_Id": 1, + "m_DisplayName": "SD", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "SD", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "f684c5678e9e4f078157a3ab7ef5057b", + "m_Id": 4, + "m_DisplayName": "Isoperimeter", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Isoperimeter", + "m_StageCapability": 3, + "m_Value": { + "x": 3.0, + "y": 2.0, + "z": 1.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SampleTexture2DNode", + "m_ObjectId": "f814deb543c24fbbafbcdb5071d96022", + "m_Group": { + "m_Id": "42cadae0923e4969b50bbc3f78185934" + }, + "m_Name": "Sample Texture 2D", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -4569.0, + "y": -3245.000244140625, + "width": 184.0, + "height": 253.0 + } + }, + "m_Slots": [ + { + "m_Id": "abd59150589b436cadf8c9e6f43ccb8e" + }, + { + "m_Id": "7acfafd73b8c4dfab8c55c18a887e087" + }, + { + "m_Id": "928621a3ca2d41c89a10336bbbc81ddc" + }, + { + "m_Id": "b7f9ac55517141868bfb9d2ad6429792" + }, + { + "m_Id": "09b1b86c1c074337a4c439d3a308dd2e" + }, + { + "m_Id": "1f247658c7ba45fb93c41f51e21acb0d" + }, + { + "m_Id": "d30452ac6b244ecca03df4d7b4de9f81" + }, + { + "m_Id": "215b30ae27784ec3a13360a9029af283" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_TextureType": 0, + "m_NormalMapSpace": 0, + "m_EnableGlobalMipBias": true, + "m_MipSamplingMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "f864c900600e427ba7793f00c715e971", + "m_Id": 0, + "m_DisplayName": "Outline Width", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "fa6de3be9f5b4411b5081b49e645f424", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "e00": 2.0, + "e01": 2.0, + "e02": 2.0, + "e03": 2.0, + "e10": 2.0, + "e11": 2.0, + "e12": 2.0, + "e13": 2.0, + "e20": 2.0, + "e21": 2.0, + "e22": 2.0, + "e23": 2.0, + "e30": 2.0, + "e31": 2.0, + "e32": 2.0, + "e33": 2.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DivideNode", + "m_ObjectId": "faace8101df943d8956faa31728cb004", + "m_Group": { + "m_Id": "daaf032a109749a88c9b8ff8e1f8b541" + }, + "m_Name": "Divide", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -5400.0, + "y": -3851.000244140625, + "width": 130.0, + "height": 118.0 + } + }, + "m_Slots": [ + { + "m_Id": "77e28f3e930b4c249145630ec961af95" + }, + { + "m_Id": "f2903158b3624759bca1fcd843698078" + }, + { + "m_Id": "30ca940fe2794c949f2a1d4d2caaa446" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "facc84930f544fd7a0205a6176b18ac0", + "m_Id": 2, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Texture2DInputMaterialSlot", + "m_ObjectId": "fb15d0ba56d54a6192f11e107aeb5fa8", + "m_Id": 1, + "m_DisplayName": "Texture", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Texture", + "m_StageCapability": 3, + "m_BareResource": false, + "m_Texture": { + "m_SerializedTexture": "{\"texture\":{\"instanceID\":0}}", + "m_Guid": "" + }, + "m_DefaultType": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "fb5e1e2a67c14602808358686bb75091", + "m_Id": 0, + "m_DisplayName": "Width", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Width", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "X" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "fc2e62201c5847e798fd939314413fcd", + "m_Id": 4, + "m_DisplayName": "RGBA", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGBA", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "fd0b096ed5b74f9e9ec51327be200731", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.SampleTexture2DNode", + "m_ObjectId": "fdb77c3e92ee497b88ca5dc46dc45350", + "m_Group": { + "m_Id": "98934a69591249d5b8b92b39045359a3" + }, + "m_Name": "Sample Texture 2D", + "m_DrawState": { + "m_Expanded": false, + "m_Position": { + "serializedVersion": "2", + "x": -4171.0, + "y": -2362.0, + "width": 180.0, + "height": 181.0 + } + }, + "m_Slots": [ + { + "m_Id": "4328cdbf78b94c038fd614c59bfe1cac" + }, + { + "m_Id": "04dfcc9ff13a4bf282ed46faec39d15c" + }, + { + "m_Id": "71dd947935b64ce38f0d25406dde447b" + }, + { + "m_Id": "61a6ac5f29344d109411f26850ab0a96" + }, + { + "m_Id": "44806230fa384c1e95f9c5918a14f056" + }, + { + "m_Id": "4eb3c00a1ca44e10be833b7ca61ff059" + }, + { + "m_Id": "57abc172afd449e2a4d567f93432507b" + }, + { + "m_Id": "cda5e3b4c1054bf3a65c0b7ec6bc778a" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": false, + "m_DismissedVersion": 0, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_TextureType": 0, + "m_NormalMapSpace": 0, + "m_EnableGlobalMipBias": true, + "m_MipSamplingMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector3MaterialSlot", + "m_ObjectId": "fe11fa80cc1847a5a37f6757d521cf25", + "m_Id": 5, + "m_DisplayName": "RGB", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "RGB", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [] +} + diff --git a/Assets/TextMesh Pro/Shaders/TMP_SDF-URP Unlit.shadergraph.meta b/Assets/TextMesh Pro/Shaders/TMP_SDF-URP Unlit.shadergraph.meta new file mode 100644 index 0000000000..248825ca14 --- /dev/null +++ b/Assets/TextMesh Pro/Shaders/TMP_SDF-URP Unlit.shadergraph.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 124c112a6e8f1a54e8b0870e881b56d8 +ScriptedImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 2 + userData: + assetBundleName: + assetBundleVariant: + script: {fileID: 11500000, guid: 625f186215c104763be7675aa2d941aa, type: 3} diff --git a/Assets/TextMesh Pro/Shaders/TMP_SDF.shader b/Assets/TextMesh Pro/Shaders/TMP_SDF.shader index 011ee199aa..bbcfd119df 100644 --- a/Assets/TextMesh Pro/Shaders/TMP_SDF.shader +++ b/Assets/TextMesh Pro/Shaders/TMP_SDF.shader @@ -4,10 +4,10 @@ Properties { _FaceTex ("Face Texture", 2D) = "white" {} _FaceUVSpeedX ("Face UV Speed X", Range(-5, 5)) = 0.0 _FaceUVSpeedY ("Face UV Speed Y", Range(-5, 5)) = 0.0 - [HDR]_FaceColor ("Face Color", Color) = (1,1,1,1) + _FaceColor ("Face Color", Color) = (1,1,1,1) _FaceDilate ("Face Dilate", Range(-1,1)) = 0 - [HDR]_OutlineColor ("Outline Color", Color) = (0,0,0,1) + _OutlineColor ("Outline Color", Color) = (0,0,0,1) _OutlineTex ("Outline Texture", 2D) = "white" {} _OutlineUVSpeedX ("Outline UV Speed X", Range(-5, 5)) = 0.0 _OutlineUVSpeedY ("Outline UV Speed Y", Range(-5, 5)) = 0.0 @@ -21,7 +21,7 @@ Properties { _BevelRoundness ("Bevel Roundness", Range(0,1)) = 0 _LightAngle ("Light Angle", Range(0.0, 6.2831853)) = 3.1416 - [HDR]_SpecularColor ("Specular", Color) = (1,1,1,1) + _SpecularColor ("Specular", Color) = (1,1,1,1) _SpecularPower ("Specular", Range(0,4)) = 2.0 _Reflectivity ("Reflectivity", Range(5.0,15.0)) = 10 _Diffuse ("Diffuse", Range(0,1)) = 0.5 @@ -37,13 +37,13 @@ Properties { _EnvMatrixRotation ("Texture Rotation", vector) = (0, 0, 0, 0) - [HDR]_UnderlayColor ("Border Color", Color) = (0,0,0, 0.5) + _UnderlayColor ("Border Color", Color) = (0,0,0, 0.5) _UnderlayOffsetX ("Border OffsetX", Range(-1,1)) = 0 _UnderlayOffsetY ("Border OffsetY", Range(-1,1)) = 0 _UnderlayDilate ("Border Dilate", Range(-1,1)) = 0 _UnderlaySoftness ("Border Softness", Range(0,1)) = 0 - [HDR]_GlowColor ("Color", Color) = (0, 1, 0, 0.5) + _GlowColor ("Color", Color) = (0, 1, 0, 0.5) _GlowOffset ("Offset", Range(-1,1)) = 0 _GlowInner ("Inner", Range(0,1)) = 0.05 _GlowOuter ("Outer", Range(0,1)) = 0.05 @@ -127,17 +127,18 @@ SubShader { #include "TMPro_Properties.cginc" #include "TMPro.cginc" - struct vertex_t { + struct vertex_t + { UNITY_VERTEX_INPUT_INSTANCE_ID float4 position : POSITION; float3 normal : NORMAL; fixed4 color : COLOR; - float2 texcoord0 : TEXCOORD0; + float4 texcoord0 : TEXCOORD0; float2 texcoord1 : TEXCOORD1; }; - - struct pixel_t { + struct pixel_t + { UNITY_VERTEX_INPUT_INSTANCE_ID UNITY_VERTEX_OUTPUT_STEREO float4 position : SV_POSITION; @@ -147,16 +148,20 @@ SubShader { float4 mask : TEXCOORD2; // Position in object space(xy), pixel Size(zw) float3 viewDir : TEXCOORD3; - #if (UNDERLAY_ON || UNDERLAY_INNER) + #if (UNDERLAY_ON || UNDERLAY_INNER) float4 texcoord2 : TEXCOORD4; // u,v, scale, bias fixed4 underlayColor : COLOR1; - #endif - float4 textures : TEXCOORD5; + #endif + + float4 textures : TEXCOORD5; }; // Used by Unity internally to handle Texture Tiling and Offset. float4 _FaceTex_ST; float4 _OutlineTex_ST; + float _UIMaskSoftnessX; + float _UIMaskSoftnessY; + int _UIVertexColorAlwaysGammaSpace; pixel_t VertShader(vertex_t input) { @@ -167,7 +172,7 @@ SubShader { UNITY_TRANSFER_INSTANCE_ID(input,output); UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(output); - float bold = step(input.texcoord1.y, 0); + float bold = step(input.texcoord0.w, 0); float4 vert = input.position; vert.x += _VertexOffsetX; @@ -178,7 +183,7 @@ SubShader { float2 pixelSize = vPosition.w; pixelSize /= float2(_ScaleX, _ScaleY) * abs(mul((float2x2)UNITY_MATRIX_P, _ScreenParams.xy)); float scale = rsqrt(dot(pixelSize, pixelSize)); - scale *= abs(input.texcoord1.y) * _GradientScale * (_Sharpness + 1); + scale *= abs(input.texcoord0.w) * _GradientScale * (_Sharpness + 1); if (UNITY_MATRIX_P[3][3] == 0) scale = lerp(abs(scale) * (1 - _PerspectiveFilter), scale, abs(dot(UnityObjectToWorldNormal(input.normal.xyz), normalize(WorldSpaceViewDir(vert))))); float weight = lerp(_WeightNormal, _WeightBold, bold) / 4.0; @@ -188,13 +193,13 @@ SubShader { float alphaClip = (1.0 - _OutlineWidth * _ScaleRatioA - _OutlineSoftness * _ScaleRatioA); - #if GLOW_ON + #if GLOW_ON alphaClip = min(alphaClip, 1.0 - _GlowOffset * _ScaleRatioB - _GlowOuter * _ScaleRatioB); - #endif + #endif alphaClip = alphaClip / 2.0 - ( .5 / scale) - weight; - #if (UNDERLAY_ON || UNDERLAY_INNER) + #if (UNDERLAY_ON || UNDERLAY_INNER) float4 underlayColor = _UnderlayColor; underlayColor.rgb *= underlayColor.a; @@ -205,23 +210,28 @@ SubShader { float x = -(_UnderlayOffsetX * _ScaleRatioC) * _GradientScale / _TextureWidth; float y = -(_UnderlayOffsetY * _ScaleRatioC) * _GradientScale / _TextureHeight; float2 bOffset = float2(x, y); - #endif + #endif // Generate UV for the Masking Texture float4 clampedRect = clamp(_ClipRect, -2e10, 2e10); float2 maskUV = (vert.xy - clampedRect.xy) / (clampedRect.zw - clampedRect.xy); // Support for texture tiling and offset - float2 textureUV = UnpackUV(input.texcoord1.x); + float2 textureUV = input.texcoord1; float2 faceUV = TRANSFORM_TEX(textureUV, _FaceTex); float2 outlineUV = TRANSFORM_TEX(textureUV, _OutlineTex); + if (_UIVertexColorAlwaysGammaSpace && !IsGammaSpace()) + { + input.color.rgb = UIGammaToLinear(input.color.rgb); + } output.position = vPosition; output.color = input.color; output.atlas = input.texcoord0; output.param = float4(alphaClip, scale, bias, weight); - output.mask = half4(vert.xy * 2 - clampedRect.xy - clampedRect.zw, 0.25 / (0.25 * half2(_MaskSoftnessX, _MaskSoftnessY) + pixelSize.xy)); + const half2 maskSoftness = half2(max(_UIMaskSoftnessX, _MaskSoftnessX), max(_UIMaskSoftnessY, _MaskSoftnessY)); + output.mask = half4(vert.xy * 2 - clampedRect.xy - clampedRect.zw, 0.25 / (0.25 * maskSoftness + pixelSize.xy)); output.viewDir = mul((float3x3)_EnvMatrix, _WorldSpaceCameraPos.xyz - mul(unity_ObjectToWorld, vert).xyz); #if (UNDERLAY_ON || UNDERLAY_INNER) output.texcoord2 = float4(input.texcoord0 + bOffset, bScale, bBias); @@ -239,9 +249,9 @@ SubShader { float c = tex2D(_MainTex, input.atlas).a; - #ifndef UNDERLAY_ON + #ifndef UNDERLAY_ON clip(c - input.param.x); - #endif + #endif float scale = input.param.y; float bias = input.param.z; @@ -261,7 +271,7 @@ SubShader { faceColor = GetColor(sd, faceColor, outlineColor, outline, softness); - #if BEVEL_ON + #if BEVEL_ON float3 dxy = float3(0.5 / _TextureWidth, 0.5 / _TextureHeight, 0); float3 n = GetSurfaceNormal(input.atlas, weight, dxy); @@ -278,36 +288,35 @@ SubShader { fixed4 reflcol = texCUBE(_Cube, reflect(input.viewDir, -n)); faceColor.rgb += reflcol.rgb * lerp(_ReflectFaceColor.rgb, _ReflectOutlineColor.rgb, saturate(sd + outline * 0.5)) * faceColor.a; - #endif + #endif - #if UNDERLAY_ON + #if UNDERLAY_ON float d = tex2D(_MainTex, input.texcoord2.xy).a * input.texcoord2.z; faceColor += input.underlayColor * saturate(d - input.texcoord2.w) * (1 - faceColor.a); - #endif + #endif - #if UNDERLAY_INNER + #if UNDERLAY_INNER float d = tex2D(_MainTex, input.texcoord2.xy).a * input.texcoord2.z; faceColor += input.underlayColor * (1 - saturate(d - input.texcoord2.w)) * saturate(1 - sd) * (1 - faceColor.a); - #endif + #endif - #if GLOW_ON + #if GLOW_ON float4 glowColor = GetGlowColor(sd, scale); faceColor.rgb += glowColor.rgb * glowColor.a; - #endif + #endif // Alternative implementation to UnityGet2DClipping with support for softness. - #if UNITY_UI_CLIP_RECT + #if UNITY_UI_CLIP_RECT half2 m = saturate((_ClipRect.zw - _ClipRect.xy - abs(input.mask.xy)) * input.mask.zw); faceColor *= m.x * m.y; - #endif + #endif - #if UNITY_UI_ALPHACLIP + #if UNITY_UI_ALPHACLIP clip(faceColor.a - 0.001); - #endif + #endif - return faceColor * input.color.a; + return faceColor * input.color.a; } - ENDCG } } diff --git a/Assets/TextMesh Pro/Shaders/TMP_Sprite.shader b/Assets/TextMesh Pro/Shaders/TMP_Sprite.shader index adccc04c5c..4012a081db 100644 --- a/Assets/TextMesh Pro/Shaders/TMP_Sprite.shader +++ b/Assets/TextMesh Pro/Shaders/TMP_Sprite.shader @@ -2,18 +2,18 @@ Shader "TextMeshPro/Sprite" { Properties { - _MainTex ("Sprite Texture", 2D) = "white" {} - _Color ("Tint", Color) = (1,1,1,1) - - _StencilComp ("Stencil Comparison", Float) = 8 - _Stencil ("Stencil ID", Float) = 0 - _StencilOp ("Stencil Operation", Float) = 0 - _StencilWriteMask ("Stencil Write Mask", Float) = 255 - _StencilReadMask ("Stencil Read Mask", Float) = 255 - - _CullMode ("Cull Mode", Float) = 0 - _ColorMask ("Color Mask", Float) = 15 - _ClipRect ("Clip Rect", vector) = (-32767, -32767, 32767, 32767) + _MainTex ("Sprite Texture", 2D) = "white" {} + _Color ("Tint", Color) = (1,1,1,1) + + _StencilComp ("Stencil Comparison", Float) = 8 + _Stencil ("Stencil ID", Float) = 0 + _StencilOp ("Stencil Operation", Float) = 0 + _StencilWriteMask ("Stencil Write Mask", Float) = 255 + _StencilReadMask ("Stencil Read Mask", Float) = 255 + + _CullMode ("Cull Mode", Float) = 0 + _ColorMask ("Color Mask", Float) = 15 + _ClipRect ("Clip Rect", vector) = (-32767, -32767, 32767, 32767) [Toggle(UNITY_UI_ALPHACLIP)] _UseUIAlphaClip ("Use Alpha Clip", Float) = 0 } @@ -21,19 +21,19 @@ Shader "TextMeshPro/Sprite" SubShader { Tags - { - "Queue"="Transparent" - "IgnoreProjector"="True" - "RenderType"="Transparent" + { + "Queue"="Transparent" + "IgnoreProjector"="True" + "RenderType"="Transparent" "PreviewType"="Plane" "CanUseSpriteAtlas"="True" } - + Stencil { Ref [_Stencil] Comp [_StencilComp] - Pass [_StencilOp] + Pass [_StencilOp] ReadMask [_StencilReadMask] WriteMask [_StencilWriteMask] } @@ -47,59 +47,76 @@ Shader "TextMeshPro/Sprite" Pass { + Name "Default" CGPROGRAM #pragma vertex vert #pragma fragment frag + #pragma target 2.0 #include "UnityCG.cginc" #include "UnityUI.cginc" - #pragma multi_compile __ UNITY_UI_CLIP_RECT - #pragma multi_compile __ UNITY_UI_ALPHACLIP - + #pragma multi_compile __ UNITY_UI_CLIP_RECT + #pragma multi_compile __ UNITY_UI_ALPHACLIP + struct appdata_t { float4 vertex : POSITION; float4 color : COLOR; float2 texcoord : TEXCOORD0; + UNITY_VERTEX_INPUT_INSTANCE_ID }; struct v2f { - float4 vertex : SV_POSITION; - fixed4 color : COLOR; - half2 texcoord : TEXCOORD0; - float4 worldPosition : TEXCOORD1; + float4 vertex : SV_POSITION; + fixed4 color : COLOR; + float2 texcoord : TEXCOORD0; + float4 worldPosition : TEXCOORD1; + float4 mask : TEXCOORD2; + UNITY_VERTEX_OUTPUT_STEREO }; - + + sampler2D _MainTex; fixed4 _Color; fixed4 _TextureSampleAdd; float4 _ClipRect; + float4 _MainTex_ST; + float _UIMaskSoftnessX; + float _UIMaskSoftnessY; + int _UIVertexColorAlwaysGammaSpace; - v2f vert(appdata_t IN) + v2f vert(appdata_t v) { v2f OUT; - OUT.worldPosition = IN.vertex; - OUT.vertex = UnityObjectToClipPos(OUT.worldPosition); + UNITY_SETUP_INSTANCE_ID(v); + UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(OUT); + float4 vPosition = UnityObjectToClipPos(v.vertex); + OUT.worldPosition = v.vertex; + OUT.vertex = vPosition; - OUT.texcoord = IN.texcoord; - - #ifdef UNITY_HALF_TEXEL_OFFSET - OUT.vertex.xy += (_ScreenParams.zw-1.0)*float2(-1,1); - #endif - - OUT.color = IN.color * _Color; + float2 pixelSize = vPosition.w; + pixelSize /= abs(mul((float2x2)UNITY_MATRIX_P, _ScreenParams.xy)); + + float4 clampedRect = clamp(_ClipRect, -2e10, 2e10); + OUT.texcoord = TRANSFORM_TEX(v.texcoord, _MainTex); + OUT.mask = half4(v.vertex.xy * 2 - clampedRect.xy - clampedRect.zw, 0.25 / (0.25 * half2(_UIMaskSoftnessX, _UIMaskSoftnessY) + abs(pixelSize.xy))); + + if (_UIVertexColorAlwaysGammaSpace && !IsGammaSpace()) + { + v.color.rgb = UIGammaToLinear(v.color.rgb); + } + OUT.color = v.color * _Color; return OUT; } - sampler2D _MainTex; - fixed4 frag(v2f IN) : SV_Target { half4 color = (tex2D(_MainTex, IN.texcoord) + _TextureSampleAdd) * IN.color; - - #if UNITY_UI_CLIP_RECT - color.a *= UnityGet2DClipping(IN.worldPosition.xy, _ClipRect); + + #if UNITY_UI_CLIP_RECT + half2 m = saturate((_ClipRect.zw - _ClipRect.xy - abs(IN.mask.xy)) * IN.mask.zw); + color *= m.x * m.y; #endif #ifdef UNITY_UI_ALPHACLIP @@ -108,7 +125,7 @@ Shader "TextMeshPro/Sprite" return color; } - ENDCG + ENDCG } } } diff --git a/Assets/TextMesh Pro/Shaders/TMPro.cginc.meta b/Assets/TextMesh Pro/Shaders/TMPro.cginc.meta index 0d6eb56ce1..f21163e223 100644 --- a/Assets/TextMesh Pro/Shaders/TMPro.cginc.meta +++ b/Assets/TextMesh Pro/Shaders/TMPro.cginc.meta @@ -4,6 +4,6 @@ ShaderImporter: externalObjects: {} defaultTextures: [] nonModifiableTextures: [] - userData: + userData: Version 2.0 assetBundleName: assetBundleVariant: diff --git a/Assets/TextMesh Pro/Shaders/TMPro_Mobile.cginc b/Assets/TextMesh Pro/Shaders/TMPro_Mobile.cginc index 5969fec1a3..d145a773fc 100644 --- a/Assets/TextMesh Pro/Shaders/TMPro_Mobile.cginc +++ b/Assets/TextMesh Pro/Shaders/TMPro_Mobile.cginc @@ -1,20 +1,22 @@ -struct vertex_t { +struct vertex_t +{ UNITY_VERTEX_INPUT_INSTANCE_ID float4 position : POSITION; float3 normal : NORMAL; float4 color : COLOR; - float2 texcoord0 : TEXCOORD0; + float4 texcoord0 : TEXCOORD0; float2 texcoord1 : TEXCOORD1; }; -struct pixel_t { +struct pixel_t +{ UNITY_VERTEX_INPUT_INSTANCE_ID UNITY_VERTEX_OUTPUT_STEREO float4 position : SV_POSITION; float4 faceColor : COLOR; float4 outlineColor : COLOR1; float4 texcoord0 : TEXCOORD0; - float4 param : TEXCOORD1; // weight, scaleRatio + float4 param : TEXCOORD1; // x = weight, y = no longer used float2 mask : TEXCOORD2; #if (UNDERLAY_ON || UNDERLAY_INNER) float4 texcoord2 : TEXCOORD3; @@ -22,10 +24,14 @@ struct pixel_t { #endif }; -float4 SRGBToLinear(float4 rgba) { +float4 SRGBToLinear(float4 rgba) +{ return float4(lerp(rgba.rgb / 12.92f, pow((rgba.rgb + 0.055f) / 1.055f, 2.4f), step(0.04045f, rgba.rgb)), rgba.a); } +float _UIMaskSoftnessX; +float _UIMaskSoftnessY; + pixel_t VertShader(vertex_t input) { pixel_t output; @@ -35,7 +41,7 @@ pixel_t VertShader(vertex_t input) UNITY_TRANSFER_INSTANCE_ID(input, output); UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(output); - float bold = step(input.texcoord1.y, 0); + float bold = step(input.texcoord0.w, 0); float4 vert = input.position; vert.x += _VertexOffsetX; @@ -71,7 +77,7 @@ pixel_t VertShader(vertex_t input) output.faceColor = faceColor; output.outlineColor = outlineColor; output.texcoord0 = float4(input.texcoord0.xy, maskUV.xy); - output.param = float4(0.5 - weight, 1.3333 * _GradientScale * (_Sharpness + 1) / _TextureWidth, _OutlineWidth * _ScaleRatioA * 0.5, 0); + output.param = float4(0.5 - weight, 0, _OutlineWidth * _ScaleRatioA * 0.5, 0); float2 mask = float2(0, 0); #if UNITY_UI_CLIP_RECT @@ -99,8 +105,9 @@ float4 PixShader(pixel_t input) : SV_Target float d = tex2D(_MainTex, input.texcoord0.xy).a; - float2 UV = input.texcoord0.xy; - float scale = rsqrt(abs(ddx(UV.x) * ddy(UV.y) - ddy(UV.x) * ddx(UV.y))) * input.param.y; + float pixelSize = abs(ddx(input.texcoord0.y)) + abs(ddy(input.texcoord0.y)); + pixelSize *= _TextureHeight * 0.75; + float scale = 1 / pixelSize * _GradientScale * (_Sharpness + 1); #if (UNDERLAY_ON | UNDERLAY_INNER) float layerScale = scale; @@ -112,7 +119,7 @@ float4 PixShader(pixel_t input) : SV_Target float4 faceColor = input.faceColor * saturate((d - input.param.x) * scale + 0.5); - #ifdef OUTLINE_ON + #if OUTLINE_ON float4 outlineColor = lerp(input.faceColor, input.outlineColor, sqrt(min(1.0, input.param.z * scale * 2))); faceColor = lerp(outlineColor, input.faceColor, saturate((d - input.param.x - input.param.z) * scale + 0.5)); faceColor *= saturate((d - input.param.x + input.param.z) * scale + 0.5); @@ -130,7 +137,7 @@ float4 PixShader(pixel_t input) : SV_Target faceColor += float4(_UnderlayColor.rgb * _UnderlayColor.a, _UnderlayColor.a) * (1 - saturate(d - layerBias)) * sd * (1 - faceColor.a); #endif - #ifdef MASKING + #if MASKING float a = abs(_MaskInverse - tex2D(_MaskTex, input.texcoord0.zw).a); float t = a + (1 - _MaskWipeControl) * _MaskEdgeSoftness - _MaskWipeControl; a = saturate(t / _MaskEdgeSoftness); @@ -140,7 +147,8 @@ float4 PixShader(pixel_t input) : SV_Target // Alternative implementation to UnityGet2DClipping with support for softness #if UNITY_UI_CLIP_RECT - float2 maskZW = 0.25 / (0.25 * half2(_MaskSoftnessX, _MaskSoftnessY) + (1 / scale)); + half2 maskSoftness = half2(max(_UIMaskSoftnessX, _MaskSoftnessX), max(_UIMaskSoftnessY, _MaskSoftnessY)); + float2 maskZW = 0.25 / (0.25 * maskSoftness + 1 / scale); float2 m = saturate((_ClipRect.zw - _ClipRect.xy - abs(input.mask.xy)) * maskZW); faceColor *= m.x * m.y; #endif diff --git a/Assets/TextMesh Pro/Shaders/TMPro_Properties.cginc b/Assets/TextMesh Pro/Shaders/TMPro_Properties.cginc index 2e962588cf..b806b4f956 100644 --- a/Assets/TextMesh Pro/Shaders/TMPro_Properties.cginc +++ b/Assets/TextMesh Pro/Shaders/TMPro_Properties.cginc @@ -66,11 +66,6 @@ uniform float _MaskID; uniform sampler2D _MaskTex; uniform float4 _MaskCoord; uniform float4 _ClipRect; // bottom left(x,y) : top right(z,w) -//uniform float _MaskWipeControl; -//uniform float _MaskEdgeSoftness; -//uniform fixed4 _MaskEdgeColor; -//uniform bool _MaskInverse; - uniform float _MaskSoftnessX; uniform float _MaskSoftnessY; diff --git a/Assets/TextMesh Pro/Shaders/TMPro_Surface.cginc b/Assets/TextMesh Pro/Shaders/TMPro_Surface.cginc index 622ae87583..2153a9a7ca 100644 --- a/Assets/TextMesh Pro/Shaders/TMPro_Surface.cginc +++ b/Assets/TextMesh Pro/Shaders/TMPro_Surface.cginc @@ -5,7 +5,7 @@ void VertShader(inout appdata_full v, out Input data) UNITY_INITIALIZE_OUTPUT(Input, data); - float bold = step(v.texcoord1.y, 0); + float bold = step(v.texcoord.w, 0); // Generate normal for backface float3 view = ObjSpaceViewDir(v.vertex); @@ -20,14 +20,12 @@ void VertShader(inout appdata_full v, out Input data) pixelSize /= float2(_ScaleX, _ScaleY) * mul((float2x2)UNITY_MATRIX_P, _ScreenParams.xy); float scale = rsqrt(dot(pixelSize, pixelSize)); - scale *= abs(v.texcoord1.y) * _GradientScale * (_Sharpness + 1); + scale *= abs(v.texcoord.w) * _GradientScale * (_Sharpness + 1); scale = lerp(scale * (1 - _PerspectiveFilter), scale, abs(dot(UnityObjectToWorldNormal(v.normal.xyz), normalize(WorldSpaceViewDir(vert))))); data.param.y = scale; #endif - data.param.x = (lerp(_WeightNormal, _WeightBold, bold) / 4.0 + _FaceDilate) * _ScaleRatioA * 0.5; // - - v.texcoord1.xy = UnpackUV(v.texcoord1.x); + data.param.x = (lerp(_WeightNormal, _WeightBold, bold) / 4.0 + _FaceDilate) * _ScaleRatioA * 0.5; // data.viewDirEnv = mul((float3x3)_EnvMatrix, WorldSpaceViewDir(v.vertex)); } @@ -82,7 +80,7 @@ void PixShader(Input input, inout SurfaceOutput o) float3 n = float3(0, 0, -1); float3 emission = float3(0, 0, 0); #endif - + #if GLOW_ON float4 glowColor = GetGlowColor(sd, scale); glowColor.a *= input.color.a; diff --git a/Assets/TextMesh Pro/Sprites/EmojiOne.json.meta b/Assets/TextMesh Pro/Sprites/EmojiOne.json.meta index 1c0e16f405..762cf15c92 100644 --- a/Assets/TextMesh Pro/Sprites/EmojiOne.json.meta +++ b/Assets/TextMesh Pro/Sprites/EmojiOne.json.meta @@ -1,7 +1,8 @@ fileFormatVersion: 2 -guid: d8db04a148f81484ba96113d5621f7ca +guid: 8f05276190cf498a8153f6cbe761d4e6 +timeCreated: 1480316860 +licenseType: Pro TextScriptImporter: - externalObjects: {} userData: assetBundleName: assetBundleVariant: diff --git a/Assets/URP/Mobile/0_UniversalRenderPipelineAsset_Mobile_Low.asset b/Assets/URP/Mobile/0_UniversalRenderPipelineAsset_Mobile_Low.asset index 8c7f5e8cf9..25311b7ed8 100644 --- a/Assets/URP/Mobile/0_UniversalRenderPipelineAsset_Mobile_Low.asset +++ b/Assets/URP/Mobile/0_UniversalRenderPipelineAsset_Mobile_Low.asset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:62ae1d73a7e79f82f466f0cca0ffd7d7f3c647af0c5d7876e8f28aed6ba195da -size 3501 +oid sha256:a14e787d75e40f95ac253c8ff8f4024f220abe97989868c59132ca6946c77e43 +size 4358 diff --git a/Assets/URP/Mobile/0_UniversalRenderPipelineAsset_Renderer_Mobile_Low.asset b/Assets/URP/Mobile/0_UniversalRenderPipelineAsset_Renderer_Mobile_Low.asset index e60691c2cd..eddaadcf50 100644 --- a/Assets/URP/Mobile/0_UniversalRenderPipelineAsset_Renderer_Mobile_Low.asset +++ b/Assets/URP/Mobile/0_UniversalRenderPipelineAsset_Renderer_Mobile_Low.asset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:cfd1e6e94dd95313459d0ee504b25aa791fbcfbcad12587104e3f43bd9f15e50 -size 2608 +oid sha256:2ee8e9a75cc7d541ccfb345312c6231deb9bbd94c838d1470e539a01424f4620 +size 1864 diff --git a/Assets/URP/Windows/0_UniversalRenderPipelineAsset_Windows_Low.asset b/Assets/URP/Windows/0_UniversalRenderPipelineAsset_Windows_Low.asset index ae1ae60d17..a21ed98cbb 100644 --- a/Assets/URP/Windows/0_UniversalRenderPipelineAsset_Windows_Low.asset +++ b/Assets/URP/Windows/0_UniversalRenderPipelineAsset_Windows_Low.asset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:156f546b1b47dd12ebf17462717d52e8b9225b90057649a6f994d1b9a05df6d3 -size 3673 +oid sha256:b2208c1fefb455a174645cb2d6f7f6cb6bc074cdec65f73f0d5c27bb83bd58a2 +size 4350 diff --git a/Assets/UniversalRenderPipelineGlobalSettings.asset b/Assets/UniversalRenderPipelineGlobalSettings.asset index 83829b821c..94ba50c999 100644 --- a/Assets/UniversalRenderPipelineGlobalSettings.asset +++ b/Assets/UniversalRenderPipelineGlobalSettings.asset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ad47c9a555fa0774e8982e52f039ce9c33a21b1524c18d7e430d1505708bb014 -size 1183 +oid sha256:31d4833f59a46db0c3c4996a6a98853ec30a4d2990c66f3d5c87ac3cd4d66e31 +size 14324 diff --git a/Assets/VFX/Materials/FX_M_ArcherArrow.mat b/Assets/VFX/Materials/FX_M_ArcherArrow.mat index 9660d56a5f..432dd55a8e 100644 --- a/Assets/VFX/Materials/FX_M_ArcherArrow.mat +++ b/Assets/VFX/Materials/FX_M_ArcherArrow.mat @@ -23,6 +23,7 @@ Material: disabledShaderPasses: - SHADOWCASTER - DepthOnly + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -132,6 +133,7 @@ Material: - _MainTextureTilingOffset: {r: 1, g: 1, b: 0, a: 0} - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &8191775615506968980 MonoBehaviour: m_ObjectHideFlags: 11 @@ -144,4 +146,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_CharaterSneaky.mat b/Assets/VFX/Materials/FX_M_CharaterSneaky.mat index 034a1bbfa3..ed9d7d9a13 100644 --- a/Assets/VFX/Materials/FX_M_CharaterSneaky.mat +++ b/Assets/VFX/Materials/FX_M_CharaterSneaky.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 --- !u!21 &2100000 Material: serializedVersion: 8 @@ -31,7 +31,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -95,3 +96,4 @@ Material: - _NoiseTileSpeed: {r: 0.05, g: 0.01, b: 0, a: 0.5} - _NotmalTileSpeed: {r: 0.05, g: 0.02, b: 0, a: 0.5} m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Assets/VFX/Materials/FX_M_CharaterSneaky_LessSneak.mat b/Assets/VFX/Materials/FX_M_CharaterSneaky_LessSneak.mat index d654dafe6e..ed14afc572 100644 --- a/Assets/VFX/Materials/FX_M_CharaterSneaky_LessSneak.mat +++ b/Assets/VFX/Materials/FX_M_CharaterSneaky_LessSneak.mat @@ -18,7 +18,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -82,6 +83,7 @@ Material: - _NoiseTileSpeed: {r: 0.05, g: 0.01, b: 0, a: 0.5} - _NotmalTileSpeed: {r: 0.05, g: 0.02, b: 0, a: 0.5} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &335327079362466641 MonoBehaviour: m_ObjectHideFlags: 11 @@ -94,4 +96,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_Chest.mat b/Assets/VFX/Materials/FX_M_Chest.mat index c893d13332..c40b69b0c8 100644 --- a/Assets/VFX/Materials/FX_M_Chest.mat +++ b/Assets/VFX/Materials/FX_M_Chest.mat @@ -24,6 +24,7 @@ Material: - ALWAYS - SHADOWCASTER - DepthOnly + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -141,6 +142,7 @@ Material: - _MainTextureTilingOffset: {r: 1, g: 1, b: 0, a: 0} - _SoftParticleFadeParams: {r: 0, g: 4.5454545, b: 0, a: 0} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &7142477515504277183 MonoBehaviour: m_ObjectHideFlags: 11 @@ -153,4 +155,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_Circle_Sheet_01.mat b/Assets/VFX/Materials/FX_M_Circle_Sheet_01.mat index 47849a96d6..3113a9345d 100644 --- a/Assets/VFX/Materials/FX_M_Circle_Sheet_01.mat +++ b/Assets/VFX/Materials/FX_M_Circle_Sheet_01.mat @@ -22,6 +22,7 @@ Material: RenderType: Transparent disabledShaderPasses: - DepthOnly + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -126,6 +127,7 @@ Material: - _MainTextureTilingOffset: {r: 1, g: 1, b: 0, a: 0} - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &8601509238882469189 MonoBehaviour: m_ObjectHideFlags: 11 @@ -138,4 +140,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_Circle_Sheet_02.mat b/Assets/VFX/Materials/FX_M_Circle_Sheet_02.mat index c222ac5585..2436c0e8bb 100644 --- a/Assets/VFX/Materials/FX_M_Circle_Sheet_02.mat +++ b/Assets/VFX/Materials/FX_M_Circle_Sheet_02.mat @@ -22,6 +22,7 @@ Material: RenderType: Transparent disabledShaderPasses: - DepthOnly + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -126,6 +127,7 @@ Material: - _MainTextureTilingOffset: {r: 1, g: 1, b: 0, a: 0} - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &8601509238882469189 MonoBehaviour: m_ObjectHideFlags: 11 @@ -138,4 +140,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_Circle_Sheet_03.mat b/Assets/VFX/Materials/FX_M_Circle_Sheet_03.mat index 58cd36f53d..eb1e9f9be3 100644 --- a/Assets/VFX/Materials/FX_M_Circle_Sheet_03.mat +++ b/Assets/VFX/Materials/FX_M_Circle_Sheet_03.mat @@ -148,6 +148,7 @@ Material: - _SoftParticleFadeParams: {r: 0, g: 0, b: 0, a: 0} - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &8601509238882469189 MonoBehaviour: m_ObjectHideFlags: 11 @@ -160,4 +161,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_Circle_Sheet_04.mat b/Assets/VFX/Materials/FX_M_Circle_Sheet_04.mat index c07b6393b8..64e9b96cc4 100644 --- a/Assets/VFX/Materials/FX_M_Circle_Sheet_04.mat +++ b/Assets/VFX/Materials/FX_M_Circle_Sheet_04.mat @@ -148,6 +148,7 @@ Material: - _SoftParticleFadeParams: {r: 0, g: 0, b: 0, a: 0} - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &8601509238882469189 MonoBehaviour: m_ObjectHideFlags: 11 @@ -160,4 +161,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_Circle_Sheet_05.mat b/Assets/VFX/Materials/FX_M_Circle_Sheet_05.mat index 8570c1bbbc..ef891faa0a 100644 --- a/Assets/VFX/Materials/FX_M_Circle_Sheet_05.mat +++ b/Assets/VFX/Materials/FX_M_Circle_Sheet_05.mat @@ -22,6 +22,7 @@ Material: RenderType: Transparent disabledShaderPasses: - DepthOnly + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -126,6 +127,7 @@ Material: - _MainTextureTilingOffset: {r: 1, g: 1, b: 0, a: 0} - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &8601509238882469189 MonoBehaviour: m_ObjectHideFlags: 11 @@ -138,4 +140,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_Crystal.mat b/Assets/VFX/Materials/FX_M_Crystal.mat index 2c9dbcf99a..a6f192a8c1 100644 --- a/Assets/VFX/Materials/FX_M_Crystal.mat +++ b/Assets/VFX/Materials/FX_M_Crystal.mat @@ -31,7 +31,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -150,6 +151,7 @@ Material: - _TintBlack: {r: 0.047169805, g: 0.014836603, b: 0.006897471, a: 0} - _TintWhite: {r: 1, g: 0.05020623, b: 0.042452812, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &6389523636818495645 MonoBehaviour: m_ObjectHideFlags: 11 @@ -162,4 +164,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_Crystal_Broken.mat b/Assets/VFX/Materials/FX_M_Crystal_Broken.mat index b5c997e77b..a94898c21a 100644 --- a/Assets/VFX/Materials/FX_M_Crystal_Broken.mat +++ b/Assets/VFX/Materials/FX_M_Crystal_Broken.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 --- !u!21 &2100000 Material: serializedVersion: 8 @@ -31,7 +31,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -165,3 +166,4 @@ Material: - _TintBlack: {r: 0.047169805, g: 0.014836603, b: 0.006897471, a: 0} - _TintWhite: {r: 1, g: 0.05020623, b: 0.042452812, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Assets/VFX/Materials/FX_M_Flame.mat b/Assets/VFX/Materials/FX_M_Flame.mat index 741adb2b9c..001bc41fc6 100644 --- a/Assets/VFX/Materials/FX_M_Flame.mat +++ b/Assets/VFX/Materials/FX_M_Flame.mat @@ -19,7 +19,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -136,6 +137,7 @@ Material: - _Texture1TileSpeed: {r: 1, g: 0.5, b: 0, a: -0.5} - _Texture2TileSpeed: {r: 0.5, g: 1, b: 0, a: -1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &5486005863881349433 MonoBehaviour: m_ObjectHideFlags: 11 @@ -148,4 +150,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_Flare_01.mat b/Assets/VFX/Materials/FX_M_Flare_01.mat index 54e06b5beb..0f168ce26a 100644 --- a/Assets/VFX/Materials/FX_M_Flare_01.mat +++ b/Assets/VFX/Materials/FX_M_Flare_01.mat @@ -22,6 +22,7 @@ Material: RenderType: Transparent disabledShaderPasses: - DepthOnly + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -128,6 +129,7 @@ Material: - _MainTextureTilingOffset: {r: 1, g: 1, b: 0, a: 0} - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &8601509238882469189 MonoBehaviour: m_ObjectHideFlags: 11 @@ -140,4 +142,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_Flash_01.mat b/Assets/VFX/Materials/FX_M_Flash_01.mat index 91ffab3a22..75ff57c079 100644 --- a/Assets/VFX/Materials/FX_M_Flash_01.mat +++ b/Assets/VFX/Materials/FX_M_Flash_01.mat @@ -23,6 +23,7 @@ Material: disabledShaderPasses: - SHADOWCASTER - DepthOnly + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -139,6 +140,7 @@ Material: - _SoftParticleFadeParams: {r: 0, g: 0, b: 0, a: 0} - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &8601509238882469189 MonoBehaviour: m_ObjectHideFlags: 11 @@ -151,4 +153,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_GlowLine.mat b/Assets/VFX/Materials/FX_M_GlowLine.mat index 2fe494ae9b..ea41291881 100644 --- a/Assets/VFX/Materials/FX_M_GlowLine.mat +++ b/Assets/VFX/Materials/FX_M_GlowLine.mat @@ -23,6 +23,7 @@ Material: disabledShaderPasses: - SHADOWCASTER - DepthOnly + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -140,6 +141,7 @@ Material: - _MainTextureTilingOffset: {r: 1, g: 1, b: 0, a: 0} - _SoftParticleFadeParams: {r: 0, g: 0.6896551, b: 0, a: 0} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &1865182808327881390 MonoBehaviour: m_ObjectHideFlags: 11 @@ -152,4 +154,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_Glow_Additive_01.mat b/Assets/VFX/Materials/FX_M_Glow_Additive_01.mat index 763b48fc10..73247c2a2b 100644 --- a/Assets/VFX/Materials/FX_M_Glow_Additive_01.mat +++ b/Assets/VFX/Materials/FX_M_Glow_Additive_01.mat @@ -25,6 +25,7 @@ Material: disabledShaderPasses: - SHADOWCASTER - DepthOnly + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -129,6 +130,7 @@ Material: - _MainTextureTilingOffset: {r: 1, g: 1, b: 0, a: 0} - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &8601509238882469189 MonoBehaviour: m_ObjectHideFlags: 11 @@ -141,4 +143,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_Glow_Additive_02.mat b/Assets/VFX/Materials/FX_M_Glow_Additive_02.mat index 324eda9c8f..98a2787f98 100644 --- a/Assets/VFX/Materials/FX_M_Glow_Additive_02.mat +++ b/Assets/VFX/Materials/FX_M_Glow_Additive_02.mat @@ -24,6 +24,7 @@ Material: disabledShaderPasses: - DepthOnly - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -128,6 +129,7 @@ Material: - _MainTextureTilingOffset: {r: 1, g: 1, b: 0, a: 0} - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &8601509238882469189 MonoBehaviour: m_ObjectHideFlags: 11 @@ -140,4 +142,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_Glow_Additive_03.mat b/Assets/VFX/Materials/FX_M_Glow_Additive_03.mat index 03bd4b2c51..eae4c57471 100644 --- a/Assets/VFX/Materials/FX_M_Glow_Additive_03.mat +++ b/Assets/VFX/Materials/FX_M_Glow_Additive_03.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 --- !u!21 &2100000 Material: serializedVersion: 8 @@ -36,6 +36,7 @@ Material: disabledShaderPasses: - DepthOnly - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -128,3 +129,4 @@ Material: - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} - _MainTextureTilingOffset: {r: 1, g: 1, b: 0, a: 0} m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Assets/VFX/Materials/FX_M_Glow_NoDepthAlpha_01.mat b/Assets/VFX/Materials/FX_M_Glow_NoDepthAlpha_01.mat index c581c8201d..7fc4e1320c 100644 --- a/Assets/VFX/Materials/FX_M_Glow_NoDepthAlpha_01.mat +++ b/Assets/VFX/Materials/FX_M_Glow_NoDepthAlpha_01.mat @@ -23,6 +23,7 @@ Material: disabledShaderPasses: - DepthOnly - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -157,6 +158,7 @@ Material: - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} - _TintColor: {r: 0.638, g: 0.638, b: 0.638, a: 0.5} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &8601509238882469189 MonoBehaviour: m_ObjectHideFlags: 11 @@ -169,4 +171,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_Glow_NoDepthAlpha_02.mat b/Assets/VFX/Materials/FX_M_Glow_NoDepthAlpha_02.mat index ef38fe9f15..cf2d6c3121 100644 --- a/Assets/VFX/Materials/FX_M_Glow_NoDepthAlpha_02.mat +++ b/Assets/VFX/Materials/FX_M_Glow_NoDepthAlpha_02.mat @@ -23,6 +23,7 @@ Material: disabledShaderPasses: - DepthOnly - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -157,6 +158,7 @@ Material: - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} - _TintColor: {r: 0.638, g: 0.638, b: 0.638, a: 0.5} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &8601509238882469189 MonoBehaviour: m_ObjectHideFlags: 11 @@ -169,4 +171,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_Glow_SoftParticleAlpha_02.mat b/Assets/VFX/Materials/FX_M_Glow_SoftParticleAlpha_02.mat index 4cbbb0e30d..338e5e3b5a 100644 --- a/Assets/VFX/Materials/FX_M_Glow_SoftParticleAlpha_02.mat +++ b/Assets/VFX/Materials/FX_M_Glow_SoftParticleAlpha_02.mat @@ -23,6 +23,7 @@ Material: disabledShaderPasses: - DepthOnly - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -159,6 +160,7 @@ Material: - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} - _TintColor: {r: 0.638, g: 0.638, b: 0.638, a: 0.5} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &8601509238882469189 MonoBehaviour: m_ObjectHideFlags: 11 @@ -171,4 +173,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_Glow_UnlitAlpha_01.mat b/Assets/VFX/Materials/FX_M_Glow_UnlitAlpha_01.mat index 52e101e8f3..8963e18b8e 100644 --- a/Assets/VFX/Materials/FX_M_Glow_UnlitAlpha_01.mat +++ b/Assets/VFX/Materials/FX_M_Glow_UnlitAlpha_01.mat @@ -25,6 +25,7 @@ Material: disabledShaderPasses: - DepthOnly - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -129,6 +130,7 @@ Material: - _MainTextureTilingOffset: {r: 1, g: 1, b: 0, a: 0} - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &8601509238882469189 MonoBehaviour: m_ObjectHideFlags: 11 @@ -141,4 +143,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_Glow_UnlitAlpha_02.mat b/Assets/VFX/Materials/FX_M_Glow_UnlitAlpha_02.mat index b8e2c0215c..89bdafc38e 100644 --- a/Assets/VFX/Materials/FX_M_Glow_UnlitAlpha_02.mat +++ b/Assets/VFX/Materials/FX_M_Glow_UnlitAlpha_02.mat @@ -23,6 +23,7 @@ Material: disabledShaderPasses: - DepthOnly - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -157,6 +158,7 @@ Material: - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} - _TintColor: {r: 0.638, g: 0.638, b: 0.638, a: 0.5} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &8601509238882469189 MonoBehaviour: m_ObjectHideFlags: 11 @@ -169,4 +171,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_GroundClick.mat b/Assets/VFX/Materials/FX_M_GroundClick.mat index 993594450b..94d0aea280 100644 --- a/Assets/VFX/Materials/FX_M_GroundClick.mat +++ b/Assets/VFX/Materials/FX_M_GroundClick.mat @@ -24,6 +24,7 @@ Material: - ALWAYS - SHADOWCASTER - DepthOnly + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -221,6 +222,7 @@ Material: - _SpecColor: {r: 1, g: 1, b: 1, a: 1} - _TintColor: {r: 0.5, g: 0.5, b: 0.5, a: 0.5} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &1404380302047346808 MonoBehaviour: m_ObjectHideFlags: 11 @@ -233,4 +235,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_GroundCrack_01.mat b/Assets/VFX/Materials/FX_M_GroundCrack_01.mat index b32ae47873..0198fd3a9a 100644 --- a/Assets/VFX/Materials/FX_M_GroundCrack_01.mat +++ b/Assets/VFX/Materials/FX_M_GroundCrack_01.mat @@ -23,6 +23,7 @@ Material: disabledShaderPasses: - DepthOnly - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -168,6 +169,7 @@ Material: - _TileSpeedDissolveTexture: {r: 0.5, g: 0.5, b: 0, a: 0.2} - _TileSpeedMainTexture: {r: 1, g: 1, b: 0, a: 0} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &2265183433606947597 MonoBehaviour: m_ObjectHideFlags: 11 @@ -180,4 +182,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_GroundCrack_02.mat b/Assets/VFX/Materials/FX_M_GroundCrack_02.mat index 9179890360..494338c38f 100644 --- a/Assets/VFX/Materials/FX_M_GroundCrack_02.mat +++ b/Assets/VFX/Materials/FX_M_GroundCrack_02.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 --- !u!21 &2100000 Material: serializedVersion: 8 @@ -36,6 +36,7 @@ Material: disabledShaderPasses: - DepthOnly - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -181,3 +182,4 @@ Material: - _TileSpeedDissolveTexture: {r: 0.5, g: 0.5, b: 0, a: 0.2} - _TileSpeedMainTexture: {r: 1, g: 1, b: 0, a: 0} m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Assets/VFX/Materials/FX_M_Hit.mat b/Assets/VFX/Materials/FX_M_Hit.mat index 51d7d03d59..fc5249e6a3 100644 --- a/Assets/VFX/Materials/FX_M_Hit.mat +++ b/Assets/VFX/Materials/FX_M_Hit.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 --- !u!21 &2100000 Material: serializedVersion: 8 @@ -37,6 +37,7 @@ Material: disabledShaderPasses: - DepthOnly - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -157,3 +158,4 @@ Material: - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} - _MainTextureTilingOffset: {r: 1, g: 1, b: 0, a: 0} m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Assets/VFX/Materials/FX_M_Ice.mat b/Assets/VFX/Materials/FX_M_Ice.mat index 0f5bab5c64..5df02d6faf 100644 --- a/Assets/VFX/Materials/FX_M_Ice.mat +++ b/Assets/VFX/Materials/FX_M_Ice.mat @@ -19,7 +19,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -91,6 +92,7 @@ Material: - _MaskOffset: {r: 0, g: 0, b: 0, a: 0} - _TileSpeedDissolveTexture: {r: 0.4, g: 0.2, b: 0, a: 0.5} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &2264527173027742895 MonoBehaviour: m_ObjectHideFlags: 11 @@ -103,4 +105,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_ImpExplosionFire.mat b/Assets/VFX/Materials/FX_M_ImpExplosionFire.mat index 19d6e8aefa..fe54c50d10 100644 --- a/Assets/VFX/Materials/FX_M_ImpExplosionFire.mat +++ b/Assets/VFX/Materials/FX_M_ImpExplosionFire.mat @@ -23,6 +23,7 @@ Material: disabledShaderPasses: - SHADOWCASTER - DepthOnly + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -172,6 +173,7 @@ Material: - _TileSpeedMainTexture: {r: 1, g: 1, b: 0, a: 0} - _TintColor: {r: 1, g: 1, b: 1, a: 0.08235294} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &8601509238882469189 MonoBehaviour: m_ObjectHideFlags: 11 @@ -184,4 +186,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_MaskedPanner.mat b/Assets/VFX/Materials/FX_M_MaskedPanner.mat index 413488611f..ff66c958f4 100644 --- a/Assets/VFX/Materials/FX_M_MaskedPanner.mat +++ b/Assets/VFX/Materials/FX_M_MaskedPanner.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 --- !u!21 &2100000 Material: serializedVersion: 8 @@ -36,6 +36,7 @@ Material: disabledShaderPasses: - DepthOnly - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -191,3 +192,4 @@ Material: - _TileSpeedDissolveTexture: {r: 2, g: 0.5, b: 0, a: 1.5} - _TileSpeedMainTexture: {r: 1, g: 1, b: 0, a: 2.5} m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Assets/VFX/Materials/FX_M_MotionFlash.mat b/Assets/VFX/Materials/FX_M_MotionFlash.mat index ea3d628266..5c4a7a1989 100644 --- a/Assets/VFX/Materials/FX_M_MotionFlash.mat +++ b/Assets/VFX/Materials/FX_M_MotionFlash.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 --- !u!21 &2100000 Material: serializedVersion: 8 @@ -36,6 +36,7 @@ Material: disabledShaderPasses: - DepthOnly - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -213,3 +214,4 @@ Material: - _TileSpeedMainTexture: {r: 1, g: 1, b: 0, a: 2.5} - _Tint: {r: 1, g: 1, b: 1, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Assets/VFX/Materials/FX_M_Point.mat b/Assets/VFX/Materials/FX_M_Point.mat index 95b3977da5..7b4d126bcb 100644 --- a/Assets/VFX/Materials/FX_M_Point.mat +++ b/Assets/VFX/Materials/FX_M_Point.mat @@ -22,6 +22,7 @@ Material: RenderType: Transparent disabledShaderPasses: - DepthOnly + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -127,6 +128,7 @@ Material: - _MainTextureTilingOffset: {r: 1, g: 1, b: 0, a: 0} - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &8601509238882469189 MonoBehaviour: m_ObjectHideFlags: 11 @@ -139,4 +141,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_RotatingSniper_01.mat b/Assets/VFX/Materials/FX_M_RotatingSniper_01.mat index 4d359e32f4..3f93377bd1 100644 --- a/Assets/VFX/Materials/FX_M_RotatingSniper_01.mat +++ b/Assets/VFX/Materials/FX_M_RotatingSniper_01.mat @@ -23,6 +23,7 @@ Material: disabledShaderPasses: - DepthOnly - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -128,6 +129,7 @@ Material: - _MainTextureTilingOffset: {r: 1, g: 1, b: 0, a: 0} - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &8601509238882469189 MonoBehaviour: m_ObjectHideFlags: 11 @@ -140,4 +142,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_RotatingSniper_02.mat b/Assets/VFX/Materials/FX_M_RotatingSniper_02.mat index d47167d9c9..ae910bb995 100644 --- a/Assets/VFX/Materials/FX_M_RotatingSniper_02.mat +++ b/Assets/VFX/Materials/FX_M_RotatingSniper_02.mat @@ -23,6 +23,7 @@ Material: disabledShaderPasses: - DepthOnly - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -127,6 +128,7 @@ Material: - _MainTextureTilingOffset: {r: 1, g: 1, b: 0, a: 0} - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &8601509238882469189 MonoBehaviour: m_ObjectHideFlags: 11 @@ -139,4 +141,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_RotatingTexture.mat b/Assets/VFX/Materials/FX_M_RotatingTexture.mat index 43eaf1e842..bc16524a49 100644 --- a/Assets/VFX/Materials/FX_M_RotatingTexture.mat +++ b/Assets/VFX/Materials/FX_M_RotatingTexture.mat @@ -23,6 +23,7 @@ Material: disabledShaderPasses: - DepthOnly - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -128,6 +129,7 @@ Material: - _MainTextureTilingOffset: {r: 1, g: 1, b: 0, a: 0} - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &8601509238882469189 MonoBehaviour: m_ObjectHideFlags: 11 @@ -140,4 +142,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_ShapeSheet.mat b/Assets/VFX/Materials/FX_M_ShapeSheet.mat index 2f506743a5..b7db97eb53 100644 --- a/Assets/VFX/Materials/FX_M_ShapeSheet.mat +++ b/Assets/VFX/Materials/FX_M_ShapeSheet.mat @@ -23,6 +23,7 @@ Material: disabledShaderPasses: - DepthOnly - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -129,6 +130,7 @@ Material: - _MainTextureTilingOffset: {r: 1, g: 1, b: 0, a: 0} - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &8601509238882469189 MonoBehaviour: m_ObjectHideFlags: 11 @@ -141,4 +143,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_ShapeSheet_Additive.mat b/Assets/VFX/Materials/FX_M_ShapeSheet_Additive.mat index a4d5522d61..e0b6360df9 100644 --- a/Assets/VFX/Materials/FX_M_ShapeSheet_Additive.mat +++ b/Assets/VFX/Materials/FX_M_ShapeSheet_Additive.mat @@ -23,6 +23,7 @@ Material: disabledShaderPasses: - DepthOnly - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -129,6 +130,7 @@ Material: - _MainTextureTilingOffset: {r: 1, g: 1, b: 0, a: 0} - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &8601509238882469189 MonoBehaviour: m_ObjectHideFlags: 11 @@ -141,4 +143,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_Shield.mat b/Assets/VFX/Materials/FX_M_Shield.mat index d792dab26f..611f0fd4f4 100644 --- a/Assets/VFX/Materials/FX_M_Shield.mat +++ b/Assets/VFX/Materials/FX_M_Shield.mat @@ -30,6 +30,7 @@ Material: disabledShaderPasses: - DepthOnly - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -152,6 +153,7 @@ Material: - _Panner: {r: 0, g: 0.01, b: 0, a: 0} - _Tint: {r: 1.1509433, g: 1.5869627, b: 4, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &9095613563911183581 MonoBehaviour: m_ObjectHideFlags: 11 @@ -164,4 +166,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_Shockwave.mat b/Assets/VFX/Materials/FX_M_Shockwave.mat index 6e7575afac..f9042537bd 100644 --- a/Assets/VFX/Materials/FX_M_Shockwave.mat +++ b/Assets/VFX/Materials/FX_M_Shockwave.mat @@ -24,6 +24,7 @@ Material: disabledShaderPasses: - DepthOnly - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -138,6 +139,7 @@ Material: - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} - _MainTextureTilingOffset: {r: 1, g: 1, b: 0, a: 0} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &3071497466691043028 MonoBehaviour: m_ObjectHideFlags: 11 @@ -150,4 +152,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_SlashSimple.mat b/Assets/VFX/Materials/FX_M_SlashSimple.mat index fc55b1cfd4..8290ec2fed 100644 --- a/Assets/VFX/Materials/FX_M_SlashSimple.mat +++ b/Assets/VFX/Materials/FX_M_SlashSimple.mat @@ -20,7 +20,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -121,6 +122,7 @@ Material: - _Slash: {r: -0.3, g: 0.01, b: 0, a: 0} - _Tint: {r: 1, g: 1, b: 1, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &53157128346539290 MonoBehaviour: m_ObjectHideFlags: 11 @@ -133,4 +135,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_Slash_01.mat b/Assets/VFX/Materials/FX_M_Slash_01.mat index f87523891a..c6f2a4d225 100644 --- a/Assets/VFX/Materials/FX_M_Slash_01.mat +++ b/Assets/VFX/Materials/FX_M_Slash_01.mat @@ -31,7 +31,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -94,6 +95,7 @@ Material: - _NoiseTileSpeed: {r: 0.5, g: 1, b: 2, a: 1} - _NoiseTileSpeed_1: {r: 1, g: 1, b: 0, a: 0} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &4323903490161272775 MonoBehaviour: m_ObjectHideFlags: 11 @@ -106,4 +108,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_Slash_02.mat b/Assets/VFX/Materials/FX_M_Slash_02.mat index 1f5d388869..66e8f03885 100644 --- a/Assets/VFX/Materials/FX_M_Slash_02.mat +++ b/Assets/VFX/Materials/FX_M_Slash_02.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 --- !u!21 &2100000 Material: serializedVersion: 8 @@ -31,7 +31,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -93,3 +94,4 @@ Material: - _Color: {r: 4.5895233, g: 4.5895233, b: 4.5895233, a: 0} - _NoiseTileSpeed: {r: 0.5, g: 2, b: 3, a: 0} m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Assets/VFX/Materials/FX_M_Smoke.mat b/Assets/VFX/Materials/FX_M_Smoke.mat index 6844585821..1df80b3c01 100644 --- a/Assets/VFX/Materials/FX_M_Smoke.mat +++ b/Assets/VFX/Materials/FX_M_Smoke.mat @@ -23,6 +23,7 @@ Material: disabledShaderPasses: - DepthOnly - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -130,6 +131,7 @@ Material: - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} - _TintColor: {r: 1, g: 1, b: 1, a: 0.08235294} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &8601509238882469189 MonoBehaviour: m_ObjectHideFlags: 11 @@ -142,4 +144,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_SmokeDissolve.mat b/Assets/VFX/Materials/FX_M_SmokeDissolve.mat index 4fc99dc776..ceb16786d6 100644 --- a/Assets/VFX/Materials/FX_M_SmokeDissolve.mat +++ b/Assets/VFX/Materials/FX_M_SmokeDissolve.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 --- !u!21 &2100000 Material: serializedVersion: 8 @@ -37,6 +37,7 @@ Material: - ALWAYS - SHADOWCASTER - DepthOnly + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -180,3 +181,4 @@ Material: - _SoftParticleFadeParams: {r: 0, g: 1, b: 0, a: 0} - _Tint: {r: 1, g: 1, b: 1, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Assets/VFX/Materials/FX_M_SmokeDissolveMultip.mat b/Assets/VFX/Materials/FX_M_SmokeDissolveMultip.mat index 94d8a5d42b..3e5b9bf603 100644 --- a/Assets/VFX/Materials/FX_M_SmokeDissolveMultip.mat +++ b/Assets/VFX/Materials/FX_M_SmokeDissolveMultip.mat @@ -25,6 +25,7 @@ Material: disabledShaderPasses: - DepthOnly - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -171,6 +172,7 @@ Material: - _Panner: {r: 0, g: 0, b: 0, a: 0} - _Tint: {r: 2, g: 2, b: 2, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &4102017799771018984 MonoBehaviour: m_ObjectHideFlags: 11 @@ -183,4 +185,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_SmokeDissolve_Additive.mat b/Assets/VFX/Materials/FX_M_SmokeDissolve_Additive.mat index a444c6a893..359b953d64 100644 --- a/Assets/VFX/Materials/FX_M_SmokeDissolve_Additive.mat +++ b/Assets/VFX/Materials/FX_M_SmokeDissolve_Additive.mat @@ -25,6 +25,7 @@ Material: disabledShaderPasses: - DepthOnly - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -190,6 +191,7 @@ Material: - _Panner: {r: 0.5, g: 0, b: 0, a: 0} - _Tint: {r: 0.20803954, g: 0.20803954, b: 0.20803954, a: 0.56078434} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &6153093471787320360 MonoBehaviour: m_ObjectHideFlags: 11 @@ -202,4 +204,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_Snowflake_Additive.mat b/Assets/VFX/Materials/FX_M_Snowflake_Additive.mat index f4176d5f23..42cb83229a 100644 --- a/Assets/VFX/Materials/FX_M_Snowflake_Additive.mat +++ b/Assets/VFX/Materials/FX_M_Snowflake_Additive.mat @@ -24,6 +24,7 @@ Material: disabledShaderPasses: - SHADOWCASTER - DepthOnly + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -128,6 +129,7 @@ Material: - _MainTextureTilingOffset: {r: 1, g: 1, b: 0, a: 0} - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &8601509238882469189 MonoBehaviour: m_ObjectHideFlags: 11 @@ -140,4 +142,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_SoftParticle_Smoke.mat b/Assets/VFX/Materials/FX_M_SoftParticle_Smoke.mat index 098b90b8cf..d88bb3596a 100644 --- a/Assets/VFX/Materials/FX_M_SoftParticle_Smoke.mat +++ b/Assets/VFX/Materials/FX_M_SoftParticle_Smoke.mat @@ -23,6 +23,7 @@ Material: disabledShaderPasses: - DepthOnly - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -130,6 +131,7 @@ Material: - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} - _TintColor: {r: 1, g: 1, b: 1, a: 0.08235294} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &8601509238882469189 MonoBehaviour: m_ObjectHideFlags: 11 @@ -142,4 +144,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_Sparks.mat b/Assets/VFX/Materials/FX_M_Sparks.mat index 4d1ddadeda..0d493f712f 100644 --- a/Assets/VFX/Materials/FX_M_Sparks.mat +++ b/Assets/VFX/Materials/FX_M_Sparks.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 --- !u!21 &2100000 Material: serializedVersion: 8 @@ -37,6 +37,7 @@ Material: disabledShaderPasses: - DepthOnly - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -147,3 +148,4 @@ Material: - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} - _MainTextureTilingOffset: {r: 1, g: 1, b: 0, a: 0} m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Assets/VFX/Materials/FX_M_SpawnDoor.mat b/Assets/VFX/Materials/FX_M_SpawnDoor.mat index 07f4f2f3da..9f8c5bc70b 100644 --- a/Assets/VFX/Materials/FX_M_SpawnDoor.mat +++ b/Assets/VFX/Materials/FX_M_SpawnDoor.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 --- !u!21 &2100000 Material: serializedVersion: 8 @@ -37,6 +37,7 @@ Material: - ALWAYS - SHADOWCASTER - DepthOnly + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -235,3 +236,4 @@ Material: - _SpecColor: {r: 1, g: 1, b: 1, a: 1} - _TintColor: {r: 0.5, g: 0.5, b: 0.5, a: 0.5} m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Assets/VFX/Materials/FX_M_Star_01.mat b/Assets/VFX/Materials/FX_M_Star_01.mat index ea10669133..4becda9894 100644 --- a/Assets/VFX/Materials/FX_M_Star_01.mat +++ b/Assets/VFX/Materials/FX_M_Star_01.mat @@ -25,6 +25,7 @@ Material: disabledShaderPasses: - SHADOWCASTER - DepthOnly + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -129,6 +130,7 @@ Material: - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} - _TintColor: {r: 1, g: 1, b: 1, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &8601509238882469189 MonoBehaviour: m_ObjectHideFlags: 11 @@ -141,4 +143,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_Star_02.mat b/Assets/VFX/Materials/FX_M_Star_02.mat index 6554c8055e..1b455aa845 100644 --- a/Assets/VFX/Materials/FX_M_Star_02.mat +++ b/Assets/VFX/Materials/FX_M_Star_02.mat @@ -38,6 +38,7 @@ Material: disabledShaderPasses: - DepthOnly - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -147,6 +148,7 @@ Material: - _Panner: {r: 0, g: 0, b: 0, a: 0} - _Tint: {r: 1, g: 1, b: 1, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &1797981942091286106 MonoBehaviour: m_ObjectHideFlags: 11 @@ -159,4 +161,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_Star_03.mat b/Assets/VFX/Materials/FX_M_Star_03.mat index 88a03349fa..cafa7bbf5f 100644 --- a/Assets/VFX/Materials/FX_M_Star_03.mat +++ b/Assets/VFX/Materials/FX_M_Star_03.mat @@ -36,6 +36,7 @@ Material: disabledShaderPasses: - DepthOnly - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -149,6 +150,7 @@ Material: - _Panner: {r: 0, g: 0, b: 0, a: 0} - _Tint: {r: 1, g: 1, b: 1, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &1797981942091286106 MonoBehaviour: m_ObjectHideFlags: 11 @@ -161,4 +163,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_StylizeSmoke_01.mat b/Assets/VFX/Materials/FX_M_StylizeSmoke_01.mat index 4182d75ca8..33cf1e6b63 100644 --- a/Assets/VFX/Materials/FX_M_StylizeSmoke_01.mat +++ b/Assets/VFX/Materials/FX_M_StylizeSmoke_01.mat @@ -23,6 +23,7 @@ Material: disabledShaderPasses: - DepthOnly - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -169,6 +170,7 @@ Material: - _TileSpeedDissolveTexture: {r: 1, g: 1, b: 0.2, a: 0} - _TileSpeedMainTexture: {r: 1, g: 1, b: 0, a: 0} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &5901454594436781990 MonoBehaviour: m_ObjectHideFlags: 11 @@ -181,4 +183,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_StylizeSmoke_02.mat b/Assets/VFX/Materials/FX_M_StylizeSmoke_02.mat index d3a90004cc..5702c6ad48 100644 --- a/Assets/VFX/Materials/FX_M_StylizeSmoke_02.mat +++ b/Assets/VFX/Materials/FX_M_StylizeSmoke_02.mat @@ -36,6 +36,7 @@ Material: disabledShaderPasses: - DepthOnly - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -182,6 +183,7 @@ Material: - _TileSpeedDissolveTexture: {r: 0.5, g: 1, b: 0.2, a: 0} - _TileSpeedMainTexture: {r: 1, g: 1, b: 0, a: 0} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &4749499643331255210 MonoBehaviour: m_ObjectHideFlags: 11 @@ -194,4 +196,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_StylizeSmoke_Falldown.mat b/Assets/VFX/Materials/FX_M_StylizeSmoke_Falldown.mat index a6dfc8d503..58b05784e7 100644 --- a/Assets/VFX/Materials/FX_M_StylizeSmoke_Falldown.mat +++ b/Assets/VFX/Materials/FX_M_StylizeSmoke_Falldown.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 --- !u!21 &2100000 Material: serializedVersion: 8 @@ -36,6 +36,7 @@ Material: disabledShaderPasses: - DepthOnly - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -179,3 +180,4 @@ Material: - _TileSpeedDissolveTexture: {r: 1, g: 1, b: 0.2, a: 0} - _TileSpeedMainTexture: {r: 1, g: 1, b: 0, a: 0} m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Assets/VFX/Materials/FX_M_Swirls.mat b/Assets/VFX/Materials/FX_M_Swirls.mat index d96a427251..43a08f65da 100644 --- a/Assets/VFX/Materials/FX_M_Swirls.mat +++ b/Assets/VFX/Materials/FX_M_Swirls.mat @@ -23,6 +23,7 @@ Material: disabledShaderPasses: - SHADOWCASTER - DepthOnly + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -141,6 +142,7 @@ Material: - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} - _TintColor: {r: 1, g: 1, b: 1, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &8601509238882469189 MonoBehaviour: m_ObjectHideFlags: 11 @@ -153,4 +155,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_TargetReticule_Friendly.mat b/Assets/VFX/Materials/FX_M_TargetReticule_Friendly.mat index c4a87a1804..cdd40a7f5b 100644 --- a/Assets/VFX/Materials/FX_M_TargetReticule_Friendly.mat +++ b/Assets/VFX/Materials/FX_M_TargetReticule_Friendly.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 --- !u!21 &2100000 Material: serializedVersion: 8 @@ -37,6 +37,7 @@ Material: - ALWAYS - SHADOWCASTER - DepthOnly + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -154,3 +155,4 @@ Material: - _MainTextureTilingOffset: {r: 1, g: 1, b: 0, a: 0} - _SoftParticleFadeParams: {r: 0, g: 0, b: 0, a: 0} m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Assets/VFX/Materials/FX_M_TargetReticule_Hostile.mat b/Assets/VFX/Materials/FX_M_TargetReticule_Hostile.mat index 1d7313787b..51f4ea4b55 100644 --- a/Assets/VFX/Materials/FX_M_TargetReticule_Hostile.mat +++ b/Assets/VFX/Materials/FX_M_TargetReticule_Hostile.mat @@ -24,6 +24,7 @@ Material: - ALWAYS - SHADOWCASTER - DepthOnly + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -141,6 +142,7 @@ Material: - _MainTextureTilingOffset: {r: 1, g: 1, b: 0, a: 0} - _SoftParticleFadeParams: {r: 0, g: 0, b: 0, a: 0} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &3149301631376533502 MonoBehaviour: m_ObjectHideFlags: 11 @@ -153,4 +155,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_TargetingSphere_InRange.mat b/Assets/VFX/Materials/FX_M_TargetingSphere_InRange.mat index 6e9e55d21d..838ec51e0c 100644 --- a/Assets/VFX/Materials/FX_M_TargetingSphere_InRange.mat +++ b/Assets/VFX/Materials/FX_M_TargetingSphere_InRange.mat @@ -24,6 +24,7 @@ Material: - ALWAYS - SHADOWCASTER - DepthOnly + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -169,6 +170,7 @@ Material: - _NotmalTileSpeed: {r: 0.05, g: 0.02, b: 0, a: 0.5} - _SoftParticleFadeParams: {r: 0, g: 0, b: 0, a: 0} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &2737022605668316232 MonoBehaviour: m_ObjectHideFlags: 11 @@ -181,4 +183,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_TargetingSphere_OutOfRange.mat b/Assets/VFX/Materials/FX_M_TargetingSphere_OutOfRange.mat index 9433e12dfe..aaa67510b4 100644 --- a/Assets/VFX/Materials/FX_M_TargetingSphere_OutOfRange.mat +++ b/Assets/VFX/Materials/FX_M_TargetingSphere_OutOfRange.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 --- !u!21 &2100000 Material: serializedVersion: 8 @@ -36,6 +36,7 @@ Material: disabledShaderPasses: - SHADOWCASTER - DepthOnly + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -147,3 +148,4 @@ Material: - _NotmalTileSpeed: {r: 0.05, g: 0.02, b: 0, a: 0.5} - _SoftParticleFadeParams: {r: 0, g: 0, b: 0, a: 0} m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Assets/VFX/Materials/FX_M_TilingTexture_01.mat b/Assets/VFX/Materials/FX_M_TilingTexture_01.mat index 920bd43285..f273019fb1 100644 --- a/Assets/VFX/Materials/FX_M_TilingTexture_01.mat +++ b/Assets/VFX/Materials/FX_M_TilingTexture_01.mat @@ -18,7 +18,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -123,6 +124,7 @@ Material: - _Maintextilespeed: {r: 0.5, g: 1, b: -2, a: 0} - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &7164378478731420604 MonoBehaviour: m_ObjectHideFlags: 11 @@ -135,4 +137,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_TilingTexture_02.mat b/Assets/VFX/Materials/FX_M_TilingTexture_02.mat index 79ac33f5ca..75b7e734bd 100644 --- a/Assets/VFX/Materials/FX_M_TilingTexture_02.mat +++ b/Assets/VFX/Materials/FX_M_TilingTexture_02.mat @@ -18,7 +18,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -123,6 +124,7 @@ Material: - _Maintextilespeed: {r: 0.6, g: 1, b: -2, a: 0} - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &7164378478731420604 MonoBehaviour: m_ObjectHideFlags: 11 @@ -135,4 +137,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_TilingTexture_03.mat b/Assets/VFX/Materials/FX_M_TilingTexture_03.mat index c035796182..ae156bff7b 100644 --- a/Assets/VFX/Materials/FX_M_TilingTexture_03.mat +++ b/Assets/VFX/Materials/FX_M_TilingTexture_03.mat @@ -18,7 +18,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -123,6 +124,7 @@ Material: - _Maintextilespeed: {r: 1, g: 1, b: -3, a: 0} - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &7164378478731420604 MonoBehaviour: m_ObjectHideFlags: 11 @@ -135,4 +137,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_TilingTexture_04.mat b/Assets/VFX/Materials/FX_M_TilingTexture_04.mat index 91b878b03d..af164e71ff 100644 --- a/Assets/VFX/Materials/FX_M_TilingTexture_04.mat +++ b/Assets/VFX/Materials/FX_M_TilingTexture_04.mat @@ -20,7 +20,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -125,6 +126,7 @@ Material: - _Maintextilespeed: {r: 1, g: 1, b: 3, a: 0} - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &7164378478731420604 MonoBehaviour: m_ObjectHideFlags: 11 @@ -137,4 +139,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_TilingTexture_05.mat b/Assets/VFX/Materials/FX_M_TilingTexture_05.mat index 1ff4653682..06dae1ffde 100644 --- a/Assets/VFX/Materials/FX_M_TilingTexture_05.mat +++ b/Assets/VFX/Materials/FX_M_TilingTexture_05.mat @@ -21,7 +21,8 @@ Material: m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} - disabledShaderPasses: [] + disabledShaderPasses: + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -126,6 +127,7 @@ Material: - _Maintextilespeed: {r: 0.6, g: 1, b: -3, a: 0} - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &7164378478731420604 MonoBehaviour: m_ObjectHideFlags: 11 @@ -138,4 +140,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_TorchFire.mat b/Assets/VFX/Materials/FX_M_TorchFire.mat index d4d80be6d9..35fb591a70 100644 --- a/Assets/VFX/Materials/FX_M_TorchFire.mat +++ b/Assets/VFX/Materials/FX_M_TorchFire.mat @@ -23,6 +23,7 @@ Material: disabledShaderPasses: - DepthOnly - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -200,6 +201,7 @@ Material: - _TileSpeedMainTexture: {r: 1, g: 1, b: 0, a: 0} - _Tint: {r: 2.1185474, g: 2.1185474, b: 2.1185474, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &1675669253379797283 MonoBehaviour: m_ObjectHideFlags: 11 @@ -212,4 +214,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_Trail_01.mat b/Assets/VFX/Materials/FX_M_Trail_01.mat index 68b833f28d..d4a83cb454 100644 --- a/Assets/VFX/Materials/FX_M_Trail_01.mat +++ b/Assets/VFX/Materials/FX_M_Trail_01.mat @@ -23,6 +23,7 @@ Material: disabledShaderPasses: - DepthOnly - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -128,6 +129,7 @@ Material: - _MainTextureTilingOffset: {r: 1, g: 1, b: 0, a: 0} - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &8601509238882469189 MonoBehaviour: m_ObjectHideFlags: 11 @@ -140,4 +142,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_Trail_02.mat b/Assets/VFX/Materials/FX_M_Trail_02.mat index 0699541770..9a24dbdfbe 100644 --- a/Assets/VFX/Materials/FX_M_Trail_02.mat +++ b/Assets/VFX/Materials/FX_M_Trail_02.mat @@ -23,6 +23,7 @@ Material: disabledShaderPasses: - DepthOnly - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -128,6 +129,7 @@ Material: - _MainTextureTilingOffset: {r: 1, g: 1, b: 0, a: 0} - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &8601509238882469189 MonoBehaviour: m_ObjectHideFlags: 11 @@ -140,4 +142,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_Trail_03.mat b/Assets/VFX/Materials/FX_M_Trail_03.mat index 38195dc224..32ed777b41 100644 --- a/Assets/VFX/Materials/FX_M_Trail_03.mat +++ b/Assets/VFX/Materials/FX_M_Trail_03.mat @@ -23,6 +23,7 @@ Material: disabledShaderPasses: - DepthOnly - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -128,6 +129,7 @@ Material: - _MainTextureTilingOffset: {r: 1, g: 1, b: 0, a: 0} - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &8601509238882469189 MonoBehaviour: m_ObjectHideFlags: 11 @@ -140,4 +142,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_Wave_01.mat b/Assets/VFX/Materials/FX_M_Wave_01.mat index d7e96d6acb..00c63df0c4 100644 --- a/Assets/VFX/Materials/FX_M_Wave_01.mat +++ b/Assets/VFX/Materials/FX_M_Wave_01.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 --- !u!21 &2100000 Material: serializedVersion: 8 @@ -36,6 +36,7 @@ Material: disabledShaderPasses: - DepthOnly - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -138,3 +139,4 @@ Material: - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} - _MainTextureTilingOffset: {r: 1, g: 1, b: 0, a: 0} m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Assets/VFX/Materials/FX_M_Wave_02.mat b/Assets/VFX/Materials/FX_M_Wave_02.mat index 73b00c766d..8a8398d124 100644 --- a/Assets/VFX/Materials/FX_M_Wave_02.mat +++ b/Assets/VFX/Materials/FX_M_Wave_02.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 --- !u!21 &2100000 Material: serializedVersion: 8 @@ -36,6 +36,7 @@ Material: disabledShaderPasses: - DepthOnly - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -128,3 +129,4 @@ Material: - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} - _MainTextureTilingOffset: {r: 1, g: 1, b: 0, a: 0} m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Assets/VFX/Materials/FX_M_Wave_02_TossedAttack_Display.mat b/Assets/VFX/Materials/FX_M_Wave_02_TossedAttack_Display.mat index 623f861410..daafa11b4a 100644 --- a/Assets/VFX/Materials/FX_M_Wave_02_TossedAttack_Display.mat +++ b/Assets/VFX/Materials/FX_M_Wave_02_TossedAttack_Display.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 --- !u!21 &2100000 Material: serializedVersion: 8 @@ -36,6 +36,7 @@ Material: disabledShaderPasses: - DepthOnly - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -128,3 +129,4 @@ Material: - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} - _MainTextureTilingOffset: {r: 1, g: 1, b: 0, a: 0} m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Assets/VFX/Materials/FX_M_Wave_03.mat b/Assets/VFX/Materials/FX_M_Wave_03.mat index c4d8d7965b..5ac71cbc8e 100644 --- a/Assets/VFX/Materials/FX_M_Wave_03.mat +++ b/Assets/VFX/Materials/FX_M_Wave_03.mat @@ -23,6 +23,7 @@ Material: disabledShaderPasses: - DepthOnly - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -144,6 +145,7 @@ Material: - _Panner: {r: 0, g: 0, b: 0, a: 0} - _Tint: {r: 1, g: 1, b: 1, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &4289071827490950352 MonoBehaviour: m_ObjectHideFlags: 11 @@ -156,4 +158,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_Wave_04.mat b/Assets/VFX/Materials/FX_M_Wave_04.mat index d05304f32c..cc295b05fe 100644 --- a/Assets/VFX/Materials/FX_M_Wave_04.mat +++ b/Assets/VFX/Materials/FX_M_Wave_04.mat @@ -23,6 +23,7 @@ Material: disabledShaderPasses: - DepthOnly - SHADOWCASTER + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -144,6 +145,7 @@ Material: - _Panner: {r: 0, g: 0, b: 0, a: 0} - _Tint: {r: 1, g: 1, b: 1, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &4289071827490950352 MonoBehaviour: m_ObjectHideFlags: 11 @@ -156,4 +158,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 diff --git a/Assets/VFX/Materials/FX_M_WigglyRing.mat b/Assets/VFX/Materials/FX_M_WigglyRing.mat index 7e78aeccd6..08940cb96e 100644 --- a/Assets/VFX/Materials/FX_M_WigglyRing.mat +++ b/Assets/VFX/Materials/FX_M_WigglyRing.mat @@ -23,6 +23,7 @@ Material: disabledShaderPasses: - SHADOWCASTER - DepthOnly + - MOTIONVECTORS m_LockedProperties: m_SavedProperties: serializedVersion: 3 @@ -141,6 +142,7 @@ Material: - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} - _TintColor: {r: 1, g: 1, b: 1, a: 1} m_BuildTextureStacks: [] + m_AllowLocking: 1 --- !u!114 &8601509238882469189 MonoBehaviour: m_ObjectHideFlags: 11 @@ -153,4 +155,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} m_Name: m_EditorClassIdentifier: - version: 7 + version: 9 From 9e2d288d896b826bb15c04a254598c8086c7657a Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Thu, 31 Oct 2024 10:59:03 +0100 Subject: [PATCH 17/57] feat: upgrade project version to 6000.0.25f1 --- ProjectSettings/ProjectVersion.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ProjectSettings/ProjectVersion.txt b/ProjectSettings/ProjectVersion.txt index 29589483d0..4f951fb4a2 100644 --- a/ProjectSettings/ProjectVersion.txt +++ b/ProjectSettings/ProjectVersion.txt @@ -1,2 +1,2 @@ -m_EditorVersion: 6000.0.24f1 -m_EditorVersionWithRevision: 6000.0.24f1 (11fa355cd605) +m_EditorVersion: 6000.0.25f1 +m_EditorVersionWithRevision: 6000.0.25f1 (4859ab7b5a49) From fcae286f37dacda8896827e39eb57ff7173dfb04 Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Thu, 31 Oct 2024 11:11:09 +0100 Subject: [PATCH 18/57] feat: replace ParallelSync with Multiplayer Play Mode --- Packages/manifest.json | 2 +- Packages/packages-lock.json | 16 +++++++++------- ProjectSettings/VirtualProjectsConfig.json | 4 ++++ 3 files changed, 14 insertions(+), 8 deletions(-) create mode 100644 ProjectSettings/VirtualProjectsConfig.json diff --git a/Packages/manifest.json b/Packages/manifest.json index 27fa063d1f..2f5b436aed 100644 --- a/Packages/manifest.json +++ b/Packages/manifest.json @@ -11,6 +11,7 @@ "com.unity.learn.iet-framework.authoring": "1.2.2", "com.unity.memoryprofiler": "1.1.1", "com.unity.multiplayer.center": "1.0.0", + "com.unity.multiplayer.playmode": "1.3.1", "com.unity.multiplayer.tools": "2.2.1", "com.unity.netcode.gameobjects": "1.11.0", "com.unity.performance.profile-analyzer": "1.2.2", @@ -24,7 +25,6 @@ "com.unity.toolchain.macos-x86_64-linux-x86_64": "2.0.9", "com.unity.transport": "2.3.0", "com.unity.ugui": "2.0.0", - "com.veriorpies.parrelsync": "https://github.com/VeriorPies/ParrelSync.git?path=/ParrelSync#bb3d5067e49e403d8b8ba15c036d313b4dd2c696", "jp.hadashikick.vcontainer": "1.11.0", "com.unity.modules.accessibility": "1.0.0", "com.unity.modules.ai": "1.0.0", diff --git a/Packages/packages-lock.json b/Packages/packages-lock.json index cd91bcfe8a..96a1f5d2f1 100644 --- a/Packages/packages-lock.json +++ b/Packages/packages-lock.json @@ -135,6 +135,15 @@ "com.unity.modules.uielements": "1.0.0" } }, + "com.unity.multiplayer.playmode": { + "version": "1.3.1", + "depth": 0, + "source": "registry", + "dependencies": { + "com.unity.nuget.newtonsoft-json": "2.0.2" + }, + "url": "https://packages.unity.com" + }, "com.unity.multiplayer.samples.coop": { "version": "file:com.unity.multiplayer.samples.coop", "depth": 0, @@ -435,13 +444,6 @@ "com.unity.modules.imgui": "1.0.0" } }, - "com.veriorpies.parrelsync": { - "version": "https://github.com/VeriorPies/ParrelSync.git?path=/ParrelSync#bb3d5067e49e403d8b8ba15c036d313b4dd2c696", - "depth": 0, - "source": "git", - "dependencies": {}, - "hash": "bb3d5067e49e403d8b8ba15c036d313b4dd2c696" - }, "jp.hadashikick.vcontainer": { "version": "1.11.0", "depth": 0, diff --git a/ProjectSettings/VirtualProjectsConfig.json b/ProjectSettings/VirtualProjectsConfig.json new file mode 100644 index 0000000000..b20c24ea60 --- /dev/null +++ b/ProjectSettings/VirtualProjectsConfig.json @@ -0,0 +1,4 @@ +{ + "PlayerTags": [], + "version": "1.3.1" +} \ No newline at end of file From 47ededf2d538cd158b5015336acf59deecfcda43 Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Tue, 5 Nov 2024 10:14:19 +0100 Subject: [PATCH 19/57] fix: failing test --- Assets/Tests/Runtime/ConnectionManagementTests.cs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Assets/Tests/Runtime/ConnectionManagementTests.cs b/Assets/Tests/Runtime/ConnectionManagementTests.cs index 91d05649ba..536e573f38 100644 --- a/Assets/Tests/Runtime/ConnectionManagementTests.cs +++ b/Assets/Tests/Runtime/ConnectionManagementTests.cs @@ -194,11 +194,12 @@ void AssertAllClientsAreConnected() } } - [Test] - public void StartHost_Success() + [UnityTest] + public IEnumerator StartHost_Success() { StartHost(); AssertHostIsListening(); + yield return null; } [UnityTest] From 1b0e3878f5de9915604158fc75e845f7ae8acc9e Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Tue, 5 Nov 2024 10:28:15 +0100 Subject: [PATCH 20/57] feat: update Netcode for GameObjects to version 2.0.0 --- Packages/manifest.json | 2 +- Packages/packages-lock.json | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Packages/manifest.json b/Packages/manifest.json index 2f5b436aed..f8dc24acdf 100644 --- a/Packages/manifest.json +++ b/Packages/manifest.json @@ -13,7 +13,7 @@ "com.unity.multiplayer.center": "1.0.0", "com.unity.multiplayer.playmode": "1.3.1", "com.unity.multiplayer.tools": "2.2.1", - "com.unity.netcode.gameobjects": "1.11.0", + "com.unity.netcode.gameobjects": "2.0.0", "com.unity.performance.profile-analyzer": "1.2.2", "com.unity.postprocessing": "3.4.0", "com.unity.render-pipelines.universal": "17.0.3", diff --git a/Packages/packages-lock.json b/Packages/packages-lock.json index 96a1f5d2f1..ed96a97b07 100644 --- a/Packages/packages-lock.json +++ b/Packages/packages-lock.json @@ -171,12 +171,12 @@ "url": "https://packages.unity.com" }, "com.unity.netcode.gameobjects": { - "version": "1.11.0", + "version": "2.0.0", "depth": 0, "source": "registry", "dependencies": { - "com.unity.transport": "1.4.0", - "com.unity.nuget.mono-cecil": "1.10.1" + "com.unity.transport": "2.3.0", + "com.unity.nuget.mono-cecil": "1.11.4" }, "url": "https://packages.unity.com" }, From 11b00cd7ccbb8ae63f5007cd1d808088aaeb72be Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Tue, 5 Nov 2024 10:57:29 +0100 Subject: [PATCH 21/57] chore: update README --- README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index ee6720369b..3be3d00ee4 100644 --- a/README.md +++ b/README.md @@ -5,8 +5,8 @@ ### Made with and Including Utilities for Netcode for GameObjects
-[![UnityVersion](https://img.shields.io/badge/Unity%20Version:-2022.3%20LTS-57b9d3.svg?logo=unity&color=2196F3)](https://unity.com/releases/editor/whats-new/2022.3.0) -[![NetcodeVersion](https://img.shields.io/badge/Netcode%20Version:-1.8.1-57b9d3.svg?logo=unity&color=2196F3)](https://github.com/Unity-Technologies/com.unity.netcode.gameobjects/releases/tag/ngo%2F1.8.1) +[![UnityVersion](https://img.shields.io/badge/Unity%20Version:-6000.0.25f1%20LTS-57b9d3.svg?logo=unity&color=2196F3)](https://unity.com/releases/editor/whats-new/6000.0.25) +[![NetcodeVersion](https://img.shields.io/badge/Netcode%20Version:-2.0.0-57b9d3.svg?logo=unity&color=2196F3)](https://github.com/Unity-Technologies/com.unity.netcode.gameobjects/releases/tag/ngo%2F1.8.1) [![LatestRelease](https://img.shields.io/badge/Latest%20Github%20Release:-v2.5.0-57b9d3.svg?logo=github&color=brightgreen)](https://github.com/Unity-Technologies/com.unity.multiplayer.samples.coop/releases/tag/v2.5.0)

@@ -86,7 +86,7 @@ For more information on the art of Boss Room, see [ART_NOTES.md](Documentation/A ## Requirements -BossRoom is compatible with the latest Unity Long Term Support (LTS) editor version, currently [2022 LTS](https://unity.com/releases/editor/qa/lts-releases?version=2022.3). Please include standalone support for Windows/Mac in your installation. +BossRoom is compatible with the latest Unity Long Term Support (LTS) editor version, currently [6000.0 LTS](https://unity.com/releases/editor/archive). Please include standalone support for Windows/Mac in your installation. **PLEASE NOTE:** You will also need Netcode for Game Objects to use these samples. See the [Installation Documentation](https://docs-multiplayer.unity3d.com/netcode/current/installation) to prepare your environment. You can also complete the [Get Started With NGO](https://docs-multiplayer.unity3d.com/netcode/current/tutorials/get-started-ngo) tutorial to familiarize yourself with Netcode For Game Objects.

@@ -112,7 +112,7 @@ Boss Room uses Git Large Files Support (LFS) to handle all large assets required ## Opening the project for the first time Once you have downloaded the project, follow the steps below to get up and running: - - Check that you have installed the most recent [LTS editor version](https://unity.com/releases/2021-lts). + - Check that you have installed the most recent [LTS editor version](https://unity.com/releases/unity-6-releases). - Include standalone support for Windows/Mac in your installation. - Add the project to the _Unity Hub_ by clicking on the **Add** button and pointing it to the root folder of the downloaded project. - __Please note :__ the first time you open the project Unity will import all assets, which will take longer than usual. From 901872296a1d8144323ff240b67fdc929ac69347 Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Tue, 5 Nov 2024 11:10:34 +0100 Subject: [PATCH 22/57] chore: changelog --- CHANGELOG.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5b582e8855..0c4638b99a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,6 +11,11 @@ Additional documentation and release notes are available at [Multiplayer Documen * Added a welcome dialog to guide users on their first time experience * Added a Table of Contents with helpful resources, that can be accessed from the `Tutorials > Show Tutorials` menu +### Changed +* Upgraded Boss Room to Netcode for GameObjects v2.0.0 +* Upgraded editor version to 6000.0.25f1 + + ## [2.5.0] - 2024-04-18 ### Changed From d85cd2cc99fcb53fff531064fabf2b86412caeee Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Tue, 5 Nov 2024 11:44:39 +0100 Subject: [PATCH 23/57] chore: add MPPM to changelog --- CHANGELOG.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 0c4638b99a..4a0543e25f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,11 +10,15 @@ Additional documentation and release notes are available at [Multiplayer Documen ### Added * Added a welcome dialog to guide users on their first time experience * Added a Table of Contents with helpful resources, that can be accessed from the `Tutorials > Show Tutorials` menu +* Added the Multiplayer Play Mode package v1.3.1 to the project ### Changed * Upgraded Boss Room to Netcode for GameObjects v2.0.0 * Upgraded editor version to 6000.0.25f1 +### Cleanup +* Removed ParallelSync from the project + ## [2.5.0] - 2024-04-18 From b050a7e22c22516ec9646ff357cef4141fa33791 Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Tue, 5 Nov 2024 11:57:10 +0100 Subject: [PATCH 24/57] test: add yamato test for U6 --- .yamato/project.metafile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.yamato/project.metafile b/.yamato/project.metafile index 708a087a7e..db277deaa9 100644 --- a/.yamato/project.metafile +++ b/.yamato/project.metafile @@ -30,4 +30,5 @@ projects: - name: com.unity.multiplayer.samples.coop path: Packages/com.unity.multiplayer.samples.coop test_editors: - - 2022.3 + - 2022.3 + - 6000.0 From d1e1a32d7a233fc47dadb1ecc6f8d41d3a873090 Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Tue, 5 Nov 2024 13:11:34 +0100 Subject: [PATCH 25/57] fix: only test Unity 6 --- .yamato/project.metafile | 1 - 1 file changed, 1 deletion(-) diff --git a/.yamato/project.metafile b/.yamato/project.metafile index db277deaa9..a546e1145a 100644 --- a/.yamato/project.metafile +++ b/.yamato/project.metafile @@ -30,5 +30,4 @@ projects: - name: com.unity.multiplayer.samples.coop path: Packages/com.unity.multiplayer.samples.coop test_editors: - - 2022.3 - 6000.0 From f78fcd2b03b9b2330e0ef70032c6a6bd09913717 Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Tue, 5 Nov 2024 13:26:24 +0100 Subject: [PATCH 26/57] fix: update ubuntu version for yamato --- .yamato/project-standards.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.yamato/project-standards.yml b/.yamato/project-standards.yml index 32f7dd665c..0511ca1944 100644 --- a/.yamato/project-standards.yml +++ b/.yamato/project-standards.yml @@ -4,7 +4,7 @@ standards_{{ projects.first.name }}: name: Standards Check {{ projects.first.name }} agent: type: Unity::VM - image: package-ci/ubuntu-18.04:v4 + image: package-ci/ubuntu-22.04:v4 flavor: b1.large commands: - dotnet --version From 3ac4085df18b4faded592510a226cbfbb6235346 Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Tue, 5 Nov 2024 14:36:05 +0100 Subject: [PATCH 27/57] fix: update iOS image --- .yamato/mobile-build-and-run.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.yamato/mobile-build-and-run.yml b/.yamato/mobile-build-and-run.yml index b271e485d5..ecce4c98bc 100644 --- a/.yamato/mobile-build-and-run.yml +++ b/.yamato/mobile-build-and-run.yml @@ -9,7 +9,7 @@ Build_Player_With_Tests_iOS_{{ project.name }}_{{ editor }}: name: build {{ project.name }} - {{ editor }} on iOS agent: type: Unity::VM::osx - image: package-ci/macos-12:v4 + image: package-ci/macos-13:v4 flavor: b1.large commands: @@ -70,7 +70,7 @@ mobile_test_ios_{{ project.name }}_{{ editor }}: name: {{ project.name }} mobile project tests - {{ editor }} on iOS agent: type: Unity::mobile::iPhone - image: package-ci/macos-12:v4 + image: package-ci/macos-13:v4 flavor: b1.medium # Skip repository cloning From 8d724faeef45fb7d5e1a30014347e1d1f59f9f30 Mon Sep 17 00:00:00 2001 From: Frank Luong Date: Tue, 5 Nov 2024 12:04:31 -0500 Subject: [PATCH 28/57] Added a release mode configuration for iOS jobs --- .yamato/mobile-build-and-run.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.yamato/mobile-build-and-run.yml b/.yamato/mobile-build-and-run.yml index ecce4c98bc..b168f70dd9 100644 --- a/.yamato/mobile-build-and-run.yml +++ b/.yamato/mobile-build-and-run.yml @@ -15,10 +15,13 @@ Build_Player_With_Tests_iOS_{{ project.name }}_{{ editor }}: commands: - pip install unity-downloader-cli==1.2.0 --index-url https://artifactory.prd.it.unity3d.com/artifactory/api/pypi/pypi/simple --upgrade - unity-downloader-cli -c Editor -c iOS -u {{ editor }} --fast --wait + - echo "CONFIGURATION = Release" >> ~/XcodeBuildConfig.xcconfig - curl -s https://artifactory.prd.it.unity3d.com/artifactory/unity-tools-local/utr-standalone/utr --output utr - chmod +x ./utr - ./utr --suite=playmode --platform=iOS --editor-location=.Editor --testproject={{ project.path }} --player-save-path=build/players --artifacts_path=build/logs --build-only --testfilter=Unity.BossRoom.Tests.Runtime - + variables: + UNITY_TESTS_XCODEBUILD_TIMEOUT: 60 + XCODE_XCCONFIG_FILE: ~/XcodeBuildConfig.xcconfig artifacts: players: paths: From 0aadc39294a20440e06a845f7090fa8c77248b3d Mon Sep 17 00:00:00 2001 From: Fabian Stoll <6150977+FabianStoll@users.noreply.github.com> Date: Thu, 7 Nov 2024 09:44:04 +0100 Subject: [PATCH 29/57] Update CHANGELOG.md Co-authored-by: Fernando Cortez --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4a0543e25f..5c1c4b753e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -17,7 +17,7 @@ Additional documentation and release notes are available at [Multiplayer Documen * Upgraded editor version to 6000.0.25f1 ### Cleanup -* Removed ParallelSync from the project +* Removed ParrelSync from the project ## [2.5.0] - 2024-04-18 From fdf30416bfb093503cb4e39fd9df390937a56ccf Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Thu, 7 Nov 2024 09:50:07 +0100 Subject: [PATCH 30/57] fix: remove unneeded asset --- Assets/DefaultVolumeProfile.asset | 3 --- Assets/DefaultVolumeProfile.asset.meta | 8 -------- .../1_UniversalRenderPipelineAsset_Windows_Medium.asset | 4 ++-- .../2_UniversalRenderPipelineAsset_Windows_High.asset | 4 ++-- .../3_UniversalRenderPipelineAsset_Windows_Ultra.asset | 4 ++-- 5 files changed, 6 insertions(+), 17 deletions(-) delete mode 100644 Assets/DefaultVolumeProfile.asset delete mode 100644 Assets/DefaultVolumeProfile.asset.meta diff --git a/Assets/DefaultVolumeProfile.asset b/Assets/DefaultVolumeProfile.asset deleted file mode 100644 index 4afc7ea9f4..0000000000 --- a/Assets/DefaultVolumeProfile.asset +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:9f9fe204b4c67a6af17f939c204ddd5c90e6f627694ca0f6d7f7fccb661db1aa -size 426 diff --git a/Assets/DefaultVolumeProfile.asset.meta b/Assets/DefaultVolumeProfile.asset.meta deleted file mode 100644 index 3ca5856c42..0000000000 --- a/Assets/DefaultVolumeProfile.asset.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 402da6590a985a54ca7d6f2f2e75bf48 -NativeFormatImporter: - externalObjects: {} - mainObjectFileID: 11400000 - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/URP/Windows/1_UniversalRenderPipelineAsset_Windows_Medium.asset b/Assets/URP/Windows/1_UniversalRenderPipelineAsset_Windows_Medium.asset index 67025e14f4..441f82751e 100644 --- a/Assets/URP/Windows/1_UniversalRenderPipelineAsset_Windows_Medium.asset +++ b/Assets/URP/Windows/1_UniversalRenderPipelineAsset_Windows_Medium.asset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:664825d50ebaca88798a13d93675e3c4c5bb7d155e963ee13cf2bc79f5f8d86f -size 3681 +oid sha256:3c1d9864c4d2c4ead0ff0dff29f14e21309acc8ab0f0aee67a08fd1ed7ae3f30 +size 4358 diff --git a/Assets/URP/Windows/2_UniversalRenderPipelineAsset_Windows_High.asset b/Assets/URP/Windows/2_UniversalRenderPipelineAsset_Windows_High.asset index 96f2f92e94..9405afa2b1 100644 --- a/Assets/URP/Windows/2_UniversalRenderPipelineAsset_Windows_High.asset +++ b/Assets/URP/Windows/2_UniversalRenderPipelineAsset_Windows_High.asset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6031aaba9d7ac0ca61ea9f6cc34c9133e0b65e4be56559ca2641975bfb980f54 -size 3673 +oid sha256:6c0d47cc8fbafe78df3db51ebedce43631a947c7f7a203250ba9ac03f5fa8d7f +size 4350 diff --git a/Assets/URP/Windows/3_UniversalRenderPipelineAsset_Windows_Ultra.asset b/Assets/URP/Windows/3_UniversalRenderPipelineAsset_Windows_Ultra.asset index 782d7e5f3a..37cf7134a8 100644 --- a/Assets/URP/Windows/3_UniversalRenderPipelineAsset_Windows_Ultra.asset +++ b/Assets/URP/Windows/3_UniversalRenderPipelineAsset_Windows_Ultra.asset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e410deed7cd331c908f7de7defdf7a2994eb002e3384c8ad69357c033d25b665 -size 3675 +oid sha256:28d385e1d260174bbd8cee17dc41f84e17fec5b306384add1bbfb55b31f161fa +size 4352 From 4cd35c9ecbf71cdce5ca6260bae42ca0b2f45c6d Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Thu, 7 Nov 2024 09:54:16 +0100 Subject: [PATCH 31/57] fix: show IET popup on startup --- .../Packages/com.unity.learn.iet-framework/Settings.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ProjectSettings/Packages/com.unity.learn.iet-framework/Settings.json b/ProjectSettings/Packages/com.unity.learn.iet-framework/Settings.json index 843a7464c1..91c8442610 100644 --- a/ProjectSettings/Packages/com.unity.learn.iet-framework/Settings.json +++ b/ProjectSettings/Packages/com.unity.learn.iet-framework/Settings.json @@ -9,7 +9,7 @@ { "type": "System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089", "key": "IET.DisplayWelcomeDialogOnStartup", - "value": "{\"m_Value\":false}" + "value": "{\"m_Value\":true}" } ] } From eddfc9d46fef55efa9d7ac8946656633bc2eba36 Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Thu, 7 Nov 2024 11:29:46 +0100 Subject: [PATCH 32/57] fix: remove warnings about deprecated methods --- Assets/Scripts/CameraUtils/CameraController.cs | 2 +- .../Gameplay/DebugCheats/DebugCheatsManager.cs | 6 +++--- .../GameplayObjects/PublishMessageOnLifeChange.cs | 2 +- Assets/Scripts/Gameplay/UI/UITooltipDetector.cs | 2 +- Assets/Scripts/Gameplay/UI/UITooltipPopup.cs | 2 +- Assets/Tests/Runtime/ConnectionManagementTests.cs | 5 +++-- Assets/Tests/Runtime/HostAndDisconnectTest.cs | 11 ++++++----- .../Utilities/EditorChildSceneLoader.cs | 3 ++- .../SceneManagement/LoadingProgressManager.cs | 2 +- 9 files changed, 19 insertions(+), 16 deletions(-) diff --git a/Assets/Scripts/CameraUtils/CameraController.cs b/Assets/Scripts/CameraUtils/CameraController.cs index 802e4e0e56..d90b54750b 100644 --- a/Assets/Scripts/CameraUtils/CameraController.cs +++ b/Assets/Scripts/CameraUtils/CameraController.cs @@ -15,7 +15,7 @@ void Start() private void AttachCamera() { - m_MainCamera = GameObject.FindObjectOfType(); + m_MainCamera = FindAnyObjectByType(); Assert.IsNotNull(m_MainCamera, "CameraController.AttachCamera: Couldn't find gameplay freelook camera"); if (m_MainCamera) diff --git a/Assets/Scripts/Gameplay/DebugCheats/DebugCheatsManager.cs b/Assets/Scripts/Gameplay/DebugCheats/DebugCheatsManager.cs index 2c170dda4f..e2a764b303 100644 --- a/Assets/Scripts/Gameplay/DebugCheats/DebugCheatsManager.cs +++ b/Assets/Scripts/Gameplay/DebugCheats/DebugCheatsManager.cs @@ -40,7 +40,7 @@ SwitchedDoor SwitchedDoor { if (m_SwitchedDoor == null) { - m_SwitchedDoor = FindObjectOfType(); + m_SwitchedDoor = FindAnyObjectByType(); } return m_SwitchedDoor; } @@ -173,7 +173,7 @@ void ServerKillTargetRpc(RpcParams serverRpcParams = default) [Rpc(SendTo.Server, RequireOwnership = false)] void ServerKillAllEnemiesRpc(RpcParams serverRpcParams = default) { - foreach (var serverCharacter in FindObjectsOfType()) + foreach (var serverCharacter in FindObjectsByType(FindObjectsSortMode.None)) { if (serverCharacter.IsNpc && serverCharacter.LifeState == LifeState.Alive) { @@ -268,7 +268,7 @@ void ServerToggleDoorRpc(RpcParams serverRpcParams = default) [Rpc(SendTo.Server, RequireOwnership = false)] void ServerTogglePortalsRpc(RpcParams serverRpcParams = default) { - foreach (var portal in FindObjectsOfType()) + foreach (var portal in FindObjectsByType(FindObjectsSortMode.None)) { if (m_DestroyPortalsOnNextToggle) { diff --git a/Assets/Scripts/Gameplay/GameplayObjects/PublishMessageOnLifeChange.cs b/Assets/Scripts/Gameplay/GameplayObjects/PublishMessageOnLifeChange.cs index ceb866027f..14daaf1198 100644 --- a/Assets/Scripts/Gameplay/GameplayObjects/PublishMessageOnLifeChange.cs +++ b/Assets/Scripts/Gameplay/GameplayObjects/PublishMessageOnLifeChange.cs @@ -40,7 +40,7 @@ public override void OnNetworkSpawn() m_NameState = GetComponent(); m_NetworkLifeState.LifeState.OnValueChanged += OnLifeStateChanged; - var gameState = FindObjectOfType(); + var gameState = FindAnyObjectByType(); if (gameState != null) { gameState.Container.Inject(this); diff --git a/Assets/Scripts/Gameplay/UI/UITooltipDetector.cs b/Assets/Scripts/Gameplay/UI/UITooltipDetector.cs index 558221f9e0..46c3abf863 100644 --- a/Assets/Scripts/Gameplay/UI/UITooltipDetector.cs +++ b/Assets/Scripts/Gameplay/UI/UITooltipDetector.cs @@ -100,7 +100,7 @@ private void OnValidate() if (!m_TooltipPopup) { // typically there's only one tooltip popup in the scene, so pick that - m_TooltipPopup = FindObjectOfType(); + m_TooltipPopup = FindAnyObjectByType(); } } } diff --git a/Assets/Scripts/Gameplay/UI/UITooltipPopup.cs b/Assets/Scripts/Gameplay/UI/UITooltipPopup.cs index 864bcf0bcd..a863fa2ad2 100644 --- a/Assets/Scripts/Gameplay/UI/UITooltipPopup.cs +++ b/Assets/Scripts/Gameplay/UI/UITooltipPopup.cs @@ -67,7 +67,7 @@ private void OnValidate() if (!m_Canvas) { // typically there's only one canvas in the scene, so pick that - m_Canvas = FindObjectOfType(); + m_Canvas = FindAnyObjectByType(); } } } diff --git a/Assets/Tests/Runtime/ConnectionManagementTests.cs b/Assets/Tests/Runtime/ConnectionManagementTests.cs index 536e573f38..ec75ae46ff 100644 --- a/Assets/Tests/Runtime/ConnectionManagementTests.cs +++ b/Assets/Tests/Runtime/ConnectionManagementTests.cs @@ -15,6 +15,7 @@ using UnityEngine.TestTools; using VContainer; using VContainer.Unity; +using Object = UnityEngine.Object; namespace Unity.BossRoom.Tests.Runtime { @@ -149,9 +150,9 @@ protected override IEnumerator OnTearDown() m_ClientScopes[i].Dispose(); } - foreach (var sceneGameObject in GameObject.FindObjectsOfType()) + foreach (var sceneGameObject in Object.FindObjectsByType(FindObjectsSortMode.None)) { - GameObject.DestroyImmediate(sceneGameObject); + Object.DestroyImmediate(sceneGameObject); } yield return base.OnTearDown(); diff --git a/Assets/Tests/Runtime/HostAndDisconnectTest.cs b/Assets/Tests/Runtime/HostAndDisconnectTest.cs index df395a848a..2f4706b272 100644 --- a/Assets/Tests/Runtime/HostAndDisconnectTest.cs +++ b/Assets/Tests/Runtime/HostAndDisconnectTest.cs @@ -9,6 +9,7 @@ using UnityEngine.SceneManagement; using UnityEngine.TestTools; using VContainer; +using Object = UnityEngine.Object; namespace Unity.BossRoom.Tests.Runtime { @@ -81,13 +82,13 @@ IEnumerator WaitUntilBossRoomSceneIsLoaded() IEnumerator WaitUntilDisconnectedAndMainMenuSceneIsLoaded() { // once loaded into BossRoom scene, disconnect - var uiSettingsCanvas = GameObject.FindObjectOfType(); + var uiSettingsCanvas = Object.FindAnyObjectByType(); Assert.That(uiSettingsCanvas != null, $"{nameof(UISettingsCanvas)} component not found!"); uiSettingsCanvas.OnClickQuitButton(); yield return new WaitForFixedUpdate(); - var uiQuitPanel = GameObject.FindObjectOfType(true); + var uiQuitPanel = Object.FindAnyObjectByType(FindObjectsInactive.Include); Assert.That(uiQuitPanel != null, $"{nameof(UIQuitPanel)} component not found!"); uiQuitPanel.Quit(); @@ -114,7 +115,7 @@ public IEnumerator IP_HostAndDisconnect_Valid([ValueSource(nameof(s_PlayerIndice { yield return WaitUntilMainMenuSceneIsLoaded(); - var clientMainMenuState = GameObject.FindObjectOfType(); + var clientMainMenuState = Object.FindAnyObjectByType(); Assert.That(clientMainMenuState != null, $"{nameof(clientMainMenuState)} component not found!"); @@ -156,9 +157,9 @@ public IEnumerator IP_HostAndDisconnect_Valid([ValueSource(nameof(s_PlayerIndice [UnityTearDown] public IEnumerator DestroySceneGameObjects() { - foreach (var sceneGameObject in GameObject.FindObjectsOfType()) + foreach (var sceneGameObject in Object.FindObjectsByType(FindObjectsSortMode.None)) { - GameObject.DestroyImmediate(sceneGameObject); + Object.DestroyImmediate(sceneGameObject); } yield break; } diff --git a/Packages/com.unity.multiplayer.samples.coop/Utilities/EditorChildSceneLoader.cs b/Packages/com.unity.multiplayer.samples.coop/Utilities/EditorChildSceneLoader.cs index b7fe4dcae0..8d290a1bd6 100644 --- a/Packages/com.unity.multiplayer.samples.coop/Utilities/EditorChildSceneLoader.cs +++ b/Packages/com.unity.multiplayer.samples.coop/Utilities/EditorChildSceneLoader.cs @@ -6,6 +6,7 @@ #endif using UnityEngine; using UnityEngine.SceneManagement; +using Object = UnityEngine.Object; /// /// Allows setting a scene as a root scene and setting its child scenes. To use this, drag this component on any object in a scene to make that scene a root scene. In the background, ChildSceneLoader will automatically manage this. @@ -88,7 +89,7 @@ static void OnSceneLoaded(Scene _, OpenSceneMode mode) { if (mode != OpenSceneMode.Single || BuildPipeline.isBuildingPlayer) return; // try to load child scenes only for root scenes or if not building - var scenesToLoadObjects = GameObject.FindObjectsOfType(); + var scenesToLoadObjects = Object.FindObjectsByType(FindObjectsSortMode.None); if (scenesToLoadObjects.Length > 1) { throw new Exception("Should only have one root scene at once loaded"); diff --git a/Packages/com.unity.multiplayer.samples.coop/Utilities/SceneManagement/LoadingProgressManager.cs b/Packages/com.unity.multiplayer.samples.coop/Utilities/SceneManagement/LoadingProgressManager.cs index 2a333c6440..9764bb160e 100644 --- a/Packages/com.unity.multiplayer.samples.coop/Utilities/SceneManagement/LoadingProgressManager.cs +++ b/Packages/com.unity.multiplayer.samples.coop/Utilities/SceneManagement/LoadingProgressManager.cs @@ -107,7 +107,7 @@ void ClientUpdateTrackersRpc() if (!IsHost) { ProgressTrackers.Clear(); - foreach (var tracker in FindObjectsOfType()) + foreach (var tracker in FindObjectsByType(FindObjectsSortMode.None)) { // If a tracker is despawned but not destroyed yet, don't add it if (tracker.IsSpawned) From 308b37740c55970c012a31a4655cb001930ee670 Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Thu, 7 Nov 2024 11:30:02 +0100 Subject: [PATCH 33/57] feat: remove deprecated vscode package --- Packages/manifest.json | 1 - Packages/packages-lock.json | 7 ------- 2 files changed, 8 deletions(-) diff --git a/Packages/manifest.json b/Packages/manifest.json index f8dc24acdf..45cdb2e41c 100644 --- a/Packages/manifest.json +++ b/Packages/manifest.json @@ -6,7 +6,6 @@ "com.unity.collab-proxy": "2.5.2", "com.unity.ide.rider": "3.0.31", "com.unity.ide.visualstudio": "2.0.22", - "com.unity.ide.vscode": "1.2.5", "com.unity.learn.iet-framework": "4.0.2", "com.unity.learn.iet-framework.authoring": "1.2.2", "com.unity.memoryprofiler": "1.1.1", diff --git a/Packages/packages-lock.json b/Packages/packages-lock.json index ed96a97b07..d4d84dbad9 100644 --- a/Packages/packages-lock.json +++ b/Packages/packages-lock.json @@ -85,13 +85,6 @@ }, "url": "https://packages.unity.com" }, - "com.unity.ide.vscode": { - "version": "1.2.5", - "depth": 0, - "source": "registry", - "dependencies": {}, - "url": "https://packages.unity.com" - }, "com.unity.learn.iet-framework": { "version": "4.0.2", "depth": 0, From 931605cd3df3f85d91ddce874faa1354c2c04021 Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Thu, 7 Nov 2024 16:06:31 +0100 Subject: [PATCH 34/57] fix: add services package again after merge --- Packages/manifest.json | 1 + Packages/packages-lock.json | 34 ++++++++++++++++++++++++++++++++++ 2 files changed, 35 insertions(+) diff --git a/Packages/manifest.json b/Packages/manifest.json index 45cdb2e41c..8d4de8040e 100644 --- a/Packages/manifest.json +++ b/Packages/manifest.json @@ -18,6 +18,7 @@ "com.unity.render-pipelines.universal": "17.0.3", "com.unity.services.authentication": "3.3.3", "com.unity.services.lobby": "1.2.2", + "com.unity.services.multiplayer": "1.0.2", "com.unity.services.relay": "1.0.5", "com.unity.test-framework": "1.4.5", "com.unity.timeline": "1.8.7", diff --git a/Packages/packages-lock.json b/Packages/packages-lock.json index fe32331faa..cb089b0000 100644 --- a/Packages/packages-lock.json +++ b/Packages/packages-lock.json @@ -282,6 +282,23 @@ }, "url": "https://packages.unity.com" }, + "com.unity.services.deployment": { + "version": "1.3.0", + "depth": 1, + "source": "registry", + "dependencies": { + "com.unity.services.core": "1.12.0", + "com.unity.services.deployment.api": "1.0.0" + }, + "url": "https://packages.unity.com" + }, + "com.unity.services.deployment.api": { + "version": "1.0.0", + "depth": 2, + "source": "registry", + "dependencies": {}, + "url": "https://packages.unity.com" + }, "com.unity.services.lobby": { "version": "1.2.2", "depth": 0, @@ -299,6 +316,23 @@ }, "url": "https://packages.unity.com" }, + "com.unity.services.multiplayer": { + "version": "1.0.2", + "depth": 0, + "source": "registry", + "dependencies": { + "com.unity.transport": "2.2.1", + "com.unity.collections": "2.2.1", + "com.unity.services.qos": "1.3.0", + "com.unity.services.core": "1.13.0", + "com.unity.services.wire": "1.2.7", + "com.unity.services.deployment": "1.3.0", + "com.unity.nuget.newtonsoft-json": "3.2.1", + "com.unity.modules.unitywebrequest": "1.0.0", + "com.unity.services.authentication": "3.3.3" + }, + "url": "https://packages.unity.com" + }, "com.unity.services.qos": { "version": "1.3.0", "depth": 1, From e313a92c96a8183d6ddc8a538233339dafacc5b5 Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Fri, 8 Nov 2024 11:37:25 +0100 Subject: [PATCH 35/57] chore: changelog --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5c1c4b753e..496e5c4fe3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -15,6 +15,7 @@ Additional documentation and release notes are available at [Multiplayer Documen ### Changed * Upgraded Boss Room to Netcode for GameObjects v2.0.0 * Upgraded editor version to 6000.0.25f1 +* Replaced Lobby and Relay standalone packages with the Multiplayer Services package and the Sessions framework ### Cleanup * Removed ParrelSync from the project From 709c9e3bc1826ff7ff4d60232dbe606667601878 Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Fri, 8 Nov 2024 11:38:14 +0100 Subject: [PATCH 36/57] chore: readme changes --- README.md | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/README.md b/README.md index 3be3d00ee4..594c269c0d 100644 --- a/README.md +++ b/README.md @@ -15,7 +15,7 @@ Boss Room is a fully functional co-op multiplayer RPG made with Unity Netcode. I # Boss Room Sample Overview -Boss Room is designed to be used in its entirety to help you explore the concepts and patterns behind a multiplayer game flow; such as character abilities, casting animations to hide latency, replicated objects, RPCs, and integration with the [Relay](https://unity.com/products/relay), [Lobby](https://unity.com/products/lobby), and [Authentication](https://unity.com/products/authentication) services. +Boss Room is designed to be used in its entirety to help you explore the concepts and patterns behind a multiplayer game flow; such as character abilities, casting animations to hide latency, replicated objects, RPCs, and integration with [Multiplayer Services sessions](https://docs.unity.com/ugs/en-us/manual/mps-sdk/manual) and [Authentication](https://unity.com/products/authentication) services. You can use the project as a reference starting point for your own Unity game or use elements individually.

@@ -135,12 +135,12 @@ Code is organized in domain-based assemblies. See the [Boss Room architecture do ### Registering the project with Unity Gaming Services (UGS) -Boss Room leverages several services from UGS to facilitate connectivity between players. To use these services inside your project, you must [create an organization](https://support.unity.com/hc/en-us/articles/208592876-How-do-I-create-a-new-Organization-) inside the Unity Dashboard, and enable the [Relay](https://docs.unity.com/relay/get-started.html) and [Lobby](https://docs.unity.com/lobby/game-lobby-sample.html) services. Otherwise, you can still use Boss Room without UGS. +Boss Room leverages several services from UGS to facilitate connectivity between players. To use these services inside your project, you must [create an organization](https://support.unity.com/hc/en-us/articles/208592876-How-do-I-create-a-new-Organization-) inside the Unity Dashboard.. Otherwise, you can still use Boss Room without UGS.


## Testing multiplayer -In order to see the multiplayer functionality in action we can either run multiple instances of the game locally on your computer - using either ParrelSync or builds - or choose to connect to a friend over the internet. See [how to test](https://docs-multiplayer.unity3d.com/netcode/current/tutorials/testing/testing_locally) for more info. +In order to see the multiplayer functionality in action we can either run multiple instances of the game locally on your computer - using either Multiplayer Play Mode or builds - or choose to connect to a friend over the internet. See [how to test](https://docs-multiplayer.unity3d.com/netcode/current/tutorials/testing/testing_locally) for more info.

### Local multiplayer setup @@ -169,7 +169,7 @@ Running the game over internet currently requires setting up a relay. ### Relay Setup -- Boss Room provides an integration with [Unity Relay](https://docs-multiplayer.unity3d.com/netcode/current/relay/). You can find our Unity Relay setup guide [here](https://docs.unity.com/ugs/en-us/manual/relay/manual/get-started) +- Boss Room provides an integration with [Multiplayer Services sessions](https://docs.unity.com/ugs/en-us/manual/mps-sdk/manual) that make use of [Unity Relay](https://docs-multiplayer.unity3d.com/netcode/current/relay/). You can find our Unity Relay setup guide [here](https://docs.unity.com/ugs/en-us/manual/relay/manual/get-started) - Alternatively you can use Port Forwarding. The https://portforward.com/ site has guides on how to enable port forwarding on a huge number of routers. - Boss Room uses `UDP` and needs a `9998` external port to be open. @@ -230,12 +230,12 @@ Running the game over internet currently requires setting up a relay. * Session manager - [Packages/com.unity.multiplayer.samples.coop/Utilities/Net/SessionManager.cs ](Packages/com.unity.multiplayer.samples.coop/Utilities/Net/SessionManager.cs) * RTT stats - [Assets/Scripts/Utils/NetworkOverlay/NetworkStats.cs](Assets/Scripts/Utils/NetworkOverlay/NetworkStats.cs) -### Services (Lobby, Relay, etc) -* Lobby and relay - host creation - CreateLobbyRequest() in [Assets/Scripts/Gameplay/UI/Lobby/LobbyUIMediator.cs ](Assets/Scripts/Gameplay/UI/Lobby/LobbyUIMediator.cs) -* Lobby and relay - client join - JoinLobbyRequest() in [Assets/Scripts/Gameplay/UI/Lobby/LobbyUIMediator.cs ](Assets/Scripts/Gameplay/UI/Lobby/LobbyUIMediator.cs) -* Relay Join - StartClientLobby() in [Assets/Scripts/ConnectionManagement/ConnectionState/OfflineState.cs ](Assets/Scripts/ConnectionManagement/ConnectionState/OfflineState.cs) -* Relay Create - StartHostLobby() in [Assets/Scripts/ConnectionManagement/ConnectionState/OfflineState.cs ](Assets/Scripts/ConnectionManagement/ConnectionState/OfflineState.cs) -* Subscribing to LobbyEvents - SubscribeToJoinedLobby() in [Assets/Scripts/UnityServices/Lobbies/LobbyServiceFacade.cs ](Assets/Scripts/UnityServices/Lobbies/LobbyServiceFacade.cs) +### Services (Sessions and Authentication) +* Session - host creation - CreateSessionRequest() in [Assets/Scripts/Gameplay/UI/Session/SessionUIMediator.cs ](Assets/Scripts/Gameplay/UI/Session/SessionUIMediator.cs) +* Session - client join - JoinSessionRequest() in [Assets/Scripts/Gameplay/UI/Session/SessionUIMediator.cs ](Assets/Scripts/Gameplay/UI/Session/SessionUIMediator.cs) +* Session Join with Relay - StartClientSession() in [Assets/Scripts/ConnectionManagement/ConnectionState/OfflineState.cs ](Assets/Scripts/ConnectionManagement/ConnectionState/OfflineState.cs) +* Session Create with Relay - StartHostSession() in [Assets/Scripts/ConnectionManagement/ConnectionState/OfflineState.cs ](Assets/Scripts/ConnectionManagement/ConnectionState/OfflineState.cs) +* Subscribing to SessionEvents - SubscribeToJoinedSessionAsync() in [Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs ](Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs) * Authentication - EnsurePlayerIsAuthorized() in [Assets/Scripts/UnityServices/Auth/AuthenticationServiceFacade.cs ](Assets/Scripts/UnityServices/Auth/AuthenticationServiceFacade.cs) * Authentication - Profile management for ParrelSync/local instances - GetProfile() in [Assets/Scripts/Utils/ProfileManager.cs](Assets/Scripts/Utils/ProfileManager.cs) * Profile manager for ParrelSync and local play [Assets/Scripts/Utils/ProfileManager.cs](Assets/Scripts/Utils/ProfileManager.cs) @@ -253,7 +253,6 @@ Running the game over internet currently requires setting up a relay. * Scene utils with synced loading screens - [Packages/com.unity.multiplayer.samples.coop/Utilities/SceneManagement/ ](Packages/com.unity.multiplayer.samples.coop/Utilities/SceneManagement/) * RNSM custom config - [Packages/com.unity.multiplayer.samples.coop/Utilities/Net/RNSM/CustomNetStatsMonitorConfiguration.asset ](Packages/com.unity.multiplayer.samples.coop/Utilities/Net/RNSM/CustomNetStatsMonitorConfiguration.asset) * NetworkSimulator usage through UI - [Assets/Scripts/Utils/NetworkSimulatorUIMediator.cs ](Assets/Scripts/Utils/NetworkSimulatorUIMediator.cs) -* ParrelSync - [ Packages/manifest.json ](Packages/manifest.json) ------- From e24666de74f696b28adc8e56e99af4c6061c1caa Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Fri, 8 Nov 2024 11:41:52 +0100 Subject: [PATCH 37/57] fix: remove lobby and relay again They were accidentally added with the merge --- Packages/manifest.json | 2 -- Packages/packages-lock.json | 35 ----------------------------------- 2 files changed, 37 deletions(-) diff --git a/Packages/manifest.json b/Packages/manifest.json index 8d4de8040e..f7d2d81051 100644 --- a/Packages/manifest.json +++ b/Packages/manifest.json @@ -17,9 +17,7 @@ "com.unity.postprocessing": "3.4.0", "com.unity.render-pipelines.universal": "17.0.3", "com.unity.services.authentication": "3.3.3", - "com.unity.services.lobby": "1.2.2", "com.unity.services.multiplayer": "1.0.2", - "com.unity.services.relay": "1.0.5", "com.unity.test-framework": "1.4.5", "com.unity.timeline": "1.8.7", "com.unity.toolchain.macos-x86_64-linux-x86_64": "2.0.9", diff --git a/Packages/packages-lock.json b/Packages/packages-lock.json index cb089b0000..dee4f74021 100644 --- a/Packages/packages-lock.json +++ b/Packages/packages-lock.json @@ -299,23 +299,6 @@ "dependencies": {}, "url": "https://packages.unity.com" }, - "com.unity.services.lobby": { - "version": "1.2.2", - "depth": 0, - "source": "registry", - "dependencies": { - "com.unity.services.core": "1.12.5", - "com.unity.services.wire": "1.2.6", - "com.unity.nuget.newtonsoft-json": "3.0.2", - "com.unity.modules.unitywebrequest": "1.0.0", - "com.unity.services.authentication": "2.7.4", - "com.unity.modules.unitywebrequestwww": "1.0.0", - "com.unity.modules.unitywebrequestaudio": "1.0.0", - "com.unity.modules.unitywebrequesttexture": "1.0.0", - "com.unity.modules.unitywebrequestassetbundle": "1.0.0" - }, - "url": "https://packages.unity.com" - }, "com.unity.services.multiplayer": { "version": "1.0.2", "depth": 0, @@ -346,24 +329,6 @@ }, "url": "https://packages.unity.com" }, - "com.unity.services.relay": { - "version": "1.0.5", - "depth": 0, - "source": "registry", - "dependencies": { - "com.unity.transport": "1.3.0", - "com.unity.services.qos": "1.1.0", - "com.unity.services.core": "1.4.0", - "com.unity.nuget.newtonsoft-json": "3.0.2", - "com.unity.modules.unitywebrequest": "1.0.0", - "com.unity.services.authentication": "2.0.0", - "com.unity.modules.unitywebrequestwww": "1.0.0", - "com.unity.modules.unitywebrequestaudio": "1.0.0", - "com.unity.modules.unitywebrequesttexture": "1.0.0", - "com.unity.modules.unitywebrequestassetbundle": "1.0.0" - }, - "url": "https://packages.unity.com" - }, "com.unity.services.wire": { "version": "1.2.7", "depth": 1, From a6f89eab8aed1719ce625546092b912b10fe6ba0 Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Tue, 12 Nov 2024 11:05:07 +0100 Subject: [PATCH 38/57] fix: reset connection state when joining a session failed --- Assets/Scripts/Gameplay/UI/Session/SessionUIMediator.cs | 1 + 1 file changed, 1 insertion(+) diff --git a/Assets/Scripts/Gameplay/UI/Session/SessionUIMediator.cs b/Assets/Scripts/Gameplay/UI/Session/SessionUIMediator.cs index 50cff030b4..d6b3e66bfa 100644 --- a/Assets/Scripts/Gameplay/UI/Session/SessionUIMediator.cs +++ b/Assets/Scripts/Gameplay/UI/Session/SessionUIMediator.cs @@ -194,6 +194,7 @@ void HandleSessionJoinResult((bool Success, ISession Session) result) } else { + m_ConnectionManager.RequestShutdown(); UnblockUIAfterLoadingIsComplete(); } } From 9189356774e3ed94f1b5c266b1d920a213a9f48b Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Thu, 21 Nov 2024 14:28:49 +0100 Subject: [PATCH 39/57] chore: comment fix --- Assets/Scripts/ApplicationLifecycle/ApplicationController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Assets/Scripts/ApplicationLifecycle/ApplicationController.cs b/Assets/Scripts/ApplicationLifecycle/ApplicationController.cs index 78cee95d3e..772b880b0c 100644 --- a/Assets/Scripts/ApplicationLifecycle/ApplicationController.cs +++ b/Assets/Scripts/ApplicationLifecycle/ApplicationController.cs @@ -112,7 +112,7 @@ protected override void OnDestroy() } /// - /// In builds, if we are in a MultiplayerServicesFacade and try to send a Leave request on application quit, it won't go through if we're quitting on the same frame. + /// In builds, if we are in a Session and try to send a Leave request on application quit, it won't go through if we're quitting on the same frame. /// So, we need to delay just briefly to let the request happen (though we don't need to wait for the result). /// private IEnumerator LeaveBeforeQuit() From 3ec699e63ccc477b45266915e68a273e119598fe Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Thu, 21 Nov 2024 15:21:52 +0100 Subject: [PATCH 40/57] chore: whitespace fixes --- .../ConnectionManagement/ConnectionMethod.cs | 21 +++--- .../ConnectionState/ConnectionState.cs | 6 +- .../ConnectionState/OfflineState.cs | 6 +- .../ConnectionState/StartingHostState.cs | 7 +- .../GameState/ClientCharSelectState.cs | 50 ++++++++------ .../Gameplay/UI/Session/SessionListItemUI.cs | 13 ++-- .../Gameplay/UI/Session/SessionUIMediator.cs | 47 +++++++------ .../UnityServices/Sessions/LocalSession.cs | 11 +-- .../Sessions/LocalSessionUser.cs | 8 +-- .../Sessions/MultiplayerServicesFacade.cs | 68 +++++++++++-------- .../Sessions/MultiplayerServicesInterface.cs | 12 ++-- 11 files changed, 139 insertions(+), 110 deletions(-) diff --git a/Assets/Scripts/ConnectionManagement/ConnectionMethod.cs b/Assets/Scripts/ConnectionManagement/ConnectionMethod.cs index c55c744773..ec4371bfbb 100644 --- a/Assets/Scripts/ConnectionManagement/ConnectionMethod.cs +++ b/Assets/Scripts/ConnectionManagement/ConnectionMethod.cs @@ -9,8 +9,9 @@ namespace Unity.BossRoom.ConnectionManagement { /// - /// ConnectionMethod contains all setup needed to setup NGO to be ready to start a connection, either host or client side. - /// Please override this abstract class to add a new transport or way of connecting. + /// ConnectionMethod contains all setup needed to setup NGO to be ready to start a connection, either host or client + /// side. + /// Please override this abstract class to add a new transport or way of connecting. /// public abstract class ConnectionMethodBase { @@ -19,23 +20,23 @@ public abstract class ConnectionMethodBase protected readonly string m_PlayerName; /// - /// Setup the host connection prior to starting the NetworkManager + /// Setup the host connection prior to starting the NetworkManager /// /// public abstract Task SetupHostConnectionAsync(); - + /// - /// Setup the client connection prior to starting the NetworkManager + /// Setup the client connection prior to starting the NetworkManager /// /// public abstract void SetupClientConnectionAsync(); /// - /// Setup the client for reconnection prior to reconnecting + /// Setup the client for reconnection prior to reconnecting /// /// - /// success = true if succeeded in setting up reconnection, false if failed. - /// shouldTryAgain = true if we should try again after failing, false if not. + /// success = true if succeeded in setting up reconnection, false if failed. + /// shouldTryAgain = true if we should try again after failing, false if not. /// public abstract Task<(bool success, bool shouldTryAgain)> SetupClientReconnectionAsync(); @@ -79,7 +80,7 @@ protected string GetPlayerId() } /// - /// Simple IP connection setup with UTP + /// Simple IP connection setup with UTP /// class ConnectionMethodIP : ConnectionMethodBase { @@ -116,7 +117,7 @@ public override async Task SetupHostConnectionAsync() } /// - /// UTP's Relay connection setup using the Session integration + /// UTP's Relay connection setup using the Session integration /// class ConnectionMethodRelay : ConnectionMethodBase { diff --git a/Assets/Scripts/ConnectionManagement/ConnectionState/ConnectionState.cs b/Assets/Scripts/ConnectionManagement/ConnectionState/ConnectionState.cs index 027862c968..4ebf6b08e6 100644 --- a/Assets/Scripts/ConnectionManagement/ConnectionState/ConnectionState.cs +++ b/Assets/Scripts/ConnectionManagement/ConnectionState/ConnectionState.cs @@ -7,7 +7,7 @@ namespace Unity.BossRoom.ConnectionManagement { /// - /// Base class representing a connection state. + /// Base class representing a connection state. /// abstract class ConnectionState { @@ -27,11 +27,11 @@ public virtual void OnClientDisconnect(ulong clientId) { } public virtual void OnServerStarted() { } public virtual void StartClientIP(string playerName, string ipaddress, int port) { } - + public virtual void StartClientSession(string playerName) { } public virtual void StartHostIP(string playerName, string ipaddress, int port) { } - + public virtual void StartHostSession(string playerName) { } public virtual void OnUserRequestedShutdown() { } diff --git a/Assets/Scripts/ConnectionManagement/ConnectionState/OfflineState.cs b/Assets/Scripts/ConnectionManagement/ConnectionState/OfflineState.cs index dc40b0519d..aede55da52 100644 --- a/Assets/Scripts/ConnectionManagement/ConnectionState/OfflineState.cs +++ b/Assets/Scripts/ConnectionManagement/ConnectionState/OfflineState.cs @@ -10,8 +10,8 @@ namespace UUnity.BossRoom.ConnectionManagement { /// - /// Connection state corresponding to when the NetworkManager is shut down. From this state we can transition to the - /// ClientConnecting sate, if starting as a client, or the StartingHost state, if starting as a host. + /// Connection state corresponding to when the NetworkManager is shut down. From this state we can transition to the + /// ClientConnecting sate, if starting as a client, or the StartingHost state, if starting as a host. /// class OfflineState : ConnectionState { @@ -35,7 +35,7 @@ public override void Enter() } public override void Exit() { } - + public override void OnClientConnected(ulong _) { m_ConnectStatusPublisher.Publish(ConnectStatus.Success); diff --git a/Assets/Scripts/ConnectionManagement/ConnectionState/StartingHostState.cs b/Assets/Scripts/ConnectionManagement/ConnectionState/StartingHostState.cs index 7eba97728c..806dd43282 100644 --- a/Assets/Scripts/ConnectionManagement/ConnectionState/StartingHostState.cs +++ b/Assets/Scripts/ConnectionManagement/ConnectionState/StartingHostState.cs @@ -9,8 +9,8 @@ namespace Unity.BossRoom.ConnectionManagement { /// - /// Connection state corresponding to a host starting up. Starts the host when entering the state. If successful, - /// transitions to the Hosting state, if not, transitions back to the Offline state. + /// Connection state corresponding to a host starting up. Starts the host when entering the state. If successful, + /// transitions to the Hosting state, if not, transitions back to the Offline state. /// class StartingHostState : OnlineState { @@ -43,6 +43,7 @@ public override void ApprovalCheck(NetworkManager.ConnectionApprovalRequest requ { var connectionData = request.Payload; var clientId = request.ClientNetworkId; + // This happens when starting as a host, before the end of the StartHost call. In that case, we simply approve ourselves. if (clientId == m_ConnectionManager.NetworkManager.LocalClientId) { @@ -75,7 +76,7 @@ async void StartHost() if (!m_ConnectionManager.NetworkManager.StartHost()) { StartHostFailed(); - } + } } } catch (Exception) diff --git a/Assets/Scripts/Gameplay/GameState/ClientCharSelectState.cs b/Assets/Scripts/Gameplay/GameState/ClientCharSelectState.cs index c63b79cfb5..9ad111f20f 100644 --- a/Assets/Scripts/Gameplay/GameState/ClientCharSelectState.cs +++ b/Assets/Scripts/Gameplay/GameState/ClientCharSelectState.cs @@ -12,20 +12,23 @@ namespace Unity.BossRoom.Gameplay.GameState { /// - /// Client specialization of the Character Select game state. Mainly controls the UI during character-select. + /// Client specialization of the Character Select game state. Mainly controls the UI during character-select. /// [RequireComponent(typeof(NetcodeHooks))] public class ClientCharSelectState : GameStateBehaviour { /// - /// Reference to the scene's state object so that UI can access state + /// Reference to the scene's state object so that UI can access state /// public static ClientCharSelectState Instance { get; private set; } [SerializeField] NetcodeHooks m_NetcodeHooks; - public override GameState ActiveState { get { return GameState.CharSelect; } } + public override GameState ActiveState + { + get { return GameState.CharSelect; } + } [SerializeField] NetworkCharSelection m_NetworkCharSelection; @@ -49,6 +52,7 @@ public class ColorAndIndicator public Sprite Indicator; public Color Color; } + [Tooltip("Representational information for each player")] public ColorAndIndicator[] m_IdentifiersForEachPlayerNumber; @@ -68,7 +72,7 @@ public class ColorAndIndicator [SerializeField] [Tooltip("UI elements to turn on when the player has locked in their seat choice (and is now waiting for other players to do the same). Turned off otherwise!")] List m_UIElementsForSeatChosen; - + [SerializeField] [Tooltip("UI elements to turn on when the session is closed (and game is about to start). Turned off otherwise!")] List m_UIElementsForSessionEnding; @@ -95,10 +99,10 @@ public class ColorAndIndicator Dictionary m_SpawnedCharacterGraphics = new Dictionary(); /// - /// Conceptual modes or stages that the session can be in. We don't actually - /// bother to keep track of what SessionMode we're in at any given time; it's just - /// an abstraction that makes it easier to configure which UI elements should - /// be enabled/disabled in each stage of the session. + /// Conceptual modes or stages that the session can be in. We don't actually + /// bother to keep track of what SessionMode we're in at any given time; it's just + /// an abstraction that makes it easier to configure which UI elements should + /// be enabled/disabled in each stage of the session. /// enum SessionMode { @@ -175,7 +179,7 @@ void OnNetworkSpawn() } /// - /// Called when our PlayerNumber (e.g. P1, P2, etc.) has been assigned by the server + /// Called when our PlayerNumber (e.g. P1, P2, etc.) has been assigned by the server /// /// void OnAssignedPlayerNumber(int playerNum) @@ -191,7 +195,7 @@ void UpdatePlayerCount() } /// - /// Called by the server when any of the seats in the session have changed. (Including ours!) + /// Called by the server when any of the seats in the session have changed. (Including ours!) /// void OnSessionPlayerStateChanged(NetworkListEvent changeEvent) { @@ -219,6 +223,7 @@ void OnSessionPlayerStateChanged(NetworkListEvent - /// Internal utility that sets the character-graphics and class-info box based on - /// our chosen seat. It also triggers a SessionMode change when it notices that our seat-state - /// is LockedIn. + /// Internal utility that sets the character-graphics and class-info box based on + /// our chosen seat. It also triggers a SessionMode change when it notices that our seat-state + /// is LockedIn. ///
/// Our current seat state /// Which seat we're sitting in, or -1 if SeatState is Inactive @@ -271,6 +276,7 @@ void UpdateCharacterSelection(NetworkCharSelection.SeatState state, int seatIdx m_ClassInfoBox.ConfigureForClass(m_NetworkCharSelection.AvatarConfiguration[seatIdx].CharacterClass); } } + if (state == NetworkCharSelection.SeatState.LockedIn && !m_HasLocalPlayerLockedIn) { // the local player has locked in their seat choice! Rearrange the UI appropriately @@ -297,7 +303,7 @@ void UpdateCharacterSelection(NetworkCharSelection.SeatState state, int seatIdx } /// - /// Internal utility that sets the graphics for the eight session-seats (based on their current networked state) + /// Internal utility that sets the graphics for the eight session-seats (based on their current networked state) /// void UpdateSeats() { @@ -326,7 +332,7 @@ void UpdateSeats() } /// - /// Called by the server when the session closes (because all players are seated and locked in) + /// Called by the server when the session closes (because all players are seated and locked in) /// void OnSessionClosedChanged(bool wasSessionClosed, bool isSessionClosed) { @@ -349,9 +355,9 @@ void OnSessionClosedChanged(bool wasSessionClosed, bool isSessionClosed) } /// - /// Turns on the UI elements for a specified "session mode", and turns off UI elements for all other modes. - /// It can also disable/enable the session seats and the "Ready" button if they are inappropriate for the - /// given mode. + /// Turns on the UI elements for a specified "session mode", and turns off UI elements for all other modes. + /// It can also disable/enable the session seats and the "Ready" button if they are inappropriate for the + /// given mode. /// void ConfigureUIForSessionMode(SessionMode mode) { @@ -380,8 +386,10 @@ void ConfigureUIForSessionMode(SessionMode mode) { m_CurrentCharacterGraphics.gameObject.SetActive(false); } + m_ClassInfoBox.ConfigureForNoSelection(); } + m_ReadyButtonText.text = "READY!"; break; case SessionMode.SeatChosen: @@ -405,11 +413,10 @@ void ConfigureUIForSessionMode(SessionMode mode) // disable interaction if seat is already locked or all seats disabled seat.SetDisableInteraction(seat.IsLocked() || isSeatsDisabledInThisMode); } - } /// - /// Called directly by UI elements! + /// Called directly by UI elements! /// /// public void OnPlayerClickedSeat(int seatIdx) @@ -421,7 +428,7 @@ public void OnPlayerClickedSeat(int seatIdx) } /// - /// Called directly by UI elements! + /// Called directly by UI elements! /// public void OnPlayerClickedReady() { @@ -442,6 +449,5 @@ GameObject GetCharacterGraphics(Avatar avatar) return characterGraphics; } - } } diff --git a/Assets/Scripts/Gameplay/UI/Session/SessionListItemUI.cs b/Assets/Scripts/Gameplay/UI/Session/SessionListItemUI.cs index e95f17c683..3795c72e9f 100644 --- a/Assets/Scripts/Gameplay/UI/Session/SessionListItemUI.cs +++ b/Assets/Scripts/Gameplay/UI/Session/SessionListItemUI.cs @@ -7,17 +7,20 @@ namespace Unity.BossRoom.Gameplay.UI { /// - /// An individual Session UI in the list of available Sessions. + /// An individual Session UI in the list of available Sessions. /// public class SessionListItemUI : MonoBehaviour { - [SerializeField] TextMeshProUGUI m_SessionNameText; - [SerializeField] TextMeshProUGUI m_SessionCountText; + [SerializeField] + TextMeshProUGUI m_SessionNameText; + [SerializeField] + TextMeshProUGUI m_SessionCountText; - [Inject] SessionUIMediator m_SessionUIMediator; + [Inject] + SessionUIMediator m_SessionUIMediator; ISessionInfo m_Data; - + public void SetData(ISessionInfo data) { m_Data = data; diff --git a/Assets/Scripts/Gameplay/UI/Session/SessionUIMediator.cs b/Assets/Scripts/Gameplay/UI/Session/SessionUIMediator.cs index d6b3e66bfa..a2ae0dbbdc 100644 --- a/Assets/Scripts/Gameplay/UI/Session/SessionUIMediator.cs +++ b/Assets/Scripts/Gameplay/UI/Session/SessionUIMediator.cs @@ -14,15 +14,24 @@ namespace Unity.BossRoom.Gameplay.UI { public class SessionUIMediator : MonoBehaviour { - [SerializeField] CanvasGroup m_CanvasGroup; - [SerializeField] SessionJoiningUI m_SessionJoiningUI; - [SerializeField] SessionCreationUI m_SessionCreationUI; - [SerializeField] UITinter m_JoinToggleHighlight; - [SerializeField] UITinter m_JoinToggleTabBlocker; - [SerializeField] UITinter m_CreateToggleHighlight; - [SerializeField] UITinter m_CreateToggleTabBlocker; - [SerializeField] TextMeshProUGUI m_PlayerNameLabel; - [SerializeField] GameObject m_LoadingSpinner; + [SerializeField] + CanvasGroup m_CanvasGroup; + [SerializeField] + SessionJoiningUI m_SessionJoiningUI; + [SerializeField] + SessionCreationUI m_SessionCreationUI; + [SerializeField] + UITinter m_JoinToggleHighlight; + [SerializeField] + UITinter m_JoinToggleTabBlocker; + [SerializeField] + UITinter m_CreateToggleHighlight; + [SerializeField] + UITinter m_CreateToggleTabBlocker; + [SerializeField] + TextMeshProUGUI m_PlayerNameLabel; + [SerializeField] + GameObject m_LoadingSpinner; AuthenticationServiceFacade m_AuthenticationServiceFacade; MultiplayerServicesFacade m_MultiplayerServicesFacade; @@ -34,7 +43,7 @@ public class SessionUIMediator : MonoBehaviour const string k_DefaultSessionName = "no-name"; const int k_MaxPlayers = 8; - + ISession m_Session; [Inject] @@ -93,11 +102,11 @@ public async void CreateSessionRequest(string sessionName, bool isPrivate) } m_ConnectionManager.StartHostSession(m_LocalUser.DisplayName); - + var result = await m_MultiplayerServicesFacade.TryCreateSessionAsync(sessionName, k_MaxPlayers, isPrivate); HandleSessionJoinResult(result); - + UnblockUIAfterLoadingIsComplete(); } @@ -140,9 +149,9 @@ public async void JoinSessionWithCodeRequest(string sessionCode) UnblockUIAfterLoadingIsComplete(); return; } - + m_ConnectionManager.StartClientSession(m_LocalUser.DisplayName); - + var result = await m_MultiplayerServicesFacade.TryJoinSessionAsync(sessionCode, null); HandleSessionJoinResult(result); @@ -161,7 +170,7 @@ public async void JoinSessionRequest(ISessionInfo sessionInfo) } m_ConnectionManager.StartClientSession(m_LocalUser.DisplayName); - + var result = await m_MultiplayerServicesFacade.TryJoinSessionAsync(null, sessionInfo.Id); HandleSessionJoinResult(result); @@ -178,14 +187,14 @@ public async void QuickJoinRequest() UnblockUIAfterLoadingIsComplete(); return; } - + m_ConnectionManager.StartHostSession(m_LocalUser.DisplayName); - + var result = await m_MultiplayerServicesFacade.TryQuickJoinSessionAsync(); HandleSessionJoinResult(result); } - + void HandleSessionJoinResult((bool Success, ISession Session) result) { if (result.Success) @@ -204,7 +213,7 @@ void OnJoinedSession(ISession remoteSession) m_MultiplayerServicesFacade.SetRemoteSession(remoteSession); Debug.Log($"Joined session with ID: {m_LocalSession.SessionID}"); - + m_ConnectionManager.StartClientSession(m_LocalUser.DisplayName); } diff --git a/Assets/Scripts/UnityServices/Sessions/LocalSession.cs b/Assets/Scripts/UnityServices/Sessions/LocalSession.cs index 5ccca50a44..c94b0848d4 100644 --- a/Assets/Scripts/UnityServices/Sessions/LocalSession.cs +++ b/Assets/Scripts/UnityServices/Sessions/LocalSession.cs @@ -6,19 +6,20 @@ namespace Unity.BossRoom.UnityServices.Sessions { /// - /// A local wrapper around a session's remote data, with additional functionality for providing that data to UI elements and tracking local player objects. + /// A local wrapper around a session's remote data, with additional functionality for providing that data to UI + /// elements and tracking local player objects. /// [Serializable] public sealed class LocalSession { Dictionary m_SessionUsers = new(); public Dictionary sessionUsers => m_SessionUsers; - + SessionData m_Data; public SessionData Data => new(m_Data); - + public event Action changed; - + public string SessionID { get => m_Data.SessionID; @@ -110,7 +111,7 @@ public SessionData(string sessionCode) MaxPlayerCount = -1; } } - + public void AddUser(LocalSessionUser user) { if (!m_SessionUsers.ContainsKey(user.ID)) diff --git a/Assets/Scripts/UnityServices/Sessions/LocalSessionUser.cs b/Assets/Scripts/UnityServices/Sessions/LocalSessionUser.cs index 70a565a859..a0742638e1 100644 --- a/Assets/Scripts/UnityServices/Sessions/LocalSessionUser.cs +++ b/Assets/Scripts/UnityServices/Sessions/LocalSessionUser.cs @@ -5,13 +5,14 @@ namespace Unity.BossRoom.UnityServices.Sessions { /// - /// Data for a local session user instance. This will update data and is observed to know when to push local user changes to the entire session. + /// Data for a local session user instance. This will update data and is observed to know when to push local user + /// changes to the entire session. /// [Serializable] public class LocalSessionUser { UserData m_UserData; - + public event Action changed; public LocalSessionUser() @@ -39,7 +40,7 @@ public void ResetState() } /// - /// Used for limiting costly OnChanged actions to just the members which actually changed. + /// Used for limiting costly OnChanged actions to just the members which actually changed. /// [Flags] public enum UserMembers @@ -93,7 +94,6 @@ public string ID } } - public void CopyDataFrom(LocalSessionUser session) { var data = session.m_UserData; diff --git a/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs b/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs index 51be0fc127..572cf74560 100644 --- a/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs +++ b/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs @@ -11,16 +11,22 @@ namespace Unity.BossRoom.UnityServices.Sessions { /// - /// An abstraction layer between the direct calls into the Multiplayer Services SDK and the outcomes you actually want. + /// An abstraction layer between the direct calls into the Multiplayer Services SDK and the outcomes you actually want. /// public class MultiplayerServicesFacade : IDisposable, IStartable { - [Inject] LifetimeScope m_ParentScope; - [Inject] UpdateRunner m_UpdateRunner; - [Inject] LocalSession m_LocalSession; - [Inject] LocalSessionUser m_LocalUser; - [Inject] IPublisher m_UnityServiceErrorMessagePub; - [Inject] IPublisher m_SessionListFetchedPub; + [Inject] + LifetimeScope m_ParentScope; + [Inject] + UpdateRunner m_UpdateRunner; + [Inject] + LocalSession m_LocalSession; + [Inject] + LocalSessionUser m_LocalUser; + [Inject] + IPublisher m_UnityServiceErrorMessagePub; + [Inject] + IPublisher m_SessionListFetchedPub; LifetimeScope m_ServiceScope; MultiplayerServicesInterface m_MultiplayerServicesInterface; @@ -68,7 +74,7 @@ public void SetRemoteSession(ISession session) } /// - /// Initiates tracking of joined session's events. The host also starts sending heartbeat pings here. + /// Initiates tracking of joined session's events. The host also starts sending heartbeat pings here. /// public void BeginTracking() { @@ -80,7 +86,8 @@ public void BeginTracking() } /// - /// Ends tracking of joined session's events and leaves or deletes the session. The host also stops sending heartbeat pings here. + /// Ends tracking of joined session's events and leaves or deletes the session. The host also stops sending heartbeat + /// pings here. /// public void EndTracking() { @@ -104,7 +111,7 @@ public void EndTracking() } /// - /// Attempt to create a new session and then join it. + /// Attempt to create a new session and then join it. /// public async Task<(bool Success, ISession Session)> TryCreateSessionAsync(string sessionName, int maxPlayers, bool isPrivate) { @@ -132,7 +139,7 @@ public void EndTracking() } /// - /// Attempt to join an existing session. Will try to join via code, if code is null - will try to join via ID. + /// Attempt to join an existing session. Will try to join via code, if code is null - will try to join via ID. /// public async Task<(bool Success, ISession Session)> TryJoinSessionAsync(string sessionCode, string sessionId) { @@ -149,7 +156,7 @@ public void EndTracking() } Debug.Log($"Joining session with session code {sessionCode}"); - + try { if (!string.IsNullOrEmpty(sessionCode)) @@ -172,7 +179,7 @@ public void EndTracking() } /// - /// Attempt to join the first session among the available sessions that match the filtered onlineMode. + /// Attempt to join the first session among the available sessions that match the filtered onlineMode. /// public async Task<(bool Success, ISession Session)> TryQuickJoinSessionAsync() { @@ -200,6 +207,7 @@ void ResetSession() CurrentUnitySession = null; m_LocalUser?.ResetState(); m_LocalSession?.Reset(m_LocalUser); + // no need to disconnect Netcode, it should already be handled by Netcode's callback to disconnect } @@ -214,7 +222,7 @@ void SubscribeToJoinedSessionAsync() CurrentUnitySession.PlayerPropertiesChanged += OnPlayerPropertiesChanged; CurrentUnitySession.SessionPropertiesChanged += OnSessionPropertiesChanged; } - + void UnsubscribeFromJoinedSessionAsync() { CurrentUnitySession.Changed -= OnSessionChanged; @@ -226,7 +234,7 @@ void UnsubscribeFromJoinedSessionAsync() CurrentUnitySession.PlayerPropertiesChanged -= OnPlayerPropertiesChanged; CurrentUnitySession.SessionPropertiesChanged -= OnSessionPropertiesChanged; } - + void OnSessionChanged() { Debug.Log("Session changed."); @@ -245,10 +253,11 @@ void OnSessionChanged() m_UnityServiceErrorMessagePub.Publish(new UnityServiceErrorMessage("Host left the session", "Disconnecting.", UnityServiceErrorMessage.Service.Session)); EndTracking(); + // no need to disconnect Netcode, it should already be handled by Netcode's callback to disconnect } } - + void OnSessionStateChanged(SessionState sessionState) { switch (sessionState) @@ -268,31 +277,31 @@ void OnSessionStateChanged(SessionState sessionState) throw new ArgumentOutOfRangeException(nameof(sessionState), sessionState, null); } } - + void OnSessionDeleted() { Debug.Log("Session deleted."); ResetSession(); EndTracking(); } - + void OnPlayerJoined(string playerId) { Debug.Log($"Player joined: {playerId}"); } - + void OnPlayerLeft(string playerId) { Debug.Log($"Player left: {playerId}"); } - + void OnRemovedFromSession() { Debug.Log("Removed from Session."); ResetSession(); EndTracking(); } - + void OnPlayerPropertiesChanged() { Debug.Log("Player properties changed."); @@ -304,7 +313,7 @@ void OnSessionPropertiesChanged() } /// - /// Used for getting the list of all active sessions, without needing full info for each. + /// Used for getting the list of all active sessions, without needing full info for each. /// public async Task RetrieveAndPublishSessionListAsync() { @@ -340,7 +349,7 @@ public async Task ReconnectToSessionAsync() } /// - /// Attempt to leave a session + /// Attempt to leave a session /// async void LeaveSessionAsync() { @@ -356,7 +365,6 @@ async void LeaveSessionAsync() { ResetSession(); } - } public async void RemovePlayerFromSessionAsync(string uasId) @@ -402,7 +410,7 @@ async void DeleteSessionAsync() } /// - /// Attempt to update the set of key-value pairs associated with a given session and unlocks it so clients can see it. + /// Attempt to update the set of key-value pairs associated with a given session and unlocks it so clients can see it. /// public async Task UpdateSessionPropertiesAndUnlockAsync() { @@ -410,7 +418,7 @@ public async Task UpdateSessionPropertiesAndUnlockAsync() { return; } - + if (!m_RateLimitQuery.CanCall) { return; @@ -443,13 +451,13 @@ void PublishError(Exception e, bool checkIfDeleted = false) m_UnityServiceErrorMessagePub.Publish(new UnityServiceErrorMessage("Session Error", e.Message, UnityServiceErrorMessage.Service.Session, e)); return; } - + if (aggregateException.InnerException is not SessionException sessionException) { m_UnityServiceErrorMessagePub.Publish(new UnityServiceErrorMessage("Session Error", e.Message, UnityServiceErrorMessage.Service.Session, e)); return; } - + // If session is not found and if we are not the host, it has already been deleted. No need to publish the error here. if (checkIfDeleted) { @@ -458,13 +466,13 @@ void PublishError(Exception e, bool checkIfDeleted = false) return; } } - + if (sessionException.Error == SessionError.RateLimitExceeded) { m_RateLimitJoin.PutOnCooldown(); return; } - + var reason = e.InnerException == null ? e.Message : $"{e.Message} ({e.InnerException.Message})"; // Session error type, then HTTP error type. m_UnityServiceErrorMessagePub.Publish(new UnityServiceErrorMessage("Session Error", reason, UnityServiceErrorMessage.Service.Session, e)); } diff --git a/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesInterface.cs b/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesInterface.cs index bb751cea30..8d2a65a5ba 100644 --- a/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesInterface.cs +++ b/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesInterface.cs @@ -7,7 +7,7 @@ namespace Unity.BossRoom.UnityServices.Sessions { /// - /// Wrapper for all the interactions with the Sessions API. + /// Wrapper for all the interactions with the Sessions API. /// public class MultiplayerServicesInterface { @@ -43,7 +43,7 @@ public async Task CreateSession(string sessionName, int maxPlayers, bo PlayerProperties = playerProperties, SessionProperties = sessionProperties }.WithRelayNetwork(); - + return await MultiplayerService.Instance.CreateSessionAsync(sessionOptions); } @@ -53,7 +53,7 @@ public async Task JoinSessionByCode(string sessionCode, Dictionary JoinSessionById(string sessionId, Dictionary localUserData) @@ -69,16 +69,16 @@ public async Task QuickJoinSession(Dictionary { var quickJoinOptions = new QuickJoinOptions { - Filters = m_FilterOptions, + Filters = m_FilterOptions, CreateSession = true // create a Session if no matching Session was found }; - + var sessionOptions = new SessionOptions { MaxPlayers = k_MaxPlayers, PlayerProperties = localUserData }.WithRelayNetwork(); - + return await MultiplayerService.Instance.MatchmakeSessionAsync(quickJoinOptions, sessionOptions); } From 5c54677f5dca2b413f3cfa7916bbd4411ffba3a0 Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Thu, 21 Nov 2024 15:41:45 +0100 Subject: [PATCH 41/57] chore: another whitespace fix --- .../ConnectionState/ClientConnectingState.cs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Assets/Scripts/ConnectionManagement/ConnectionState/ClientConnectingState.cs b/Assets/Scripts/ConnectionManagement/ConnectionState/ClientConnectingState.cs index 48d690481b..252c6facda 100644 --- a/Assets/Scripts/ConnectionManagement/ConnectionState/ClientConnectingState.cs +++ b/Assets/Scripts/ConnectionManagement/ConnectionState/ClientConnectingState.cs @@ -5,8 +5,8 @@ namespace Unity.BossRoom.ConnectionManagement { /// - /// Connection state corresponding to when a client is attempting to connect to a server. Starts the client when - /// entering. If successful, transitions to the ClientConnected state. If not, transitions to the Offline state. + /// Connection state corresponding to when a client is attempting to connect to a server. Starts the client when + /// entering. If successful, transitions to the ClientConnected state. If not, transitions to the Offline state. /// class ClientConnectingState : OnlineState { @@ -51,10 +51,10 @@ void StartingClientFailed() var connectStatus = JsonUtility.FromJson(disconnectReason); m_ConnectStatusPublisher.Publish(connectStatus); } + m_ConnectionManager.ChangeState(m_ConnectionManager.m_Offline); } - internal async Task ConnectClientAsync() { try @@ -66,7 +66,7 @@ internal async Task ConnectClientAsync() if (!m_ConnectionManager.NetworkManager.StartClient()) { throw new Exception("NetworkManager StartClient failed"); - } + } } } catch (Exception e) From be84715b00a0e07f0e154f6900b67a8c78de2090 Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Tue, 26 Nov 2024 10:36:28 +0100 Subject: [PATCH 42/57] fix: revert tabs in comments that were added by auto-cleanup --- .../ConnectionManagement/ConnectionMethod.cs | 20 +++++------ .../ConnectionState/ClientConnectingState.cs | 4 +-- .../ConnectionState/ConnectionState.cs | 2 +- .../ConnectionState/OfflineState.cs | 4 +-- .../ConnectionState/StartingHostState.cs | 4 +-- .../GameState/ClientCharSelectState.cs | 36 +++++++++---------- .../Gameplay/UI/Session/SessionListItemUI.cs | 2 +- .../UnityServices/Sessions/LocalSession.cs | 4 +-- .../Sessions/LocalSessionUser.cs | 6 ++-- .../Sessions/MultiplayerServicesFacade.cs | 20 +++++------ .../Sessions/MultiplayerServicesInterface.cs | 2 +- 11 files changed, 52 insertions(+), 52 deletions(-) diff --git a/Assets/Scripts/ConnectionManagement/ConnectionMethod.cs b/Assets/Scripts/ConnectionManagement/ConnectionMethod.cs index ec4371bfbb..b157daa1e3 100644 --- a/Assets/Scripts/ConnectionManagement/ConnectionMethod.cs +++ b/Assets/Scripts/ConnectionManagement/ConnectionMethod.cs @@ -9,9 +9,9 @@ namespace Unity.BossRoom.ConnectionManagement { /// - /// ConnectionMethod contains all setup needed to setup NGO to be ready to start a connection, either host or client - /// side. - /// Please override this abstract class to add a new transport or way of connecting. + /// ConnectionMethod contains all setup needed to setup NGO to be ready to start a connection, either host or client + /// side. + /// Please override this abstract class to add a new transport or way of connecting. /// public abstract class ConnectionMethodBase { @@ -20,23 +20,23 @@ public abstract class ConnectionMethodBase protected readonly string m_PlayerName; /// - /// Setup the host connection prior to starting the NetworkManager + /// Setup the host connection prior to starting the NetworkManager /// /// public abstract Task SetupHostConnectionAsync(); /// - /// Setup the client connection prior to starting the NetworkManager + /// Setup the client connection prior to starting the NetworkManager /// /// public abstract void SetupClientConnectionAsync(); /// - /// Setup the client for reconnection prior to reconnecting + /// Setup the client for reconnection prior to reconnecting /// /// - /// success = true if succeeded in setting up reconnection, false if failed. - /// shouldTryAgain = true if we should try again after failing, false if not. + /// success = true if succeeded in setting up reconnection, false if failed. + /// shouldTryAgain = true if we should try again after failing, false if not. /// public abstract Task<(bool success, bool shouldTryAgain)> SetupClientReconnectionAsync(); @@ -80,7 +80,7 @@ protected string GetPlayerId() } /// - /// Simple IP connection setup with UTP + /// Simple IP connection setup with UTP /// class ConnectionMethodIP : ConnectionMethodBase { @@ -117,7 +117,7 @@ public override async Task SetupHostConnectionAsync() } /// - /// UTP's Relay connection setup using the Session integration + /// UTP's Relay connection setup using the Session integration /// class ConnectionMethodRelay : ConnectionMethodBase { diff --git a/Assets/Scripts/ConnectionManagement/ConnectionState/ClientConnectingState.cs b/Assets/Scripts/ConnectionManagement/ConnectionState/ClientConnectingState.cs index 252c6facda..1354230917 100644 --- a/Assets/Scripts/ConnectionManagement/ConnectionState/ClientConnectingState.cs +++ b/Assets/Scripts/ConnectionManagement/ConnectionState/ClientConnectingState.cs @@ -5,8 +5,8 @@ namespace Unity.BossRoom.ConnectionManagement { /// - /// Connection state corresponding to when a client is attempting to connect to a server. Starts the client when - /// entering. If successful, transitions to the ClientConnected state. If not, transitions to the Offline state. + /// Connection state corresponding to when a client is attempting to connect to a server. Starts the client when + /// entering. If successful, transitions to the ClientConnected state. If not, transitions to the Offline state. /// class ClientConnectingState : OnlineState { diff --git a/Assets/Scripts/ConnectionManagement/ConnectionState/ConnectionState.cs b/Assets/Scripts/ConnectionManagement/ConnectionState/ConnectionState.cs index 4ebf6b08e6..a7d8eecc58 100644 --- a/Assets/Scripts/ConnectionManagement/ConnectionState/ConnectionState.cs +++ b/Assets/Scripts/ConnectionManagement/ConnectionState/ConnectionState.cs @@ -7,7 +7,7 @@ namespace Unity.BossRoom.ConnectionManagement { /// - /// Base class representing a connection state. + /// Base class representing a connection state. /// abstract class ConnectionState { diff --git a/Assets/Scripts/ConnectionManagement/ConnectionState/OfflineState.cs b/Assets/Scripts/ConnectionManagement/ConnectionState/OfflineState.cs index aede55da52..e5b9d63ce3 100644 --- a/Assets/Scripts/ConnectionManagement/ConnectionState/OfflineState.cs +++ b/Assets/Scripts/ConnectionManagement/ConnectionState/OfflineState.cs @@ -10,8 +10,8 @@ namespace UUnity.BossRoom.ConnectionManagement { /// - /// Connection state corresponding to when the NetworkManager is shut down. From this state we can transition to the - /// ClientConnecting sate, if starting as a client, or the StartingHost state, if starting as a host. + /// Connection state corresponding to when the NetworkManager is shut down. From this state we can transition to the + /// ClientConnecting sate, if starting as a client, or the StartingHost state, if starting as a host. /// class OfflineState : ConnectionState { diff --git a/Assets/Scripts/ConnectionManagement/ConnectionState/StartingHostState.cs b/Assets/Scripts/ConnectionManagement/ConnectionState/StartingHostState.cs index 806dd43282..c238ea86b6 100644 --- a/Assets/Scripts/ConnectionManagement/ConnectionState/StartingHostState.cs +++ b/Assets/Scripts/ConnectionManagement/ConnectionState/StartingHostState.cs @@ -9,8 +9,8 @@ namespace Unity.BossRoom.ConnectionManagement { /// - /// Connection state corresponding to a host starting up. Starts the host when entering the state. If successful, - /// transitions to the Hosting state, if not, transitions back to the Offline state. + /// Connection state corresponding to a host starting up. Starts the host when entering the state. If successful, + /// transitions to the Hosting state, if not, transitions back to the Offline state. /// class StartingHostState : OnlineState { diff --git a/Assets/Scripts/Gameplay/GameState/ClientCharSelectState.cs b/Assets/Scripts/Gameplay/GameState/ClientCharSelectState.cs index 9ad111f20f..930af4bec1 100644 --- a/Assets/Scripts/Gameplay/GameState/ClientCharSelectState.cs +++ b/Assets/Scripts/Gameplay/GameState/ClientCharSelectState.cs @@ -12,13 +12,13 @@ namespace Unity.BossRoom.Gameplay.GameState { /// - /// Client specialization of the Character Select game state. Mainly controls the UI during character-select. + /// Client specialization of the Character Select game state. Mainly controls the UI during character-select. /// [RequireComponent(typeof(NetcodeHooks))] public class ClientCharSelectState : GameStateBehaviour { /// - /// Reference to the scene's state object so that UI can access state + /// Reference to the scene's state object so that UI can access state /// public static ClientCharSelectState Instance { get; private set; } @@ -99,10 +99,10 @@ public class ColorAndIndicator Dictionary m_SpawnedCharacterGraphics = new Dictionary(); /// - /// Conceptual modes or stages that the session can be in. We don't actually - /// bother to keep track of what SessionMode we're in at any given time; it's just - /// an abstraction that makes it easier to configure which UI elements should - /// be enabled/disabled in each stage of the session. + /// Conceptual modes or stages that the session can be in. We don't actually + /// bother to keep track of what SessionMode we're in at any given time; it's just + /// an abstraction that makes it easier to configure which UI elements should + /// be enabled/disabled in each stage of the session. /// enum SessionMode { @@ -179,7 +179,7 @@ void OnNetworkSpawn() } /// - /// Called when our PlayerNumber (e.g. P1, P2, etc.) has been assigned by the server + /// Called when our PlayerNumber (e.g. P1, P2, etc.) has been assigned by the server /// /// void OnAssignedPlayerNumber(int playerNum) @@ -195,7 +195,7 @@ void UpdatePlayerCount() } /// - /// Called by the server when any of the seats in the session have changed. (Including ours!) + /// Called by the server when any of the seats in the session have changed. (Including ours!) /// void OnSessionPlayerStateChanged(NetworkListEvent changeEvent) { @@ -235,9 +235,9 @@ void OnSessionPlayerStateChanged(NetworkListEvent - /// Internal utility that sets the character-graphics and class-info box based on - /// our chosen seat. It also triggers a SessionMode change when it notices that our seat-state - /// is LockedIn. + /// Internal utility that sets the character-graphics and class-info box based on + /// our chosen seat. It also triggers a SessionMode change when it notices that our seat-state + /// is LockedIn. ///
/// Our current seat state /// Which seat we're sitting in, or -1 if SeatState is Inactive @@ -303,7 +303,7 @@ void UpdateCharacterSelection(NetworkCharSelection.SeatState state, int seatIdx } /// - /// Internal utility that sets the graphics for the eight session-seats (based on their current networked state) + /// Internal utility that sets the graphics for the eight session-seats (based on their current networked state) /// void UpdateSeats() { @@ -332,7 +332,7 @@ void UpdateSeats() } /// - /// Called by the server when the session closes (because all players are seated and locked in) + /// Called by the server when the session closes (because all players are seated and locked in) /// void OnSessionClosedChanged(bool wasSessionClosed, bool isSessionClosed) { @@ -355,9 +355,9 @@ void OnSessionClosedChanged(bool wasSessionClosed, bool isSessionClosed) } /// - /// Turns on the UI elements for a specified "session mode", and turns off UI elements for all other modes. - /// It can also disable/enable the session seats and the "Ready" button if they are inappropriate for the - /// given mode. + /// Turns on the UI elements for a specified "session mode", and turns off UI elements for all other modes. + /// It can also disable/enable the session seats and the "Ready" button if they are inappropriate for the + /// given mode. /// void ConfigureUIForSessionMode(SessionMode mode) { @@ -416,7 +416,7 @@ void ConfigureUIForSessionMode(SessionMode mode) } /// - /// Called directly by UI elements! + /// Called directly by UI elements! /// /// public void OnPlayerClickedSeat(int seatIdx) @@ -428,7 +428,7 @@ public void OnPlayerClickedSeat(int seatIdx) } /// - /// Called directly by UI elements! + /// Called directly by UI elements! /// public void OnPlayerClickedReady() { diff --git a/Assets/Scripts/Gameplay/UI/Session/SessionListItemUI.cs b/Assets/Scripts/Gameplay/UI/Session/SessionListItemUI.cs index 3795c72e9f..63804e964c 100644 --- a/Assets/Scripts/Gameplay/UI/Session/SessionListItemUI.cs +++ b/Assets/Scripts/Gameplay/UI/Session/SessionListItemUI.cs @@ -7,7 +7,7 @@ namespace Unity.BossRoom.Gameplay.UI { /// - /// An individual Session UI in the list of available Sessions. + /// An individual Session UI in the list of available Sessions. /// public class SessionListItemUI : MonoBehaviour { diff --git a/Assets/Scripts/UnityServices/Sessions/LocalSession.cs b/Assets/Scripts/UnityServices/Sessions/LocalSession.cs index c94b0848d4..4adb4c2942 100644 --- a/Assets/Scripts/UnityServices/Sessions/LocalSession.cs +++ b/Assets/Scripts/UnityServices/Sessions/LocalSession.cs @@ -6,8 +6,8 @@ namespace Unity.BossRoom.UnityServices.Sessions { /// - /// A local wrapper around a session's remote data, with additional functionality for providing that data to UI - /// elements and tracking local player objects. + /// A local wrapper around a session's remote data, with additional functionality for providing that data to UI + /// elements and tracking local player objects. /// [Serializable] public sealed class LocalSession diff --git a/Assets/Scripts/UnityServices/Sessions/LocalSessionUser.cs b/Assets/Scripts/UnityServices/Sessions/LocalSessionUser.cs index a0742638e1..cbf7004515 100644 --- a/Assets/Scripts/UnityServices/Sessions/LocalSessionUser.cs +++ b/Assets/Scripts/UnityServices/Sessions/LocalSessionUser.cs @@ -5,8 +5,8 @@ namespace Unity.BossRoom.UnityServices.Sessions { /// - /// Data for a local session user instance. This will update data and is observed to know when to push local user - /// changes to the entire session. + /// Data for a local session user instance. This will update data and is observed to know when to push local user + /// changes to the entire session. /// [Serializable] public class LocalSessionUser @@ -40,7 +40,7 @@ public void ResetState() } /// - /// Used for limiting costly OnChanged actions to just the members which actually changed. + /// Used for limiting costly OnChanged actions to just the members which actually changed. /// [Flags] public enum UserMembers diff --git a/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs b/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs index 572cf74560..294a5b7306 100644 --- a/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs +++ b/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs @@ -11,7 +11,7 @@ namespace Unity.BossRoom.UnityServices.Sessions { /// - /// An abstraction layer between the direct calls into the Multiplayer Services SDK and the outcomes you actually want. + /// An abstraction layer between the direct calls into the Multiplayer Services SDK and the outcomes you actually want. /// public class MultiplayerServicesFacade : IDisposable, IStartable { @@ -74,7 +74,7 @@ public void SetRemoteSession(ISession session) } /// - /// Initiates tracking of joined session's events. The host also starts sending heartbeat pings here. + /// Initiates tracking of joined session's events. The host also starts sending heartbeat pings here. /// public void BeginTracking() { @@ -86,8 +86,8 @@ public void BeginTracking() } /// - /// Ends tracking of joined session's events and leaves or deletes the session. The host also stops sending heartbeat - /// pings here. + /// Ends tracking of joined session's events and leaves or deletes the session. The host also stops sending heartbeat + /// pings here. /// public void EndTracking() { @@ -111,7 +111,7 @@ public void EndTracking() } /// - /// Attempt to create a new session and then join it. + /// Attempt to create a new session and then join it. /// public async Task<(bool Success, ISession Session)> TryCreateSessionAsync(string sessionName, int maxPlayers, bool isPrivate) { @@ -139,7 +139,7 @@ public void EndTracking() } /// - /// Attempt to join an existing session. Will try to join via code, if code is null - will try to join via ID. + /// Attempt to join an existing session. Will try to join via code, if code is null - will try to join via ID. /// public async Task<(bool Success, ISession Session)> TryJoinSessionAsync(string sessionCode, string sessionId) { @@ -179,7 +179,7 @@ public void EndTracking() } /// - /// Attempt to join the first session among the available sessions that match the filtered onlineMode. + /// Attempt to join the first session among the available sessions that match the filtered onlineMode. /// public async Task<(bool Success, ISession Session)> TryQuickJoinSessionAsync() { @@ -313,7 +313,7 @@ void OnSessionPropertiesChanged() } /// - /// Used for getting the list of all active sessions, without needing full info for each. + /// Used for getting the list of all active sessions, without needing full info for each. /// public async Task RetrieveAndPublishSessionListAsync() { @@ -349,7 +349,7 @@ public async Task ReconnectToSessionAsync() } /// - /// Attempt to leave a session + /// Attempt to leave a session /// async void LeaveSessionAsync() { @@ -410,7 +410,7 @@ async void DeleteSessionAsync() } /// - /// Attempt to update the set of key-value pairs associated with a given session and unlocks it so clients can see it. + /// Attempt to update the set of key-value pairs associated with a given session and unlocks it so clients can see it. /// public async Task UpdateSessionPropertiesAndUnlockAsync() { diff --git a/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesInterface.cs b/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesInterface.cs index 8d2a65a5ba..c2cc9275f6 100644 --- a/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesInterface.cs +++ b/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesInterface.cs @@ -7,7 +7,7 @@ namespace Unity.BossRoom.UnityServices.Sessions { /// - /// Wrapper for all the interactions with the Sessions API. + /// Wrapper for all the interactions with the Sessions API. /// public class MultiplayerServicesInterface { From 90a0914797342b73027146151007339ea6f13cb8 Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Tue, 26 Nov 2024 11:11:57 +0100 Subject: [PATCH 43/57] review: remove redundant async --- .../ConnectionManagement/ConnectionMethod.cs | 14 ++++++-------- .../ConnectionState/ClientConnectingState.cs | 2 +- .../ConnectionState/StartingHostState.cs | 4 ++-- 3 files changed, 9 insertions(+), 11 deletions(-) diff --git a/Assets/Scripts/ConnectionManagement/ConnectionMethod.cs b/Assets/Scripts/ConnectionManagement/ConnectionMethod.cs index b157daa1e3..5c0e02db1c 100644 --- a/Assets/Scripts/ConnectionManagement/ConnectionMethod.cs +++ b/Assets/Scripts/ConnectionManagement/ConnectionMethod.cs @@ -23,13 +23,13 @@ public abstract class ConnectionMethodBase /// Setup the host connection prior to starting the NetworkManager /// /// - public abstract Task SetupHostConnectionAsync(); + public abstract void SetupHostConnection(); /// /// Setup the client connection prior to starting the NetworkManager /// /// - public abstract void SetupClientConnectionAsync(); + public abstract void SetupClientConnection(); /// /// Setup the client for reconnection prior to reconnecting @@ -95,7 +95,7 @@ public ConnectionMethodIP(string ip, ushort port, ConnectionManager connectionMa m_ConnectionManager = connectionManager; } - public override void SetupClientConnectionAsync() + public override void SetupClientConnection() { SetConnectionPayload(GetPlayerId(), m_PlayerName); var utp = (UnityTransport)m_ConnectionManager.NetworkManager.NetworkConfig.NetworkTransport; @@ -108,7 +108,7 @@ public override void SetupClientConnectionAsync() return (true, true); } - public override async Task SetupHostConnectionAsync() + public override void SetupHostConnection() { SetConnectionPayload(GetPlayerId(), m_PlayerName); // Need to set connection payload for host as well, as host is a client too var utp = (UnityTransport)m_ConnectionManager.NetworkManager.NetworkConfig.NetworkTransport; @@ -123,8 +123,6 @@ class ConnectionMethodRelay : ConnectionMethodBase { MultiplayerServicesFacade m_MultiplayerServicesFacade; - bool m_IsPrivate = true; - public ConnectionMethodRelay(MultiplayerServicesFacade multiplayerServicesFacade, ConnectionManager connectionManager, ProfileManager profileManager, @@ -135,7 +133,7 @@ public ConnectionMethodRelay(MultiplayerServicesFacade multiplayerServicesFacade m_ConnectionManager = connectionManager; } - public override void SetupClientConnectionAsync() + public override void SetupClientConnection() { SetConnectionPayload(GetPlayerId(), m_PlayerName); } @@ -159,7 +157,7 @@ public override void SetupClientConnectionAsync() return (success, true); // return a success if reconnecting to session returns a session } - public override async Task SetupHostConnectionAsync() + public override void SetupHostConnection() { Debug.Log("Setting up Unity Relay host"); diff --git a/Assets/Scripts/ConnectionManagement/ConnectionState/ClientConnectingState.cs b/Assets/Scripts/ConnectionManagement/ConnectionState/ClientConnectingState.cs index 1354230917..7039afae1c 100644 --- a/Assets/Scripts/ConnectionManagement/ConnectionState/ClientConnectingState.cs +++ b/Assets/Scripts/ConnectionManagement/ConnectionState/ClientConnectingState.cs @@ -59,7 +59,7 @@ internal async Task ConnectClientAsync() { try { - m_ConnectionMethod.SetupClientConnectionAsync(); + m_ConnectionMethod.SetupClientConnection(); if (m_ConnectionMethod is ConnectionMethodIP) { diff --git a/Assets/Scripts/ConnectionManagement/ConnectionState/StartingHostState.cs b/Assets/Scripts/ConnectionManagement/ConnectionState/StartingHostState.cs index c238ea86b6..502e5f5cdc 100644 --- a/Assets/Scripts/ConnectionManagement/ConnectionState/StartingHostState.cs +++ b/Assets/Scripts/ConnectionManagement/ConnectionState/StartingHostState.cs @@ -64,11 +64,11 @@ public override void OnServerStopped() StartHostFailed(); } - async void StartHost() + void StartHost() { try { - await m_ConnectionMethod.SetupHostConnectionAsync(); + m_ConnectionMethod.SetupHostConnection(); if (m_ConnectionMethod is ConnectionMethodIP) { From e10079c4bf8500457e7b6bbbbecb0a28af5e6e5b Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Tue, 26 Nov 2024 11:12:10 +0100 Subject: [PATCH 44/57] review: fix docs link --- Assets/Scripts/ConnectionManagement/ConnectionMethod.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Assets/Scripts/ConnectionManagement/ConnectionMethod.cs b/Assets/Scripts/ConnectionManagement/ConnectionMethod.cs index 5c0e02db1c..3ccffda8c8 100644 --- a/Assets/Scripts/ConnectionManagement/ConnectionMethod.cs +++ b/Assets/Scripts/ConnectionManagement/ConnectionMethod.cs @@ -150,7 +150,7 @@ public override void SetupClientConnection() // Session service and mark the user as disconnected, but will not remove them from the Session. They then have // some time to attempt to reconnect (defined by the "Disconnect removal time" parameter on the dashboard), // after which they will be removed from the Session completely. - // See https://docs.unity.com/lobby/reconnect-to-lobby.html + // See https://docs.unity.com/ugs/en-us/manual/mps-sdk/manual/join-session#Reconnect_to_a_session var session = await m_MultiplayerServicesFacade.ReconnectToSessionAsync(); var success = session != null; Debug.Log(success ? "Successfully reconnected to Session." : "Failed to reconnect to Session."); From ff5f860c611572b86fbfb3aceccf85cb7a7448d0 Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Tue, 26 Nov 2024 14:38:46 +0100 Subject: [PATCH 45/57] review: no need to unblock UI here --- Assets/Scripts/Gameplay/UI/Session/SessionUIMediator.cs | 2 -- 1 file changed, 2 deletions(-) diff --git a/Assets/Scripts/Gameplay/UI/Session/SessionUIMediator.cs b/Assets/Scripts/Gameplay/UI/Session/SessionUIMediator.cs index a2ae0dbbdc..7acef08e6e 100644 --- a/Assets/Scripts/Gameplay/UI/Session/SessionUIMediator.cs +++ b/Assets/Scripts/Gameplay/UI/Session/SessionUIMediator.cs @@ -106,8 +106,6 @@ public async void CreateSessionRequest(string sessionName, bool isPrivate) var result = await m_MultiplayerServicesFacade.TryCreateSessionAsync(sessionName, k_MaxPlayers, isPrivate); HandleSessionJoinResult(result); - - UnblockUIAfterLoadingIsComplete(); } public async void QuerySessionRequest(bool blockUI) From 0a32dfb549abd47b83f180c90caeec7f7773e8a7 Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Tue, 26 Nov 2024 14:41:00 +0100 Subject: [PATCH 46/57] review: remove unused fields --- .../UnityServices/Sessions/LocalSession.cs | 35 +------------------ .../Sessions/MultiplayerServicesFacade.cs | 2 +- 2 files changed, 2 insertions(+), 35 deletions(-) diff --git a/Assets/Scripts/UnityServices/Sessions/LocalSession.cs b/Assets/Scripts/UnityServices/Sessions/LocalSession.cs index 4adb4c2942..afc1bdf300 100644 --- a/Assets/Scripts/UnityServices/Sessions/LocalSession.cs +++ b/Assets/Scripts/UnityServices/Sessions/LocalSession.cs @@ -16,7 +16,6 @@ public sealed class LocalSession public Dictionary sessionUsers => m_SessionUsers; SessionData m_Data; - public SessionData Data => new(m_Data); public event Action changed; @@ -50,38 +49,6 @@ public string RelayJoinCode } } - public string SessionName - { - get => m_Data.SessionName; - set - { - m_Data.SessionName = value; - OnChanged(); - } - } - - public bool Private - { - get => m_Data.Private; - set - { - m_Data.Private = value; - OnChanged(); - } - } - - public int PlayerCount => m_SessionUsers.Count; - - public int MaxPlayerCount - { - get => m_Data.MaxPlayerCount; - set - { - m_Data.MaxPlayerCount = value; - OnChanged(); - } - } - public struct SessionData { public string SessionID { get; set; } @@ -247,7 +214,7 @@ public void ApplyRemoteData(ISession session) CopyDataFrom(info, localSessionUsers); } - public void Reset(LocalSessionUser localUser) + public void Reset() { CopyDataFrom(new SessionData(), new Dictionary()); } diff --git a/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs b/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs index 294a5b7306..da3a2ba973 100644 --- a/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs +++ b/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs @@ -206,7 +206,7 @@ void ResetSession() { CurrentUnitySession = null; m_LocalUser?.ResetState(); - m_LocalSession?.Reset(m_LocalUser); + m_LocalSession?.Reset(); // no need to disconnect Netcode, it should already be handled by Netcode's callback to disconnect } From 33ec7861012c04b72987742f953262f445b4a674 Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Tue, 26 Nov 2024 14:49:47 +0100 Subject: [PATCH 47/57] review: remove todo --- Assets/Scripts/UnityServices/Sessions/LocalSession.cs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Assets/Scripts/UnityServices/Sessions/LocalSession.cs b/Assets/Scripts/UnityServices/Sessions/LocalSession.cs index afc1bdf300..e0c6ee55d6 100644 --- a/Assets/Scripts/UnityServices/Sessions/LocalSession.cs +++ b/Assets/Scripts/UnityServices/Sessions/LocalSession.cs @@ -174,10 +174,9 @@ public void ApplyRemoteData(ISession session) info.SessionID = session.Id; info.SessionName = session.Name; info.MaxPlayerCount = session.MaxPlayers; - - // TODO: PROPERTIES NOT PART OF ISESSION INFO, ONLY OF ISESSION! info.SessionCode = session.Code; info.Private = session.IsPrivate; + if (session.Properties != null) { info.RelayJoinCode = session.Properties.TryGetValue("RelayJoinCode", out var property) ? property.Value : null; // By providing RelayCode through the session properties with Member visibility, we ensure a client is connected to the session before they could attempt a relay connection, preventing timing issues between them. From 6e837317bbceeeb5be2314cc24f2925539d449fd Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Tue, 26 Nov 2024 14:50:27 +0100 Subject: [PATCH 48/57] review: remove unused method --- .../Sessions/MultiplayerServicesFacade.cs | 36 ------------------- 1 file changed, 36 deletions(-) diff --git a/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs b/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs index da3a2ba973..4ef72cc2e5 100644 --- a/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs +++ b/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs @@ -1,5 +1,4 @@ using System; -using System.Collections.Generic; using System.Threading.Tasks; using Unity.BossRoom.Infrastructure; using Unity.Services.Authentication; @@ -409,41 +408,6 @@ async void DeleteSessionAsync() } } - /// - /// Attempt to update the set of key-value pairs associated with a given session and unlocks it so clients can see it. - /// - public async Task UpdateSessionPropertiesAndUnlockAsync() - { - if (!m_LocalUser.IsHost) - { - return; - } - - if (!m_RateLimitQuery.CanCall) - { - return; - } - - var localData = m_LocalSession.GetDataForUnityServices(); - - var dataCurr = (Dictionary)CurrentUnitySession.Properties ?? new Dictionary(); - - foreach (var dataNew in localData) - { - dataCurr[dataNew.Key] = dataNew.Value; - } - - try - { - CurrentUnitySession.AsHost().SetProperties(dataCurr); - await CurrentUnitySession.AsHost().SavePropertiesAsync(); - } - catch (Exception e) - { - PublishError(e); - } - } - void PublishError(Exception e, bool checkIfDeleted = false) { if (e is not AggregateException aggregateException) From 780e631964ef89f86bd23e4c6589519dae223e8d Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Tue, 26 Nov 2024 14:51:54 +0100 Subject: [PATCH 49/57] review: specify MPS SDK version and PR number --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 496e5c4fe3..04dde187f2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -15,7 +15,7 @@ Additional documentation and release notes are available at [Multiplayer Documen ### Changed * Upgraded Boss Room to Netcode for GameObjects v2.0.0 * Upgraded editor version to 6000.0.25f1 -* Replaced Lobby and Relay standalone packages with the Multiplayer Services package and the Sessions framework +* Replaced Lobby and Relay standalone packages with the Multiplayer Services package v1.0.2 and the Sessions framework (#892) ### Cleanup * Removed ParrelSync from the project From 69f62f185833254d59910843b123591713fac99c Mon Sep 17 00:00:00 2001 From: Fabian Stoll <6150977+FabianStoll@users.noreply.github.com> Date: Tue, 26 Nov 2024 15:27:10 +0100 Subject: [PATCH 50/57] review: update README.md Co-authored-by: Fernando Cortez --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index fc63fef11a..eab29ebcfe 100644 --- a/README.md +++ b/README.md @@ -135,7 +135,7 @@ Code is organized in domain-based assemblies. See the [Boss Room architecture do ### Registering the project with Unity Gaming Services (UGS) -Boss Room leverages several services from UGS to facilitate connectivity between players. To use these services inside your project, you must [create an organization](https://support.unity.com/hc/en-us/articles/208592876-How-do-I-create-a-new-Organization-) inside the Unity Dashboard.. Otherwise, you can still use Boss Room without UGS. +Boss Room leverages several services from UGS to facilitate connectivity between players. To use these services inside your project, you must [create an organization](https://support.unity.com/hc/en-us/articles/208592876-How-do-I-create-a-new-Organization-) inside the Unity Dashboard. Otherwise, you can still use Boss Room without UGS.


## Testing multiplayer From c3e4d0b7eb855d85ae0bdbbf3fe1e455150068ea Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Tue, 26 Nov 2024 16:23:40 +0100 Subject: [PATCH 51/57] review: update changelog of package --- Packages/com.unity.multiplayer.samples.coop/CHANGELOG.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Packages/com.unity.multiplayer.samples.coop/CHANGELOG.md b/Packages/com.unity.multiplayer.samples.coop/CHANGELOG.md index d3af256181..e063055625 100644 --- a/Packages/com.unity.multiplayer.samples.coop/CHANGELOG.md +++ b/Packages/com.unity.multiplayer.samples.coop/CHANGELOG.md @@ -1,5 +1,11 @@ # Multiplayer Samples Co-op Changelog +## [Unreleased] + +### Changed +* Replaced Lobby and Relay standalone packages with the Multiplayer Services package v1.0.2 +* Removed UnityRelayUtilities + ## [1.9.0] - 2024-04-18 ### Changed From 931ee3d7b7256a645d277704b93d295792f47aea Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Tue, 26 Nov 2024 16:28:02 +0100 Subject: [PATCH 52/57] fix: whitespaces --- Assets/Scripts/UnityServices/Sessions/LocalSession.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Assets/Scripts/UnityServices/Sessions/LocalSession.cs b/Assets/Scripts/UnityServices/Sessions/LocalSession.cs index e0c6ee55d6..58de13f0a3 100644 --- a/Assets/Scripts/UnityServices/Sessions/LocalSession.cs +++ b/Assets/Scripts/UnityServices/Sessions/LocalSession.cs @@ -176,7 +176,7 @@ public void ApplyRemoteData(ISession session) info.MaxPlayerCount = session.MaxPlayers; info.SessionCode = session.Code; info.Private = session.IsPrivate; - + if (session.Properties != null) { info.RelayJoinCode = session.Properties.TryGetValue("RelayJoinCode", out var property) ? property.Value : null; // By providing RelayCode through the session properties with Member visibility, we ensure a client is connected to the session before they could attempt a relay connection, preventing timing issues between them. From d3074e2cfb009dcf23d276633bce71afcef8a42e Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Wed, 27 Nov 2024 11:44:15 +0100 Subject: [PATCH 53/57] review: remove unneeded callback --- .../ConnectionManagement/ConnectionState/OfflineState.cs | 6 ------ 1 file changed, 6 deletions(-) diff --git a/Assets/Scripts/ConnectionManagement/ConnectionState/OfflineState.cs b/Assets/Scripts/ConnectionManagement/ConnectionState/OfflineState.cs index e5b9d63ce3..cc224d872c 100644 --- a/Assets/Scripts/ConnectionManagement/ConnectionState/OfflineState.cs +++ b/Assets/Scripts/ConnectionManagement/ConnectionState/OfflineState.cs @@ -36,12 +36,6 @@ public override void Enter() public override void Exit() { } - public override void OnClientConnected(ulong _) - { - m_ConnectStatusPublisher.Publish(ConnectStatus.Success); - m_ConnectionManager.ChangeState(m_ConnectionManager.m_ClientConnecting); - } - public override void StartClientIP(string playerName, string ipaddress, int port) { var connectionMethod = new ConnectionMethodIP(ipaddress, (ushort)port, m_ConnectionManager, m_ProfileManager, playerName); From 93aa7d642b7150ad966ba0322e9d9c9aac371609 Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Wed, 27 Nov 2024 14:45:36 +0100 Subject: [PATCH 54/57] review: change readme --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index eab29ebcfe..1dd002be28 100644 --- a/README.md +++ b/README.md @@ -169,7 +169,7 @@ Running the game over internet currently requires setting up a relay. ### Relay Setup -- Boss Room provides an integration with [Multiplayer Services sessions](https://docs.unity.com/ugs/en-us/manual/mps-sdk/manual) that make use of [Unity Relay](https://docs-multiplayer.unity3d.com/netcode/current/relay/). You can find our Unity Relay setup guide [here](https://docs.unity.com/ugs/en-us/manual/relay/manual/get-started) +- Boss Room uses the Multiplayer Services Package to integrate [Sessions](https://docs.unity.com/ugs/en-us/manual/mps-sdk/manual) for grouping and connecting players. - Alternatively you can use Port Forwarding. The https://portforward.com/ site has guides on how to enable port forwarding on a huge number of routers. - Boss Room uses `UDP` and needs a `9998` external port to be open. From b49aea5f04b56bd2cc8a1976fc5da9e3ab71e40a Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Wed, 27 Nov 2024 14:46:48 +0100 Subject: [PATCH 55/57] review: remove log --- .../Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs | 1 - 1 file changed, 1 deletion(-) diff --git a/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs b/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs index 4ef72cc2e5..09cc2e0d40 100644 --- a/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs +++ b/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs @@ -236,7 +236,6 @@ void UnsubscribeFromJoinedSessionAsync() void OnSessionChanged() { - Debug.Log("Session changed."); m_LocalSession.ApplyRemoteData(CurrentUnitySession); // as client, check if host is still in session From 6ba2aeec66024c6e4853262d2a909651365188c8 Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Wed, 27 Nov 2024 15:15:25 +0100 Subject: [PATCH 56/57] review: split method for session joining --- .../Gameplay/UI/Session/SessionUIMediator.cs | 4 +- .../Sessions/MultiplayerServicesFacade.cs | 56 +++++++++++++------ 2 files changed, 42 insertions(+), 18 deletions(-) diff --git a/Assets/Scripts/Gameplay/UI/Session/SessionUIMediator.cs b/Assets/Scripts/Gameplay/UI/Session/SessionUIMediator.cs index 7acef08e6e..d3d3331eb0 100644 --- a/Assets/Scripts/Gameplay/UI/Session/SessionUIMediator.cs +++ b/Assets/Scripts/Gameplay/UI/Session/SessionUIMediator.cs @@ -150,7 +150,7 @@ public async void JoinSessionWithCodeRequest(string sessionCode) m_ConnectionManager.StartClientSession(m_LocalUser.DisplayName); - var result = await m_MultiplayerServicesFacade.TryJoinSessionAsync(sessionCode, null); + var result = await m_MultiplayerServicesFacade.TryJoinSessionByCodeAsync(sessionCode); HandleSessionJoinResult(result); } @@ -169,7 +169,7 @@ public async void JoinSessionRequest(ISessionInfo sessionInfo) m_ConnectionManager.StartClientSession(m_LocalUser.DisplayName); - var result = await m_MultiplayerServicesFacade.TryJoinSessionAsync(null, sessionInfo.Id); + var result = await m_MultiplayerServicesFacade.TryJoinSessionByNameAsync(sessionInfo.Id); HandleSessionJoinResult(result); } diff --git a/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs b/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs index 09cc2e0d40..8941a08c50 100644 --- a/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs +++ b/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs @@ -138,9 +138,9 @@ public void EndTracking() } /// - /// Attempt to join an existing session. Will try to join via code, if code is null - will try to join via ID. + /// Attempt to join an existing session with a join code. /// - public async Task<(bool Success, ISession Session)> TryJoinSessionAsync(string sessionCode, string sessionId) + public async Task<(bool Success, ISession Session)> TryJoinSessionByCodeAsync(string sessionCode) { if (!m_RateLimitJoin.CanCall) { @@ -148,26 +148,50 @@ public void EndTracking() return (false, null); } - if (sessionId == null && sessionCode == null) + if (string.IsNullOrEmpty(sessionCode)) { - Debug.LogWarning("Cannot join a Session without a join code or session ID."); + Debug.LogWarning("Cannot join a Session without a join code."); return (false, null); } - Debug.Log($"Joining session with session code {sessionCode}"); + Debug.Log($"Joining session with join code {sessionCode}"); try { - if (!string.IsNullOrEmpty(sessionCode)) - { - var session = await m_MultiplayerServicesInterface.JoinSessionByCode(sessionCode, m_LocalUser.GetDataForUnityServices()); - return (true, session); - } - else - { - var session = await m_MultiplayerServicesInterface.JoinSessionById(sessionId, m_LocalUser.GetDataForUnityServices()); - return (true, session); - } + var session = await m_MultiplayerServicesInterface.JoinSessionByCode(sessionCode, m_LocalUser.GetDataForUnityServices()); + return (true, session); + } + catch (Exception e) + { + PublishError(e); + } + + return (false, null); + } + + /// + /// Attempt to join an existing session by name. + /// + public async Task<(bool Success, ISession Session)> TryJoinSessionByNameAsync(string sessionName) + { + if (!m_RateLimitJoin.CanCall) + { + Debug.LogWarning("Join Session hit the rate limit."); + return (false, null); + } + + if (string.IsNullOrEmpty(sessionName)) + { + Debug.LogWarning("Cannot join a Session without a session name."); + return (false, null); + } + + Debug.Log($"Joining session with name {sessionName}"); + + try + { + var session = await m_MultiplayerServicesInterface.JoinSessionById(sessionName, m_LocalUser.GetDataForUnityServices()); + return (true, session); } catch (Exception e) { @@ -440,4 +464,4 @@ void PublishError(Exception e, bool checkIfDeleted = false) m_UnityServiceErrorMessagePub.Publish(new UnityServiceErrorMessage("Session Error", reason, UnityServiceErrorMessage.Service.Session, e)); } } -} +} \ No newline at end of file From 2885b34dcaf6ce99cc1f8ed6527da551c9d46cb3 Mon Sep 17 00:00:00 2001 From: Fabian Stoll Date: Wed, 27 Nov 2024 16:34:27 +0100 Subject: [PATCH 57/57] fix: newline at end of file --- .../Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs b/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs index 8941a08c50..63c8d35842 100644 --- a/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs +++ b/Assets/Scripts/UnityServices/Sessions/MultiplayerServicesFacade.cs @@ -464,4 +464,4 @@ void PublishError(Exception e, bool checkIfDeleted = false) m_UnityServiceErrorMessagePub.Publish(new UnityServiceErrorMessage("Session Error", reason, UnityServiceErrorMessage.Service.Session, e)); } } -} \ No newline at end of file +}