장보기 프로젝트

This commit is contained in:
2026-04-14 18:02:07 +09:00
commit dc19679985
2658 changed files with 235852 additions and 0 deletions

View File

@@ -0,0 +1 @@
1

View File

@@ -0,0 +1,14 @@
fileFormatVersion: 2
guid: d5a3be5e8e97b7a4bbb0c7eb475b4cbd
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 65518
packageName: RealToon (Pro Anime/Toon Shader)
packageVersion: 5.0.15
assetPath: Assets/RealToon/Editor/RTW.sett
uploadId: 889742

Binary file not shown.

View File

@@ -0,0 +1,117 @@
fileFormatVersion: 2
guid: 298e5d8daf2346e47855e78e1b794f1d
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 13
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
flipGreenChannel: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
ignoreMipmapLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 1
mipBias: 0
wrapU: 0
wrapV: 0
wrapW: 0
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
swizzle: 50462976
cookieLightType: 0
platformSettings:
- serializedVersion: 4
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 0
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
customData:
physicsShape: []
bones: []
spriteID:
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spriteCustomMetadata:
entries: []
nameFileIdTable: {}
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,584 @@
//MJQStudioWorks
using UnityEditor;
using System.IO;
using UnityEngine;
using UnityEngine.Rendering;
using UnityEditor.PackageManager;
using System.Linq;
namespace RealToon.Editor.Welcome
{
[InitializeOnLoad]
public class RTWelcome : EditorWindow
{
#region Variables
static float WinHig = 300;
static EditorWindow EdiWin;
static string CurrRP;
static string CurrRPDisp;
static string CurrRPVer;
static string CurrRPFullVer;
static char UniVerRev;
static string UniVer;
static string UniVerFull = null;
static string VRC_LV_Stat;
#pragma warning disable CS0414
static bool VRC_LV_CHK;
static bool SRP_CHK_AVAI;
#pragma warning restore CS0414
static Object RT_Pack;
static string RT_pac_name;
static Object RP_ReMe;
static Object RP_Qui_ReMe;
static Object RP_Exam;
static Vector2 scroll;
static Vector2 scroll2;
static Vector2 scroll3;
static string rt_welcome_settings = "Assets/RealToon/Editor/RTW.sett";
static string[] RP_Info = { "Built-In Render Pipeline (BiRP)",
"Universal Render Pipeline (URP)",
"High Definition Render Pipeline (HDRP)" };
#endregion
#region RT_Welcome
static RTWelcome()
{
if (File.Exists(rt_welcome_settings))
{
if (File.ReadAllText(rt_welcome_settings) == "0")
{
if (File.Exists(rt_welcome_settings))
{
EditorApplication.delayCall += Ini;
}
}
}
}
#endregion
#region ini
[MenuItem("Window/RealToon/Welcome Screen")]
static void Ini()
{
EdiWin = GetWindow<RTWelcome>(true);
EdiWin.titleContent = new GUIContent("Welcome RealToon Shader User");
WinHig = 800;
EdiWin.minSize = new Vector2(658, WinHig);
EdiWin.maxSize = new Vector2(658, WinHig);
}
#endregion
#region check_srp_ver
static void check_srp_ver()
{
var request = Client.List();
while (!request.IsCompleted) { }
if (request.Status == StatusCode.Success)
{
foreach (var package in request.Result)
{
if (package.name == "com.unity.render-pipelines.universal")
{
CurrRPVer = package.version.Substring(0, 2);
CurrRPFullVer = package.version;
CurrRP = package.displayName;
SRP_CHK_AVAI = true;
return;
}
else if (package.name == "com.unity.render-pipelines.high-definition")
{
CurrRPVer = package.version.Substring(0, 2);
CurrRPFullVer = package.version;
CurrRP = package.displayName;
SRP_CHK_AVAI = true;
return;
}
}
}
else if (request.Status >= StatusCode.Failure)
{
UnityEngine.Debug.LogWarning("URP and HDRP Packages are not available or present in your project.");
SRP_CHK_AVAI = false;
}
}
#endregion
#region check_vrc_lv
static void check_vrc_lv()
{
if (GraphicsSettings.currentRenderPipeline == null)
{
if (Directory.Exists("Assets/VRC Light Volumes") || Directory.Exists("Packages/red.sim.lightvolumes"))
{
VRC_LV_CHK = true;
VRC_LV_Stat = "Is present";
}
else
{
VRC_LV_CHK = false;
VRC_LV_Stat = "Not Present";
}
if (Directory.Exists("Assets/VRCLightVolumes"))
{
VRC_LV_CHK = false;
VRC_LV_Stat = "It Is Present\nBut the folder name should be\n'VRC Light Volumes' not 'VRCLightVolumes'.";
}
}
else
{
VRC_LV_CHK = false;
VRC_LV_Stat = "BiRP Only";
}
}
#endregion
#region rt_pac_set
static void rt_pac_set()
{
if (GraphicsSettings.currentRenderPipeline != null)
{
if (CurrRP == "Universal Render Pipeline" || CurrRP == "Universal RP")
{
if (int.Parse(CurrRPVer) == 12 || int.Parse(CurrRPVer) == 13)
{
RT_pac_name = "RealToon URP (URP 15 and 16)";
}
if (int.Parse(CurrRPVer) == 14)
{
RT_pac_name = "RealToon URP (URP 14)";
}
if (int.Parse(CurrRPVer) == 15 || int.Parse(CurrRPVer) == 16)
{
RT_pac_name = "RealToon URP (URP 15 and 16)";
}
if (UniVerFull.Substring(0, 6) == "6000.0")
{
RT_pac_name = "RealToon URP (Unity 6.0)";
}
else if (UniVerFull.Substring(0, 6) == "6000.1")
{
RT_pac_name = "RealToon URP (Unity 6.1)";
}
else if (UniVerFull.Substring(0, 6) == "6000.2")
{
RT_pac_name = "RealToon URP (Unity 6.2)";
}
else if (UniVerFull.Substring(0, 6) == "6000.3" || UniVerFull.Substring(0, 6) == "6000.4")
{
RT_pac_name = "RealToon URP (Unity 6.3 and 6.4)";
}
else if (UniVerFull.Substring(0, 6) == "6000.5" || (int.Parse(UniVerFull.Substring(0, 1)) == 6 && int.Parse(UniVerFull.Substring(5, 1)) >= 5) )
{
RT_pac_name = "RealToon URP (Unity 6.5 To Later)";
}
else if ( (int.Parse(UniVerFull.Substring(0, 1)) == 6 && int.Parse(UniVerFull.Substring(5, 1)) >= 5 && ( (UniVerRev.ToString() == "a") || (UniVerRev.ToString() == "b") ) ) )
{
RT_pac_name = "RealToon URP (Unity 6.5 To Later)";
}
var ids_reme = AssetDatabase.FindAssets("Please read before you unpack or import", new[] { "Assets/RealToon/RealToon Shader Packages/SRP (LWRP - URP - HDRP)/URP" });
if (ids_reme.Length == 1)
{
RP_ReMe = AssetDatabase.LoadMainAssetAtPath(AssetDatabase.GUIDToAssetPath(ids_reme[0]));
}
else
{
Debug.Log("Couldn't find ReadMe's");
}
var ids_examp = AssetDatabase.FindAssets("RealToon URP (Simple Example)", new[] { "Assets/RealToon/RealToon Examples/SRP/URP" });
if (ids_examp.Length == 1)
{
RP_Exam = AssetDatabase.LoadMainAssetAtPath(AssetDatabase.GUIDToAssetPath(ids_examp[0]));
}
else
{
Debug.Log("Couldn't find Example's");
}
}
else if (CurrRP == "High Definition Render Pipeline" || CurrRP == "High Definition RP")
{
if (int.Parse(CurrRPVer) == 12 || int.Parse(CurrRPVer) == 13)
{
RT_pac_name = "RealToon HDRP (HDRP 12 and 13)";
}
else if (int.Parse(CurrRPVer) == 16)
{
RT_pac_name = "RealToon HDRP (HDRP 16)";
}
else if (int.Parse(CurrRPVer) == 14 || int.Parse(CurrRPVer) == 15)
{
RT_pac_name = "RealToon HDRP (HDRP 14 and 15)";
}
if (UniVerFull.Substring(0, 6) == "6000.0")
{
RT_pac_name = "RealToon HDRP (Unity 6.0)";
}
else if (UniVerFull.Substring(0, 6) == "6000.1" || UniVerFull.Substring(0, 6) == "6000.2" || UniVerFull.Substring(0, 6) == "6000.3")
{
RT_pac_name = "RealToon HDRP (Unity 6.1 To 6.4)";
}
else if (UniVerFull.Substring(0, 6) == "6000.5" || (int.Parse(UniVerFull.Substring(0, 1)) == 6 && int.Parse(UniVerFull.Substring(5, 1)) >= 5))
{
RT_pac_name = "RealToon HDRP (Unity 6.5 To Later)";
}
else if ((int.Parse(UniVerFull.Substring(0, 1)) == 6 && int.Parse(UniVerFull.Substring(5, 1)) >= 5 && ((UniVerRev.ToString() == "a") || (UniVerRev.ToString() == "b"))))
{
RT_pac_name = "RealToon HDRP (Unity 6.5 To Later)";
}
var ids_reme = AssetDatabase.FindAssets("Please read before you unpack or import", new[] { "Assets/RealToon/RealToon Shader Packages/SRP (LWRP - URP - HDRP)/HDRP" });
if (ids_reme.Length == 1)
{
RP_ReMe = AssetDatabase.LoadMainAssetAtPath(AssetDatabase.GUIDToAssetPath(ids_reme[0]));
}
else
{
Debug.Log("Couldn't find ReadMe's");
}
var ids_qui_reme = AssetDatabase.FindAssets("RealToon HDRP (Quick Guide)", new[] { "Assets/RealToon/RealToon Shader Packages/SRP (LWRP - URP - HDRP)/HDRP" });
if (ids_qui_reme.Length == 1)
{
RP_Qui_ReMe = AssetDatabase.LoadMainAssetAtPath(AssetDatabase.GUIDToAssetPath(ids_qui_reme[0]));
}
else
{
Debug.Log("Couldn't find Quick ReadMe's");
}
var ids_examp = AssetDatabase.FindAssets("RealToon HDRP (Simple Example)", new[] { "Assets/RealToon/RealToon Examples/SRP/HDRP" });
if (ids_examp.Length == 1)
{
RP_Exam = AssetDatabase.LoadMainAssetAtPath(AssetDatabase.GUIDToAssetPath(ids_examp[0]));
}
else
{
Debug.Log("Couldn't find Example's");
}
}
}
else
{
if (int.Parse(Application.unityVersion.Substring(0, 4)) >= 2019)
{
RT_pac_name = "RealToon Built-In RP [3D] (Unity 2019 and Later)";
}
else if (int.Parse(Application.unityVersion.Substring(0, 4)) < 2019)
{
RT_pac_name = "RealToon Built-In RP [3D] (Unity 2018 and below) (FV)";
}
var ids_examp = AssetDatabase.FindAssets("RealToon Built-In RP [3D] (Example)", new[] { "Assets/RealToon/RealToon Examples/Built-In RP [3D]" });
if (ids_examp.Length == 1)
{
RP_Exam = AssetDatabase.LoadMainAssetAtPath(AssetDatabase.GUIDToAssetPath(ids_examp[0]));
}
else
{
Debug.Log("Couldn't find Example's");
}
}
var ids = AssetDatabase.FindAssets(RT_pac_name);
if (ids.Length == 1)
{
RT_Pack = AssetDatabase.LoadMainAssetAtPath(AssetDatabase.GUIDToAssetPath(ids[0]));
}
else
{
RT_pac_name = "Package Not Found In Your Project";
Debug.Log("Couldn't find packages");
}
}
#endregion
#region Process & UI
void OnGUI()
{
Texture2D t = EditorGUIUtility.Load("Assets/RealToon/Editor/RT_GUI_Img.png") as Texture2D;
Rect rect = new Rect(233, 0, t.width + 70, t.height + 70);
GUI.DrawTexture(rect, t, ScaleMode.ScaleToFit);
EditorGUILayout.Space(76);
EditorGUILayout.BeginVertical();
EditorGUILayout.BeginVertical();
if (GraphicsSettings.currentRenderPipeline != null)
{
if (CurrRP == "Universal Render Pipeline" || CurrRP == "Universal RP")
{
CurrRPDisp = RP_Info[1] + " v" + CurrRPFullVer;
}
else if (CurrRP == "High Definition Render Pipeline" || CurrRP == "High Definition RP")
{
CurrRPDisp = RP_Info[2] + " v" + CurrRPFullVer;
}
}
else
{
CurrRPDisp = RP_Info[0] + CurrRPFullVer;
}
GUIStyle centeredtext = GUI.skin.GetStyle("Label");
centeredtext.alignment = TextAnchor.MiddleCenter;
centeredtext.fontSize = 18;
centeredtext.fontStyle = FontStyle.Bold;
EditorGUILayout.LabelField("A PRO Anime/Toon Shader", centeredtext);
EditorGUILayout.EndVertical();
EditorGUILayout.Space(19);
EditorGUILayout.LabelField("", GUI.skin.horizontalSlider);
EditorGUILayout.BeginHorizontal();
EditorGUILayout.Space(22);
EditorGUILayout.BeginVertical("TextArea", GUILayout.Height(310));
EditorGUILayout.LabelField("Introduction:");
scroll = EditorGUILayout.BeginScrollView(scroll, GUILayout.Height(285));
EditorGUILayout.Space(4);
GUILayout.TextArea(
"*Thank you for purchasing RealToon Shader, before you start using RealToon, please read first the 'ReadMe - Important - Guide.txt' text file for setups and infos.\n\n" +
"*All shaders packages are in the folder 'RealToon Shader Packages', just unpack the 'RealToon Shader' that correspond to your projects render pipeline.\n" +
"You can also just click the package on the Welcome Screen, To access the Welcome Screen just go to 'Window > RealToon > Welcome Screen'.\n\n" +
"*If you are a VRoid user, read the 'For VRoid-VRM users.txt' text file.\n\n" +
"*For video tutorials and user guide, see the bottom part of RealToon Inspector panel.\n\n" +
"*If you need some help/support, just send an email including the invoice number.\n" +
"See the 'User Guide.pdf' file for the links and email support.\n\n" +
"*PlayStation support is currently for URP and HDRP only.\n\n" +
"Note:\nDon't move the 'RealToon' folder to other folder, it should stay in the root folder 'Asset'.");
EditorGUILayout.EndScrollView();
EditorGUILayout.EndVertical();
EditorGUILayout.Space(22);
EditorGUILayout.EndHorizontal();
EditorGUILayout.LabelField("", GUI.skin.horizontalSlider);
EditorGUILayout.BeginHorizontal();
EditorGUILayout.Space(20);
EditorGUILayout.BeginVertical("TextArea", GUILayout.Height(220));
EditorGUILayout.LabelField("Project Info:");
scroll2 = EditorGUILayout.BeginScrollView(scroll2, GUILayout.Height(240));
EditorGUILayout.Space(4);
GUIStyle Pro_info = GUI.skin.GetStyle("Label");
Pro_info.alignment = TextAnchor.MiddleLeft;
Pro_info.fontSize = 12;
GUILayout.Label("Rendering Pipeline: \n" + CurrRPDisp, Pro_info);
EditorGUILayout.Space(10);
GUILayout.Label("Unity Version: \n" + UniVerFull, Pro_info);
EditorGUILayout.Space(10);
if (GraphicsSettings.currentRenderPipeline == null)
{
GUILayout.Label("VRC Light Volumes (VRC Users Only): \n" + VRC_LV_Stat, Pro_info);
}
EditorGUILayout.EndScrollView();
EditorGUILayout.EndVertical();
EditorGUILayout.Space(30);
EditorGUILayout.BeginVertical("TextArea", GUILayout.Height(220));
EditorGUILayout.LabelField("Suitable Packages, ReadMe & Examples:");
scroll3 = EditorGUILayout.BeginScrollView(scroll3, GUILayout.Height(240));
GUIStyle Pro_info2 = GUI.skin.GetStyle("Label");
Pro_info2.fontSize = 12;
Pro_info2.fontStyle = FontStyle.Bold;
EditorGUILayout.LabelField("Packages: ", Pro_info2);
if(GUILayout.Button(RT_pac_name))
{
if(RT_pac_name != "Package Not Found In Your Project")
{
Debug.LogWarning("Now opening RealToon Shader package: " + RT_Pack.name);
AssetDatabase.OpenAsset(RT_Pack);
}
}
EditorGUILayout.Space(10);
EditorGUILayout.LabelField("Examples: ", Pro_info2);
if (GraphicsSettings.currentRenderPipeline != null)
{
if (CurrRP == "Universal Render Pipeline" || CurrRP == "Universal RP")
{
if(GUILayout.Button("RealToon URP Example"))
{
AssetDatabase.OpenAsset(RP_Exam);
}
}
else if (CurrRP == "High Definition Render Pipeline" || CurrRP == "High Definition RP")
{
if(GUILayout.Button("RealToon HDRP Example"))
{
AssetDatabase.OpenAsset(RP_Exam);
}
}
}
else
{
if(GUILayout.Button("RealToon Built-In RP/BiRP Example"))
{
AssetDatabase.OpenAsset(RP_Exam);
}
}
EditorGUILayout.Space(10);
EditorGUILayout.LabelField("ReadMe: ", Pro_info2);
if (GraphicsSettings.currentRenderPipeline != null)
{
if (CurrRP == "Universal Render Pipeline" || CurrRP == "Universal RP")
{
if(GUILayout.Button("Read Me First (URP)"))
{
AssetDatabase.OpenAsset(RP_ReMe);
}
}
else if (CurrRP == "High Definition Render Pipeline" || CurrRP == "High Definition RP")
{
if(GUILayout.Button("Read Me First (HDRP)"))
{
AssetDatabase.OpenAsset(RP_ReMe);
}
if(GUILayout.Button("Quick Guide (HDRP)"))
{
AssetDatabase.OpenAsset(RP_Qui_ReMe);
}
}
}
if(GUILayout.Button("ReadMe for Manual Unpacking & Info"))
{
Application.OpenURL(Application.dataPath + "/RealToon/ReadMe - Important - Guide.txt");
}
if(GUILayout.Button("VRoid-VRM users Read Me"))
{
Application.OpenURL(Application.dataPath + "/RealToon/For VRoid-VRM users.txt");
}
if(GUILayout.Button("What's New"))
{
Application.OpenURL(Application.dataPath + "/RealToon/What's New.txt");
}
EditorGUILayout.EndScrollView();
EditorGUILayout.EndVertical();
EditorGUILayout.Space(20);
EditorGUILayout.EndHorizontal();
EditorGUILayout.Space(5);
EditorGUILayout.LabelField("", GUI.skin.horizontalSlider);
EditorGUILayout.BeginHorizontal();
if (GUILayout.Button("User Guide"))
{
Application.OpenURL(Application.dataPath + "/RealToon/RealToon (User Guide).pdf");
}
if (GUILayout.Button("Video Tutorials"))
{
Application.OpenURL("www.youtube.com/playlist?list=PL0M1m9smMVPJ4qEkJnZObqJE5mU9uz6SY");
}
if (GUILayout.Button("Contact/Support"))
{
Application.OpenURL("www.mjqstudioworks.weebly.com/contact.html");
}
if (GUILayout.Button("Website"))
{
Application.OpenURL("www.mjqstudioworks.weebly.com");
}
if (GUILayout.Button("Check Updates"))
{
Application.OpenURL("https://mjqstudioworks.weebly.com/realtoonshaderupdates.html");
}
EditorGUILayout.EndHorizontal();
EditorGUILayout.EndVertical();
}
private void OnEnable()
{
UniVer = Application.unityVersion.Substring(0, 4);
UniVerFull = Application.unityVersion;
string[] UniVerPar = Application.unityVersion.Split('.');
UniVerRev = UniVerPar[2].FirstOrDefault(char.IsLetter);
check_srp_ver();
check_vrc_lv();
rt_pac_set();
}
private void OnDestroy()
{
if (File.Exists(rt_welcome_settings) && File.ReadAllText(rt_welcome_settings) == "0")
{
File.WriteAllText(rt_welcome_settings, "1");
AssetDatabase.Refresh();
}
}
#endregion
}
}

View File

@@ -0,0 +1,18 @@
fileFormatVersion: 2
guid: 3eddd3adb3383a342a543d148d492447
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 65518
packageName: RealToon (Pro Anime/Toon Shader)
packageVersion: 5.0.15
assetPath: Assets/RealToon/Editor/RT_Welcome.cs
uploadId: 889742

View File

@@ -0,0 +1,129 @@
//RealToon Shader Cache
//©MJQStudioWorks
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;
}
}
}
}
}

View File

@@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: b57f4820f70afb6469f99f2a6e73e607
AssetOrigin:
serializedVersion: 1
productId: 65518
packageName: RealToon (Pro Anime/Toon Shader)
packageVersion: 5.0.15
assetPath: Assets/RealToon/Editor/RealToonShaderCache.cs
uploadId: 889742

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: e44691c063f9e5943b99e9a918b7647a
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,37 @@
//RealToonGUI
//MJQStudioWorks
//©2025
using UnityEngine;
using UnityEditor;
using System;
namespace RealToon.SettingsOptions
{
internal class RTToggleOption : MaterialPropertyDrawer
{
public override void OnGUI(Rect position, MaterialProperty prop, GUIContent label, MaterialEditor editor)
{
bool value = (prop.floatValue != 0.0f);
EditorGUI.BeginChangeCheck();
EditorGUI.showMixedValue = prop.hasMixedValue;
value = EditorGUI.Toggle(position, label, value);
EditorGUI.showMixedValue = false;
if (EditorGUI.EndChangeCheck())
{
prop.floatValue = value ? 1.0f : 0.0f;
}
}
}
}

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 1cd58e2ff61cd5e459c58cecf73d687b

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,18 @@
fileFormatVersion: 2
guid: b5506465586dd18499b022aff98e6ac8
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 65518
packageName: RealToon (Pro Anime/Toon Shader)
packageVersion: 5.0.15
assetPath: Assets/RealToon/Editor/SwapShaderToRealToon.cs
uploadId: 889742