Update
This commit is contained in:
1347
Assets/Third Parties/RealToon/Change - Fix Log.txt
Normal file
1347
Assets/Third Parties/RealToon/Change - Fix Log.txt
Normal file
File diff suppressed because it is too large
Load Diff
7
Assets/Third Parties/RealToon/Change - Fix Log.txt.meta
Normal file
7
Assets/Third Parties/RealToon/Change - Fix Log.txt.meta
Normal file
@@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: dc22032b278b46f469de30872180ade5
|
||||
TextScriptImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
9
Assets/Third Parties/RealToon/Editor.meta
Normal file
9
Assets/Third Parties/RealToon/Editor.meta
Normal file
@@ -0,0 +1,9 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 658e403a0a86079459a910d6eb1ee150
|
||||
folderAsset: yes
|
||||
timeCreated: 1535732565
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
130
Assets/Third Parties/RealToon/Editor/RealToonShaderCache.cs
Normal file
130
Assets/Third Parties/RealToon/Editor/RealToonShaderCache.cs
Normal file
@@ -0,0 +1,130 @@
|
||||
//RealToon Shader Cache
|
||||
//MJQStudioWorks
|
||||
//©2025
|
||||
|
||||
|
||||
using UnityEngine;
|
||||
using UnityEditor;
|
||||
using System.IO;
|
||||
|
||||
namespace RealToon.Tools
|
||||
{
|
||||
public class RealToonShaderCache : EditorWindow
|
||||
{
|
||||
|
||||
#region Variables
|
||||
|
||||
static float WinHig = 300;
|
||||
static EditorWindow EdiWin;
|
||||
static int countsha = 0;
|
||||
|
||||
static string shaderCachePath = Directory.GetParent(Application.dataPath).ToString() + "/Library/ShaderCache/shader";
|
||||
|
||||
static string infospace = null;
|
||||
|
||||
static string[] rt_shaders =
|
||||
{ "D_Default"
|
||||
, "D_Fade_Transparency"
|
||||
, "D_Refraction"
|
||||
, "L_Default"
|
||||
, "L_Fade_Transparency"
|
||||
, "T_Default"
|
||||
, "T_Fade_Transparency"
|
||||
, "T_Refraction"
|
||||
, "D_Default_URP"
|
||||
, "D_Default_HDRP"
|
||||
, "RealToon_Sobel_Outline_FX"
|
||||
, "DeNorSobOutline"};
|
||||
|
||||
#endregion
|
||||
|
||||
[MenuItem("Window/RealToon/RealToon Shader Cache")]
|
||||
static void Init()
|
||||
{
|
||||
EdiWin = GetWindow<RealToonShaderCache>(true);
|
||||
EdiWin.titleContent = new GUIContent("RealToon Shader Cache");
|
||||
WinHig = 200;
|
||||
EdiWin.minSize = new Vector2(440, WinHig);
|
||||
EdiWin.maxSize = new Vector2(440, WinHig);
|
||||
|
||||
CountRTCache();
|
||||
infospace = "There are " + countsha + " RealToon Shaders & Effects cached.";
|
||||
|
||||
}
|
||||
|
||||
void OnGUI()
|
||||
{
|
||||
|
||||
var lblcenstyle = new GUIStyle(GUI.skin.label) { alignment = TextAnchor.MiddleCenter };
|
||||
|
||||
GUILayout.Space(10);
|
||||
EditorGUILayout.BeginVertical();
|
||||
|
||||
GUILayout.Label(infospace, lblcenstyle);
|
||||
|
||||
CountRTCache();
|
||||
infospace = "There are " + countsha + " RealToon Shaders cached.";
|
||||
|
||||
GUILayout.Space(10);
|
||||
EditorGUILayout.LabelField("", GUI.skin.horizontalSlider);
|
||||
|
||||
if (GUILayout.Button("Reduce/Clean Cached RealToon Shader"))
|
||||
{
|
||||
|
||||
foreach (string rt_sha in rt_shaders)
|
||||
{
|
||||
string[] direc = Directory.GetDirectories(@shaderCachePath, rt_sha + "*");
|
||||
|
||||
foreach (string dir in direc)
|
||||
{
|
||||
if (direc.Length == 1)
|
||||
{
|
||||
Debug.Log("RealToon Shader Cache: " + rt_sha + " Shader Cache removed.");
|
||||
Directory.Delete(dir.ToString(), true);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (direc.Length == 0)
|
||||
{
|
||||
Debug.LogWarning("RealToon Shader Cache: " + rt_sha + " Shader already removed or not present.");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if (GUILayout.Button("Re-import RealToon Shader"))
|
||||
{
|
||||
AssetDatabase.ImportAsset("Assets/RealToon", ImportAssetOptions.ImportRecursive);
|
||||
}
|
||||
|
||||
EditorGUILayout.LabelField("", GUI.skin.horizontalSlider);
|
||||
|
||||
GUILayout.Label("Note:");
|
||||
GUILayout.Label("*This will reduce or clear cached RealToon Shaders.\n" +
|
||||
"*Useful for after update RealToon Shader or Re-import RealToon Shader.\n" +
|
||||
"*'Re-import RealToon Shader', will cache RealToon Shaders again.");
|
||||
|
||||
EditorGUILayout.EndVertical();
|
||||
|
||||
}
|
||||
|
||||
static void CountRTCache()
|
||||
{
|
||||
countsha = 0;
|
||||
foreach (string rt_sha in rt_shaders)
|
||||
{
|
||||
string[] direc = Directory.GetDirectories(@shaderCachePath, rt_sha + "*");
|
||||
|
||||
foreach (string dir in direc)
|
||||
{
|
||||
++countsha;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: b57f4820f70afb6469f99f2a6e73e607
|
||||
20
Assets/Third Parties/RealToon/For VRoid-VRM users.txt
Normal file
20
Assets/Third Parties/RealToon/For VRoid-VRM users.txt
Normal file
@@ -0,0 +1,20 @@
|
||||
For VRoid|VRM Users
|
||||
===============================================================
|
||||
There is a Swap Shader To RealToon Shader included.
|
||||
This tool is Swap shader materials from
|
||||
VRoid|VRM shader and Unity Shaders to RealToon shader.
|
||||
It is really easy to use, just select the materials,
|
||||
select from what shader is the material/s then click swap.
|
||||
================================================================
|
||||
|
||||
*How to Use*
|
||||
|
||||
1. Click "Window" on the menu above beside "Help" then go to "RealToon -> Swap Shader To RealToon".
|
||||
2. Select the "Materials" on your project window/panel.
|
||||
3. Select from what Shader.
|
||||
4. Select the options you need if available.
|
||||
5. Click "Click To Swap To RealToon Shader".
|
||||
6. All materials shader are now swap to RealToon Shader.
|
||||
|
||||
|
||||
================================================================
|
||||
@@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 82bc586cc72389c489021c62b8bc8333
|
||||
TextScriptImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
153
Assets/Third Parties/RealToon/ReadMe - Important - Guide.txt
Normal file
153
Assets/Third Parties/RealToon/ReadMe - Important - Guide.txt
Normal file
@@ -0,0 +1,153 @@
|
||||
===========================================================================
|
||||
Important - ReadMe - Quick User Guide
|
||||
===========================================================================
|
||||
|
||||
|
||||
|
||||
===========================================================================
|
||||
For users who first time use Unity
|
||||
===========================================================================
|
||||
|
||||
Note:
|
||||
*Install the latest unity version or latest LTS version.
|
||||
|
||||
If your project is 3D or Built-In RP:
|
||||
1.Go to folder "RealToon Shader Packages -> Built-In RP [3D]"
|
||||
2.Double click "RealToon Built-In RP [3D]", the latest one with the 'Later' word on it.
|
||||
3.Click "Import".
|
||||
|
||||
If your project is Universal Render Pipeline or High Definition RP:
|
||||
1.Go to folder "RealToon Shader Packages -> SRP (LWRP - URP - HDRP)".
|
||||
2.Open the folder that correspond to your project render pipeline.
|
||||
3.Double click the latest one with the 'Later' word on it.
|
||||
4.Click "Import".
|
||||
|
||||
To use RealToon:
|
||||
1.Create a material by press mouse button "Right" on the "Project" window/panel.
|
||||
2.Go to "Create -> Material".
|
||||
3.Name your material then press keyboard key "Enter".
|
||||
4.Click your created material.
|
||||
5.Go to "Inspector" window/panel then change the "Shader" by left mouse button - click that drop down menu.
|
||||
6-a.For 3D/Built-In: Go to "RealToon -> Default" and select "Default".
|
||||
6-b.For Universal Render Pipeline: Go to "Universal Render Pipeline -> Default" and select "Default".
|
||||
6-c.For High Definition RP: Go to "HDRP -> Default" and select "Default".
|
||||
7.Drag your created material to the object you want to apply it.
|
||||
|
||||
Note:
|
||||
Unity Built-In RP or 3D is the old unity render pipeline.
|
||||
Unity SRP/Scriptable Render Pipeline (LWRP,URP and HDRP) are the new unity render pipeline, made using the Unity Scriptable Render Pipeline.
|
||||
|
||||
===========================================================================
|
||||
|
||||
|
||||
|
||||
===========================================================================
|
||||
Import/Unpack RealToon Shaders Packages
|
||||
===========================================================================
|
||||
|
||||
If your project is Unity Built-In RP/3D:
|
||||
1.Go to folder "RealToon Shader Packages -> Built-In RP"
|
||||
2.Double click the RealToon Built-In version package you want to use.
|
||||
|
||||
===========================================================================
|
||||
|
||||
If your project is Unity SRP:
|
||||
1.Go to folder "RealToon Shader Packages -> SRP (LWRP - URP - HDRP)"
|
||||
|
||||
For LWRP:
|
||||
1.Open the folder "LWRP".
|
||||
2.Double click the RealToon LWRP version package you want to use.
|
||||
3.Click "Import".
|
||||
|
||||
For URP:
|
||||
1.Open the folder "URP".
|
||||
2.Double click the RealToon LWRP version package you want to use.
|
||||
3.Click "Import".
|
||||
|
||||
For HDRP:
|
||||
1.Open the folder "HDRP".
|
||||
2.Double click the RealToon LWRP version package you want to use.
|
||||
3.Click "Import".
|
||||
|
||||
Note:
|
||||
'Below' means older verion.
|
||||
'Later' means Current and later future version.
|
||||
|
||||
There are 2 folder each SRP(URP & HDRP):
|
||||
*Unity 6 folder is for Unity 6.0 to later/latest unity version.
|
||||
*Unity 2023 and Below folder is for Unity 2023,2022,2021 and 2019
|
||||
|
||||
|
||||
===========================================================================
|
||||
|
||||
Accessing the shader:
|
||||
[RealToon Built-In RP/3D] The shaders are in "RealToon" folder.
|
||||
[RealToon LWRP] The shaders are in "Lightweight Render Pipeline" folder.
|
||||
[RealToon URP] The shader is in "Universal Render Pipeline" folder.
|
||||
[RealToon HDRP] The shader is in "HDRP" folder.
|
||||
|
||||
===========================================================================
|
||||
|
||||
Recommended Unity and SRP Versions:
|
||||
[RealToon LWRP] - Unity 2018 and LWRP V4.0.0 or latest version.
|
||||
[RealToon URP] - Unity 2020.3.0 to newer versions and URP 10 or latest version.
|
||||
[RealToon HDRP] - Unity 2020.2.0 to newer versions and HDRP 10 or latest version.
|
||||
|
||||
Unity and SRP(URP and HDRP) Versions:
|
||||
[URP]
|
||||
Unity 6.0 to Later - URP
|
||||
Unity 2023.1.0 to before 2023.2.20 - URP 15 to 16
|
||||
Unity 2021.3.0 to before 2022.2.0 - URP 14
|
||||
Unity 2021.2.0 to before 2021.3.0 - URP 12 to 13
|
||||
|
||||
[HDRP]
|
||||
Unity 6.0 to Later - HDRP
|
||||
Unity 2023.2.0 to before 2023.2.20 - HDRP 16
|
||||
Unity 2022.2.0 to before 2022.3.0 - HDRP 14 to 15
|
||||
Unity 2021.2.0 to before 2022.2.0 - HDRP 12 to 13
|
||||
|
||||
Recommended Unity versions for Built-In RP/3D:
|
||||
From Unity 5 to current latest unity version.
|
||||
|
||||
===========================================================================
|
||||
|
||||
|
||||
|
||||
===========================================================================
|
||||
For Demo/Example Scenes
|
||||
===========================================================================
|
||||
|
||||
1.Go to folder "RealToon Examples"
|
||||
2.Open the folder.
|
||||
*For RealToon Built-In RP/3D: Built-In RP [3D] folder
|
||||
*For RealToon LWRP - URP - HDRP: SRP folder
|
||||
|
||||
** For more info about the example/demo,
|
||||
read the "Read Me First [About the Example - Demos].txt"
|
||||
===========================================================================
|
||||
|
||||
|
||||
|
||||
===========================================================================
|
||||
Notes
|
||||
===========================================================================
|
||||
|
||||
*For VRoid model users, read the "For VRoid model users.txt".
|
||||
*For documentation or user guide, read "RealToon (User Guide).pdf" pdf/printed document file.
|
||||
*To know previous or current version, read "Change - Fix Log.txt" text file.
|
||||
*To know what's new, read the "What's New.txt" text file.
|
||||
|
||||
===========================================================================
|
||||
|
||||
|
||||
|
||||
===========================================================================
|
||||
Video Tutorials
|
||||
===========================================================================
|
||||
|
||||
*How to download, import and unpack RealToon (URP,HDRP and BiRP) Shader Packages (For Beginners and Others levels):
|
||||
https://www.youtube.com/watch?v=JVlbOYi2V3M
|
||||
|
||||
*RealToon Tutorials:
|
||||
https://www.youtube.com/playlist?list=PL0M1m9smMVPJ4qEkJnZObqJE5mU9uz6SY
|
||||
===========================================================================
|
||||
@@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 1a9714562b1d1f54b8209db56f4f9722
|
||||
TextScriptImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Assets/Third Parties/RealToon/RealToon (User Guide).pdf
Normal file
BIN
Assets/Third Parties/RealToon/RealToon (User Guide).pdf
Normal file
Binary file not shown.
@@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 1ecd1292463dbba41ae18d3c9c8dfafd
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/Third Parties/RealToon/RealToon Examples.meta
Normal file
8
Assets/Third Parties/RealToon/RealToon Examples.meta
Normal file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: a9230142ad8a58a4ab9dd5d136a7dd21
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 069fd93cfc53def47b2aa7954b6076ec
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
322
Assets/Third Parties/RealToon/RealToon Examples/Check.unity
Normal file
322
Assets/Third Parties/RealToon/RealToon Examples/Check.unity
Normal file
@@ -0,0 +1,322 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!29 &1
|
||||
OcclusionCullingSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 2
|
||||
m_OcclusionBakeSettings:
|
||||
smallestOccluder: 5
|
||||
smallestHole: 0.25
|
||||
backfaceThreshold: 100
|
||||
m_SceneGUID: 00000000000000000000000000000000
|
||||
m_OcclusionCullingData: {fileID: 0}
|
||||
--- !u!104 &2
|
||||
RenderSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 10
|
||||
m_Fog: 0
|
||||
m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1}
|
||||
m_FogMode: 3
|
||||
m_FogDensity: 0.01
|
||||
m_LinearFogStart: 0
|
||||
m_LinearFogEnd: 300
|
||||
m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1}
|
||||
m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1}
|
||||
m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1}
|
||||
m_AmbientIntensity: 1
|
||||
m_AmbientMode: 0
|
||||
m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1}
|
||||
m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_HaloStrength: 0.5
|
||||
m_FlareStrength: 1
|
||||
m_FlareFadeSpeed: 3
|
||||
m_HaloTexture: {fileID: 0}
|
||||
m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_DefaultReflectionMode: 0
|
||||
m_DefaultReflectionResolution: 128
|
||||
m_ReflectionBounces: 1
|
||||
m_ReflectionIntensity: 1
|
||||
m_CustomReflection: {fileID: 0}
|
||||
m_Sun: {fileID: 0}
|
||||
m_IndirectSpecularColor: {r: 0.18028378, g: 0.22571412, b: 0.30692285, a: 1}
|
||||
m_UseRadianceAmbientProbe: 0
|
||||
--- !u!157 &3
|
||||
LightmapSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 12
|
||||
m_GISettings:
|
||||
serializedVersion: 2
|
||||
m_BounceScale: 1
|
||||
m_IndirectOutputScale: 1
|
||||
m_AlbedoBoost: 1
|
||||
m_EnvironmentLightingMode: 0
|
||||
m_EnableBakedLightmaps: 1
|
||||
m_EnableRealtimeLightmaps: 0
|
||||
m_LightmapEditorSettings:
|
||||
serializedVersion: 12
|
||||
m_Resolution: 2
|
||||
m_BakeResolution: 40
|
||||
m_AtlasSize: 1024
|
||||
m_AO: 0
|
||||
m_AOMaxDistance: 1
|
||||
m_CompAOExponent: 1
|
||||
m_CompAOExponentDirect: 0
|
||||
m_ExtractAmbientOcclusion: 0
|
||||
m_Padding: 2
|
||||
m_LightmapParameters: {fileID: 0}
|
||||
m_LightmapsBakeMode: 1
|
||||
m_TextureCompression: 1
|
||||
m_ReflectionCompression: 2
|
||||
m_MixedBakeMode: 2
|
||||
m_BakeBackend: 1
|
||||
m_PVRSampling: 1
|
||||
m_PVRDirectSampleCount: 32
|
||||
m_PVRSampleCount: 512
|
||||
m_PVRBounces: 2
|
||||
m_PVREnvironmentSampleCount: 256
|
||||
m_PVREnvironmentReferencePointCount: 2048
|
||||
m_PVRFilteringMode: 1
|
||||
m_PVRDenoiserTypeDirect: 1
|
||||
m_PVRDenoiserTypeIndirect: 1
|
||||
m_PVRDenoiserTypeAO: 1
|
||||
m_PVRFilterTypeDirect: 0
|
||||
m_PVRFilterTypeIndirect: 0
|
||||
m_PVRFilterTypeAO: 0
|
||||
m_PVREnvironmentMIS: 1
|
||||
m_PVRCulling: 1
|
||||
m_PVRFilteringGaussRadiusDirect: 1
|
||||
m_PVRFilteringGaussRadiusIndirect: 1
|
||||
m_PVRFilteringGaussRadiusAO: 1
|
||||
m_PVRFilteringAtrousPositionSigmaDirect: 0.5
|
||||
m_PVRFilteringAtrousPositionSigmaIndirect: 2
|
||||
m_PVRFilteringAtrousPositionSigmaAO: 1
|
||||
m_ExportTrainingData: 0
|
||||
m_TrainingDataDestination: TrainingData
|
||||
m_LightProbeSampleCountMultiplier: 4
|
||||
m_LightingDataAsset: {fileID: 20201, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_LightingSettings: {fileID: 0}
|
||||
--- !u!196 &4
|
||||
NavMeshSettings:
|
||||
serializedVersion: 2
|
||||
m_ObjectHideFlags: 0
|
||||
m_BuildSettings:
|
||||
serializedVersion: 3
|
||||
agentTypeID: 0
|
||||
agentRadius: 0.5
|
||||
agentHeight: 2
|
||||
agentSlope: 45
|
||||
agentClimb: 0.4
|
||||
ledgeDropHeight: 0
|
||||
maxJumpAcrossDistance: 0
|
||||
minRegionArea: 2
|
||||
manualCellSize: 0
|
||||
cellSize: 0.16666667
|
||||
manualTileSize: 0
|
||||
tileSize: 256
|
||||
buildHeightMesh: 0
|
||||
maxJobWorkers: 0
|
||||
preserveTilesOutsideBounds: 0
|
||||
debug:
|
||||
m_Flags: 0
|
||||
m_NavMeshData: {fileID: 0}
|
||||
--- !u!1 &372682534
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 372682537}
|
||||
- component: {fileID: 372682536}
|
||||
- component: {fileID: 372682535}
|
||||
m_Layer: 0
|
||||
m_Name: Main Camera
|
||||
m_TagString: MainCamera
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!81 &372682535
|
||||
AudioListener:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 372682534}
|
||||
m_Enabled: 1
|
||||
--- !u!20 &372682536
|
||||
Camera:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 372682534}
|
||||
m_Enabled: 1
|
||||
serializedVersion: 2
|
||||
m_ClearFlags: 2
|
||||
m_BackGroundColor: {r: 0, g: 0, b: 0, a: 0}
|
||||
m_projectionMatrixMode: 1
|
||||
m_GateFitMode: 2
|
||||
m_FOVAxisMode: 0
|
||||
m_Iso: 200
|
||||
m_ShutterSpeed: 0.005
|
||||
m_Aperture: 16
|
||||
m_FocusDistance: 10
|
||||
m_FocalLength: 50
|
||||
m_BladeCount: 5
|
||||
m_Curvature: {x: 2, y: 11}
|
||||
m_BarrelClipping: 0.25
|
||||
m_Anamorphism: 0
|
||||
m_SensorSize: {x: 36, y: 24}
|
||||
m_LensShift: {x: 0, y: 0}
|
||||
m_NormalizedViewPortRect:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 0
|
||||
width: 1
|
||||
height: 1
|
||||
near clip plane: 0.3
|
||||
far clip plane: 1000
|
||||
field of view: 60
|
||||
orthographic: 0
|
||||
orthographic size: 5
|
||||
m_Depth: -1
|
||||
m_CullingMask:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_RenderingPath: -1
|
||||
m_TargetTexture: {fileID: 0}
|
||||
m_TargetDisplay: 0
|
||||
m_TargetEye: 3
|
||||
m_HDR: 1
|
||||
m_AllowMSAA: 1
|
||||
m_AllowDynamicResolution: 0
|
||||
m_ForceIntoRT: 0
|
||||
m_OcclusionCulling: 1
|
||||
m_StereoConvergence: 10
|
||||
m_StereoSeparation: 0.022
|
||||
--- !u!4 &372682537
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 372682534}
|
||||
serializedVersion: 2
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 1, z: -10}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!1 &1271353357
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 1271353360}
|
||||
- component: {fileID: 1271353359}
|
||||
- component: {fileID: 1271353358}
|
||||
m_Layer: 0
|
||||
m_Name: Read Me
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!102 &1271353358
|
||||
TextMesh:
|
||||
serializedVersion: 3
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1271353357}
|
||||
m_Text: 'Read the text file "Read Me First [About the Example - Demos].txt"
|
||||
|
||||
before
|
||||
you open the example/demo packages.'
|
||||
m_OffsetZ: 0
|
||||
m_CharacterSize: 1
|
||||
m_LineSpacing: 1
|
||||
m_Anchor: 0
|
||||
m_Alignment: 0
|
||||
m_TabSize: 4
|
||||
m_FontSize: 0
|
||||
m_FontStyle: 0
|
||||
m_RichText: 1
|
||||
m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_Color:
|
||||
serializedVersion: 2
|
||||
rgba: 4294967295
|
||||
--- !u!23 &1271353359
|
||||
MeshRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1271353357}
|
||||
m_Enabled: 1
|
||||
m_CastShadows: 1
|
||||
m_ReceiveShadows: 1
|
||||
m_DynamicOccludee: 1
|
||||
m_StaticShadowCaster: 0
|
||||
m_MotionVectors: 1
|
||||
m_LightProbeUsage: 1
|
||||
m_ReflectionProbeUsage: 1
|
||||
m_RayTracingMode: 2
|
||||
m_RayTraceProcedural: 0
|
||||
m_RayTracingAccelStructBuildFlagsOverride: 0
|
||||
m_RayTracingAccelStructBuildFlags: 1
|
||||
m_SmallMeshCulling: 1
|
||||
m_RenderingLayerMask: 1
|
||||
m_RendererPriority: 0
|
||||
m_Materials:
|
||||
- {fileID: 10100, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_StaticBatchInfo:
|
||||
firstSubMesh: 0
|
||||
subMeshCount: 0
|
||||
m_StaticBatchRoot: {fileID: 0}
|
||||
m_ProbeAnchor: {fileID: 0}
|
||||
m_LightProbeVolumeOverride: {fileID: 0}
|
||||
m_ScaleInLightmap: 1
|
||||
m_ReceiveGI: 1
|
||||
m_PreserveUVs: 0
|
||||
m_IgnoreNormalsForChartDetection: 0
|
||||
m_ImportantGI: 0
|
||||
m_StitchLightmapSeams: 1
|
||||
m_SelectedEditorRenderState: 3
|
||||
m_MinimumChartSize: 4
|
||||
m_AutoUVMaxDistance: 0.5
|
||||
m_AutoUVMaxAngle: 89
|
||||
m_LightmapParameters: {fileID: 0}
|
||||
m_SortingLayerID: 0
|
||||
m_SortingLayer: 0
|
||||
m_SortingOrder: 0
|
||||
m_AdditionalVertexStreams: {fileID: 0}
|
||||
--- !u!4 &1271353360
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1271353357}
|
||||
serializedVersion: 2
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: -19.23, y: 1.83, z: 12.29}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!1660057539 &9223372036854775807
|
||||
SceneRoots:
|
||||
m_ObjectHideFlags: 0
|
||||
m_Roots:
|
||||
- {fileID: 372682537}
|
||||
- {fileID: 1271353360}
|
||||
@@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 62515c27a4e5faa44840ab5658f1e4a4
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,22 @@
|
||||
================================================
|
||||
RealToon Examples/Demos
|
||||
================================================
|
||||
|
||||
Before you open an example/demo, unpack first a
|
||||
RealToon Shader you need,
|
||||
See the "ReadMe - Important - Guide.txt" for more info.
|
||||
|
||||
This folder contains example/demos of RealToon Shader.
|
||||
Take note of this, only open the example scene that corresponds
|
||||
to your Rendering Pipeline.
|
||||
|
||||
If you don't need anymore the example/demos, just delete it.
|
||||
================================================
|
||||
|
||||
For Built-In RP/ the old rendering pipeline:
|
||||
"Build-In RP" folder
|
||||
|
||||
For SRP [URP and HDRP] rendering pipeline:
|
||||
"SRP" folder
|
||||
|
||||
================================================
|
||||
@@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9336e70d537176245a9dd30d3c746ff0
|
||||
TextScriptImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/Third Parties/RealToon/RealToon Examples/SRP.meta
Normal file
8
Assets/Third Parties/RealToon/RealToon Examples/SRP.meta
Normal file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 6111b3ef1248d4b46a46f1eaeee8a9e0
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 927325d0aa5313941aa0c8b568771e92
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 758bcdc02d74b4d4db6af373a8edea76
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f4f609eb2dc9c9f409de74267e0a996a
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: e72951d640cc35347a5d787682fa51d0
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ab3032666bf87064a80b0c304f26d5c1
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 8957a3e938282ce439874b0f309048bc
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,72 @@
|
||||
RealToon V5.0.11 (HDRP)
|
||||
===========================================================
|
||||
Requirements/Recommendations
|
||||
===========================================================
|
||||
|
||||
RealToon HDRP packages:
|
||||
|
||||
Unity 2023 and below:
|
||||
*(HDRP 12 and 13) is for unity 2021.2.0 to 2022.1.X
|
||||
*(HDRP 14 and 15) is for unity 2022.2.0 to 2022.3.X
|
||||
*(HDRP 15 and 16) is for unity 2022.3.0 to 2023.2.X
|
||||
|
||||
Unity 6:
|
||||
*HDRP - Unity 6.0 to Later
|
||||
|
||||
===========================================================
|
||||
Note:
|
||||
===========================================================
|
||||
|
||||
*How to download, import and unpack RealToon (HDRP) Shader Packages Video Tutorial:
|
||||
https://www.youtube.com/watch?v=JVlbOYi2V3M&t=157s
|
||||
|
||||
===========================================================
|
||||
|
||||
*DXR/Raytracing is supported.
|
||||
- Unity uses DXR and it will work on all GPUs that supports raytracing.
|
||||
|
||||
*Tessellation version is still in development.
|
||||
|
||||
*All lights are supported: Direction, Point, Spot and Arealight.
|
||||
|
||||
*Light layers is possible to use.
|
||||
|
||||
*Use RealToon + Unity's HDRP shaders is possible too.
|
||||
|
||||
*Hover your mouse to an option or feature name for
|
||||
option description and infos.
|
||||
|
||||
*There's a RealToon HDRP user guide or documentation included as text file.
|
||||
|
||||
*If you encounter any errors/problems or something just email me.
|
||||
|
||||
===========================================================
|
||||
Note and reminder about Raytracing
|
||||
===========================================================
|
||||
|
||||
*Raytracing Shadow and Raytracing Global Illumination does not yet reflect to Raytraced Reflection surface. (HDRP 8 and HDRP 7)
|
||||
*Only non raytraced shadow and non raytraced global illumination can reflect to Raytraced Reflection surface at the moment.
|
||||
(HDRP 8 and HDRP 7)
|
||||
|
||||
*Fade Transparency or Transparent does not yet reflect to Raytraced Reflection surface.
|
||||
*Opaque objects and transparent type Alpha clip or Cutout transparent can reflect to Raytraced Reflection surface and can bounce light at the moment.
|
||||
|
||||
*In recursive rendering, transparency can be visible to reflective object but can't receive raytraced global illumination.
|
||||
|
||||
===========================================================
|
||||
RealToon HDRP current issues
|
||||
===========================================================
|
||||
|
||||
[For Outline] [Traditional]
|
||||
*In normal or opaque state, far fog will overlap but if there is an opaque object behind, far fog will not overlap.
|
||||
*In 'Transparent Mode' far fog will not overlap."
|
||||
*Currently, there is no HDRP line code or function to mask this.
|
||||
|
||||
*Currently in raytracing mode, outline will not reflect to Raytraced Relfection surface, to have an outline in a Raytraced Relfection surface, use "Rimlight" as an alternative outline, just changed the "Power" value to negative 1 then enable "Rim Light in Light".
|
||||
|
||||
[For Arealight (HDRP 15 and Below]
|
||||
*If the size of a Rect type arealight is too un-even like 'X:30 | Y:1' the light falloff will cause some noise.
|
||||
*Current arealight light falloff is just a temporary solution.
|
||||
*"Tube Light Falloff" option is a temporary option for Arealight Tube Type light falloff.
|
||||
*These current issues only applies when "Area Light Smooth Look" option disabled.
|
||||
*Arealight currently in beta, if you want or planned to use it just enable "Enable Area Light" under the category "Lighting".
|
||||
@@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 94e0410422a0e4b4f91f7162029af333
|
||||
TextScriptImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,114 @@
|
||||
RealToon V5.0.11 (HDRP) (Quick Guide)
|
||||
===========================================================
|
||||
|
||||
===========================================================
|
||||
How to use RealToon Effect - DeNorSob Outline
|
||||
===========================================================
|
||||
|
||||
1. Go to "GameObject" > "Volume" then click "Global Volume".
|
||||
2. Then next click "Global Volume" in the "Hierarchy" or in the scene.
|
||||
3. Click "New", this will create a "Global Volume Profile".
|
||||
4. Click "Add Override" then go to "Post-Processing" > "RealToon" > "DeNorSob Outline".
|
||||
|
||||
* Then next we will add that effect in the "Custom Post Process Order" so that the effect will work.
|
||||
|
||||
5. To add Go to "Edit" > "Project Settings" > "HDRP Default Settings" then scroll down to "Custom Post Process Order".
|
||||
6-b. Next click the "+" sign under the "AfterOpaqueAndSky " then click "RealToon.Effects.DeNorSobOutline". (This one is for HDRP 10 to later versions)
|
||||
|
||||
* Now the effect works.
|
||||
|
||||
###########################################################
|
||||
If you are planning to use the effect in making games or make a build.
|
||||
###########################################################
|
||||
|
||||
1.Go to "Edit" > "Project Settings" then "Graphics".
|
||||
2.After that add 1 to the "Size" under "Always Included Shaders", now it adds another element.
|
||||
3.Click the last element then search for "DeNorSob Outline" then click it.
|
||||
|
||||
*Now the effect will be included in a build.
|
||||
|
||||
===========================================================
|
||||
If you want to color shadow using texture and want to just color shadow without the main/base texture.
|
||||
===========================================================
|
||||
|
||||
1. Enable "Shadow Color Texture".
|
||||
2. Go to "Shadow" > "Shadow Color Texture".
|
||||
3. Search click the property "Shadow Color Texture".
|
||||
4. Search for the texture you want to use to color the shadow.
|
||||
|
||||
*Just empty the "Shadow Color Texture" if you want to only color it using these properties,
|
||||
"Overall Shadow Color", "Self Shadow - Color" or "ShadowT - Color".
|
||||
|
||||
===========================================================
|
||||
How to properly use RealToon's "Reduce Shadow" option in HDRP
|
||||
===========================================================
|
||||
|
||||
*The Directional lights in HDRP don't have bias option, means no requirements.
|
||||
*For Punctual lights {Point and Spot lights} and Arealight do have "Near Plane" option, it is somewhat the same as "Bias".
|
||||
still no requirements but adjust "Near Plane" if needed to balance.
|
||||
|
||||
1. Just change the "Reduce Shadow" option value, thats it.
|
||||
|
||||
===========================================================
|
||||
[Unity HDRP] How to add fogs, shadows, skies and other features in the scene
|
||||
===========================================================
|
||||
|
||||
1. Go to "GameObject" > "Volume" then click "Global Volume".
|
||||
2. Then next click "Global Volume" in the "Hierarchy" or in the scene.
|
||||
3. Click "New", this will create a "Global Volume Profile". or just click "Profile" and choose the other profile you've created.
|
||||
4. Click "Add Override" to add those features you want.
|
||||
|
||||
===========================================================
|
||||
[Unity HDRP] How to change and adjust the default global volume profile
|
||||
===========================================================
|
||||
|
||||
1.Go to "Edit" > "Project Settings" then "HDRP Default Settings".
|
||||
2.Go to "Volume Components" then change,add or remove the features you want.
|
||||
3.Click "New" if you want to create another "Default Volume Profile Asset" or just click it then search for other profiles.
|
||||
|
||||
*This is global means it will apply in all scenes with or without the "Global Volume" game object.
|
||||
|
||||
===========================================================
|
||||
[Unity HDRP] How to setup and enable DXR/Raytracing
|
||||
===========================================================
|
||||
|
||||
1.Go to "Window > Render Pipeline > HD Render Pipeline Wizard".
|
||||
2.Click "HDRP + DXR" tab under "Configuration Checking".
|
||||
3.Click "Fix All"
|
||||
4.After that it will enable all the necessary features.
|
||||
5.It will ask you to restart the editor, just click "Restart" or "Ok".
|
||||
6.Done.
|
||||
|
||||
*Unity uses DXR and it will work on all GPUs that supports raytracing.
|
||||
|
||||
===========================================================
|
||||
[Unity HDRP] How to create your own Raytracing Override Volume
|
||||
===========================================================
|
||||
|
||||
1.Delete "DXR Settings Volume" in the "Hierarchy" window.
|
||||
2.Go to "Game Object > Volume > Global Volume".
|
||||
3.Rename your newly created volume.
|
||||
4.Click "New", this will create a new Volume Profile.
|
||||
5.Click "Add Override".
|
||||
6.Go to "Ray Tracing" and then select the raytracing features you want to use.
|
||||
7.Done.
|
||||
|
||||
*For "Raytracing Reflection" go to "Lighting > Screen Space Reflection".
|
||||
|
||||
===========================================================
|
||||
[Unity HDRP] To access the HDRP main settings (Mostly for beginners)
|
||||
===========================================================
|
||||
|
||||
1.Go to "Edit" > "Project Settings" then click "Scriptable Render Pipeline Settings".
|
||||
|
||||
* It will highlight that asset in the "Project Window".
|
||||
|
||||
2.Click that asset.
|
||||
|
||||
*This asset you can adjust the quality of the shadow and size of the shadow map, the number of lights and other advance options/features.
|
||||
*To know more about this, check the Unity's manual or watch some tutorial videos on youtube about HDRP.
|
||||
|
||||
===========================================================
|
||||
For other option descriptions and uses, read the included
|
||||
"RealToon (User Guide).pdf" or click the "User Guide" under RealToon inspector.
|
||||
===========================================================
|
||||
@@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 0b49dc7de7871a04abdad08b53f07572
|
||||
TextScriptImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 704ee4848f1c1444b846cac4f818c05e
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 13439f3f062ccd448a2a05069df298c9
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 20edcf084aabb38469ee6b6eb736c10d
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,17 @@
|
||||
RealToon V5.0.8 (LWRP)
|
||||
===========================================================
|
||||
Note:
|
||||
===========================================================
|
||||
|
||||
RealToon LWRP will not be updated anymore.
|
||||
|
||||
===========================================================
|
||||
===========================================================
|
||||
|
||||
(To use this you need):
|
||||
*Unity 2018 with LWRP version 4.0.0 or latest Unity & LWRP Version.
|
||||
|
||||
How To Update LWRP:
|
||||
1.Go to Window > Package Manager.
|
||||
2.Select "All" then select "Lightweight Render" and select "Version 4.0.0" or latest.
|
||||
3.Click "Update" or "Update To".
|
||||
@@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 4f334edc822a39b46a24f99fe388943b
|
||||
TextScriptImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 4fb4eafaaec7fd641960ecf923a9f59e
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,13 @@
|
||||
RealToon V5.0.11 (URP)
|
||||
===========================================================
|
||||
Note:
|
||||
===========================================================
|
||||
|
||||
URP is universal, from mobile, console to high end.
|
||||
Shadow for Pointlight is not available on older URP versions.
|
||||
Tessellation will be coming soon.
|
||||
|
||||
===========================================================
|
||||
*How to download, import and unpack RealToon (URP) Shader Packages Video Tutorial:
|
||||
https://www.youtube.com/watch?v=JVlbOYi2V3M&t=83s
|
||||
===========================================================
|
||||
@@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: b27cd9e670c186d46a9a3bcf35ddb0a9
|
||||
TextScriptImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 41ad529989156d941bb7e04aeaa55981
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 85c229401cab93a459d513c42d13c56f
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/Third Parties/RealToon/RealToon Tools.meta
Normal file
8
Assets/Third Parties/RealToon/RealToon Tools.meta
Normal file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 8503504c0d606ac44a6f11bc845e085b
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,312 @@
|
||||
//RealToon - Perspective Adjustment [Helper]
|
||||
//MJQStudioWorks
|
||||
//©2025
|
||||
|
||||
using UnityEngine;
|
||||
|
||||
namespace RealToon.Script
|
||||
{
|
||||
|
||||
[ExecuteAlways]
|
||||
[AddComponentMenu("RealToon/Tools/Perspective Adjustment - Controller")]
|
||||
public class PerspectiveAdjustmentController : MonoBehaviour
|
||||
{
|
||||
[HideInInspector]
|
||||
[SerializeField]
|
||||
Transform[] SubTran;
|
||||
|
||||
[HideInInspector]
|
||||
[SerializeField]
|
||||
Material[] Mat;
|
||||
|
||||
[HideInInspector]
|
||||
[SerializeField]
|
||||
Transform[] attac;
|
||||
|
||||
[Header("Note: Perspective Adjustment feature will be automatically enable\nOn the materials of the object/model that uses RealToon Shader.")]
|
||||
[Header("It is recommend to set the Clipping Planes - Near of the camera\nto 0.01 to prevent slicing when near.")]
|
||||
|
||||
[Space(25)]
|
||||
|
||||
[SerializeField]
|
||||
[Tooltip("This will change the perspective of an object to 2D or 3D or FOV stretch look.\nFor 2d toon/anime look, set it to 0.5 or 0.")]
|
||||
public float Perspective = 1;
|
||||
|
||||
[SerializeField]
|
||||
[Tooltip("This will change the clipping on the object.\nChange this if the object is overlapping front or back.")]
|
||||
public float Clip = 1;
|
||||
|
||||
[Space(15)]
|
||||
|
||||
[SerializeField]
|
||||
[Tooltip("This will adjust the size of the object when the camera is closer.")]
|
||||
public float CloseUpSize = 0;
|
||||
|
||||
[SerializeField]
|
||||
[Tooltip("How smooth the transition of the sizing.")]
|
||||
public float CloseUpSizeSmoothTransition = 1;
|
||||
|
||||
[SerializeField]
|
||||
[Tooltip("Distance transition from the camera to the object.")]
|
||||
public float CloseUpSizeDistance = 0;
|
||||
|
||||
[Space(15)]
|
||||
|
||||
[SerializeField]
|
||||
[Tooltip("Can animate the values/properties or create keyframe.")]
|
||||
public bool CanAnimateIt = true;
|
||||
|
||||
int coun_obj_wi_ralsha = 0;
|
||||
int coun_obj_mat = 0;
|
||||
int coun_obj_mat_arr = 0;
|
||||
|
||||
string RT_Sha_Nam_URP = "Universal Render Pipeline/RealToon/Version 5/Default/Default";
|
||||
string RT_Sha_Nam_HDRP = "HDRP/RealToon/Version 5/Default";
|
||||
|
||||
[HideInInspector]
|
||||
[SerializeField]
|
||||
bool checkstart = true;
|
||||
|
||||
void Start()
|
||||
{
|
||||
if (checkstart == true)
|
||||
{
|
||||
InitStart();
|
||||
checkstart = false;
|
||||
}
|
||||
}
|
||||
|
||||
void LateUpdate()
|
||||
{
|
||||
if (Mat != null)
|
||||
{
|
||||
if (CanAnimateIt == true)
|
||||
{
|
||||
foreach (Material Mate in Mat)
|
||||
{
|
||||
if (Mate != null)
|
||||
{
|
||||
if (Mate.shader.name == RT_Sha_Nam_URP || Mate.shader.name == RT_Sha_Nam_HDRP)
|
||||
{
|
||||
Set_Shad_Prop(Mate);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void OnValidate()
|
||||
{
|
||||
if (Mat != null)
|
||||
{
|
||||
foreach (Material Mate in Mat)
|
||||
{
|
||||
if (Mate != null)
|
||||
{
|
||||
if (Mate.shader.name == RT_Sha_Nam_URP || Mate.shader.name == RT_Sha_Nam_HDRP)
|
||||
{
|
||||
Set_Shad_Prop(Mate);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* Remove Later
|
||||
void OnDestroy()
|
||||
{
|
||||
Res_Shad_Prop();
|
||||
foreach (Material Mate in Mat)
|
||||
{
|
||||
if (Mate != null)
|
||||
{
|
||||
if (Mate.shader.name == RT_Sha_Nam_URP || Mate.shader.name == RT_Sha_Nam_HDRP)
|
||||
{
|
||||
Mate.SetFloat("_N_F_PA", 0.0f);
|
||||
Mate.DisableKeyword("N_F_PA_ON");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
void Reset()
|
||||
{
|
||||
if (Mat != null)
|
||||
{
|
||||
checkstart = true;
|
||||
Res_Shad_Prop();
|
||||
|
||||
foreach (Material Mate in Mat)
|
||||
{
|
||||
if (Mate != null)
|
||||
{
|
||||
if (Mate.shader.name == RT_Sha_Nam_URP || Mate.shader.name == RT_Sha_Nam_HDRP)
|
||||
{
|
||||
Set_Shad_Prop(Mate);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
coun_obj_wi_ralsha = 0;
|
||||
coun_obj_mat = 0;
|
||||
coun_obj_mat_arr = 0;
|
||||
InitStart();
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
#region Init
|
||||
|
||||
void InitStart()
|
||||
{
|
||||
if (attac == null || attac.Length == 0)
|
||||
{
|
||||
attac = this.gameObject.GetComponentsInChildren<Transform>();
|
||||
}
|
||||
|
||||
int x = 0;
|
||||
foreach (Transform Trans in attac)
|
||||
{
|
||||
|
||||
if (Trans.GetComponent<SkinnedMeshRenderer>() == true)
|
||||
{
|
||||
if (Trans.GetComponent<SkinnedMeshRenderer>().sharedMaterial != null)
|
||||
{
|
||||
if (Trans.GetComponent<SkinnedMeshRenderer>().sharedMaterial.shader.name == RT_Sha_Nam_URP || Trans.GetComponent<SkinnedMeshRenderer>().sharedMaterial.shader.name == RT_Sha_Nam_HDRP)
|
||||
{
|
||||
coun_obj_wi_ralsha++;
|
||||
coun_obj_mat += Trans.GetComponent<SkinnedMeshRenderer>().sharedMaterials.Length;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if (Trans.GetComponent<MeshRenderer>() == true)
|
||||
{
|
||||
if (Trans.GetComponent<MeshRenderer>().sharedMaterial != null)
|
||||
{
|
||||
if (Trans.GetComponent<MeshRenderer>().sharedMaterial.shader.name == RT_Sha_Nam_URP || Trans.GetComponent<MeshRenderer>().sharedMaterial.shader.name == RT_Sha_Nam_HDRP)
|
||||
{
|
||||
coun_obj_wi_ralsha++;
|
||||
coun_obj_mat += Trans.GetComponent<MeshRenderer>().sharedMaterials.Length;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
SubTran = new Transform[coun_obj_wi_ralsha];
|
||||
|
||||
foreach (Transform Trans in attac)
|
||||
{
|
||||
if (Trans.GetComponent<SkinnedMeshRenderer>() == true)
|
||||
{
|
||||
if (Trans.GetComponent<SkinnedMeshRenderer>().sharedMaterial != null)
|
||||
{
|
||||
if (Trans.GetComponent<SkinnedMeshRenderer>().sharedMaterial.shader.name == RT_Sha_Nam_URP || Trans.GetComponent<SkinnedMeshRenderer>().sharedMaterial.shader.name == RT_Sha_Nam_HDRP)
|
||||
{
|
||||
SubTran[x] = Trans;
|
||||
x++;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if (Trans.GetComponent<MeshRenderer>() == true)
|
||||
{
|
||||
if (Trans.GetComponent<MeshRenderer>().sharedMaterial != null)
|
||||
{
|
||||
if (Trans.GetComponent<MeshRenderer>().sharedMaterial.shader.name == RT_Sha_Nam_URP || Trans.GetComponent<MeshRenderer>().sharedMaterial.shader.name == RT_Sha_Nam_HDRP)
|
||||
{
|
||||
SubTran[x] = Trans;
|
||||
x++;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Mat = new Material[coun_obj_mat];
|
||||
|
||||
|
||||
foreach (Transform Trans in SubTran)
|
||||
{
|
||||
if (Trans.GetComponent<SkinnedMeshRenderer>() == true)
|
||||
{
|
||||
if (Trans.GetComponent<SkinnedMeshRenderer>().sharedMaterial != null)
|
||||
{
|
||||
if (Trans.GetComponent<SkinnedMeshRenderer>().sharedMaterial.shader.name == RT_Sha_Nam_URP || Trans.GetComponent<SkinnedMeshRenderer>().sharedMaterial.shader.name == RT_Sha_Nam_HDRP)
|
||||
{
|
||||
for (int i = 0; i < Trans.GetComponent<SkinnedMeshRenderer>().sharedMaterials.Length; i++)
|
||||
{
|
||||
Mat[coun_obj_mat_arr] = Trans.GetComponent<SkinnedMeshRenderer>().sharedMaterials[i];
|
||||
coun_obj_mat_arr++;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if (Trans.GetComponent<MeshRenderer>() == true)
|
||||
{
|
||||
if (Trans.GetComponent<MeshRenderer>().sharedMaterial != null)
|
||||
{
|
||||
if (Trans.GetComponent<MeshRenderer>().sharedMaterial.shader.name == RT_Sha_Nam_URP || Trans.GetComponent<MeshRenderer>().sharedMaterial.shader.name == RT_Sha_Nam_HDRP)
|
||||
{
|
||||
|
||||
for (int i = 0; i < Trans.GetComponent<MeshRenderer>().sharedMaterials.Length; i++)
|
||||
{
|
||||
Mat[coun_obj_mat_arr] = Trans.GetComponent<MeshRenderer>().sharedMaterials[i];
|
||||
coun_obj_mat_arr++;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
foreach (Material Mat in Mat)
|
||||
{
|
||||
if (Mat != null)
|
||||
{
|
||||
Set_Shad_Prop(Mat);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
void Set_Shad_Prop(Material Mat)
|
||||
{
|
||||
if (Mat.IsKeywordEnabled("N_F_PA_ON") == true)
|
||||
{
|
||||
Mat.SetFloat("_PresAdju", Perspective);
|
||||
Mat.SetFloat("_ClipAdju", Clip);
|
||||
Mat.SetFloat("_PASize", CloseUpSize);
|
||||
Mat.SetFloat("_PASmooTrans", CloseUpSizeSmoothTransition);
|
||||
Mat.SetFloat("_PADist", CloseUpSizeDistance);
|
||||
}
|
||||
else if (Mat.IsKeywordEnabled("N_F_PA_ON") != true)
|
||||
{
|
||||
Mat.EnableKeyword("N_F_PA_ON");
|
||||
Mat.SetInt("_N_F_PA", 1);
|
||||
}
|
||||
}
|
||||
|
||||
void Res_Shad_Prop()
|
||||
{
|
||||
Perspective = 1.0f;
|
||||
Clip = 1.0f;
|
||||
CloseUpSize = 0.0f;
|
||||
CloseUpSizeSmoothTransition = 1.0f;
|
||||
CloseUpSizeDistance = 0.0f;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 257798aae5c4052419047b7e5983c391
|
||||
@@ -0,0 +1,142 @@
|
||||
//RealToon - ShadowT SDF Mode [Helper]
|
||||
//MJQStudioWorks
|
||||
//©2025
|
||||
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
namespace RealToon.Script
|
||||
{
|
||||
[ExecuteAlways]
|
||||
[AddComponentMenu("RealToon/Tools/ShadowT SDF Mode - Helper")]
|
||||
public class ShadowTSDFModeHelper : MonoBehaviour
|
||||
{
|
||||
[Header("Note: ShadowT feature and SDF Mode will be automatically enable\nWhen you put a material that uses RealToon Shader on the Material slot.")]
|
||||
|
||||
[Space(25)]
|
||||
|
||||
[Space(10)]
|
||||
[SerializeField]
|
||||
[Tooltip("A material that uses 'RealToon - ShadowT' feature and enabled 'SDF Mode'.")]
|
||||
public Material Material = null;
|
||||
|
||||
[SerializeField]
|
||||
[Tooltip("An object to follow the position.")]
|
||||
public Transform ObjectToFollow = null;
|
||||
|
||||
[Space(10)]
|
||||
|
||||
[SerializeField]
|
||||
[Tooltip("The amount of light.")]
|
||||
float LightThreshold = 200.0f;
|
||||
|
||||
[Space(10)]
|
||||
|
||||
[SerializeField]
|
||||
[Tooltip("Invert the Foward/Front position of the object.")]
|
||||
bool ForwardInverted = false;
|
||||
|
||||
[Tooltip("Invert the Right position of the object.")]
|
||||
[SerializeField]
|
||||
bool RightInverted = false;
|
||||
|
||||
[HideInInspector]
|
||||
[SerializeField]
|
||||
bool checkstart = true;
|
||||
|
||||
string RT_Sha_Nam_URP = "Universal Render Pipeline/RealToon/Version 5/Default/Default";
|
||||
string RT_Sha_Nam_HDRP = "HDRP/RealToon/Version 5/Default";
|
||||
|
||||
string RT_Sha_Nam_BiRP_DD = "RealToon/Version 5/Default/Default";
|
||||
string RT_Sha_Nam_BiRP_DFT = "RealToon/Version 5/Default/Fade Transparency";
|
||||
string RT_Sha_Nam_BiRP_DR = "RealToon/Version 5/Default/Refraction";
|
||||
string RT_Sha_Nam_BiRP_TDD = "RealToon/Version 5/Tessellation/Default";
|
||||
string RT_Sha_Nam_BiRP_TDFT = "RealToon/Version 5/Tessellation/Fade Transparency";
|
||||
string RT_Sha_Nam_BiRP_TDR = "RealToon/Version 5/Tessellation/Refraction";
|
||||
|
||||
void LateUpdate()
|
||||
{
|
||||
|
||||
if (Material == null || ObjectToFollow == null)
|
||||
{ }
|
||||
else
|
||||
{
|
||||
if (Material.shader.name == RT_Sha_Nam_URP ||
|
||||
Material.shader.name == RT_Sha_Nam_HDRP ||
|
||||
Material.shader.name == RT_Sha_Nam_BiRP_DD ||
|
||||
Material.shader.name == RT_Sha_Nam_BiRP_DFT ||
|
||||
Material.shader.name == RT_Sha_Nam_BiRP_DR ||
|
||||
Material.shader.name == RT_Sha_Nam_BiRP_TDD ||
|
||||
Material.shader.name == RT_Sha_Nam_BiRP_TDFT ||
|
||||
Material.shader.name == RT_Sha_Nam_BiRP_TDR)
|
||||
{
|
||||
Material.SetFloat("_ShadowTLightThreshold", LightThreshold);
|
||||
|
||||
if (ForwardInverted != true)
|
||||
{
|
||||
Material.SetVector("_ObjectForward", ObjectToFollow.transform.forward);
|
||||
}
|
||||
else
|
||||
{
|
||||
Material.SetVector("_ObjectForward", -ObjectToFollow.transform.forward);
|
||||
}
|
||||
|
||||
if (RightInverted != true)
|
||||
{
|
||||
Material.SetVector("_ObjectRight", ObjectToFollow.transform.right);
|
||||
}
|
||||
else
|
||||
{
|
||||
Material.SetVector("_ObjectRight", -ObjectToFollow.transform.right);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
void OnValidate()
|
||||
{
|
||||
if (Material == null)
|
||||
{
|
||||
checkstart = true;
|
||||
}
|
||||
else if (Material != null)
|
||||
{
|
||||
if (Material.shader.name == RT_Sha_Nam_URP ||
|
||||
Material.shader.name == RT_Sha_Nam_HDRP ||
|
||||
Material.shader.name == RT_Sha_Nam_BiRP_DD ||
|
||||
Material.shader.name == RT_Sha_Nam_BiRP_DFT ||
|
||||
Material.shader.name == RT_Sha_Nam_BiRP_DR ||
|
||||
Material.shader.name == RT_Sha_Nam_BiRP_TDD ||
|
||||
Material.shader.name == RT_Sha_Nam_BiRP_TDFT ||
|
||||
Material.shader.name == RT_Sha_Nam_BiRP_TDR)
|
||||
{
|
||||
if (checkstart == true)
|
||||
{
|
||||
if ( (Material.IsKeywordEnabled("N_F_ST_ON") == false && Material.IsKeywordEnabled("N_F_STSDFM_ON") == false) ||
|
||||
(Material.IsKeywordEnabled("N_F_ST_ON") == true && Material.IsKeywordEnabled("N_F_STSDFM_ON") == false) ||
|
||||
(Material.IsKeywordEnabled("N_F_ST_ON") == false && Material.IsKeywordEnabled("N_F_STSDFM_ON") == true) )
|
||||
{
|
||||
Material.EnableKeyword("N_F_ST_ON");
|
||||
Material.SetFloat("_N_F_ST", 1.0f);
|
||||
|
||||
Material.EnableKeyword("N_F_STSDFM_ON");
|
||||
Material.SetFloat("_N_F_STSDFM", 1.0f);
|
||||
checkstart = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void Reset()
|
||||
{
|
||||
Material = null;
|
||||
ObjectToFollow = null;
|
||||
checkstart = true;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 94b1292d6eecd6b489a2afd078000520
|
||||
@@ -0,0 +1,315 @@
|
||||
//RealToon - Smear Effect [Helper]
|
||||
//MJQStudioWorks
|
||||
//©2025
|
||||
|
||||
using UnityEngine;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace RealToon.Script
|
||||
{
|
||||
|
||||
[ExecuteAlways]
|
||||
[AddComponentMenu("RealToon/Tools/Smear Effect - Helper")]
|
||||
|
||||
public class SmearEffectHelper : MonoBehaviour
|
||||
{
|
||||
Queue<Vector3> recentPositions = new Queue<Vector3>();
|
||||
|
||||
[HideInInspector]
|
||||
[SerializeField]
|
||||
Transform[] SubTran;
|
||||
|
||||
[HideInInspector]
|
||||
[SerializeField]
|
||||
Material[] Mat;
|
||||
|
||||
[HideInInspector]
|
||||
[SerializeField]
|
||||
Transform[] attac;
|
||||
|
||||
[Header("Note: Smear Effect feature will be automatically enable\nOn the materials of the object/model that uses RealToon Shader.")]
|
||||
|
||||
[Space(25)]
|
||||
|
||||
[SerializeField]
|
||||
[Tooltip("An object to control the smear effect.")]
|
||||
public Transform SmearController;
|
||||
|
||||
[Space(10)]
|
||||
|
||||
[SerializeField]
|
||||
[Tooltip("How long the distorted line trails stays on the previous position.")]
|
||||
int Delay = 15;
|
||||
|
||||
[SerializeField]
|
||||
[Tooltip("How large/small the trailing noise.")]
|
||||
float NoiseSize = 100;
|
||||
|
||||
[SerializeField]
|
||||
[Tooltip("How tall/short the trailing noise.")]
|
||||
float TrailSize = 1.5f;
|
||||
|
||||
[Space(10)]
|
||||
|
||||
[SerializeField]
|
||||
[Tooltip("Pause the current smear effect.")]
|
||||
bool PauseSmear = false;
|
||||
|
||||
int coun_obj_wi_ralsha = 0;
|
||||
int coun_obj_mat = 0;
|
||||
int coun_obj_mat_arr = 0;
|
||||
|
||||
[HideInInspector]
|
||||
[SerializeField]
|
||||
bool checkstart = true;
|
||||
|
||||
string RT_Sha_Nam_URP = "Universal Render Pipeline/RealToon/Version 5/Default/Default";
|
||||
string RT_Sha_Nam_HDRP = "HDRP/RealToon/Version 5/Default";
|
||||
|
||||
void Start()
|
||||
{
|
||||
if (checkstart == true)
|
||||
{
|
||||
InitStart();
|
||||
checkstart = false;
|
||||
}
|
||||
}
|
||||
|
||||
void LateUpdate()
|
||||
{
|
||||
if (SmearController != null)
|
||||
{
|
||||
if (PauseSmear != true)
|
||||
{
|
||||
if (Mat != null)
|
||||
{
|
||||
foreach (Material mate in Mat)
|
||||
{
|
||||
if (mate != null)
|
||||
{
|
||||
mate.SetVector("_ObjPosi", SmearController.position);
|
||||
recentPositions.Enqueue(SmearController.position);
|
||||
|
||||
if (recentPositions.Count > Delay)
|
||||
mate.SetVector("_PrevPosition", recentPositions.Dequeue());
|
||||
|
||||
Set_Shad_Prop(mate);
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
void Reset()
|
||||
{
|
||||
if (Mat != null)
|
||||
{
|
||||
foreach (Material mate in Mat)
|
||||
{
|
||||
if (mate != null)
|
||||
{
|
||||
mate.SetVector("_ObjPosi", new Vector4(0, 0, 0, 0));
|
||||
mate.SetVector("_PrevPosition", new Vector4(0, 0, 0, 0));
|
||||
}
|
||||
}
|
||||
recentPositions.Dequeue();
|
||||
recentPositions.Clear();
|
||||
checkstart = true;
|
||||
coun_obj_wi_ralsha = 0;
|
||||
coun_obj_mat = 0;
|
||||
coun_obj_mat_arr = 0;
|
||||
Res_Shad_Prop();
|
||||
InitStart();
|
||||
checkstart = false;
|
||||
}
|
||||
}
|
||||
|
||||
void OnDisable()
|
||||
{
|
||||
recentPositions.Dequeue();
|
||||
foreach (Material mate in Mat)
|
||||
{
|
||||
if (mate != null)
|
||||
{
|
||||
mate.SetVector("_ObjPosi", new Vector4(0, 0, 0, 0));
|
||||
mate.SetVector("_PrevPosition", new Vector4(0, 0, 0, 0));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* Remove Later
|
||||
void OnDestroy()
|
||||
{
|
||||
recentPositions.Clear();
|
||||
Res_Shad_Prop();
|
||||
foreach (Material Mate in Mat)
|
||||
{
|
||||
if (Mate != null)
|
||||
{
|
||||
if (Mate.shader.name == RT_Sha_Nam_URP || Mate.shader.name == RT_Sha_Nam_HDRP)
|
||||
{
|
||||
Mate.SetVector("_ObjPosi", new Vector4(0, 0, 0, 0));
|
||||
Mate.SetVector("_PrevPosition", new Vector4(0, 0, 0, 0));
|
||||
Mate.SetFloat("_N_F_SE", 0.0f);
|
||||
Mate.DisableKeyword("N_F_SE_ON");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
#region Init
|
||||
|
||||
void InitStart()
|
||||
{
|
||||
if (attac == null || attac.Length == 0)
|
||||
{
|
||||
attac = this.gameObject.GetComponentsInChildren<Transform>();
|
||||
}
|
||||
|
||||
if (SmearController == null)
|
||||
{
|
||||
SmearController = this.gameObject.transform;
|
||||
}
|
||||
|
||||
int x = 0;
|
||||
foreach (Transform Trans in attac)
|
||||
{
|
||||
|
||||
if (Trans.GetComponent<SkinnedMeshRenderer>() == true)
|
||||
{
|
||||
if (Trans.GetComponent<SkinnedMeshRenderer>().sharedMaterial != null)
|
||||
{
|
||||
if (Trans.GetComponent<SkinnedMeshRenderer>().sharedMaterial.shader.name == RT_Sha_Nam_URP || Trans.GetComponent<SkinnedMeshRenderer>().sharedMaterial.shader.name == RT_Sha_Nam_HDRP)
|
||||
{
|
||||
coun_obj_wi_ralsha++;
|
||||
coun_obj_mat += Trans.GetComponent<SkinnedMeshRenderer>().sharedMaterials.Length;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if (Trans.GetComponent<MeshRenderer>() == true)
|
||||
{
|
||||
if (Trans.GetComponent<MeshRenderer>().sharedMaterial != null)
|
||||
{
|
||||
if (Trans.GetComponent<MeshRenderer>().sharedMaterial.shader.name == RT_Sha_Nam_URP || Trans.GetComponent<MeshRenderer>().sharedMaterial.shader.name == RT_Sha_Nam_HDRP)
|
||||
{
|
||||
coun_obj_wi_ralsha++;
|
||||
coun_obj_mat += Trans.GetComponent<MeshRenderer>().sharedMaterials.Length;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
SubTran = new Transform[coun_obj_wi_ralsha];
|
||||
|
||||
foreach (Transform Trans in attac)
|
||||
{
|
||||
if (Trans.GetComponent<SkinnedMeshRenderer>() == true)
|
||||
{
|
||||
if (Trans.GetComponent<SkinnedMeshRenderer>().sharedMaterial != null)
|
||||
{
|
||||
if (Trans.GetComponent<SkinnedMeshRenderer>().sharedMaterial.shader.name == RT_Sha_Nam_URP || Trans.GetComponent<SkinnedMeshRenderer>().sharedMaterial.shader.name == RT_Sha_Nam_HDRP)
|
||||
{
|
||||
SubTran[x] = Trans;
|
||||
x++;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if (Trans.GetComponent<MeshRenderer>() == true)
|
||||
{
|
||||
if (Trans.GetComponent<MeshRenderer>().sharedMaterial != null)
|
||||
{
|
||||
if (Trans.GetComponent<MeshRenderer>().sharedMaterial.shader.name == RT_Sha_Nam_URP || Trans.GetComponent<MeshRenderer>().sharedMaterial.shader.name == RT_Sha_Nam_HDRP)
|
||||
{
|
||||
SubTran[x] = Trans;
|
||||
x++;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Mat = new Material[coun_obj_mat];
|
||||
|
||||
|
||||
foreach (Transform Trans in SubTran)
|
||||
{
|
||||
if (Trans.GetComponent<SkinnedMeshRenderer>() == true)
|
||||
{
|
||||
if (Trans.GetComponent<SkinnedMeshRenderer>().sharedMaterial != null)
|
||||
{
|
||||
if (Trans.GetComponent<SkinnedMeshRenderer>().sharedMaterial.shader.name == RT_Sha_Nam_URP || Trans.GetComponent<SkinnedMeshRenderer>().sharedMaterial.shader.name == RT_Sha_Nam_HDRP)
|
||||
{
|
||||
for (int i = 0; i < Trans.GetComponent<SkinnedMeshRenderer>().sharedMaterials.Length; i++)
|
||||
{
|
||||
Mat[coun_obj_mat_arr] = Trans.GetComponent<SkinnedMeshRenderer>().sharedMaterials[i];
|
||||
coun_obj_mat_arr++;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if (Trans.GetComponent<MeshRenderer>() == true)
|
||||
{
|
||||
if (Trans.GetComponent<MeshRenderer>().sharedMaterial != null)
|
||||
{
|
||||
if (Trans.GetComponent<MeshRenderer>().sharedMaterial.shader.name == RT_Sha_Nam_URP || Trans.GetComponent<MeshRenderer>().sharedMaterial.shader.name == RT_Sha_Nam_HDRP)
|
||||
{
|
||||
|
||||
for (int i = 0; i < Trans.GetComponent<MeshRenderer>().sharedMaterials.Length; i++)
|
||||
{
|
||||
Mat[coun_obj_mat_arr] = Trans.GetComponent<MeshRenderer>().sharedMaterials[i];
|
||||
coun_obj_mat_arr++;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
foreach (Material Mat in Mat)
|
||||
{
|
||||
if (Mat != null)
|
||||
{
|
||||
Set_Shad_Prop(Mat);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
void Set_Shad_Prop(Material Mat)
|
||||
{
|
||||
if (Mat.IsKeywordEnabled("N_F_SE_ON") == true)
|
||||
{
|
||||
Mat.SetFloat("_NoiseSize", NoiseSize);
|
||||
Mat.SetFloat("_TrailSize", TrailSize);
|
||||
}
|
||||
else if (Mat.IsKeywordEnabled("N_F_SE_ON") != true)
|
||||
{
|
||||
Mat.EnableKeyword("N_F_SE_ON");
|
||||
Mat.SetInt("_N_F_SE", 1);
|
||||
}
|
||||
}
|
||||
void Res_Shad_Prop()
|
||||
{
|
||||
NoiseSize = 100;
|
||||
TrailSize = 1.5f;
|
||||
Delay = 15;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9b8a89bf5e3673342a090796bba2a357
|
||||
38
Assets/Third Parties/RealToon/What's New.txt
Normal file
38
Assets/Third Parties/RealToon/What's New.txt
Normal file
@@ -0,0 +1,38 @@
|
||||
What's New to RealToon V5.0.11 (February 2025)
|
||||
=====================================
|
||||
|
||||
[New]
|
||||
- (ShadowT - SDF Mode Helper - New Options) (Built-In, URP and HDRP)
|
||||
*Forward Inverted - Invert Forward/Front position of the object.
|
||||
*Right Inverted - Invert Right position of the object.
|
||||
*Light Threshold - The amount of light.
|
||||
|
||||
- RealToon Shader Cache (New Tool) (Built-In, URP and HDRP)
|
||||
"To reduce or clear cached RealToon Shader."
|
||||
"Useful for after update RealToon Shader or Re-import RealToon Shader."
|
||||
"To access this, "Window -> RealToon -> RealToon Shader Cache"."
|
||||
|
||||
- Support URP Dynamic Lightmap. (Unity 6.0 to Latest)
|
||||
- Support URP Deferred+. (Unity 6.1 to Latest)
|
||||
- Support Unity 6.1
|
||||
- Early add support for the later Unity 6.2.
|
||||
|
||||
|
||||
[Changes]
|
||||
- RealToon Shader (SRP) packages has been reorganized, separate Unity 6 folder and Older/Previous Unity version folders.
|
||||
- (URP 10 - 11) and (HDRP 10 - 11) has been removed, not supported anymore.
|
||||
|
||||
|
||||
[Fixed]
|
||||
- Gloss feature "Unity_WorldToObject" error. (URP)
|
||||
- Overlap Sky & RayTracing Reflection. (HDRP)
|
||||
- RealToon HDRP Example missing Global Volume and overexposed. (HDRP)
|
||||
- URP Lightmap errors. (URP)
|
||||
|
||||
====================================
|
||||
|
||||
#Read the "Change - Fix Log.txt." file for previous updates.
|
||||
#This update supports Unity 5, 2017, 2018, 2019, 2020, 2022, 2023, Unity 6 and future unity versions.
|
||||
|
||||
[Other Notes]
|
||||
* If you encounter some problems or need help just contact by email.
|
||||
7
Assets/Third Parties/RealToon/What's New.txt.meta
Normal file
7
Assets/Third Parties/RealToon/What's New.txt.meta
Normal file
@@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c26904c71091b8245b97cc178a3802dc
|
||||
TextScriptImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Reference in New Issue
Block a user