[WL-814s] 캐릭터를 배경과 같은 아트풍으로(셰이더·텍스처) + 되돌리기 스위치 (#814)
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
|
|
@ -0,0 +1,313 @@
|
||||||
|
// ─────────────────────────────────────────────────────────────────────────────
|
||||||
|
// WL814s_Build.cs — 캐릭터를 배경과 같은 Toon 으로 (에디터 전용 · 발주서 WL-814s §1)
|
||||||
|
//
|
||||||
|
// 🔴 원본(`Assets/Suriyun/**`·`Assets/ThirdParty/**`·`Assets/Script/**`·원본 png) 수정 0.
|
||||||
|
// 전부 `Assets/WL/Look/Character/**` 아래 복사본으로 만든다.
|
||||||
|
//
|
||||||
|
// 배경 실측값(Assets/3DPixelArtEnvironment/Materials/*.mat · 8종 전수)
|
||||||
|
// _Shades 7 (8/8) · _Brightness 0.25 (7/8 · Leaves 1) · _MinimumDarkness 0.2 (7/8 · Leaves 0.25)
|
||||||
|
// _OUTLINESENABLED 1 (7/8 · Leaves 0) · _Outline (0,0,0,0) (7/8 · SandStone 1,1,1,0) · _Cull 2
|
||||||
|
// Toon 그래프 실측: BaseColor = ToonLighting(AlbedoHighlight = Sample(_BaseMap) * _DiffuseColor,
|
||||||
|
// AlbedoShadow = Sample(_ShadowBaseMap) * _ShadowDiffuseColor, …)
|
||||||
|
// → 텍스처를 그대로 쓰려면 _BaseMap = 텍스처 · _DiffuseColor = 흰색.
|
||||||
|
// → 그림자 색은 배경의 중립 재질 Stone 의 비율 (0.2164, 0.2092, 0.3713) 을 텍스처에 곱한다.
|
||||||
|
// ─────────────────────────────────────────────────────────────────────────────
|
||||||
|
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.IO;
|
||||||
|
using System.Text;
|
||||||
|
using UnityEditor;
|
||||||
|
using UnityEngine;
|
||||||
|
using WL.Look.Character;
|
||||||
|
|
||||||
|
public static class WL814s_Build
|
||||||
|
{
|
||||||
|
public const string ROOT = "Assets/WL/Look/Character/";
|
||||||
|
public const string MATS = ROOT + "Materials/";
|
||||||
|
public const string TEX = ROOT + "Textures/";
|
||||||
|
public const string RES = ROOT + "Resources/WL/";
|
||||||
|
public const string SO_PATH = RES + "WLCharacterLookSettings.asset";
|
||||||
|
public const string PREFAB = "Assets/Res_Addr/PC/LH_M05.prefab";
|
||||||
|
public const string TOON_SG = "Assets/3DPixelArtEnvironment/Shaders/Toon.shadergraph";
|
||||||
|
|
||||||
|
// 인덱스 순서 (SO 4배열 공통)
|
||||||
|
public static readonly string[] KEYS = { "M05", "Skin", "Hair05", "face02" };
|
||||||
|
public static readonly string[] ORIG_MAT =
|
||||||
|
{
|
||||||
|
"Assets/Suriyun/Characters/RedKnight/Materials/Characters/M05.mat",
|
||||||
|
"Assets/Suriyun/Characters/RedKnight/Materials/Skin&Hair&Face/skin.mat",
|
||||||
|
"Assets/Suriyun/Characters/RedKnight/Materials/Skin&Hair&Face/Hair05.mat",
|
||||||
|
"Assets/Suriyun/Characters/RedKnight/Materials/Skin&Hair&Face/Face/face02.mat",
|
||||||
|
};
|
||||||
|
public static readonly string[] ORIG_TEX =
|
||||||
|
{
|
||||||
|
"Assets/Suriyun/Characters/RedKnight/Texture/M05/M05.png",
|
||||||
|
"Assets/Suriyun/Characters/RedKnight/Texture/Skin&Hair&Face/Face/Skin.png",
|
||||||
|
"Assets/Suriyun/Characters/RedKnight/Texture/M05/Hair05.png",
|
||||||
|
"Assets/Suriyun/Characters/RedKnight/Texture/Skin&Hair&Face/Face/face02.png",
|
||||||
|
};
|
||||||
|
|
||||||
|
// 배경 실측값
|
||||||
|
public const float SHADES = 7f;
|
||||||
|
public const float BRIGHTNESS = 0.25f;
|
||||||
|
public const float MIN_DARK = 0.2f;
|
||||||
|
public const float OUTLINES = 1f;
|
||||||
|
static readonly Color SHADOW_TINT = new Color(0.2164f, 0.2092f, 0.3713f, 0f); // Stone 의 shadow/diffuse 비율
|
||||||
|
static readonly Color OUTLINE_COL = new Color(0f, 0f, 0f, 0f);
|
||||||
|
|
||||||
|
static void Ensure(string folder)
|
||||||
|
{
|
||||||
|
folder = folder.TrimEnd('/');
|
||||||
|
if (AssetDatabase.IsValidFolder(folder)) return;
|
||||||
|
int i = folder.LastIndexOf('/');
|
||||||
|
Ensure(folder.Substring(0, i));
|
||||||
|
AssetDatabase.CreateFolder(folder.Substring(0, i), folder.Substring(i + 1));
|
||||||
|
}
|
||||||
|
|
||||||
|
static Shader ToonShader()
|
||||||
|
{
|
||||||
|
var sh = AssetDatabase.LoadAssetAtPath<Shader>(TOON_SG);
|
||||||
|
return sh;
|
||||||
|
}
|
||||||
|
|
||||||
|
// ═════════════════════════════════════════════════════════════════════
|
||||||
|
// 배경 실측 표
|
||||||
|
// ═════════════════════════════════════════════════════════════════════
|
||||||
|
public static string DumpEnvMats()
|
||||||
|
{
|
||||||
|
string[] names = { "Leaves", "Trunk", "Stone", "SandStone", "Metal", "Wall", "Roof", "Window" };
|
||||||
|
var sb = new StringBuilder();
|
||||||
|
sb.AppendLine("name|shader|Shades|Brightness|MinimumDarkness|OUTLINESENABLED|DiffuseColor|ShadowDiffuseColor|Outline|BaseMap|Cull");
|
||||||
|
foreach (var n in names)
|
||||||
|
{
|
||||||
|
var m = AssetDatabase.LoadAssetAtPath<Material>("Assets/3DPixelArtEnvironment/Materials/" + n + ".mat");
|
||||||
|
if (m == null) { sb.AppendLine(n + "|MISS"); continue; }
|
||||||
|
sb.AppendLine(string.Format("{0}|{1}|{2}|{3}|{4}|{5}|{6}|{7}|{8}|{9}|{10}",
|
||||||
|
n, m.shader.name,
|
||||||
|
m.HasFloat("_Shades") ? m.GetFloat("_Shades").ToString("0.####") : "-",
|
||||||
|
m.HasFloat("_Brightness") ? m.GetFloat("_Brightness").ToString("0.####") : "-",
|
||||||
|
m.HasFloat("_MinimumDarkness") ? m.GetFloat("_MinimumDarkness").ToString("0.####") : "-",
|
||||||
|
m.IsKeywordEnabled("_OUTLINESENABLED") ? "1" : "0",
|
||||||
|
m.HasColor("_DiffuseColor") ? Fmt(m.GetColor("_DiffuseColor")) : "-",
|
||||||
|
m.HasColor("_ShadowDiffuseColor") ? Fmt(m.GetColor("_ShadowDiffuseColor")) : "-",
|
||||||
|
m.HasColor("_Outline") ? Fmt(m.GetColor("_Outline")) : "-",
|
||||||
|
(m.HasTexture("_BaseMap") && m.GetTexture("_BaseMap") != null) ? m.GetTexture("_BaseMap").name : "none",
|
||||||
|
m.HasFloat("_Cull") ? m.GetFloat("_Cull").ToString("0") : "-"));
|
||||||
|
}
|
||||||
|
return sb.ToString();
|
||||||
|
}
|
||||||
|
|
||||||
|
static string Fmt(Color c) { return string.Format("({0:0.####},{1:0.####},{2:0.####},{3:0.####})", c.r, c.g, c.b, c.a); }
|
||||||
|
|
||||||
|
// ═════════════════════════════════════════════════════════════════════
|
||||||
|
// Toon 머티리얼 생성
|
||||||
|
// ═════════════════════════════════════════════════════════════════════
|
||||||
|
/// <summary>suffix 세트의 머티리얼 4개를 만든다(텍스처는 texPaths 로 지정 · face 는 Unlit/Transparent 복사본).</summary>
|
||||||
|
public static string MakeSet(string matSuffix, string[] texPaths, bool faceCopy)
|
||||||
|
{
|
||||||
|
var sb = new StringBuilder();
|
||||||
|
Ensure(MATS);
|
||||||
|
var toon = ToonShader();
|
||||||
|
if (toon == null) return "TOON SHADER MISS " + TOON_SG;
|
||||||
|
|
||||||
|
for (int i = 0; i < 4; i++)
|
||||||
|
{
|
||||||
|
string path = MATS + KEYS[i] + matSuffix + ".mat";
|
||||||
|
var tex = AssetDatabase.LoadAssetAtPath<Texture2D>(texPaths[i]);
|
||||||
|
if (tex == null) { sb.AppendLine("TEX MISS " + texPaths[i]); continue; }
|
||||||
|
|
||||||
|
if (i == 3)
|
||||||
|
{
|
||||||
|
// 얼굴 = Toon 으로 못 옮긴다(알파 미지원) → 원본과 같은 Unlit/Transparent 복사본
|
||||||
|
if (!faceCopy) { sb.AppendLine("FACE keep original"); continue; }
|
||||||
|
var src = AssetDatabase.LoadAssetAtPath<Material>(ORIG_MAT[3]);
|
||||||
|
var fm = AssetDatabase.LoadAssetAtPath<Material>(path);
|
||||||
|
if (fm == null) { fm = new Material(src); AssetDatabase.CreateAsset(fm, path); }
|
||||||
|
else { fm.shader = src.shader; fm.CopyPropertiesFromMaterial(src); }
|
||||||
|
fm.SetTexture("_MainTex", tex);
|
||||||
|
EditorUtility.SetDirty(fm);
|
||||||
|
sb.AppendLine("FACE " + path + " shader=" + fm.shader.name + " tex=" + tex.name + " " + tex.width + "x" + tex.height);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
var m = AssetDatabase.LoadAssetAtPath<Material>(path);
|
||||||
|
if (m == null) { m = new Material(toon); AssetDatabase.CreateAsset(m, path); }
|
||||||
|
m.shader = toon;
|
||||||
|
m.SetTexture("_BaseMap", tex);
|
||||||
|
m.SetTexture("_ShadowBaseMap", tex);
|
||||||
|
m.SetColor("_DiffuseColor", Color.white);
|
||||||
|
m.SetColor("_ShadowDiffuseColor", SHADOW_TINT);
|
||||||
|
m.SetColor("_Outline", OUTLINE_COL);
|
||||||
|
m.SetFloat("_Shades", SHADES);
|
||||||
|
m.SetFloat("_Brightness", BRIGHTNESS);
|
||||||
|
m.SetFloat("_MinimumDarkness", MIN_DARK);
|
||||||
|
m.SetFloat("_Cull", 2f);
|
||||||
|
if (OUTLINES > 0.5f) m.EnableKeyword("_OUTLINESENABLED"); else m.DisableKeyword("_OUTLINESENABLED");
|
||||||
|
m.SetFloat("_OUTLINESENABLED", OUTLINES);
|
||||||
|
EditorUtility.SetDirty(m);
|
||||||
|
sb.AppendLine("MAT " + path + " tex=" + tex.name + " " + tex.width + "x" + tex.height +
|
||||||
|
" Shades=" + m.GetFloat("_Shades") + " Bright=" + m.GetFloat("_Brightness") +
|
||||||
|
" MinDark=" + m.GetFloat("_MinimumDarkness") + " OUT=" + (m.IsKeywordEnabled("_OUTLINESENABLED") ? 1 : 0));
|
||||||
|
}
|
||||||
|
AssetDatabase.SaveAssets();
|
||||||
|
return sb.ToString();
|
||||||
|
}
|
||||||
|
|
||||||
|
// ═════════════════════════════════════════════════════════════════════
|
||||||
|
// SO
|
||||||
|
// ═════════════════════════════════════════════════════════════════════
|
||||||
|
public static string MakeSO(int defaultMode, string suffix1, string suffix2, string suffix3)
|
||||||
|
{
|
||||||
|
Ensure(RES);
|
||||||
|
var so = AssetDatabase.LoadAssetAtPath<WLCharacterLookSettings>(SO_PATH);
|
||||||
|
if (so == null)
|
||||||
|
{
|
||||||
|
so = ScriptableObject.CreateInstance<WLCharacterLookSettings>();
|
||||||
|
AssetDatabase.CreateAsset(so, SO_PATH);
|
||||||
|
}
|
||||||
|
so.enabled_ = 1;
|
||||||
|
so.mode = defaultMode;
|
||||||
|
so.verboseLog = 0;
|
||||||
|
so.originals = new Material[4];
|
||||||
|
so.mode1 = new Material[4];
|
||||||
|
so.mode2 = new Material[4];
|
||||||
|
so.mode3 = new Material[4];
|
||||||
|
var sb = new StringBuilder();
|
||||||
|
for (int i = 0; i < 4; i++)
|
||||||
|
{
|
||||||
|
so.originals[i] = AssetDatabase.LoadAssetAtPath<Material>(ORIG_MAT[i]);
|
||||||
|
so.mode1[i] = Pick(MATS + KEYS[i] + suffix1 + ".mat", so.originals[i]);
|
||||||
|
so.mode2[i] = Pick(MATS + KEYS[i] + suffix2 + ".mat", so.originals[i]);
|
||||||
|
so.mode3[i] = Pick(MATS + KEYS[i] + suffix3 + ".mat", so.originals[i]);
|
||||||
|
sb.AppendLine("SO[" + i + "] " + KEYS[i] +
|
||||||
|
" orig=" + Nm(so.originals[i]) + " m1=" + Nm(so.mode1[i]) + " m2=" + Nm(so.mode2[i]) + " m3=" + Nm(so.mode3[i]));
|
||||||
|
}
|
||||||
|
EditorUtility.SetDirty(so);
|
||||||
|
AssetDatabase.SaveAssets();
|
||||||
|
WLCharacterLookSettings.Invalidate();
|
||||||
|
sb.AppendLine("SO saved " + SO_PATH + " enabled_=" + so.enabled_ + " mode=" + so.mode);
|
||||||
|
return sb.ToString();
|
||||||
|
}
|
||||||
|
|
||||||
|
static Material Pick(string p, Material fallback)
|
||||||
|
{
|
||||||
|
var m = AssetDatabase.LoadAssetAtPath<Material>(p);
|
||||||
|
return m != null ? m : fallback;
|
||||||
|
}
|
||||||
|
static string Nm(Material m) { return m == null ? "null" : m.name; }
|
||||||
|
|
||||||
|
public static string SetSO(int enabled_, int mode)
|
||||||
|
{
|
||||||
|
var so = AssetDatabase.LoadAssetAtPath<WLCharacterLookSettings>(SO_PATH);
|
||||||
|
if (so == null) return "SO MISS";
|
||||||
|
so.enabled_ = enabled_; so.mode = mode;
|
||||||
|
EditorUtility.SetDirty(so); AssetDatabase.SaveAssets();
|
||||||
|
WLCharacterLookSettings.Invalidate();
|
||||||
|
return "SO enabled_=" + enabled_ + " mode=" + mode;
|
||||||
|
}
|
||||||
|
|
||||||
|
// ═════════════════════════════════════════════════════════════════════
|
||||||
|
// 프리팹 배선
|
||||||
|
// ═════════════════════════════════════════════════════════════════════
|
||||||
|
/// <summary>프리팹 렌더러를 지정 모드의 머티리얼로 바꾸고 WLCharacterLook 을 붙인다.</summary>
|
||||||
|
public static string PatchPrefab(int mode, bool addComponent)
|
||||||
|
{
|
||||||
|
var so = AssetDatabase.LoadAssetAtPath<WLCharacterLookSettings>(SO_PATH);
|
||||||
|
if (so == null) return "SO MISS";
|
||||||
|
var target = so.SetForMode(mode);
|
||||||
|
var sb = new StringBuilder();
|
||||||
|
|
||||||
|
var root = PrefabUtility.LoadPrefabContents(PREFAB);
|
||||||
|
try
|
||||||
|
{
|
||||||
|
if (addComponent && root.GetComponent<WLCharacterLook>() == null)
|
||||||
|
{
|
||||||
|
root.AddComponent<WLCharacterLook>();
|
||||||
|
sb.AppendLine("ADD WLCharacterLook on " + root.name);
|
||||||
|
}
|
||||||
|
var rs = root.GetComponentsInChildren<Renderer>(true);
|
||||||
|
foreach (var r in rs)
|
||||||
|
{
|
||||||
|
var mats = r.sharedMaterials;
|
||||||
|
bool ch = false;
|
||||||
|
for (int s = 0; s < mats.Length; s++)
|
||||||
|
{
|
||||||
|
int idx = FindIdx(so, mats[s]);
|
||||||
|
if (idx < 0) { sb.AppendLine("KEEP " + r.name + "[" + s + "] " + Nm(mats[s]) + " (표 밖)"); continue; }
|
||||||
|
if (target[idx] != null && mats[s] != target[idx]) { sb.AppendLine("SWAP " + r.name + "[" + s + "] " + Nm(mats[s]) + " -> " + Nm(target[idx])); mats[s] = target[idx]; ch = true; }
|
||||||
|
else sb.AppendLine("SAME " + r.name + "[" + s + "] " + Nm(mats[s]));
|
||||||
|
}
|
||||||
|
if (ch) r.sharedMaterials = mats;
|
||||||
|
}
|
||||||
|
PrefabUtility.SaveAsPrefabAsset(root, PREFAB);
|
||||||
|
}
|
||||||
|
finally { PrefabUtility.UnloadPrefabContents(root); }
|
||||||
|
AssetDatabase.SaveAssets();
|
||||||
|
return sb.ToString();
|
||||||
|
}
|
||||||
|
|
||||||
|
static int FindIdx(WLCharacterLookSettings c, Material m)
|
||||||
|
{
|
||||||
|
if (m == null) return -1;
|
||||||
|
for (int i = 0; i < 4; i++)
|
||||||
|
{
|
||||||
|
if (c.originals != null && i < c.originals.Length && c.originals[i] == m) return i;
|
||||||
|
if (c.mode1 != null && i < c.mode1.Length && c.mode1[i] == m) return i;
|
||||||
|
if (c.mode2 != null && i < c.mode2.Length && c.mode2[i] == m) return i;
|
||||||
|
if (c.mode3 != null && i < c.mode3.Length && c.mode3[i] == m) return i;
|
||||||
|
}
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static string DumpPrefab()
|
||||||
|
{
|
||||||
|
var sb = new StringBuilder();
|
||||||
|
var root = AssetDatabase.LoadAssetAtPath<GameObject>(PREFAB);
|
||||||
|
if (root == null) return "PREFAB MISS";
|
||||||
|
sb.AppendLine("components on root: ");
|
||||||
|
foreach (var c in root.GetComponents<Component>()) sb.AppendLine(" " + c.GetType().Name);
|
||||||
|
foreach (var r in root.GetComponentsInChildren<Renderer>(true))
|
||||||
|
{
|
||||||
|
var ms = r.sharedMaterials;
|
||||||
|
for (int i = 0; i < ms.Length; i++)
|
||||||
|
sb.AppendLine("REND " + r.name + "[" + i + "] act=" + r.gameObject.activeSelf + " mat=" + Nm(ms[i]) +
|
||||||
|
" shader=" + (ms[i] != null ? ms[i].shader.name : "-"));
|
||||||
|
}
|
||||||
|
return sb.ToString();
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void Run() { Debug.Log("[WL814s build] env=\n" + DumpEnvMats()); }
|
||||||
|
|
||||||
|
// ═════════════════════════════════════════════════════════════════════
|
||||||
|
// 디스패처 — unity command run_script --entry WL814s_Build.Cmd --args "<cmd> <a> <b> …"
|
||||||
|
// ═════════════════════════════════════════════════════════════════════
|
||||||
|
public static string Cmd(string[] args)
|
||||||
|
{
|
||||||
|
if (args == null || args.Length == 0) return DumpEnvMats();
|
||||||
|
string c = args[0];
|
||||||
|
try
|
||||||
|
{
|
||||||
|
if (c == "env") return DumpEnvMats();
|
||||||
|
if (c == "dump") return DumpPrefab();
|
||||||
|
if (c == "mkset")
|
||||||
|
{
|
||||||
|
// mkset <suffix> <tex0> <tex1> <tex2> <tex3> <faceCopy 0|1>
|
||||||
|
var tex = new string[4] { args[2], args[3], args[4], args[5] };
|
||||||
|
return MakeSet(args[1], tex, args[6] == "1");
|
||||||
|
}
|
||||||
|
if (c == "rm")
|
||||||
|
{
|
||||||
|
var sb2 = new StringBuilder();
|
||||||
|
for (int i = 1; i < args.Length; i++) sb2.AppendLine((AssetDatabase.DeleteAsset(args[i]) ? "DEL " : "MISS ") + args[i]);
|
||||||
|
AssetDatabase.SaveAssets(); AssetDatabase.Refresh();
|
||||||
|
return sb2.ToString();
|
||||||
|
}
|
||||||
|
if (c == "so") return MakeSO(int.Parse(args[1]), args[2], args[3], args[4]);
|
||||||
|
if (c == "setso") return SetSO(int.Parse(args[1]), int.Parse(args[2]));
|
||||||
|
if (c == "patch") return PatchPrefab(int.Parse(args[1]), args.Length > 2 && args[2] == "1");
|
||||||
|
return "UNKNOWN " + c;
|
||||||
|
}
|
||||||
|
catch (Exception e) { return "EXCEPTION " + e.GetType().Name + " " + e.Message + "\n" + e.StackTrace; }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,256 @@
|
||||||
|
// ─────────────────────────────────────────────────────────────────────────────
|
||||||
|
// WL814s_Capture.cs — WL_ArenaProto 씬에서 같은 카메라·같은 포즈로 단계별 캡처 (발주 WL-814s §4)
|
||||||
|
//
|
||||||
|
// Play 중에 호출한다. 4개 상태(원본 · ①셰이더 · ①+③축소 · ①+③+②평탄화)를
|
||||||
|
// **같은 프레임·같은 포즈**에서 연속으로 렌더한다 → 비교가 공정하다.
|
||||||
|
// 🔴 씬·프리팹·머티리얼 파일에 아무 것도 쓰지 않는다(런타임 sharedMaterials 참조만 바꾼다).
|
||||||
|
// ─────────────────────────────────────────────────────────────────────────────
|
||||||
|
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.IO;
|
||||||
|
using System.Text;
|
||||||
|
using UnityEngine;
|
||||||
|
using WL.Look.Character;
|
||||||
|
|
||||||
|
public static class WL814s_Capture
|
||||||
|
{
|
||||||
|
public const int W = 1080, H = 1920;
|
||||||
|
|
||||||
|
static string OutDir()
|
||||||
|
{
|
||||||
|
string d = Path.GetFullPath(Path.Combine(Application.dataPath, "../Screenshots_WL/WL814s"));
|
||||||
|
Directory.CreateDirectory(d);
|
||||||
|
return d;
|
||||||
|
}
|
||||||
|
|
||||||
|
static GameObject FindPc()
|
||||||
|
{
|
||||||
|
var all = UnityEngine.Object.FindObjectsByType<Animator>(FindObjectsInactive.Exclude, FindObjectsSortMode.None);
|
||||||
|
foreach (var a in all)
|
||||||
|
{
|
||||||
|
if (a.GetComponentInChildren<SkinnedMeshRenderer>(true) != null) return a.gameObject;
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void FreezePose(GameObject pc)
|
||||||
|
{
|
||||||
|
var an = pc != null ? pc.GetComponent<Animator>() : null;
|
||||||
|
if (an == null) return;
|
||||||
|
an.fireEvents = false;
|
||||||
|
an.speed = 0f;
|
||||||
|
an.Play("idle", 0, 0.25f);
|
||||||
|
an.Update(0f);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void Shot(Camera cam, string file)
|
||||||
|
{
|
||||||
|
var rt = new RenderTexture(W, H, 24, RenderTextureFormat.ARGB32, RenderTextureReadWrite.sRGB);
|
||||||
|
rt.antiAliasing = 1;
|
||||||
|
var prevT = cam.targetTexture; var prevActive = RenderTexture.active;
|
||||||
|
cam.targetTexture = rt;
|
||||||
|
cam.Render();
|
||||||
|
RenderTexture.active = rt;
|
||||||
|
var tex = new Texture2D(W, H, TextureFormat.RGB24, false);
|
||||||
|
tex.ReadPixels(new Rect(0, 0, W, H), 0, 0);
|
||||||
|
tex.Apply(false);
|
||||||
|
File.WriteAllBytes(file, tex.EncodeToPNG());
|
||||||
|
cam.targetTexture = prevT; RenderTexture.active = prevActive;
|
||||||
|
UnityEngine.Object.DestroyImmediate(tex);
|
||||||
|
rt.Release(); UnityEngine.Object.DestroyImmediate(rt);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>args = ["set", "<prefix>", "<mode0>", "<mode1>", …] · 각 모드를 같은 포즈로 찍는다.</summary>
|
||||||
|
public static string Cmd(string[] args)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
var sb = new StringBuilder();
|
||||||
|
var cam = Camera.main;
|
||||||
|
if (cam == null)
|
||||||
|
{
|
||||||
|
var cams = UnityEngine.Object.FindObjectsByType<Camera>(FindObjectsInactive.Exclude, FindObjectsSortMode.None);
|
||||||
|
if (cams.Length > 0) cam = cams[0];
|
||||||
|
}
|
||||||
|
if (cam == null) return "NO CAMERA";
|
||||||
|
var pc = FindPc();
|
||||||
|
if (pc == null) return "NO PC";
|
||||||
|
FreezePose(pc);
|
||||||
|
|
||||||
|
string dir = OutDir();
|
||||||
|
sb.AppendLine("cam=" + cam.name + " ortho=" + cam.orthographic + " size=" + cam.orthographicSize +
|
||||||
|
" pos=" + cam.transform.position.ToString("F4") + " euler=" + cam.transform.eulerAngles.ToString("F3"));
|
||||||
|
sb.AppendLine("pc=" + pc.name + " pos=" + pc.transform.position.ToString("F4"));
|
||||||
|
|
||||||
|
string cmd = args.Length > 0 ? args[0] : "set";
|
||||||
|
if (cmd == "set")
|
||||||
|
{
|
||||||
|
string prefix = args[1];
|
||||||
|
for (int i = 2; i < args.Length; i++)
|
||||||
|
{
|
||||||
|
int mode = int.Parse(args[i]);
|
||||||
|
WLCharacterLook.ApplyMode(pc, mode, null);
|
||||||
|
FreezePose(pc);
|
||||||
|
string f = Path.Combine(dir, prefix + "_m" + mode + ".png");
|
||||||
|
Shot(cam, f);
|
||||||
|
sb.AppendLine("SHOT mode=" + mode + " -> " + f + " · " + WLCharacterLook.LastLog + " · " + DumpMats(pc));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (cmd == "face")
|
||||||
|
{
|
||||||
|
// 얼굴 확대 — 같은 각도, 머리 중심, 작은 ortho size
|
||||||
|
string prefix = args[1];
|
||||||
|
// 얼굴이 카메라를 보게 돌린다(이 샷 전용 · Play 중이라 파일에 남지 않는다)
|
||||||
|
var fwd = -cam.transform.forward; fwd.y = 0f;
|
||||||
|
if (fwd.sqrMagnitude > 0.0001f) pc.transform.rotation = Quaternion.LookRotation(fwd.normalized, Vector3.up);
|
||||||
|
FreezePose(pc);
|
||||||
|
var head = FindHead(pc);
|
||||||
|
var go = new GameObject("WL814s_FaceCam");
|
||||||
|
var fc = go.AddComponent<Camera>();
|
||||||
|
fc.CopyFrom(cam);
|
||||||
|
fc.orthographic = true;
|
||||||
|
fc.orthographicSize = float.Parse(args[2]);
|
||||||
|
go.transform.rotation = cam.transform.rotation;
|
||||||
|
go.transform.position = head - cam.transform.forward * 20f;
|
||||||
|
fc.targetTexture = null;
|
||||||
|
for (int i = 3; i < args.Length; i++)
|
||||||
|
{
|
||||||
|
int mode = int.Parse(args[i]);
|
||||||
|
WLCharacterLook.ApplyMode(pc, mode, null);
|
||||||
|
FreezePose(pc);
|
||||||
|
string f = Path.Combine(dir, prefix + "_m" + mode + ".png");
|
||||||
|
Shot(fc, f);
|
||||||
|
sb.AppendLine("FACE mode=" + mode + " -> " + f);
|
||||||
|
}
|
||||||
|
sb.AppendLine("head=" + head.ToString("F4") + " size=" + fc.orthographicSize);
|
||||||
|
UnityEngine.Object.DestroyImmediate(go);
|
||||||
|
}
|
||||||
|
else if (cmd == "suffix")
|
||||||
|
{
|
||||||
|
// suffix <prefix> <matSuffix1> <matSuffix2> … · Materials/<KEY><suffix>.mat 을 직접 물린다
|
||||||
|
// (같은 Play 세션 안에서 찍으므로 구름 그림자·잔디까지 같은 조건 = 공정한 비교)
|
||||||
|
string prefix = args[1];
|
||||||
|
for (int i = 2; i < args.Length; i++)
|
||||||
|
{
|
||||||
|
ApplySuffix(pc, args[i]);
|
||||||
|
FreezePose(pc);
|
||||||
|
string f = Path.Combine(dir, prefix + "_" + args[i].Replace("_", "") + ".png");
|
||||||
|
Shot(cam, f);
|
||||||
|
sb.AppendLine("SHOT " + args[i] + " -> " + f + " · " + DumpMats(pc));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (cmd == "suffixface")
|
||||||
|
{
|
||||||
|
string prefix = args[1];
|
||||||
|
var fwd2 = -cam.transform.forward; fwd2.y = 0f;
|
||||||
|
if (fwd2.sqrMagnitude > 0.0001f) pc.transform.rotation = Quaternion.LookRotation(fwd2.normalized, Vector3.up);
|
||||||
|
FreezePose(pc);
|
||||||
|
var head2 = FindHead(pc);
|
||||||
|
var go2 = new GameObject("WL814s_FaceCam2");
|
||||||
|
var fc2 = go2.AddComponent<Camera>();
|
||||||
|
fc2.CopyFrom(cam); fc2.orthographic = true; fc2.orthographicSize = float.Parse(args[2]);
|
||||||
|
go2.transform.rotation = cam.transform.rotation;
|
||||||
|
go2.transform.position = head2 - cam.transform.forward * 20f;
|
||||||
|
for (int i = 3; i < args.Length; i++)
|
||||||
|
{
|
||||||
|
ApplySuffix(pc, args[i]);
|
||||||
|
FreezePose(pc);
|
||||||
|
Shot(fc2, Path.Combine(dir, prefix + "_" + args[i].Replace("_", "") + ".png"));
|
||||||
|
sb.AppendLine("FACE " + args[i]);
|
||||||
|
}
|
||||||
|
UnityEngine.Object.DestroyImmediate(go2);
|
||||||
|
}
|
||||||
|
else if (cmd == "dumponly")
|
||||||
|
{
|
||||||
|
// 아무 것도 적용하지 않고 지금 상태만 읽는다 (Awake 가 한 일을 그대로 본다)
|
||||||
|
var c0 = WLCharacterLookSettings.Instance;
|
||||||
|
sb.AppendLine("SO enabled_=" + (c0 != null ? c0.enabled_ : -1) + " mode=" + (c0 != null ? c0.mode : -1) +
|
||||||
|
" ActiveMode=" + WLCharacterLookSettings.ActiveMode +
|
||||||
|
" · Awake 적용내역=" + WLCharacterLook.LastLog);
|
||||||
|
sb.AppendLine("RESULT " + DumpMats(pc));
|
||||||
|
}
|
||||||
|
else if (cmd == "probe")
|
||||||
|
{
|
||||||
|
for (int i = 1; i < args.Length; i++)
|
||||||
|
{
|
||||||
|
int mode = int.Parse(args[i]);
|
||||||
|
WLCharacterLook.ApplyMode(pc, mode, null);
|
||||||
|
sb.AppendLine("MODE " + mode + " · " + DumpMats(pc));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (cmd == "switch")
|
||||||
|
{
|
||||||
|
// SO 가 지시하는 대로 (enabled_ 실측용)
|
||||||
|
WLCharacterLookSettings.Invalidate();
|
||||||
|
WLCharacterLook.Apply(pc);
|
||||||
|
sb.AppendLine("SO enabled_=" + (WLCharacterLookSettings.Instance != null ? WLCharacterLookSettings.Instance.enabled_ : -1) +
|
||||||
|
" mode=" + (WLCharacterLookSettings.Instance != null ? WLCharacterLookSettings.Instance.mode : -1) +
|
||||||
|
" ActiveMode=" + WLCharacterLookSettings.ActiveMode);
|
||||||
|
sb.AppendLine("RESULT " + DumpMats(pc));
|
||||||
|
}
|
||||||
|
return sb.ToString();
|
||||||
|
}
|
||||||
|
catch (Exception e) { return "EXCEPTION " + e.GetType().Name + " " + e.Message + "\n" + e.StackTrace; }
|
||||||
|
}
|
||||||
|
|
||||||
|
// 비교 전용 — Materials/<KEY><suffix>.mat 을 렌더러에 직접 물린다("_orig" 면 원본으로)
|
||||||
|
static readonly string[] KEYS = { "M05", "Skin", "Hair05", "face02" };
|
||||||
|
static void ApplySuffix(GameObject pc, string suffix)
|
||||||
|
{
|
||||||
|
var cfg = WLCharacterLookSettings.Instance;
|
||||||
|
if (cfg == null) return;
|
||||||
|
if (suffix == "_orig") { WLCharacterLook.ApplyMode(pc, 0, cfg); return; }
|
||||||
|
var want = new Material[4];
|
||||||
|
for (int i = 0; i < 4; i++)
|
||||||
|
{
|
||||||
|
var m = UnityEditor.AssetDatabase.LoadAssetAtPath<Material>(
|
||||||
|
"Assets/WL/Look/Character/Materials/" + KEYS[i] + suffix + ".mat");
|
||||||
|
want[i] = m != null ? m : cfg.originals[i];
|
||||||
|
}
|
||||||
|
foreach (var r in pc.GetComponentsInChildren<Renderer>(true))
|
||||||
|
{
|
||||||
|
var ms = r.sharedMaterials; bool ch = false;
|
||||||
|
for (int s = 0; s < ms.Length; s++)
|
||||||
|
{
|
||||||
|
int idx = -1;
|
||||||
|
for (int i = 0; i < 4 && idx < 0; i++)
|
||||||
|
{
|
||||||
|
if (cfg.originals[i] == ms[s] || cfg.mode1[i] == ms[s] || cfg.mode2[i] == ms[s] || cfg.mode3[i] == ms[s]) idx = i;
|
||||||
|
else if (ms[s] != null && ms[s].name.StartsWith(KEYS[i])) idx = i;
|
||||||
|
}
|
||||||
|
if (idx < 0 || want[idx] == null || ms[s] == want[idx]) continue;
|
||||||
|
ms[s] = want[idx]; ch = true;
|
||||||
|
}
|
||||||
|
if (ch) r.sharedMaterials = ms;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
static Vector3 FindHead(GameObject pc)
|
||||||
|
{
|
||||||
|
// 얼굴 머티리얼을 쓰는 렌더러의 바운즈 중심
|
||||||
|
var rs = pc.GetComponentsInChildren<Renderer>(true);
|
||||||
|
foreach (var r in rs)
|
||||||
|
{
|
||||||
|
var ms = r.sharedMaterials;
|
||||||
|
foreach (var m in ms)
|
||||||
|
if (m != null && m.name.StartsWith("face")) return r.bounds.center;
|
||||||
|
}
|
||||||
|
var b = new Bounds(pc.transform.position, Vector3.zero);
|
||||||
|
foreach (var r in rs) if (r.enabled) b.Encapsulate(r.bounds);
|
||||||
|
return new Vector3(b.center.x, b.max.y - b.size.y * 0.12f, b.center.z);
|
||||||
|
}
|
||||||
|
|
||||||
|
static string DumpMats(GameObject pc)
|
||||||
|
{
|
||||||
|
var sb = new StringBuilder();
|
||||||
|
var rs = pc.GetComponentsInChildren<Renderer>(true);
|
||||||
|
foreach (var r in rs)
|
||||||
|
{
|
||||||
|
var ms = r.sharedMaterials;
|
||||||
|
for (int i = 0; i < ms.Length; i++)
|
||||||
|
sb.Append(r.name + "[" + i + "]=" + (ms[i] == null ? "null" : ms[i].name + "/" + ms[i].shader.name) + "; ");
|
||||||
|
}
|
||||||
|
return sb.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,255 @@
|
||||||
|
// ─────────────────────────────────────────────────────────────────────────────
|
||||||
|
// WL814s_Posterize.cs — 캐릭터 텍스처 복사 + 색 평탄화(양자화) · 에디터 전용
|
||||||
|
//
|
||||||
|
// PD 지시 #814 · 발주서 WL-814s §2 / §3
|
||||||
|
//
|
||||||
|
// 🔴 원본 png(`Assets/Suriyun/**`)는 **바이트 하나도 건드리지 않는다**.
|
||||||
|
// · 복사본을 `Assets/WL/Look/Character/Textures/` 에 만들고
|
||||||
|
// · 축소는 **복사본의 임포트 설정 maxTextureSize** 로만 한다(픽셀 리샘플 0 = 되돌리기 쉬움)
|
||||||
|
// · 평탄화는 복사본을 읽어 **새 png** 로 저장한다(원본 덮어쓰기 0)
|
||||||
|
//
|
||||||
|
// 평탄화 = 채널당 색 단계를 levels 개로 반올림. 알파는 **손대지 않는다**
|
||||||
|
// (얼굴 face02 · 머리 가장자리가 깨지지 않게 · 발주 §3).
|
||||||
|
// ─────────────────────────────────────────────────────────────────────────────
|
||||||
|
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.IO;
|
||||||
|
using System.Text;
|
||||||
|
using UnityEditor;
|
||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
public static class WL814s_Posterize
|
||||||
|
{
|
||||||
|
public const string DST = "Assets/WL/Look/Character/Textures/";
|
||||||
|
|
||||||
|
// 원본 4장(+검은 참고). name → 원본 경로
|
||||||
|
public static readonly string[,] SRC = new string[,]
|
||||||
|
{
|
||||||
|
{ "M05", "Assets/Suriyun/Characters/RedKnight/Texture/M05/M05.png" },
|
||||||
|
{ "Skin", "Assets/Suriyun/Characters/RedKnight/Texture/Skin&Hair&Face/Face/Skin.png" },
|
||||||
|
{ "Hair05", "Assets/Suriyun/Characters/RedKnight/Texture/M05/Hair05.png" },
|
||||||
|
{ "face02", "Assets/Suriyun/Characters/RedKnight/Texture/Skin&Hair&Face/Face/face02.png" },
|
||||||
|
};
|
||||||
|
|
||||||
|
static void Ensure(string folder)
|
||||||
|
{
|
||||||
|
folder = folder.TrimEnd('/');
|
||||||
|
if (AssetDatabase.IsValidFolder(folder)) return;
|
||||||
|
int i = folder.LastIndexOf('/');
|
||||||
|
Ensure(folder.Substring(0, i));
|
||||||
|
AssetDatabase.CreateFolder(folder.Substring(0, i), folder.Substring(i + 1));
|
||||||
|
}
|
||||||
|
|
||||||
|
static Texture2D LoadRaw(string path, out int w, out int h)
|
||||||
|
{
|
||||||
|
byte[] bytes = File.ReadAllBytes(path);
|
||||||
|
var t = new Texture2D(2, 2, TextureFormat.RGBA32, false);
|
||||||
|
t.LoadImage(bytes);
|
||||||
|
w = t.width; h = t.height;
|
||||||
|
return t;
|
||||||
|
}
|
||||||
|
|
||||||
|
// ═════════════════════════════════════════════════════════════════════
|
||||||
|
// ① 복사본 만들기 (바이트 그대로) + 임포트 설정
|
||||||
|
// ═════════════════════════════════════════════════════════════════════
|
||||||
|
public static string CopyAll()
|
||||||
|
{
|
||||||
|
var sb = new StringBuilder();
|
||||||
|
Ensure(DST);
|
||||||
|
for (int i = 0; i < SRC.GetLength(0); i++)
|
||||||
|
{
|
||||||
|
string name = SRC[i, 0], src = SRC[i, 1];
|
||||||
|
string dst = DST + name + "_WL.png";
|
||||||
|
File.Copy(src, dst, true);
|
||||||
|
sb.AppendLine("COPY " + src + " -> " + dst + " (" + new FileInfo(dst).Length + " bytes · 원본과 동일 = " +
|
||||||
|
(new FileInfo(src).Length == new FileInfo(dst).Length) + ")");
|
||||||
|
}
|
||||||
|
AssetDatabase.Refresh();
|
||||||
|
// 원본 임포터 설정을 복사본에 이식
|
||||||
|
for (int i = 0; i < SRC.GetLength(0); i++)
|
||||||
|
{
|
||||||
|
string name = SRC[i, 0], src = SRC[i, 1];
|
||||||
|
string dst = DST + name + "_WL.png";
|
||||||
|
var si = AssetImporter.GetAtPath(src) as TextureImporter;
|
||||||
|
var di = AssetImporter.GetAtPath(dst) as TextureImporter;
|
||||||
|
if (si == null || di == null) { sb.AppendLine("IMPORTER MISS " + name); continue; }
|
||||||
|
di.textureType = si.textureType;
|
||||||
|
di.sRGBTexture = si.sRGBTexture;
|
||||||
|
di.alphaSource = si.alphaSource;
|
||||||
|
di.alphaIsTransparency = si.alphaIsTransparency;
|
||||||
|
di.mipmapEnabled = si.mipmapEnabled;
|
||||||
|
di.wrapMode = si.wrapMode;
|
||||||
|
di.filterMode = si.filterMode;
|
||||||
|
di.anisoLevel = si.anisoLevel;
|
||||||
|
di.npotScale = si.npotScale;
|
||||||
|
di.maxTextureSize = si.maxTextureSize;
|
||||||
|
di.textureCompression = si.textureCompression;
|
||||||
|
di.SaveAndReimport();
|
||||||
|
sb.AppendLine("IMPORT " + name + "_WL type=" + di.textureType + " sRGB=" + di.sRGBTexture +
|
||||||
|
" alphaSrc=" + di.alphaSource + " alphaIsTransparency=" + di.alphaIsTransparency +
|
||||||
|
" mip=" + di.mipmapEnabled + " max=" + di.maxTextureSize);
|
||||||
|
}
|
||||||
|
AssetDatabase.SaveAssets();
|
||||||
|
return sb.ToString();
|
||||||
|
}
|
||||||
|
|
||||||
|
// ═════════════════════════════════════════════════════════════════════
|
||||||
|
// ② 평탄화 — 복사본을 읽어 levels 단계로 양자화한 새 png
|
||||||
|
// ═════════════════════════════════════════════════════════════════════
|
||||||
|
public static string MakeFlat(int levels)
|
||||||
|
{
|
||||||
|
var sb = new StringBuilder();
|
||||||
|
Ensure(DST);
|
||||||
|
for (int i = 0; i < SRC.GetLength(0); i++)
|
||||||
|
{
|
||||||
|
string name = SRC[i, 0];
|
||||||
|
string src = DST + name + "_WL.png";
|
||||||
|
if (!File.Exists(src)) { sb.AppendLine("SKIP(no copy) " + src); continue; }
|
||||||
|
int w, h;
|
||||||
|
var t = LoadRaw(src, out w, out h);
|
||||||
|
var px = t.GetPixels32();
|
||||||
|
|
||||||
|
float step = 255f / (levels - 1);
|
||||||
|
int uniqBefore = CountUnique(px);
|
||||||
|
int alphaChanged = 0;
|
||||||
|
for (int p = 0; p < px.Length; p++)
|
||||||
|
{
|
||||||
|
var c = px[p];
|
||||||
|
c.r = (byte)Mathf.Clamp(Mathf.RoundToInt(Mathf.Round(c.r / step) * step), 0, 255);
|
||||||
|
c.g = (byte)Mathf.Clamp(Mathf.RoundToInt(Mathf.Round(c.g / step) * step), 0, 255);
|
||||||
|
c.b = (byte)Mathf.Clamp(Mathf.RoundToInt(Mathf.Round(c.b / step) * step), 0, 255);
|
||||||
|
// 알파는 그대로 (얼굴·머리 가장자리 보존)
|
||||||
|
px[p] = c;
|
||||||
|
}
|
||||||
|
var outT = new Texture2D(w, h, TextureFormat.RGBA32, false);
|
||||||
|
outT.SetPixels32(px);
|
||||||
|
outT.Apply(false);
|
||||||
|
string dst = DST + name + "_WL_Q" + levels + ".png";
|
||||||
|
File.WriteAllBytes(dst, outT.EncodeToPNG());
|
||||||
|
int uniqAfter = CountUnique(px);
|
||||||
|
sb.AppendLine("FLAT " + name + " levels=" + levels + " " + w + "x" + h +
|
||||||
|
" 고유색 " + uniqBefore + " -> " + uniqAfter + " · 알파변경 " + alphaChanged + " · " + dst);
|
||||||
|
UnityEngine.Object.DestroyImmediate(t);
|
||||||
|
UnityEngine.Object.DestroyImmediate(outT);
|
||||||
|
}
|
||||||
|
AssetDatabase.Refresh();
|
||||||
|
// 임포트 설정을 복사본과 같게
|
||||||
|
for (int i = 0; i < SRC.GetLength(0); i++)
|
||||||
|
{
|
||||||
|
string name = SRC[i, 0];
|
||||||
|
var si = AssetImporter.GetAtPath(DST + name + "_WL.png") as TextureImporter;
|
||||||
|
var di = AssetImporter.GetAtPath(DST + name + "_WL_Q" + levels + ".png") as TextureImporter;
|
||||||
|
if (si == null || di == null) continue;
|
||||||
|
di.textureType = si.textureType;
|
||||||
|
di.sRGBTexture = si.sRGBTexture;
|
||||||
|
di.alphaSource = si.alphaSource;
|
||||||
|
di.alphaIsTransparency = si.alphaIsTransparency;
|
||||||
|
di.mipmapEnabled = si.mipmapEnabled;
|
||||||
|
di.wrapMode = si.wrapMode;
|
||||||
|
di.filterMode = si.filterMode;
|
||||||
|
di.npotScale = si.npotScale;
|
||||||
|
di.maxTextureSize = si.maxTextureSize;
|
||||||
|
di.textureCompression = si.textureCompression;
|
||||||
|
di.SaveAndReimport();
|
||||||
|
}
|
||||||
|
AssetDatabase.SaveAssets();
|
||||||
|
return sb.ToString();
|
||||||
|
}
|
||||||
|
|
||||||
|
static int CountUnique(Color32[] px)
|
||||||
|
{
|
||||||
|
var set = new HashSet<int>();
|
||||||
|
int stride = px.Length > 1048576 ? 4 : 1; // 4M 픽셀 이상이면 1/4 샘플링(메모리)
|
||||||
|
for (int i = 0; i < px.Length; i += stride)
|
||||||
|
{
|
||||||
|
var c = px[i];
|
||||||
|
if (c.a == 0) continue;
|
||||||
|
set.Add((c.r << 16) | (c.g << 8) | c.b);
|
||||||
|
}
|
||||||
|
return set.Count;
|
||||||
|
}
|
||||||
|
|
||||||
|
// ═════════════════════════════════════════════════════════════════════
|
||||||
|
// ③ 축소 — 복사본/평탄화본의 maxTextureSize 만 바꾼다
|
||||||
|
// ═════════════════════════════════════════════════════════════════════
|
||||||
|
public static string SetMaxSize(string suffix, int maxSize)
|
||||||
|
{
|
||||||
|
var sb = new StringBuilder();
|
||||||
|
for (int i = 0; i < SRC.GetLength(0); i++)
|
||||||
|
{
|
||||||
|
string p = DST + SRC[i, 0] + suffix + ".png";
|
||||||
|
var im = AssetImporter.GetAtPath(p) as TextureImporter;
|
||||||
|
if (im == null) { sb.AppendLine("MISS " + p); continue; }
|
||||||
|
im.maxTextureSize = maxSize;
|
||||||
|
im.SaveAndReimport();
|
||||||
|
var t = AssetDatabase.LoadAssetAtPath<Texture2D>(p);
|
||||||
|
long mem = t != null ? UnityEngine.Profiling.Profiler.GetRuntimeMemorySizeLong(t) : 0;
|
||||||
|
sb.AppendLine("MAXSIZE " + p + " -> " + maxSize + " · 실제 " + (t != null ? t.width + "x" + t.height : "?") +
|
||||||
|
" · " + (t != null ? t.format.ToString() : "?") + " · " + (mem / 1024f / 1024f).ToString("F3") + " MB");
|
||||||
|
}
|
||||||
|
AssetDatabase.SaveAssets();
|
||||||
|
return sb.ToString();
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>원본 4장의 런타임 메모리(현재 임포트 상태)를 잰다.</summary>
|
||||||
|
public static string MeasureOriginals()
|
||||||
|
{
|
||||||
|
var sb = new StringBuilder();
|
||||||
|
float tot = 0;
|
||||||
|
for (int i = 0; i < SRC.GetLength(0); i++)
|
||||||
|
{
|
||||||
|
var t = AssetDatabase.LoadAssetAtPath<Texture2D>(SRC[i, 1]);
|
||||||
|
if (t == null) { sb.AppendLine("MISS " + SRC[i, 1]); continue; }
|
||||||
|
long mem = UnityEngine.Profiling.Profiler.GetRuntimeMemorySizeLong(t);
|
||||||
|
tot += mem / 1024f / 1024f;
|
||||||
|
sb.AppendLine("ORIG " + SRC[i, 0] + " " + t.width + "x" + t.height + " " + t.format + " mip=" + (t.mipmapCount > 1) +
|
||||||
|
" · " + (mem / 1024f / 1024f).ToString("F3") + " MB");
|
||||||
|
}
|
||||||
|
sb.AppendLine("ORIG TOTAL " + tot.ToString("F3") + " MB");
|
||||||
|
return sb.ToString();
|
||||||
|
}
|
||||||
|
|
||||||
|
public static string MeasureSet(string suffix)
|
||||||
|
{
|
||||||
|
var sb = new StringBuilder();
|
||||||
|
float tot = 0;
|
||||||
|
for (int i = 0; i < SRC.GetLength(0); i++)
|
||||||
|
{
|
||||||
|
string p = DST + SRC[i, 0] + suffix + ".png";
|
||||||
|
var t = AssetDatabase.LoadAssetAtPath<Texture2D>(p);
|
||||||
|
if (t == null) { sb.AppendLine("MISS " + p); continue; }
|
||||||
|
long mem = UnityEngine.Profiling.Profiler.GetRuntimeMemorySizeLong(t);
|
||||||
|
tot += mem / 1024f / 1024f;
|
||||||
|
sb.AppendLine("SET" + suffix + " " + SRC[i, 0] + " " + t.width + "x" + t.height + " " + t.format +
|
||||||
|
" · " + (mem / 1024f / 1024f).ToString("F3") + " MB");
|
||||||
|
}
|
||||||
|
sb.AppendLine("SET" + suffix + " TOTAL " + tot.ToString("F3") + " MB");
|
||||||
|
return sb.ToString();
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void Run()
|
||||||
|
{
|
||||||
|
var sb = new StringBuilder();
|
||||||
|
sb.Append(MeasureOriginals());
|
||||||
|
sb.Append(CopyAll());
|
||||||
|
Debug.Log("[WL814s posterize]\n" + sb);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 디스패처 — unity command run_script --entry WL814s_Posterize.Cmd --args "<cmd> …"
|
||||||
|
public static string Cmd(string[] args)
|
||||||
|
{
|
||||||
|
if (args == null || args.Length == 0) return MeasureOriginals();
|
||||||
|
string c = args[0];
|
||||||
|
try
|
||||||
|
{
|
||||||
|
if (c == "measure") return MeasureOriginals();
|
||||||
|
if (c == "copy") return MeasureOriginals() + CopyAll();
|
||||||
|
if (c == "flat") return MakeFlat(int.Parse(args[1]));
|
||||||
|
if (c == "maxsize") return SetMaxSize(args[1] == "-" ? "_WL" : args[1], int.Parse(args[2]));
|
||||||
|
if (c == "set") return MeasureSet(args[1] == "-" ? "_WL" : args[1]);
|
||||||
|
return "UNKNOWN " + c;
|
||||||
|
}
|
||||||
|
catch (Exception e) { return "EXCEPTION " + e.GetType().Name + " " + e.Message + "\n" + e.StackTrace; }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -57,7 +57,7 @@ SkinnedMeshRenderer:
|
||||||
m_RenderingLayerMask: 1
|
m_RenderingLayerMask: 1
|
||||||
m_RendererPriority: 0
|
m_RendererPriority: 0
|
||||||
m_Materials:
|
m_Materials:
|
||||||
- {fileID: 2100000, guid: 54e809e248f25bc47ba8bc38cc93abb8, type: 2}
|
- {fileID: 2100000, guid: f7ce73c5f996b0547a7ac1f49de1a2c8, type: 2}
|
||||||
m_StaticBatchInfo:
|
m_StaticBatchInfo:
|
||||||
firstSubMesh: 0
|
firstSubMesh: 0
|
||||||
subMeshCount: 0
|
subMeshCount: 0
|
||||||
|
|
@ -3246,7 +3246,7 @@ SkinnedMeshRenderer:
|
||||||
m_RenderingLayerMask: 1
|
m_RenderingLayerMask: 1
|
||||||
m_RendererPriority: 0
|
m_RendererPriority: 0
|
||||||
m_Materials:
|
m_Materials:
|
||||||
- {fileID: 2100000, guid: 0957fffbd8f7ab84a9075733b67fed01, type: 2}
|
- {fileID: 2100000, guid: 8e6859b01ec3a204ab52fa46ff458883, type: 2}
|
||||||
m_StaticBatchInfo:
|
m_StaticBatchInfo:
|
||||||
firstSubMesh: 0
|
firstSubMesh: 0
|
||||||
subMeshCount: 0
|
subMeshCount: 0
|
||||||
|
|
@ -3754,7 +3754,7 @@ SkinnedMeshRenderer:
|
||||||
m_RenderingLayerMask: 1
|
m_RenderingLayerMask: 1
|
||||||
m_RendererPriority: 0
|
m_RendererPriority: 0
|
||||||
m_Materials:
|
m_Materials:
|
||||||
- {fileID: 2100000, guid: 759d477d80623a74fb90027ee36eb008, type: 2}
|
- {fileID: 2100000, guid: 41b03ff423d68e54ca6edd623a7930bd, type: 2}
|
||||||
m_StaticBatchInfo:
|
m_StaticBatchInfo:
|
||||||
firstSubMesh: 0
|
firstSubMesh: 0
|
||||||
subMeshCount: 0
|
subMeshCount: 0
|
||||||
|
|
@ -4225,7 +4225,7 @@ SkinnedMeshRenderer:
|
||||||
m_RenderingLayerMask: 1
|
m_RenderingLayerMask: 1
|
||||||
m_RendererPriority: 0
|
m_RendererPriority: 0
|
||||||
m_Materials:
|
m_Materials:
|
||||||
- {fileID: 2100000, guid: 0957fffbd8f7ab84a9075733b67fed01, type: 2}
|
- {fileID: 2100000, guid: 8e6859b01ec3a204ab52fa46ff458883, type: 2}
|
||||||
m_StaticBatchInfo:
|
m_StaticBatchInfo:
|
||||||
firstSubMesh: 0
|
firstSubMesh: 0
|
||||||
subMeshCount: 0
|
subMeshCount: 0
|
||||||
|
|
@ -6190,6 +6190,7 @@ GameObject:
|
||||||
- component: {fileID: 1835281278008071509}
|
- component: {fileID: 1835281278008071509}
|
||||||
- component: {fileID: 1155056168462878929}
|
- component: {fileID: 1155056168462878929}
|
||||||
- component: {fileID: 8835979289890761207}
|
- component: {fileID: 8835979289890761207}
|
||||||
|
- component: {fileID: 6664758947101401473}
|
||||||
m_Layer: 3
|
m_Layer: 3
|
||||||
m_Name: LH_M05
|
m_Name: LH_M05
|
||||||
m_TagString: Untagged
|
m_TagString: Untagged
|
||||||
|
|
@ -6415,6 +6416,18 @@ MonoBehaviour:
|
||||||
m_EditorClassIdentifier: Assembly-CSharp::WL.Character.WLWeaponFitter
|
m_EditorClassIdentifier: Assembly-CSharp::WL.Character.WLWeaponFitter
|
||||||
overrideTargetRatio: 0
|
overrideTargetRatio: 0
|
||||||
sockets: []
|
sockets: []
|
||||||
|
--- !u!114 &6664758947101401473
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 7522112115323654996}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: a645824e9a9c1c146a7fc5e5fdb2a515, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier: Assembly-CSharp::WL.Look.Character.WLCharacterLook
|
||||||
--- !u!1 &7572986597832592123
|
--- !u!1 &7572986597832592123
|
||||||
GameObject:
|
GameObject:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
|
|
@ -6725,7 +6738,7 @@ SkinnedMeshRenderer:
|
||||||
m_RenderingLayerMask: 1
|
m_RenderingLayerMask: 1
|
||||||
m_RendererPriority: 0
|
m_RendererPriority: 0
|
||||||
m_Materials:
|
m_Materials:
|
||||||
- {fileID: 2100000, guid: 0957fffbd8f7ab84a9075733b67fed01, type: 2}
|
- {fileID: 2100000, guid: 8e6859b01ec3a204ab52fa46ff458883, type: 2}
|
||||||
m_StaticBatchInfo:
|
m_StaticBatchInfo:
|
||||||
firstSubMesh: 0
|
firstSubMesh: 0
|
||||||
subMeshCount: 0
|
subMeshCount: 0
|
||||||
|
|
@ -7534,7 +7547,7 @@ SkinnedMeshRenderer:
|
||||||
m_RenderingLayerMask: 1
|
m_RenderingLayerMask: 1
|
||||||
m_RendererPriority: 0
|
m_RendererPriority: 0
|
||||||
m_Materials:
|
m_Materials:
|
||||||
- {fileID: 2100000, guid: 8ae3ad5563aace8428cb247adb3da626, type: 2}
|
- {fileID: 2100000, guid: dfd97eb4215e074478e692d7b445f230, type: 2}
|
||||||
m_StaticBatchInfo:
|
m_StaticBatchInfo:
|
||||||
firstSubMesh: 0
|
firstSubMesh: 0
|
||||||
subMeshCount: 0
|
subMeshCount: 0
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: caa01cb399578e6429a50a7edd7ec089
|
||||||
|
folderAsset: yes
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: eaa900863332ac640a4485b823bf7253
|
||||||
|
folderAsset: yes
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
|
|
@ -0,0 +1,101 @@
|
||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!21 &2100000
|
||||||
|
Material:
|
||||||
|
serializedVersion: 8
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_Name: Hair05_Toon
|
||||||
|
m_Shader: {fileID: -6465566751694194690, guid: 378227f8a69213e419dfb0d889d8dd2f,
|
||||||
|
type: 3}
|
||||||
|
m_Parent: {fileID: 0}
|
||||||
|
m_ModifiedSerializedProperties: 0
|
||||||
|
m_ValidKeywords:
|
||||||
|
- _OUTLINESENABLED
|
||||||
|
m_InvalidKeywords: []
|
||||||
|
m_LightmapFlags: 4
|
||||||
|
m_EnableInstancingVariants: 0
|
||||||
|
m_DoubleSidedGI: 0
|
||||||
|
m_CustomRenderQueue: -1
|
||||||
|
stringTagMap:
|
||||||
|
RenderType: Opaque
|
||||||
|
disabledShaderPasses:
|
||||||
|
- MOTIONVECTORS
|
||||||
|
m_LockedProperties:
|
||||||
|
m_SavedProperties:
|
||||||
|
serializedVersion: 3
|
||||||
|
m_TexEnvs:
|
||||||
|
- _BaseMap:
|
||||||
|
m_Texture: {fileID: 2800000, guid: 1303b400492408040af1bc0113dbdf26, type: 3}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _ShadowBaseMap:
|
||||||
|
m_Texture: {fileID: 2800000, guid: 1303b400492408040af1bc0113dbdf26, type: 3}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- unity_Lightmaps:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- unity_LightmapsInd:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- unity_ShadowMasks:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
m_Ints: []
|
||||||
|
m_Floats:
|
||||||
|
- _AlphaClip: 0
|
||||||
|
- _AlphaToMask: 0
|
||||||
|
- _Blend: 0
|
||||||
|
- _Brightness: 0.25
|
||||||
|
- _CastShadows: 1
|
||||||
|
- _Cloud_Change: 0.005
|
||||||
|
- _Cloud_Cover: 0.5
|
||||||
|
- _Cloud_Density: 0.01
|
||||||
|
- _Cloud_Strength: 1
|
||||||
|
- _Cull: 2
|
||||||
|
- _DepthEdgeStrength: 0.5
|
||||||
|
- _DepthThreshold: 0.01
|
||||||
|
- _DstBlend: 0
|
||||||
|
- _DstBlendAlpha: 0
|
||||||
|
- _MinimumDarkness: 0.2
|
||||||
|
- _NormalEdgeStrength: 0.3
|
||||||
|
- _NormalThreshold: 1
|
||||||
|
- _OUTLINESENABLED: 1
|
||||||
|
- _QueueControl: 0
|
||||||
|
- _QueueOffset: 0
|
||||||
|
- _Shades: 7
|
||||||
|
- _SrcBlend: 1
|
||||||
|
- _SrcBlendAlpha: 1
|
||||||
|
- _Surface: 0
|
||||||
|
- _XRMotionVectorsPass: 1
|
||||||
|
- _ZTest: 4
|
||||||
|
- _ZWrite: 1
|
||||||
|
- _ZWriteControl: 0
|
||||||
|
m_Colors:
|
||||||
|
- _Cloud_Movement: {r: 1, g: 1, b: 0, a: 0}
|
||||||
|
- _Cloud_Step: {r: 13, g: 17, b: 0, a: 0}
|
||||||
|
- _DiffuseColor: {r: 1, g: 1, b: 1, a: 1}
|
||||||
|
- _NormalBias: {r: 1, g: 1, b: 1, a: 0}
|
||||||
|
- _Outline: {r: 0, g: 0, b: 0, a: 0}
|
||||||
|
- _ShadowDiffuseColor: {r: 0.2164, g: 0.2092, b: 0.3713, a: 0}
|
||||||
|
m_BuildTextureStacks: []
|
||||||
|
m_AllowLocking: 1
|
||||||
|
--- !u!114 &8952628817320874540
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 11
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 0}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier: Unity.RenderPipelines.Universal.Editor::UnityEditor.Rendering.Universal.AssetVersion
|
||||||
|
version: 10
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: b8ad7e2b6fe09d64d8e5d431fc6d174e
|
||||||
|
NativeFormatImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
mainObjectFileID: 2100000
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
|
|
@ -0,0 +1,101 @@
|
||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!114 &-1435736134888275448
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 11
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 0}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier: Unity.RenderPipelines.Universal.Editor::UnityEditor.Rendering.Universal.AssetVersion
|
||||||
|
version: 10
|
||||||
|
--- !u!21 &2100000
|
||||||
|
Material:
|
||||||
|
serializedVersion: 8
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_Name: Hair05_ToonF
|
||||||
|
m_Shader: {fileID: -6465566751694194690, guid: 378227f8a69213e419dfb0d889d8dd2f,
|
||||||
|
type: 3}
|
||||||
|
m_Parent: {fileID: 0}
|
||||||
|
m_ModifiedSerializedProperties: 0
|
||||||
|
m_ValidKeywords:
|
||||||
|
- _OUTLINESENABLED
|
||||||
|
m_InvalidKeywords: []
|
||||||
|
m_LightmapFlags: 4
|
||||||
|
m_EnableInstancingVariants: 0
|
||||||
|
m_DoubleSidedGI: 0
|
||||||
|
m_CustomRenderQueue: -1
|
||||||
|
stringTagMap:
|
||||||
|
RenderType: Opaque
|
||||||
|
disabledShaderPasses:
|
||||||
|
- MOTIONVECTORS
|
||||||
|
m_LockedProperties:
|
||||||
|
m_SavedProperties:
|
||||||
|
serializedVersion: 3
|
||||||
|
m_TexEnvs:
|
||||||
|
- _BaseMap:
|
||||||
|
m_Texture: {fileID: 2800000, guid: 4235527f7d07a444bab0771fe41cf038, type: 3}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _ShadowBaseMap:
|
||||||
|
m_Texture: {fileID: 2800000, guid: 4235527f7d07a444bab0771fe41cf038, type: 3}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- unity_Lightmaps:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- unity_LightmapsInd:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- unity_ShadowMasks:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
m_Ints: []
|
||||||
|
m_Floats:
|
||||||
|
- _AlphaClip: 0
|
||||||
|
- _AlphaToMask: 0
|
||||||
|
- _Blend: 0
|
||||||
|
- _Brightness: 0.25
|
||||||
|
- _CastShadows: 1
|
||||||
|
- _Cloud_Change: 0.005
|
||||||
|
- _Cloud_Cover: 0.5
|
||||||
|
- _Cloud_Density: 0.01
|
||||||
|
- _Cloud_Strength: 1
|
||||||
|
- _Cull: 2
|
||||||
|
- _DepthEdgeStrength: 0.5
|
||||||
|
- _DepthThreshold: 0.01
|
||||||
|
- _DstBlend: 0
|
||||||
|
- _DstBlendAlpha: 0
|
||||||
|
- _MinimumDarkness: 0.2
|
||||||
|
- _NormalEdgeStrength: 0.3
|
||||||
|
- _NormalThreshold: 1
|
||||||
|
- _OUTLINESENABLED: 1
|
||||||
|
- _QueueControl: 0
|
||||||
|
- _QueueOffset: 0
|
||||||
|
- _Shades: 7
|
||||||
|
- _SrcBlend: 1
|
||||||
|
- _SrcBlendAlpha: 1
|
||||||
|
- _Surface: 0
|
||||||
|
- _XRMotionVectorsPass: 1
|
||||||
|
- _ZTest: 4
|
||||||
|
- _ZWrite: 1
|
||||||
|
- _ZWriteControl: 0
|
||||||
|
m_Colors:
|
||||||
|
- _Cloud_Movement: {r: 1, g: 1, b: 0, a: 0}
|
||||||
|
- _Cloud_Step: {r: 13, g: 17, b: 0, a: 0}
|
||||||
|
- _DiffuseColor: {r: 1, g: 1, b: 1, a: 1}
|
||||||
|
- _NormalBias: {r: 1, g: 1, b: 1, a: 0}
|
||||||
|
- _Outline: {r: 0, g: 0, b: 0, a: 0}
|
||||||
|
- _ShadowDiffuseColor: {r: 0.2164, g: 0.2092, b: 0.3713, a: 0}
|
||||||
|
m_BuildTextureStacks: []
|
||||||
|
m_AllowLocking: 1
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 2f5d8a1afc2653942a2d081786f030ba
|
||||||
|
NativeFormatImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
mainObjectFileID: 2100000
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
|
|
@ -0,0 +1,101 @@
|
||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!114 &-6349725651354694064
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 11
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 0}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier: Unity.RenderPipelines.Universal.Editor::UnityEditor.Rendering.Universal.AssetVersion
|
||||||
|
version: 10
|
||||||
|
--- !u!21 &2100000
|
||||||
|
Material:
|
||||||
|
serializedVersion: 8
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_Name: Hair05_ToonS
|
||||||
|
m_Shader: {fileID: -6465566751694194690, guid: 378227f8a69213e419dfb0d889d8dd2f,
|
||||||
|
type: 3}
|
||||||
|
m_Parent: {fileID: 0}
|
||||||
|
m_ModifiedSerializedProperties: 0
|
||||||
|
m_ValidKeywords:
|
||||||
|
- _OUTLINESENABLED
|
||||||
|
m_InvalidKeywords: []
|
||||||
|
m_LightmapFlags: 4
|
||||||
|
m_EnableInstancingVariants: 0
|
||||||
|
m_DoubleSidedGI: 0
|
||||||
|
m_CustomRenderQueue: -1
|
||||||
|
stringTagMap:
|
||||||
|
RenderType: Opaque
|
||||||
|
disabledShaderPasses:
|
||||||
|
- MOTIONVECTORS
|
||||||
|
m_LockedProperties:
|
||||||
|
m_SavedProperties:
|
||||||
|
serializedVersion: 3
|
||||||
|
m_TexEnvs:
|
||||||
|
- _BaseMap:
|
||||||
|
m_Texture: {fileID: 2800000, guid: 6a9d3190eb5cdc0489df434d30a4133a, type: 3}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _ShadowBaseMap:
|
||||||
|
m_Texture: {fileID: 2800000, guid: 6a9d3190eb5cdc0489df434d30a4133a, type: 3}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- unity_Lightmaps:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- unity_LightmapsInd:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- unity_ShadowMasks:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
m_Ints: []
|
||||||
|
m_Floats:
|
||||||
|
- _AlphaClip: 0
|
||||||
|
- _AlphaToMask: 0
|
||||||
|
- _Blend: 0
|
||||||
|
- _Brightness: 0.25
|
||||||
|
- _CastShadows: 1
|
||||||
|
- _Cloud_Change: 0.005
|
||||||
|
- _Cloud_Cover: 0.5
|
||||||
|
- _Cloud_Density: 0.01
|
||||||
|
- _Cloud_Strength: 1
|
||||||
|
- _Cull: 2
|
||||||
|
- _DepthEdgeStrength: 0.5
|
||||||
|
- _DepthThreshold: 0.01
|
||||||
|
- _DstBlend: 0
|
||||||
|
- _DstBlendAlpha: 0
|
||||||
|
- _MinimumDarkness: 0.2
|
||||||
|
- _NormalEdgeStrength: 0.3
|
||||||
|
- _NormalThreshold: 1
|
||||||
|
- _OUTLINESENABLED: 1
|
||||||
|
- _QueueControl: 0
|
||||||
|
- _QueueOffset: 0
|
||||||
|
- _Shades: 7
|
||||||
|
- _SrcBlend: 1
|
||||||
|
- _SrcBlendAlpha: 1
|
||||||
|
- _Surface: 0
|
||||||
|
- _XRMotionVectorsPass: 1
|
||||||
|
- _ZTest: 4
|
||||||
|
- _ZWrite: 1
|
||||||
|
- _ZWriteControl: 0
|
||||||
|
m_Colors:
|
||||||
|
- _Cloud_Movement: {r: 1, g: 1, b: 0, a: 0}
|
||||||
|
- _Cloud_Step: {r: 13, g: 17, b: 0, a: 0}
|
||||||
|
- _DiffuseColor: {r: 1, g: 1, b: 1, a: 1}
|
||||||
|
- _NormalBias: {r: 1, g: 1, b: 1, a: 0}
|
||||||
|
- _Outline: {r: 0, g: 0, b: 0, a: 0}
|
||||||
|
- _ShadowDiffuseColor: {r: 0.2164, g: 0.2092, b: 0.3713, a: 0}
|
||||||
|
m_BuildTextureStacks: []
|
||||||
|
m_AllowLocking: 1
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 41b03ff423d68e54ca6edd623a7930bd
|
||||||
|
NativeFormatImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
mainObjectFileID: 2100000
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
|
|
@ -0,0 +1,101 @@
|
||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!21 &2100000
|
||||||
|
Material:
|
||||||
|
serializedVersion: 8
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_Name: M05_Toon
|
||||||
|
m_Shader: {fileID: -6465566751694194690, guid: 378227f8a69213e419dfb0d889d8dd2f,
|
||||||
|
type: 3}
|
||||||
|
m_Parent: {fileID: 0}
|
||||||
|
m_ModifiedSerializedProperties: 0
|
||||||
|
m_ValidKeywords:
|
||||||
|
- _OUTLINESENABLED
|
||||||
|
m_InvalidKeywords: []
|
||||||
|
m_LightmapFlags: 4
|
||||||
|
m_EnableInstancingVariants: 0
|
||||||
|
m_DoubleSidedGI: 0
|
||||||
|
m_CustomRenderQueue: -1
|
||||||
|
stringTagMap:
|
||||||
|
RenderType: Opaque
|
||||||
|
disabledShaderPasses:
|
||||||
|
- MOTIONVECTORS
|
||||||
|
m_LockedProperties:
|
||||||
|
m_SavedProperties:
|
||||||
|
serializedVersion: 3
|
||||||
|
m_TexEnvs:
|
||||||
|
- _BaseMap:
|
||||||
|
m_Texture: {fileID: 2800000, guid: d3475d52f16f8104faf0a98153aaaab1, type: 3}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _ShadowBaseMap:
|
||||||
|
m_Texture: {fileID: 2800000, guid: d3475d52f16f8104faf0a98153aaaab1, type: 3}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- unity_Lightmaps:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- unity_LightmapsInd:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- unity_ShadowMasks:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
m_Ints: []
|
||||||
|
m_Floats:
|
||||||
|
- _AlphaClip: 0
|
||||||
|
- _AlphaToMask: 0
|
||||||
|
- _Blend: 0
|
||||||
|
- _Brightness: 0.25
|
||||||
|
- _CastShadows: 1
|
||||||
|
- _Cloud_Change: 0.005
|
||||||
|
- _Cloud_Cover: 0.5
|
||||||
|
- _Cloud_Density: 0.01
|
||||||
|
- _Cloud_Strength: 1
|
||||||
|
- _Cull: 2
|
||||||
|
- _DepthEdgeStrength: 0.5
|
||||||
|
- _DepthThreshold: 0.01
|
||||||
|
- _DstBlend: 0
|
||||||
|
- _DstBlendAlpha: 0
|
||||||
|
- _MinimumDarkness: 0.2
|
||||||
|
- _NormalEdgeStrength: 0.3
|
||||||
|
- _NormalThreshold: 1
|
||||||
|
- _OUTLINESENABLED: 1
|
||||||
|
- _QueueControl: 0
|
||||||
|
- _QueueOffset: 0
|
||||||
|
- _Shades: 7
|
||||||
|
- _SrcBlend: 1
|
||||||
|
- _SrcBlendAlpha: 1
|
||||||
|
- _Surface: 0
|
||||||
|
- _XRMotionVectorsPass: 1
|
||||||
|
- _ZTest: 4
|
||||||
|
- _ZWrite: 1
|
||||||
|
- _ZWriteControl: 0
|
||||||
|
m_Colors:
|
||||||
|
- _Cloud_Movement: {r: 1, g: 1, b: 0, a: 0}
|
||||||
|
- _Cloud_Step: {r: 13, g: 17, b: 0, a: 0}
|
||||||
|
- _DiffuseColor: {r: 1, g: 1, b: 1, a: 1}
|
||||||
|
- _NormalBias: {r: 1, g: 1, b: 1, a: 0}
|
||||||
|
- _Outline: {r: 0, g: 0, b: 0, a: 0}
|
||||||
|
- _ShadowDiffuseColor: {r: 0.2164, g: 0.2092, b: 0.3713, a: 0}
|
||||||
|
m_BuildTextureStacks: []
|
||||||
|
m_AllowLocking: 1
|
||||||
|
--- !u!114 &8084689307149688911
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 11
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 0}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier: Unity.RenderPipelines.Universal.Editor::UnityEditor.Rendering.Universal.AssetVersion
|
||||||
|
version: 10
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 346eed0b863874b49ab801667a771579
|
||||||
|
NativeFormatImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
mainObjectFileID: 2100000
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
|
|
@ -0,0 +1,101 @@
|
||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!21 &2100000
|
||||||
|
Material:
|
||||||
|
serializedVersion: 8
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_Name: M05_ToonF
|
||||||
|
m_Shader: {fileID: -6465566751694194690, guid: 378227f8a69213e419dfb0d889d8dd2f,
|
||||||
|
type: 3}
|
||||||
|
m_Parent: {fileID: 0}
|
||||||
|
m_ModifiedSerializedProperties: 0
|
||||||
|
m_ValidKeywords:
|
||||||
|
- _OUTLINESENABLED
|
||||||
|
m_InvalidKeywords: []
|
||||||
|
m_LightmapFlags: 4
|
||||||
|
m_EnableInstancingVariants: 0
|
||||||
|
m_DoubleSidedGI: 0
|
||||||
|
m_CustomRenderQueue: -1
|
||||||
|
stringTagMap:
|
||||||
|
RenderType: Opaque
|
||||||
|
disabledShaderPasses:
|
||||||
|
- MOTIONVECTORS
|
||||||
|
m_LockedProperties:
|
||||||
|
m_SavedProperties:
|
||||||
|
serializedVersion: 3
|
||||||
|
m_TexEnvs:
|
||||||
|
- _BaseMap:
|
||||||
|
m_Texture: {fileID: 2800000, guid: ae7a4f30ca95e6b418b60a81d4fdeb97, type: 3}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _ShadowBaseMap:
|
||||||
|
m_Texture: {fileID: 2800000, guid: ae7a4f30ca95e6b418b60a81d4fdeb97, type: 3}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- unity_Lightmaps:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- unity_LightmapsInd:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- unity_ShadowMasks:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
m_Ints: []
|
||||||
|
m_Floats:
|
||||||
|
- _AlphaClip: 0
|
||||||
|
- _AlphaToMask: 0
|
||||||
|
- _Blend: 0
|
||||||
|
- _Brightness: 0.25
|
||||||
|
- _CastShadows: 1
|
||||||
|
- _Cloud_Change: 0.005
|
||||||
|
- _Cloud_Cover: 0.5
|
||||||
|
- _Cloud_Density: 0.01
|
||||||
|
- _Cloud_Strength: 1
|
||||||
|
- _Cull: 2
|
||||||
|
- _DepthEdgeStrength: 0.5
|
||||||
|
- _DepthThreshold: 0.01
|
||||||
|
- _DstBlend: 0
|
||||||
|
- _DstBlendAlpha: 0
|
||||||
|
- _MinimumDarkness: 0.2
|
||||||
|
- _NormalEdgeStrength: 0.3
|
||||||
|
- _NormalThreshold: 1
|
||||||
|
- _OUTLINESENABLED: 1
|
||||||
|
- _QueueControl: 0
|
||||||
|
- _QueueOffset: 0
|
||||||
|
- _Shades: 7
|
||||||
|
- _SrcBlend: 1
|
||||||
|
- _SrcBlendAlpha: 1
|
||||||
|
- _Surface: 0
|
||||||
|
- _XRMotionVectorsPass: 1
|
||||||
|
- _ZTest: 4
|
||||||
|
- _ZWrite: 1
|
||||||
|
- _ZWriteControl: 0
|
||||||
|
m_Colors:
|
||||||
|
- _Cloud_Movement: {r: 1, g: 1, b: 0, a: 0}
|
||||||
|
- _Cloud_Step: {r: 13, g: 17, b: 0, a: 0}
|
||||||
|
- _DiffuseColor: {r: 1, g: 1, b: 1, a: 1}
|
||||||
|
- _NormalBias: {r: 1, g: 1, b: 1, a: 0}
|
||||||
|
- _Outline: {r: 0, g: 0, b: 0, a: 0}
|
||||||
|
- _ShadowDiffuseColor: {r: 0.2164, g: 0.2092, b: 0.3713, a: 0}
|
||||||
|
m_BuildTextureStacks: []
|
||||||
|
m_AllowLocking: 1
|
||||||
|
--- !u!114 &6328004374326531536
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 11
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 0}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier: Unity.RenderPipelines.Universal.Editor::UnityEditor.Rendering.Universal.AssetVersion
|
||||||
|
version: 10
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 52f9a76d263cd1b41af50330bf98dc3b
|
||||||
|
NativeFormatImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
mainObjectFileID: 2100000
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
|
|
@ -0,0 +1,101 @@
|
||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!114 &-855139663943253681
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 11
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 0}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier: Unity.RenderPipelines.Universal.Editor::UnityEditor.Rendering.Universal.AssetVersion
|
||||||
|
version: 10
|
||||||
|
--- !u!21 &2100000
|
||||||
|
Material:
|
||||||
|
serializedVersion: 8
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_Name: M05_ToonS
|
||||||
|
m_Shader: {fileID: -6465566751694194690, guid: 378227f8a69213e419dfb0d889d8dd2f,
|
||||||
|
type: 3}
|
||||||
|
m_Parent: {fileID: 0}
|
||||||
|
m_ModifiedSerializedProperties: 0
|
||||||
|
m_ValidKeywords:
|
||||||
|
- _OUTLINESENABLED
|
||||||
|
m_InvalidKeywords: []
|
||||||
|
m_LightmapFlags: 4
|
||||||
|
m_EnableInstancingVariants: 0
|
||||||
|
m_DoubleSidedGI: 0
|
||||||
|
m_CustomRenderQueue: -1
|
||||||
|
stringTagMap:
|
||||||
|
RenderType: Opaque
|
||||||
|
disabledShaderPasses:
|
||||||
|
- MOTIONVECTORS
|
||||||
|
m_LockedProperties:
|
||||||
|
m_SavedProperties:
|
||||||
|
serializedVersion: 3
|
||||||
|
m_TexEnvs:
|
||||||
|
- _BaseMap:
|
||||||
|
m_Texture: {fileID: 2800000, guid: f03f1045ff9101246b9b1b2484f0f0a1, type: 3}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _ShadowBaseMap:
|
||||||
|
m_Texture: {fileID: 2800000, guid: f03f1045ff9101246b9b1b2484f0f0a1, type: 3}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- unity_Lightmaps:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- unity_LightmapsInd:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- unity_ShadowMasks:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
m_Ints: []
|
||||||
|
m_Floats:
|
||||||
|
- _AlphaClip: 0
|
||||||
|
- _AlphaToMask: 0
|
||||||
|
- _Blend: 0
|
||||||
|
- _Brightness: 0.25
|
||||||
|
- _CastShadows: 1
|
||||||
|
- _Cloud_Change: 0.005
|
||||||
|
- _Cloud_Cover: 0.5
|
||||||
|
- _Cloud_Density: 0.01
|
||||||
|
- _Cloud_Strength: 1
|
||||||
|
- _Cull: 2
|
||||||
|
- _DepthEdgeStrength: 0.5
|
||||||
|
- _DepthThreshold: 0.01
|
||||||
|
- _DstBlend: 0
|
||||||
|
- _DstBlendAlpha: 0
|
||||||
|
- _MinimumDarkness: 0.2
|
||||||
|
- _NormalEdgeStrength: 0.3
|
||||||
|
- _NormalThreshold: 1
|
||||||
|
- _OUTLINESENABLED: 1
|
||||||
|
- _QueueControl: 0
|
||||||
|
- _QueueOffset: 0
|
||||||
|
- _Shades: 7
|
||||||
|
- _SrcBlend: 1
|
||||||
|
- _SrcBlendAlpha: 1
|
||||||
|
- _Surface: 0
|
||||||
|
- _XRMotionVectorsPass: 1
|
||||||
|
- _ZTest: 4
|
||||||
|
- _ZWrite: 1
|
||||||
|
- _ZWriteControl: 0
|
||||||
|
m_Colors:
|
||||||
|
- _Cloud_Movement: {r: 1, g: 1, b: 0, a: 0}
|
||||||
|
- _Cloud_Step: {r: 13, g: 17, b: 0, a: 0}
|
||||||
|
- _DiffuseColor: {r: 1, g: 1, b: 1, a: 1}
|
||||||
|
- _NormalBias: {r: 1, g: 1, b: 1, a: 0}
|
||||||
|
- _Outline: {r: 0, g: 0, b: 0, a: 0}
|
||||||
|
- _ShadowDiffuseColor: {r: 0.2164, g: 0.2092, b: 0.3713, a: 0}
|
||||||
|
m_BuildTextureStacks: []
|
||||||
|
m_AllowLocking: 1
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 8e6859b01ec3a204ab52fa46ff458883
|
||||||
|
NativeFormatImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
mainObjectFileID: 2100000
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
|
|
@ -0,0 +1,101 @@
|
||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!21 &2100000
|
||||||
|
Material:
|
||||||
|
serializedVersion: 8
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_Name: Skin_Toon
|
||||||
|
m_Shader: {fileID: -6465566751694194690, guid: 378227f8a69213e419dfb0d889d8dd2f,
|
||||||
|
type: 3}
|
||||||
|
m_Parent: {fileID: 0}
|
||||||
|
m_ModifiedSerializedProperties: 0
|
||||||
|
m_ValidKeywords:
|
||||||
|
- _OUTLINESENABLED
|
||||||
|
m_InvalidKeywords: []
|
||||||
|
m_LightmapFlags: 4
|
||||||
|
m_EnableInstancingVariants: 0
|
||||||
|
m_DoubleSidedGI: 0
|
||||||
|
m_CustomRenderQueue: -1
|
||||||
|
stringTagMap:
|
||||||
|
RenderType: Opaque
|
||||||
|
disabledShaderPasses:
|
||||||
|
- MOTIONVECTORS
|
||||||
|
m_LockedProperties:
|
||||||
|
m_SavedProperties:
|
||||||
|
serializedVersion: 3
|
||||||
|
m_TexEnvs:
|
||||||
|
- _BaseMap:
|
||||||
|
m_Texture: {fileID: 2800000, guid: f769d3d8854002d4ab7eb9e9fbe5bbed, type: 3}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _ShadowBaseMap:
|
||||||
|
m_Texture: {fileID: 2800000, guid: f769d3d8854002d4ab7eb9e9fbe5bbed, type: 3}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- unity_Lightmaps:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- unity_LightmapsInd:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- unity_ShadowMasks:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
m_Ints: []
|
||||||
|
m_Floats:
|
||||||
|
- _AlphaClip: 0
|
||||||
|
- _AlphaToMask: 0
|
||||||
|
- _Blend: 0
|
||||||
|
- _Brightness: 0.25
|
||||||
|
- _CastShadows: 1
|
||||||
|
- _Cloud_Change: 0.005
|
||||||
|
- _Cloud_Cover: 0.5
|
||||||
|
- _Cloud_Density: 0.01
|
||||||
|
- _Cloud_Strength: 1
|
||||||
|
- _Cull: 2
|
||||||
|
- _DepthEdgeStrength: 0.5
|
||||||
|
- _DepthThreshold: 0.01
|
||||||
|
- _DstBlend: 0
|
||||||
|
- _DstBlendAlpha: 0
|
||||||
|
- _MinimumDarkness: 0.2
|
||||||
|
- _NormalEdgeStrength: 0.3
|
||||||
|
- _NormalThreshold: 1
|
||||||
|
- _OUTLINESENABLED: 1
|
||||||
|
- _QueueControl: 0
|
||||||
|
- _QueueOffset: 0
|
||||||
|
- _Shades: 7
|
||||||
|
- _SrcBlend: 1
|
||||||
|
- _SrcBlendAlpha: 1
|
||||||
|
- _Surface: 0
|
||||||
|
- _XRMotionVectorsPass: 1
|
||||||
|
- _ZTest: 4
|
||||||
|
- _ZWrite: 1
|
||||||
|
- _ZWriteControl: 0
|
||||||
|
m_Colors:
|
||||||
|
- _Cloud_Movement: {r: 1, g: 1, b: 0, a: 0}
|
||||||
|
- _Cloud_Step: {r: 13, g: 17, b: 0, a: 0}
|
||||||
|
- _DiffuseColor: {r: 1, g: 1, b: 1, a: 1}
|
||||||
|
- _NormalBias: {r: 1, g: 1, b: 1, a: 0}
|
||||||
|
- _Outline: {r: 0, g: 0, b: 0, a: 0}
|
||||||
|
- _ShadowDiffuseColor: {r: 0.2164, g: 0.2092, b: 0.3713, a: 0}
|
||||||
|
m_BuildTextureStacks: []
|
||||||
|
m_AllowLocking: 1
|
||||||
|
--- !u!114 &4630290562929802267
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 11
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 0}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier: Unity.RenderPipelines.Universal.Editor::UnityEditor.Rendering.Universal.AssetVersion
|
||||||
|
version: 10
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: a683d2dc03bb8c04299b0ed099f07b3c
|
||||||
|
NativeFormatImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
mainObjectFileID: 2100000
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
|
|
@ -0,0 +1,101 @@
|
||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!114 &-8775649030602598506
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 11
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 0}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier: Unity.RenderPipelines.Universal.Editor::UnityEditor.Rendering.Universal.AssetVersion
|
||||||
|
version: 10
|
||||||
|
--- !u!21 &2100000
|
||||||
|
Material:
|
||||||
|
serializedVersion: 8
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_Name: Skin_ToonF
|
||||||
|
m_Shader: {fileID: -6465566751694194690, guid: 378227f8a69213e419dfb0d889d8dd2f,
|
||||||
|
type: 3}
|
||||||
|
m_Parent: {fileID: 0}
|
||||||
|
m_ModifiedSerializedProperties: 0
|
||||||
|
m_ValidKeywords:
|
||||||
|
- _OUTLINESENABLED
|
||||||
|
m_InvalidKeywords: []
|
||||||
|
m_LightmapFlags: 4
|
||||||
|
m_EnableInstancingVariants: 0
|
||||||
|
m_DoubleSidedGI: 0
|
||||||
|
m_CustomRenderQueue: -1
|
||||||
|
stringTagMap:
|
||||||
|
RenderType: Opaque
|
||||||
|
disabledShaderPasses:
|
||||||
|
- MOTIONVECTORS
|
||||||
|
m_LockedProperties:
|
||||||
|
m_SavedProperties:
|
||||||
|
serializedVersion: 3
|
||||||
|
m_TexEnvs:
|
||||||
|
- _BaseMap:
|
||||||
|
m_Texture: {fileID: 2800000, guid: 1ebf7cf3959e1af4f942ac0c46efd2f9, type: 3}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _ShadowBaseMap:
|
||||||
|
m_Texture: {fileID: 2800000, guid: 1ebf7cf3959e1af4f942ac0c46efd2f9, type: 3}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- unity_Lightmaps:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- unity_LightmapsInd:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- unity_ShadowMasks:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
m_Ints: []
|
||||||
|
m_Floats:
|
||||||
|
- _AlphaClip: 0
|
||||||
|
- _AlphaToMask: 0
|
||||||
|
- _Blend: 0
|
||||||
|
- _Brightness: 0.25
|
||||||
|
- _CastShadows: 1
|
||||||
|
- _Cloud_Change: 0.005
|
||||||
|
- _Cloud_Cover: 0.5
|
||||||
|
- _Cloud_Density: 0.01
|
||||||
|
- _Cloud_Strength: 1
|
||||||
|
- _Cull: 2
|
||||||
|
- _DepthEdgeStrength: 0.5
|
||||||
|
- _DepthThreshold: 0.01
|
||||||
|
- _DstBlend: 0
|
||||||
|
- _DstBlendAlpha: 0
|
||||||
|
- _MinimumDarkness: 0.2
|
||||||
|
- _NormalEdgeStrength: 0.3
|
||||||
|
- _NormalThreshold: 1
|
||||||
|
- _OUTLINESENABLED: 1
|
||||||
|
- _QueueControl: 0
|
||||||
|
- _QueueOffset: 0
|
||||||
|
- _Shades: 7
|
||||||
|
- _SrcBlend: 1
|
||||||
|
- _SrcBlendAlpha: 1
|
||||||
|
- _Surface: 0
|
||||||
|
- _XRMotionVectorsPass: 1
|
||||||
|
- _ZTest: 4
|
||||||
|
- _ZWrite: 1
|
||||||
|
- _ZWriteControl: 0
|
||||||
|
m_Colors:
|
||||||
|
- _Cloud_Movement: {r: 1, g: 1, b: 0, a: 0}
|
||||||
|
- _Cloud_Step: {r: 13, g: 17, b: 0, a: 0}
|
||||||
|
- _DiffuseColor: {r: 1, g: 1, b: 1, a: 1}
|
||||||
|
- _NormalBias: {r: 1, g: 1, b: 1, a: 0}
|
||||||
|
- _Outline: {r: 0, g: 0, b: 0, a: 0}
|
||||||
|
- _ShadowDiffuseColor: {r: 0.2164, g: 0.2092, b: 0.3713, a: 0}
|
||||||
|
m_BuildTextureStacks: []
|
||||||
|
m_AllowLocking: 1
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: a3e8c600f06162f43beb0a26c73c9da6
|
||||||
|
NativeFormatImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
mainObjectFileID: 2100000
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
|
|
@ -0,0 +1,101 @@
|
||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!114 &-6748870043807031197
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 11
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 0}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier: Unity.RenderPipelines.Universal.Editor::UnityEditor.Rendering.Universal.AssetVersion
|
||||||
|
version: 10
|
||||||
|
--- !u!21 &2100000
|
||||||
|
Material:
|
||||||
|
serializedVersion: 8
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_Name: Skin_ToonS
|
||||||
|
m_Shader: {fileID: -6465566751694194690, guid: 378227f8a69213e419dfb0d889d8dd2f,
|
||||||
|
type: 3}
|
||||||
|
m_Parent: {fileID: 0}
|
||||||
|
m_ModifiedSerializedProperties: 0
|
||||||
|
m_ValidKeywords:
|
||||||
|
- _OUTLINESENABLED
|
||||||
|
m_InvalidKeywords: []
|
||||||
|
m_LightmapFlags: 4
|
||||||
|
m_EnableInstancingVariants: 0
|
||||||
|
m_DoubleSidedGI: 0
|
||||||
|
m_CustomRenderQueue: -1
|
||||||
|
stringTagMap:
|
||||||
|
RenderType: Opaque
|
||||||
|
disabledShaderPasses:
|
||||||
|
- MOTIONVECTORS
|
||||||
|
m_LockedProperties:
|
||||||
|
m_SavedProperties:
|
||||||
|
serializedVersion: 3
|
||||||
|
m_TexEnvs:
|
||||||
|
- _BaseMap:
|
||||||
|
m_Texture: {fileID: 2800000, guid: 4359b5dd70e7908468980cfaaf66f86f, type: 3}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _ShadowBaseMap:
|
||||||
|
m_Texture: {fileID: 2800000, guid: 4359b5dd70e7908468980cfaaf66f86f, type: 3}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- unity_Lightmaps:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- unity_LightmapsInd:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- unity_ShadowMasks:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
m_Ints: []
|
||||||
|
m_Floats:
|
||||||
|
- _AlphaClip: 0
|
||||||
|
- _AlphaToMask: 0
|
||||||
|
- _Blend: 0
|
||||||
|
- _Brightness: 0.25
|
||||||
|
- _CastShadows: 1
|
||||||
|
- _Cloud_Change: 0.005
|
||||||
|
- _Cloud_Cover: 0.5
|
||||||
|
- _Cloud_Density: 0.01
|
||||||
|
- _Cloud_Strength: 1
|
||||||
|
- _Cull: 2
|
||||||
|
- _DepthEdgeStrength: 0.5
|
||||||
|
- _DepthThreshold: 0.01
|
||||||
|
- _DstBlend: 0
|
||||||
|
- _DstBlendAlpha: 0
|
||||||
|
- _MinimumDarkness: 0.2
|
||||||
|
- _NormalEdgeStrength: 0.3
|
||||||
|
- _NormalThreshold: 1
|
||||||
|
- _OUTLINESENABLED: 1
|
||||||
|
- _QueueControl: 0
|
||||||
|
- _QueueOffset: 0
|
||||||
|
- _Shades: 7
|
||||||
|
- _SrcBlend: 1
|
||||||
|
- _SrcBlendAlpha: 1
|
||||||
|
- _Surface: 0
|
||||||
|
- _XRMotionVectorsPass: 1
|
||||||
|
- _ZTest: 4
|
||||||
|
- _ZWrite: 1
|
||||||
|
- _ZWriteControl: 0
|
||||||
|
m_Colors:
|
||||||
|
- _Cloud_Movement: {r: 1, g: 1, b: 0, a: 0}
|
||||||
|
- _Cloud_Step: {r: 13, g: 17, b: 0, a: 0}
|
||||||
|
- _DiffuseColor: {r: 1, g: 1, b: 1, a: 1}
|
||||||
|
- _NormalBias: {r: 1, g: 1, b: 1, a: 0}
|
||||||
|
- _Outline: {r: 0, g: 0, b: 0, a: 0}
|
||||||
|
- _ShadowDiffuseColor: {r: 0.2164, g: 0.2092, b: 0.3713, a: 0}
|
||||||
|
m_BuildTextureStacks: []
|
||||||
|
m_AllowLocking: 1
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: f7ce73c5f996b0547a7ac1f49de1a2c8
|
||||||
|
NativeFormatImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
mainObjectFileID: 2100000
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
|
|
@ -0,0 +1,97 @@
|
||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!21 &2100000
|
||||||
|
Material:
|
||||||
|
serializedVersion: 8
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_Name: face02_ToonF
|
||||||
|
m_Shader: {fileID: 10750, guid: 0000000000000000f000000000000000, type: 0}
|
||||||
|
m_Parent: {fileID: 0}
|
||||||
|
m_ModifiedSerializedProperties: 0
|
||||||
|
m_ValidKeywords: []
|
||||||
|
m_InvalidKeywords:
|
||||||
|
- _ALPHAPREMULTIPLY_ON
|
||||||
|
- _EMISSION
|
||||||
|
m_LightmapFlags: 1
|
||||||
|
m_EnableInstancingVariants: 0
|
||||||
|
m_DoubleSidedGI: 0
|
||||||
|
m_CustomRenderQueue: -1
|
||||||
|
stringTagMap: {}
|
||||||
|
disabledShaderPasses: []
|
||||||
|
m_LockedProperties:
|
||||||
|
m_SavedProperties:
|
||||||
|
serializedVersion: 3
|
||||||
|
m_TexEnvs:
|
||||||
|
- _BumpMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _DetailAlbedoMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _DetailMask:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _DetailNormalMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _EmissionMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _FalloffSampler:
|
||||||
|
m_Texture: {fileID: 2800000, guid: 53ba3cfb9b246fd4f9098e204d897e60, type: 3}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _MainTex:
|
||||||
|
m_Texture: {fileID: 2800000, guid: c56889884f56b34428d7a41bf8650d2e, type: 3}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _MetallicGlossMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _OcclusionMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _ParallaxMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _RimLightSampler:
|
||||||
|
m_Texture: {fileID: 2800000, guid: 11011750921e10846abfad2b18cadbca, type: 3}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
m_Ints: []
|
||||||
|
m_Floats:
|
||||||
|
- _BumpScale: 1
|
||||||
|
- _Cutoff: 0.5
|
||||||
|
- _DepthBias: 0.00012
|
||||||
|
- _DetailNormalMapScale: 1
|
||||||
|
- _DstBlend: 10
|
||||||
|
- _EdgeThickness: 1
|
||||||
|
- _GlossMapScale: 1
|
||||||
|
- _Glossiness: 0.5
|
||||||
|
- _GlossyReflections: 1
|
||||||
|
- _Metallic: 0
|
||||||
|
- _Mode: 3
|
||||||
|
- _OcclusionStrength: 1
|
||||||
|
- _Parallax: 0.02
|
||||||
|
- _SmoothnessTextureChannel: 0
|
||||||
|
- _SpecularHighlights: 1
|
||||||
|
- _SrcBlend: 1
|
||||||
|
- _UVSec: 0
|
||||||
|
- _ZWrite: 0
|
||||||
|
m_Colors:
|
||||||
|
- _Color: {r: 1, g: 1, b: 1, a: 1}
|
||||||
|
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
||||||
|
- _ShadowColor: {r: 0.8, g: 0.8, b: 1, a: 1}
|
||||||
|
m_BuildTextureStacks: []
|
||||||
|
m_AllowLocking: 1
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 00a2baa094b9fce44b769bec529c91d5
|
||||||
|
NativeFormatImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
mainObjectFileID: 2100000
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
|
|
@ -0,0 +1,97 @@
|
||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!21 &2100000
|
||||||
|
Material:
|
||||||
|
serializedVersion: 8
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_Name: face02_ToonS
|
||||||
|
m_Shader: {fileID: 10750, guid: 0000000000000000f000000000000000, type: 0}
|
||||||
|
m_Parent: {fileID: 0}
|
||||||
|
m_ModifiedSerializedProperties: 0
|
||||||
|
m_ValidKeywords: []
|
||||||
|
m_InvalidKeywords:
|
||||||
|
- _ALPHAPREMULTIPLY_ON
|
||||||
|
- _EMISSION
|
||||||
|
m_LightmapFlags: 1
|
||||||
|
m_EnableInstancingVariants: 0
|
||||||
|
m_DoubleSidedGI: 0
|
||||||
|
m_CustomRenderQueue: -1
|
||||||
|
stringTagMap: {}
|
||||||
|
disabledShaderPasses: []
|
||||||
|
m_LockedProperties:
|
||||||
|
m_SavedProperties:
|
||||||
|
serializedVersion: 3
|
||||||
|
m_TexEnvs:
|
||||||
|
- _BumpMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _DetailAlbedoMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _DetailMask:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _DetailNormalMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _EmissionMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _FalloffSampler:
|
||||||
|
m_Texture: {fileID: 2800000, guid: 53ba3cfb9b246fd4f9098e204d897e60, type: 3}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _MainTex:
|
||||||
|
m_Texture: {fileID: 2800000, guid: 568237bb7e42c254ab3189ae52c11c67, type: 3}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _MetallicGlossMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _OcclusionMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _ParallaxMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _RimLightSampler:
|
||||||
|
m_Texture: {fileID: 2800000, guid: 11011750921e10846abfad2b18cadbca, type: 3}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
m_Ints: []
|
||||||
|
m_Floats:
|
||||||
|
- _BumpScale: 1
|
||||||
|
- _Cutoff: 0.5
|
||||||
|
- _DepthBias: 0.00012
|
||||||
|
- _DetailNormalMapScale: 1
|
||||||
|
- _DstBlend: 10
|
||||||
|
- _EdgeThickness: 1
|
||||||
|
- _GlossMapScale: 1
|
||||||
|
- _Glossiness: 0.5
|
||||||
|
- _GlossyReflections: 1
|
||||||
|
- _Metallic: 0
|
||||||
|
- _Mode: 3
|
||||||
|
- _OcclusionStrength: 1
|
||||||
|
- _Parallax: 0.02
|
||||||
|
- _SmoothnessTextureChannel: 0
|
||||||
|
- _SpecularHighlights: 1
|
||||||
|
- _SrcBlend: 1
|
||||||
|
- _UVSec: 0
|
||||||
|
- _ZWrite: 0
|
||||||
|
m_Colors:
|
||||||
|
- _Color: {r: 1, g: 1, b: 1, a: 1}
|
||||||
|
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
||||||
|
- _ShadowColor: {r: 0.8, g: 0.8, b: 1, a: 1}
|
||||||
|
m_BuildTextureStacks: []
|
||||||
|
m_AllowLocking: 1
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: dfd97eb4215e074478e692d7b445f230
|
||||||
|
NativeFormatImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
mainObjectFileID: 2100000
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 40bd7db00eba112499abcd97e758132a
|
||||||
|
folderAsset: yes
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 850af2ae31d6add4085d11c7bef5b125
|
||||||
|
folderAsset: yes
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
|
|
@ -0,0 +1,37 @@
|
||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!114 &11400000
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 0}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: a73e6c94f1ba0454f871a7a7b28c4263, type: 3}
|
||||||
|
m_Name: WLCharacterLookSettings
|
||||||
|
m_EditorClassIdentifier: Assembly-CSharp::WL.Look.Character.WLCharacterLookSettings
|
||||||
|
enabled_: 1
|
||||||
|
mode: 2
|
||||||
|
verboseLog: 0
|
||||||
|
originals:
|
||||||
|
- {fileID: 2100000, guid: 0957fffbd8f7ab84a9075733b67fed01, type: 2}
|
||||||
|
- {fileID: 2100000, guid: 54e809e248f25bc47ba8bc38cc93abb8, type: 2}
|
||||||
|
- {fileID: 2100000, guid: 759d477d80623a74fb90027ee36eb008, type: 2}
|
||||||
|
- {fileID: 2100000, guid: 8ae3ad5563aace8428cb247adb3da626, type: 2}
|
||||||
|
mode1:
|
||||||
|
- {fileID: 2100000, guid: 346eed0b863874b49ab801667a771579, type: 2}
|
||||||
|
- {fileID: 2100000, guid: a683d2dc03bb8c04299b0ed099f07b3c, type: 2}
|
||||||
|
- {fileID: 2100000, guid: b8ad7e2b6fe09d64d8e5d431fc6d174e, type: 2}
|
||||||
|
- {fileID: 2100000, guid: 8ae3ad5563aace8428cb247adb3da626, type: 2}
|
||||||
|
mode2:
|
||||||
|
- {fileID: 2100000, guid: 8e6859b01ec3a204ab52fa46ff458883, type: 2}
|
||||||
|
- {fileID: 2100000, guid: f7ce73c5f996b0547a7ac1f49de1a2c8, type: 2}
|
||||||
|
- {fileID: 2100000, guid: 41b03ff423d68e54ca6edd623a7930bd, type: 2}
|
||||||
|
- {fileID: 2100000, guid: dfd97eb4215e074478e692d7b445f230, type: 2}
|
||||||
|
mode3:
|
||||||
|
- {fileID: 2100000, guid: 52f9a76d263cd1b41af50330bf98dc3b, type: 2}
|
||||||
|
- {fileID: 2100000, guid: a3e8c600f06162f43beb0a26c73c9da6, type: 2}
|
||||||
|
- {fileID: 2100000, guid: 2f5d8a1afc2653942a2d081786f030ba, type: 2}
|
||||||
|
- {fileID: 2100000, guid: 00a2baa094b9fce44b769bec529c91d5, type: 2}
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: daea429a3d2b94d4691152b6fd883eb8
|
||||||
|
NativeFormatImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
mainObjectFileID: 11400000
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 56fc2dd63675c1543900fde72ce6e529
|
||||||
|
folderAsset: yes
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
|
After Width: | Height: | Size: 1.8 MiB |
|
|
@ -0,0 +1,181 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 6a9d3190eb5cdc0489df434d30a4133a
|
||||||
|
TextureImporter:
|
||||||
|
internalIDToNameTable:
|
||||||
|
- first:
|
||||||
|
213: 1184034373903142886
|
||||||
|
second: Hair05_WL_0
|
||||||
|
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: 1
|
||||||
|
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: 1
|
||||||
|
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: 512
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
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
|
||||||
|
- serializedVersion: 4
|
||||||
|
buildTarget: Server
|
||||||
|
maxTextureSize: 2048
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
ignorePlatformSupport: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 4
|
||||||
|
buildTarget: Android
|
||||||
|
maxTextureSize: 2048
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
ignorePlatformSupport: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 4
|
||||||
|
buildTarget: iOS
|
||||||
|
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:
|
||||||
|
- serializedVersion: 2
|
||||||
|
name: Hair05_WL_0
|
||||||
|
rect:
|
||||||
|
serializedVersion: 2
|
||||||
|
x: 0
|
||||||
|
y: 0
|
||||||
|
width: 2048
|
||||||
|
height: 2048
|
||||||
|
alignment: 0
|
||||||
|
pivot: {x: 0, y: 0}
|
||||||
|
border: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
customData:
|
||||||
|
outline: []
|
||||||
|
physicsShape: []
|
||||||
|
tessellationDetail: -1
|
||||||
|
bones: []
|
||||||
|
spriteID: 6ef49526df88e6010800000000000000
|
||||||
|
internalID: 1184034373903142886
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
outline: []
|
||||||
|
customData:
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spriteCustomMetadata:
|
||||||
|
entries: []
|
||||||
|
nameFileIdTable: {}
|
||||||
|
mipmapLimitGroupName:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
|
After Width: | Height: | Size: 576 KiB |
|
|
@ -0,0 +1,181 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 4235527f7d07a444bab0771fe41cf038
|
||||||
|
TextureImporter:
|
||||||
|
internalIDToNameTable:
|
||||||
|
- first:
|
||||||
|
213: 496687243139375934
|
||||||
|
second: Hair05_WL_Q16_0
|
||||||
|
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: 1
|
||||||
|
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: 1
|
||||||
|
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: 512
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
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
|
||||||
|
- serializedVersion: 4
|
||||||
|
buildTarget: Server
|
||||||
|
maxTextureSize: 2048
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
ignorePlatformSupport: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 4
|
||||||
|
buildTarget: Android
|
||||||
|
maxTextureSize: 2048
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
ignorePlatformSupport: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 4
|
||||||
|
buildTarget: iOS
|
||||||
|
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:
|
||||||
|
- serializedVersion: 2
|
||||||
|
name: Hair05_WL_Q16_0
|
||||||
|
rect:
|
||||||
|
serializedVersion: 2
|
||||||
|
x: 0
|
||||||
|
y: 0
|
||||||
|
width: 2048
|
||||||
|
height: 2048
|
||||||
|
alignment: 0
|
||||||
|
pivot: {x: 0, y: 0}
|
||||||
|
border: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
customData:
|
||||||
|
outline: []
|
||||||
|
physicsShape: []
|
||||||
|
tessellationDetail: -1
|
||||||
|
bones: []
|
||||||
|
spriteID: e336ac38a6694e600800000000000000
|
||||||
|
internalID: 496687243139375934
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
outline: []
|
||||||
|
customData:
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spriteCustomMetadata:
|
||||||
|
entries: []
|
||||||
|
nameFileIdTable: {}
|
||||||
|
mipmapLimitGroupName:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
|
After Width: | Height: | Size: 2.9 MiB |
|
|
@ -0,0 +1,181 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: f03f1045ff9101246b9b1b2484f0f0a1
|
||||||
|
TextureImporter:
|
||||||
|
internalIDToNameTable:
|
||||||
|
- first:
|
||||||
|
213: -1485432940947049749
|
||||||
|
second: M05_WL_0
|
||||||
|
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: 1
|
||||||
|
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: 1
|
||||||
|
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: 512
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
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
|
||||||
|
- serializedVersion: 4
|
||||||
|
buildTarget: Server
|
||||||
|
maxTextureSize: 2048
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
ignorePlatformSupport: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 4
|
||||||
|
buildTarget: Android
|
||||||
|
maxTextureSize: 2048
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
ignorePlatformSupport: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 4
|
||||||
|
buildTarget: iOS
|
||||||
|
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:
|
||||||
|
- serializedVersion: 2
|
||||||
|
name: M05_WL_0
|
||||||
|
rect:
|
||||||
|
serializedVersion: 2
|
||||||
|
x: 0
|
||||||
|
y: 0
|
||||||
|
width: 2048
|
||||||
|
height: 2048
|
||||||
|
alignment: 0
|
||||||
|
pivot: {x: 0, y: 0}
|
||||||
|
border: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
customData:
|
||||||
|
outline: []
|
||||||
|
physicsShape: []
|
||||||
|
tessellationDetail: -1
|
||||||
|
bones: []
|
||||||
|
spriteID: be2ff214c9ea26be0800000000000000
|
||||||
|
internalID: -1485432940947049749
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
outline: []
|
||||||
|
customData:
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spriteCustomMetadata:
|
||||||
|
entries: []
|
||||||
|
nameFileIdTable: {}
|
||||||
|
mipmapLimitGroupName:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
|
After Width: | Height: | Size: 1.1 MiB |
|
|
@ -0,0 +1,181 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: ae7a4f30ca95e6b418b60a81d4fdeb97
|
||||||
|
TextureImporter:
|
||||||
|
internalIDToNameTable:
|
||||||
|
- first:
|
||||||
|
213: -8570201871213448859
|
||||||
|
second: M05_WL_Q16_0
|
||||||
|
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: 1
|
||||||
|
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: 1
|
||||||
|
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: 512
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
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
|
||||||
|
- serializedVersion: 4
|
||||||
|
buildTarget: Server
|
||||||
|
maxTextureSize: 2048
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
ignorePlatformSupport: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 4
|
||||||
|
buildTarget: Android
|
||||||
|
maxTextureSize: 2048
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
ignorePlatformSupport: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 4
|
||||||
|
buildTarget: iOS
|
||||||
|
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:
|
||||||
|
- serializedVersion: 2
|
||||||
|
name: M05_WL_Q16_0
|
||||||
|
rect:
|
||||||
|
serializedVersion: 2
|
||||||
|
x: 0
|
||||||
|
y: 0
|
||||||
|
width: 2048
|
||||||
|
height: 2048
|
||||||
|
alignment: 0
|
||||||
|
pivot: {x: 0, y: 0}
|
||||||
|
border: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
customData:
|
||||||
|
outline: []
|
||||||
|
physicsShape: []
|
||||||
|
tessellationDetail: -1
|
||||||
|
bones: []
|
||||||
|
spriteID: 5613fe41ec6801980800000000000000
|
||||||
|
internalID: -8570201871213448859
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
outline: []
|
||||||
|
customData:
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spriteCustomMetadata:
|
||||||
|
entries: []
|
||||||
|
nameFileIdTable: {}
|
||||||
|
mipmapLimitGroupName:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
|
After Width: | Height: | Size: 1.6 MiB |
|
|
@ -0,0 +1,181 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 4359b5dd70e7908468980cfaaf66f86f
|
||||||
|
TextureImporter:
|
||||||
|
internalIDToNameTable:
|
||||||
|
- first:
|
||||||
|
213: 1530207184210255884
|
||||||
|
second: Skin_WL_0
|
||||||
|
externalObjects: {}
|
||||||
|
serializedVersion: 13
|
||||||
|
mipmaps:
|
||||||
|
mipMapMode: 0
|
||||||
|
enableMipMap: 0
|
||||||
|
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: 1
|
||||||
|
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: 1
|
||||||
|
wrapV: 1
|
||||||
|
wrapW: 1
|
||||||
|
nPOTScale: 0
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 1
|
||||||
|
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: 1
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 2
|
||||||
|
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: 512
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
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
|
||||||
|
- serializedVersion: 4
|
||||||
|
buildTarget: Server
|
||||||
|
maxTextureSize: 2048
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
ignorePlatformSupport: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 4
|
||||||
|
buildTarget: Android
|
||||||
|
maxTextureSize: 2048
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
ignorePlatformSupport: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 4
|
||||||
|
buildTarget: iOS
|
||||||
|
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:
|
||||||
|
- serializedVersion: 2
|
||||||
|
name: Skin_WL_0
|
||||||
|
rect:
|
||||||
|
serializedVersion: 2
|
||||||
|
x: 0
|
||||||
|
y: 0
|
||||||
|
width: 4096
|
||||||
|
height: 4096
|
||||||
|
alignment: 0
|
||||||
|
pivot: {x: 0, y: 0}
|
||||||
|
border: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
customData:
|
||||||
|
outline: []
|
||||||
|
physicsShape: []
|
||||||
|
tessellationDetail: -1
|
||||||
|
bones: []
|
||||||
|
spriteID: c006a9f93536c3510800000000000000
|
||||||
|
internalID: 1530207184210255884
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
outline: []
|
||||||
|
customData:
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spriteCustomMetadata:
|
||||||
|
entries: []
|
||||||
|
nameFileIdTable: {}
|
||||||
|
mipmapLimitGroupName:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
|
After Width: | Height: | Size: 715 KiB |
|
|
@ -0,0 +1,181 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 1ebf7cf3959e1af4f942ac0c46efd2f9
|
||||||
|
TextureImporter:
|
||||||
|
internalIDToNameTable:
|
||||||
|
- first:
|
||||||
|
213: -2745243972080687516
|
||||||
|
second: Skin_WL_Q16_0
|
||||||
|
externalObjects: {}
|
||||||
|
serializedVersion: 13
|
||||||
|
mipmaps:
|
||||||
|
mipMapMode: 0
|
||||||
|
enableMipMap: 0
|
||||||
|
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: 1
|
||||||
|
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: 1
|
||||||
|
wrapV: 1
|
||||||
|
wrapW: 1
|
||||||
|
nPOTScale: 0
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 1
|
||||||
|
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: 1
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 2
|
||||||
|
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: 512
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
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
|
||||||
|
- serializedVersion: 4
|
||||||
|
buildTarget: Server
|
||||||
|
maxTextureSize: 2048
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
ignorePlatformSupport: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 4
|
||||||
|
buildTarget: Android
|
||||||
|
maxTextureSize: 2048
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
ignorePlatformSupport: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 4
|
||||||
|
buildTarget: iOS
|
||||||
|
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:
|
||||||
|
- serializedVersion: 2
|
||||||
|
name: Skin_WL_Q16_0
|
||||||
|
rect:
|
||||||
|
serializedVersion: 2
|
||||||
|
x: 0
|
||||||
|
y: 0
|
||||||
|
width: 4096
|
||||||
|
height: 4096
|
||||||
|
alignment: 0
|
||||||
|
pivot: {x: 0, y: 0}
|
||||||
|
border: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
customData:
|
||||||
|
outline: []
|
||||||
|
physicsShape: []
|
||||||
|
tessellationDetail: -1
|
||||||
|
bones: []
|
||||||
|
spriteID: 466295ef62fe6e9d0800000000000000
|
||||||
|
internalID: -2745243972080687516
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
outline: []
|
||||||
|
customData:
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spriteCustomMetadata:
|
||||||
|
entries: []
|
||||||
|
nameFileIdTable: {}
|
||||||
|
mipmapLimitGroupName:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
|
After Width: | Height: | Size: 128 KiB |
|
|
@ -0,0 +1,181 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 568237bb7e42c254ab3189ae52c11c67
|
||||||
|
TextureImporter:
|
||||||
|
internalIDToNameTable:
|
||||||
|
- first:
|
||||||
|
213: 3752438157011194587
|
||||||
|
second: face02_WL_0
|
||||||
|
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: 1
|
||||||
|
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: 1
|
||||||
|
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: 2
|
||||||
|
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: 512
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
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
|
||||||
|
- serializedVersion: 4
|
||||||
|
buildTarget: Server
|
||||||
|
maxTextureSize: 2048
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
ignorePlatformSupport: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 4
|
||||||
|
buildTarget: Android
|
||||||
|
maxTextureSize: 2048
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
ignorePlatformSupport: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 4
|
||||||
|
buildTarget: iOS
|
||||||
|
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:
|
||||||
|
- serializedVersion: 2
|
||||||
|
name: face02_WL_0
|
||||||
|
rect:
|
||||||
|
serializedVersion: 2
|
||||||
|
x: 0
|
||||||
|
y: 0
|
||||||
|
width: 2048
|
||||||
|
height: 2048
|
||||||
|
alignment: 0
|
||||||
|
pivot: {x: 0, y: 0}
|
||||||
|
border: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
customData:
|
||||||
|
outline: []
|
||||||
|
physicsShape: []
|
||||||
|
tessellationDetail: -1
|
||||||
|
bones: []
|
||||||
|
spriteID: bd2164e5f96531430800000000000000
|
||||||
|
internalID: 3752438157011194587
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
outline: []
|
||||||
|
customData:
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spriteCustomMetadata:
|
||||||
|
entries: []
|
||||||
|
nameFileIdTable: {}
|
||||||
|
mipmapLimitGroupName:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
|
After Width: | Height: | Size: 124 KiB |
|
|
@ -0,0 +1,181 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: c56889884f56b34428d7a41bf8650d2e
|
||||||
|
TextureImporter:
|
||||||
|
internalIDToNameTable:
|
||||||
|
- first:
|
||||||
|
213: 8924889074970286261
|
||||||
|
second: face02_WL_Q16_0
|
||||||
|
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: 1
|
||||||
|
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: 1
|
||||||
|
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: 2
|
||||||
|
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: 512
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
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
|
||||||
|
- serializedVersion: 4
|
||||||
|
buildTarget: Server
|
||||||
|
maxTextureSize: 2048
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
ignorePlatformSupport: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 4
|
||||||
|
buildTarget: Android
|
||||||
|
maxTextureSize: 2048
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
ignorePlatformSupport: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 4
|
||||||
|
buildTarget: iOS
|
||||||
|
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:
|
||||||
|
- serializedVersion: 2
|
||||||
|
name: face02_WL_Q16_0
|
||||||
|
rect:
|
||||||
|
serializedVersion: 2
|
||||||
|
x: 0
|
||||||
|
y: 0
|
||||||
|
width: 2048
|
||||||
|
height: 2048
|
||||||
|
alignment: 0
|
||||||
|
pivot: {x: 0, y: 0}
|
||||||
|
border: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
customData:
|
||||||
|
outline: []
|
||||||
|
physicsShape: []
|
||||||
|
tessellationDetail: -1
|
||||||
|
bones: []
|
||||||
|
spriteID: 5b85e5dd3539bdb70800000000000000
|
||||||
|
internalID: 8924889074970286261
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
outline: []
|
||||||
|
customData:
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spriteCustomMetadata:
|
||||||
|
entries: []
|
||||||
|
nameFileIdTable: {}
|
||||||
|
mipmapLimitGroupName:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
|
|
@ -0,0 +1,106 @@
|
||||||
|
// ─────────────────────────────────────────────────────────────────────────────
|
||||||
|
// WLCharacterLook.cs — 캐릭터 머티리얼을 모드에 맞게 갈아끼운다 (WL-814s)
|
||||||
|
//
|
||||||
|
// PD 지시 #814 · 발주서 WL-814s §1-5
|
||||||
|
//
|
||||||
|
// ■ 무엇을 하나
|
||||||
|
// 프리팹(LH_M05)은 기본 모드의 머티리얼을 들고 있다. 이 컴포넌트가 Awake 에서
|
||||||
|
// SO(WLCharacterLookSettings) 를 읽어 「지금 모드」의 머티리얼로 맞춘다.
|
||||||
|
// enabled_ = 0 · mode = 0 이면 **원본 머티리얼로 되돌린다**(되돌리기 스위치).
|
||||||
|
//
|
||||||
|
// ■ 어떻게 맞추나 (프리팹이 무엇을 들고 있든 결과가 같다 = 멱등)
|
||||||
|
// SO 의 4개 배열(originals · mode1 · mode2 · mode3)은 같은 길이·같은 순서다.
|
||||||
|
// 렌더러가 들고 있는 머티리얼이 어느 배열의 i번이든, 목표 배열의 i번으로 바꾼다.
|
||||||
|
// 표에 없는 머티리얼(무기 등)은 건드리지 않는다.
|
||||||
|
//
|
||||||
|
// ■ 성능 / GC
|
||||||
|
// Awake 1회. 렌더러 수만큼만 돈다(LH_M05 = 7). 바뀔 것이 없으면 배열 대입도 하지 않는다.
|
||||||
|
//
|
||||||
|
// 🔴 Debug.LogError / Debug.LogException 을 쓰지 않는다(813z 규칙).
|
||||||
|
// ─────────────────────────────────────────────────────────────────────────────
|
||||||
|
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
namespace WL.Look.Character
|
||||||
|
{
|
||||||
|
[DisallowMultipleComponent]
|
||||||
|
public class WLCharacterLook : MonoBehaviour
|
||||||
|
{
|
||||||
|
// 진단(프로브가 읽는다)
|
||||||
|
public static int AppliedRenderers, AppliedSlots, LastMode = -1;
|
||||||
|
public static string LastLog = "";
|
||||||
|
|
||||||
|
static readonly List<Renderer> s_buf = new List<Renderer>(16);
|
||||||
|
|
||||||
|
void Awake() { Apply(gameObject); }
|
||||||
|
|
||||||
|
/// <summary>SO 가 지시하는 모드로 맞춘다.</summary>
|
||||||
|
public static void Apply(GameObject root)
|
||||||
|
{
|
||||||
|
var cfg = WLCharacterLookSettings.Instance;
|
||||||
|
if (cfg == null || root == null) return;
|
||||||
|
ApplyMode(root, WLCharacterLookSettings.ActiveMode, cfg);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>모드를 직접 지정해 맞춘다(캡처·프로브·A/B 용).</summary>
|
||||||
|
public static void ApplyMode(GameObject root, int mode, WLCharacterLookSettings cfg)
|
||||||
|
{
|
||||||
|
if (root == null) return;
|
||||||
|
if (cfg == null) cfg = WLCharacterLookSettings.Instance;
|
||||||
|
if (cfg == null || cfg.originals == null || cfg.originals.Length == 0) return;
|
||||||
|
|
||||||
|
Material[] target = cfg.SetForMode(mode);
|
||||||
|
if (target == null) return;
|
||||||
|
|
||||||
|
int n = cfg.originals.Length;
|
||||||
|
int renderers = 0, slots = 0;
|
||||||
|
|
||||||
|
s_buf.Clear();
|
||||||
|
root.GetComponentsInChildren<Renderer>(true, s_buf);
|
||||||
|
for (int ri = 0; ri < s_buf.Count; ri++)
|
||||||
|
{
|
||||||
|
var r = s_buf[ri];
|
||||||
|
if (r == null) continue;
|
||||||
|
var mats = r.sharedMaterials;
|
||||||
|
if (mats == null || mats.Length == 0) continue;
|
||||||
|
|
||||||
|
bool changed = false;
|
||||||
|
for (int si = 0; si < mats.Length; si++)
|
||||||
|
{
|
||||||
|
int idx = IndexOf(cfg, mats[si], n);
|
||||||
|
if (idx < 0) continue;
|
||||||
|
var want = target[idx];
|
||||||
|
if (want == null || mats[si] == want) continue;
|
||||||
|
mats[si] = want;
|
||||||
|
changed = true;
|
||||||
|
slots++;
|
||||||
|
}
|
||||||
|
if (changed) { r.sharedMaterials = mats; renderers++; }
|
||||||
|
}
|
||||||
|
|
||||||
|
AppliedRenderers = renderers; AppliedSlots = slots; LastMode = mode;
|
||||||
|
LastLog = "mode " + mode + " · 렌더러 " + renderers + " · 슬롯 " + slots;
|
||||||
|
if (cfg.verboseLog != 0) Debug.Log("[WL814s CharacterLook] " + LastLog);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>머티리얼이 4개 배열 중 어디의 몇 번인지(없으면 -1).</summary>
|
||||||
|
static int IndexOf(WLCharacterLookSettings c, Material m, int n)
|
||||||
|
{
|
||||||
|
if (m == null) return -1;
|
||||||
|
for (int i = 0; i < n; i++)
|
||||||
|
{
|
||||||
|
if (Same(c.originals, i, m)) return i;
|
||||||
|
if (Same(c.mode1, i, m)) return i;
|
||||||
|
if (Same(c.mode2, i, m)) return i;
|
||||||
|
if (Same(c.mode3, i, m)) return i;
|
||||||
|
}
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
static bool Same(Material[] a, int i, Material m)
|
||||||
|
{
|
||||||
|
return a != null && i < a.Length && a[i] != null && a[i] == m;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,2 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: a645824e9a9c1c146a7fc5e5fdb2a515
|
||||||
|
|
@ -0,0 +1,81 @@
|
||||||
|
// ─────────────────────────────────────────────────────────────────────────────
|
||||||
|
// WLCharacterLookSettings.cs — 캐릭터 룩(배경과 같은 Toon) 되돌리기 스위치 (WL-814s)
|
||||||
|
//
|
||||||
|
// PD 지시 #814 · 발주서 WL-814s §1-5
|
||||||
|
//
|
||||||
|
// enabled_ = 0 → 원본 머티리얼 100 % (프리팹이 무엇을 들고 있든 런타임에 원본으로 되돌린다)
|
||||||
|
// mode 0 = 원본 · 1 = 셰이더만 · 2 = 셰이더+텍스처 축소 · 3 = 전부(+평탄화)
|
||||||
|
//
|
||||||
|
// 🔴 이 SO 는 「어떤 머티리얼을 쓸지」만 들고 있다. 머티리얼 파일 자체에는 아무 값도 쓰지 않는다.
|
||||||
|
// 🔴 originals 는 반드시 채워 둔다 — 프리팹이 새 머티리얼을 들고 있으므로 이 배열이
|
||||||
|
// 유일한 원본 참조다(잃어버리면 되돌리기가 깨진다).
|
||||||
|
// 🔴 Assets/WL/Look/Character/ 에 .asmdef 를 만들지 말 것.
|
||||||
|
// 🔴 Debug.LogError / Debug.LogException 을 쓰지 않는다(813z 규칙).
|
||||||
|
// ─────────────────────────────────────────────────────────────────────────────
|
||||||
|
|
||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
namespace WL.Look.Character
|
||||||
|
{
|
||||||
|
public class WLCharacterLookSettings : ScriptableObject
|
||||||
|
{
|
||||||
|
[Header("스위치")]
|
||||||
|
[Tooltip("0 이면 원본 머티리얼 100 % (이 기능 전체 off)")]
|
||||||
|
public int enabled_ = 1;
|
||||||
|
|
||||||
|
[Tooltip("0 = 원본 · 1 = 셰이더만 · 2 = 셰이더+텍스처 축소 · 3 = 전부(축소+평탄화)")]
|
||||||
|
public int mode = 1;
|
||||||
|
|
||||||
|
[Tooltip("1 이면 적용 내역을 로그로 남긴다")]
|
||||||
|
public int verboseLog = 0;
|
||||||
|
|
||||||
|
[Header("머티리얼 표 (같은 인덱스끼리 짝)")]
|
||||||
|
public Material[] originals; // 원본 (Toon/Toon · Unlit/Transparent)
|
||||||
|
public Material[] mode1; // Shader Graphs/Toon + 원본 텍스처
|
||||||
|
public Material[] mode2; // Shader Graphs/Toon + 축소 텍스처
|
||||||
|
public Material[] mode3; // Shader Graphs/Toon + 축소·평탄화 텍스처
|
||||||
|
|
||||||
|
// ───────────────────────────────────────── 싱글턴(Resources)
|
||||||
|
public const string ResourcePath = "WL/WLCharacterLookSettings";
|
||||||
|
static WLCharacterLookSettings s_inst;
|
||||||
|
static bool s_tried;
|
||||||
|
|
||||||
|
public static WLCharacterLookSettings Instance
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
if (s_inst == null && !s_tried)
|
||||||
|
{
|
||||||
|
s_tried = true;
|
||||||
|
s_inst = Resources.Load<WLCharacterLookSettings>(ResourcePath);
|
||||||
|
}
|
||||||
|
return s_inst;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>프로브·에디터에서 SO 를 바꿔 끼웠을 때 다시 읽게 한다.</summary>
|
||||||
|
public static void Invalidate() { s_inst = null; s_tried = false; }
|
||||||
|
|
||||||
|
public static bool Enabled
|
||||||
|
{
|
||||||
|
get { var c = Instance; return c != null && c.enabled_ != 0; }
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>지금 적용해야 할 모드(스위치가 꺼져 있으면 0 = 원본).</summary>
|
||||||
|
public static int ActiveMode
|
||||||
|
{
|
||||||
|
get { var c = Instance; if (c == null || c.enabled_ == 0) return 0; return Mathf.Clamp(c.mode, 0, 3); }
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>모드에 해당하는 머티리얼 배열(없으면 originals).</summary>
|
||||||
|
public Material[] SetForMode(int m)
|
||||||
|
{
|
||||||
|
Material[] a = null;
|
||||||
|
if (m == 1) a = mode1;
|
||||||
|
else if (m == 2) a = mode2;
|
||||||
|
else if (m == 3) a = mode3;
|
||||||
|
if (a == null || originals == null || a.Length != originals.Length) return originals;
|
||||||
|
return a;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,2 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: a73e6c94f1ba0454f871a7a7b28c4263
|
||||||