initial commit
This commit is contained in:
@@ -0,0 +1,6 @@
|
|||||||
|
{
|
||||||
|
"version": "1.0",
|
||||||
|
"components": [
|
||||||
|
"Microsoft.VisualStudio.Workload.ManagedGame"
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 23371cc964348c240b759eeeeb4d63aa
|
||||||
|
folderAsset: yes
|
||||||
|
DefaultImporter:
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 2a9e9df3c14e9034eb587348635c8f09
|
||||||
|
folderAsset: yes
|
||||||
|
DefaultImporter:
|
||||||
|
userData:
|
||||||
@@ -0,0 +1,65 @@
|
|||||||
|
using System.Collections.Generic;
|
||||||
|
using UnityEditor;
|
||||||
|
using UnityEditor.UI;
|
||||||
|
|
||||||
|
namespace HSVPicker.Editors
|
||||||
|
{
|
||||||
|
[CustomEditor(typeof(BoxSlider), true)]
|
||||||
|
[CanEditMultipleObjects]
|
||||||
|
public class BoxSliderEditor : SelectableEditor
|
||||||
|
{
|
||||||
|
|
||||||
|
SerializedProperty m_HandleRect;
|
||||||
|
SerializedProperty m_MinValue;
|
||||||
|
SerializedProperty m_MaxValue;
|
||||||
|
SerializedProperty m_WholeNumbers;
|
||||||
|
SerializedProperty m_Value;
|
||||||
|
SerializedProperty m_ValueY;
|
||||||
|
SerializedProperty m_OnValueChanged;
|
||||||
|
|
||||||
|
protected override void OnEnable()
|
||||||
|
{
|
||||||
|
base.OnEnable();
|
||||||
|
m_HandleRect = serializedObject.FindProperty("m_HandleRect");
|
||||||
|
|
||||||
|
m_MinValue = serializedObject.FindProperty("m_MinValue");
|
||||||
|
m_MaxValue = serializedObject.FindProperty("m_MaxValue");
|
||||||
|
m_WholeNumbers = serializedObject.FindProperty("m_WholeNumbers");
|
||||||
|
m_Value = serializedObject.FindProperty("m_Value");
|
||||||
|
m_ValueY = serializedObject.FindProperty("m_ValueY");
|
||||||
|
m_OnValueChanged = serializedObject.FindProperty("m_OnValueChanged");
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void OnInspectorGUI()
|
||||||
|
{
|
||||||
|
base.OnInspectorGUI();
|
||||||
|
EditorGUILayout.Space();
|
||||||
|
|
||||||
|
serializedObject.Update();
|
||||||
|
|
||||||
|
EditorGUILayout.PropertyField(m_HandleRect);
|
||||||
|
|
||||||
|
if (m_HandleRect.objectReferenceValue != null)
|
||||||
|
{
|
||||||
|
EditorGUI.BeginChangeCheck();
|
||||||
|
|
||||||
|
|
||||||
|
EditorGUILayout.PropertyField(m_MinValue);
|
||||||
|
EditorGUILayout.PropertyField(m_MaxValue);
|
||||||
|
EditorGUILayout.PropertyField(m_WholeNumbers);
|
||||||
|
EditorGUILayout.Slider(m_Value, m_MinValue.floatValue, m_MaxValue.floatValue);
|
||||||
|
EditorGUILayout.Slider(m_ValueY, m_MinValue.floatValue, m_MaxValue.floatValue);
|
||||||
|
|
||||||
|
// Draw the event notification options
|
||||||
|
EditorGUILayout.Space();
|
||||||
|
EditorGUILayout.PropertyField(m_OnValueChanged);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
EditorGUILayout.HelpBox("Specify a RectTransform for the slider fill or the slider handle or both. Each must have a parent RectTransform that it can slide within.", MessageType.Info);
|
||||||
|
}
|
||||||
|
|
||||||
|
serializedObject.ApplyModifiedProperties();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 8701e045b26e51f4eb345f2ccb3c13f5
|
||||||
|
timeCreated: 1426804458
|
||||||
|
licenseType: Free
|
||||||
|
MonoImporter:
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,17 @@
|
|||||||
|
{
|
||||||
|
"name": "HSVPicker.Editors",
|
||||||
|
"references": [
|
||||||
|
"HSVPicker"
|
||||||
|
],
|
||||||
|
"includePlatforms": [
|
||||||
|
"Editor"
|
||||||
|
],
|
||||||
|
"excludePlatforms": [],
|
||||||
|
"allowUnsafeCode": false,
|
||||||
|
"overrideReferences": false,
|
||||||
|
"precompiledReferences": [],
|
||||||
|
"autoReferenced": true,
|
||||||
|
"defineConstraints": [],
|
||||||
|
"versionDefines": [],
|
||||||
|
"noEngineReferences": false
|
||||||
|
}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 485edc8694d264a8fb6d3a830531425d
|
||||||
|
AssemblyDefinitionImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 5d3904d3d18ddd544820bd8518990fee
|
||||||
|
folderAsset: yes
|
||||||
|
timeCreated: 1442586617
|
||||||
|
licenseType: Free
|
||||||
|
DefaultImporter:
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
public enum ColorValues
|
||||||
|
{
|
||||||
|
R,
|
||||||
|
G,
|
||||||
|
B,
|
||||||
|
A,
|
||||||
|
|
||||||
|
Hue,
|
||||||
|
Saturation,
|
||||||
|
Value
|
||||||
|
}
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 859a1720e083e504cb68917f781e87c7
|
||||||
|
timeCreated: 1442586608
|
||||||
|
licenseType: Free
|
||||||
|
MonoImporter:
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 6bb0d49c64210014e9a24ed9345928c2
|
||||||
|
folderAsset: yes
|
||||||
|
timeCreated: 1442747310
|
||||||
|
licenseType: Free
|
||||||
|
DefaultImporter:
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
using UnityEngine;
|
||||||
|
using System;
|
||||||
|
using UnityEngine.Events;
|
||||||
|
|
||||||
|
[Serializable]
|
||||||
|
public class ColorChangedEvent : UnityEvent<Color>
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: ff46fbecea7739f4690e4285c88f53c5
|
||||||
|
MonoImporter:
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
@@ -0,0 +1,6 @@
|
|||||||
|
using UnityEngine.Events;
|
||||||
|
|
||||||
|
public class HSVChangedEvent : UnityEvent<float, float, float>
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 3d95ce8fba3dbbf4eb14411412169b88
|
||||||
|
timeCreated: 1442747317
|
||||||
|
licenseType: Free
|
||||||
|
MonoImporter:
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,15 @@
|
|||||||
|
{
|
||||||
|
"name": "HSVPicker",
|
||||||
|
"references": [
|
||||||
|
"GUID:6055be8ebefd69e48b49212b09b47b2f"
|
||||||
|
],
|
||||||
|
"includePlatforms": [],
|
||||||
|
"excludePlatforms": [],
|
||||||
|
"allowUnsafeCode": false,
|
||||||
|
"overrideReferences": false,
|
||||||
|
"precompiledReferences": [],
|
||||||
|
"autoReferenced": true,
|
||||||
|
"defineConstraints": [],
|
||||||
|
"versionDefines": [],
|
||||||
|
"noEngineReferences": false
|
||||||
|
}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 413a95a52ca644b7dac76988ad8915af
|
||||||
|
AssemblyDefinitionImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 916ee089a0d7b63419075f91e1c657ec
|
||||||
|
timeCreated: 1442747914
|
||||||
|
licenseType: Free
|
||||||
|
NativeFormatImporter:
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,28 @@
|
|||||||
|
HSV color picker using Unity UI.
|
||||||
|
Github https://github.com/judah4/HSV-Color-Picker-Unity
|
||||||
|
|
||||||
|
Usage:
|
||||||
|
Drag picker prefab onto a UI canvas.
|
||||||
|
|
||||||
|
Setup:
|
||||||
|
On the color picker setup section.
|
||||||
|
|
||||||
|
Show Rgb: Show RGB sliders.
|
||||||
|
|
||||||
|
Show Hsv: Show HSV sliders.
|
||||||
|
|
||||||
|
Show Alpha: Show the alpha slider.
|
||||||
|
|
||||||
|
Show Color Box: Show the larger color selection box and color column.
|
||||||
|
|
||||||
|
Show Color Slider Toggle: Show the button to toggle the HSV and RGB sliders.
|
||||||
|
|
||||||
|
Show Header: Options to show the top header with color preview and hex code.
|
||||||
|
* Hide: Hide the top header.
|
||||||
|
* Show Color: Show only the color preview in the header.
|
||||||
|
* Show Color Code: Show only the color code in the header.
|
||||||
|
* Show All: Show the entire top header.
|
||||||
|
|
||||||
|
Color Presets:
|
||||||
|
The prefabs starts with 4 colors in the color presets. This can be updated in the Setup section of the picker prefab.
|
||||||
|
Set the Preset Colors Id for different shared list between color pickers.
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 78aa9aa1471451045b0f2f552ad0c361
|
||||||
|
TextScriptImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 2b5fe4e314cbd9944bcaa93e814e9bd5
|
||||||
|
folderAsset: yes
|
||||||
|
timeCreated: 1442586536
|
||||||
|
licenseType: Free
|
||||||
|
DefaultImporter:
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,30 @@
|
|||||||
|
using UnityEngine;
|
||||||
|
using UnityEngine.UI;
|
||||||
|
|
||||||
|
namespace HSVPicker
|
||||||
|
{
|
||||||
|
[RequireComponent(typeof(Image))]
|
||||||
|
public class ColorImage : MonoBehaviour
|
||||||
|
{
|
||||||
|
public ColorPicker picker;
|
||||||
|
|
||||||
|
private Image image;
|
||||||
|
|
||||||
|
private void Awake()
|
||||||
|
{
|
||||||
|
image = GetComponent<Image>();
|
||||||
|
picker.onValueChanged.AddListener(ColorChanged);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnDestroy()
|
||||||
|
{
|
||||||
|
picker.onValueChanged.RemoveListener(ColorChanged);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ColorChanged(Color newColor)
|
||||||
|
{
|
||||||
|
image.color = newColor;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 6bca58eb07ad66b498a2f158bcb13225
|
||||||
|
timeCreated: 1442675622
|
||||||
|
licenseType: Free
|
||||||
|
MonoImporter:
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,92 @@
|
|||||||
|
using UnityEngine;
|
||||||
|
using UnityEngine.UI;
|
||||||
|
using TMPro;
|
||||||
|
|
||||||
|
namespace HSVPicker
|
||||||
|
{
|
||||||
|
|
||||||
|
[RequireComponent(typeof(TMP_Text))]
|
||||||
|
public class ColorLabel : MonoBehaviour
|
||||||
|
{
|
||||||
|
public ColorPicker picker;
|
||||||
|
|
||||||
|
public ColorValues type;
|
||||||
|
|
||||||
|
public string prefix = "R: ";
|
||||||
|
public float minValue = 0;
|
||||||
|
public float maxValue = 255;
|
||||||
|
|
||||||
|
public int precision = 0;
|
||||||
|
|
||||||
|
[SerializeField, HideInInspector]
|
||||||
|
private TMP_Text label;
|
||||||
|
|
||||||
|
private void Awake()
|
||||||
|
{
|
||||||
|
label = GetComponent<TMP_Text>();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnEnable()
|
||||||
|
{
|
||||||
|
if (Application.isPlaying && picker != null)
|
||||||
|
{
|
||||||
|
picker.onValueChanged.AddListener(ColorChanged);
|
||||||
|
picker.onHSVChanged.AddListener(HSVChanged);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnDestroy()
|
||||||
|
{
|
||||||
|
if (picker != null)
|
||||||
|
{
|
||||||
|
picker.onValueChanged.RemoveListener(ColorChanged);
|
||||||
|
picker.onHSVChanged.RemoveListener(HSVChanged);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#if UNITY_EDITOR
|
||||||
|
private void OnValidate()
|
||||||
|
{
|
||||||
|
label = GetComponent<TMP_Text>();
|
||||||
|
UpdateValue();
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
private void ColorChanged(Color color)
|
||||||
|
{
|
||||||
|
UpdateValue();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void HSVChanged(float hue, float sateration, float value)
|
||||||
|
{
|
||||||
|
UpdateValue();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void UpdateValue()
|
||||||
|
{
|
||||||
|
if(label == null)
|
||||||
|
return;
|
||||||
|
|
||||||
|
if (picker == null)
|
||||||
|
{
|
||||||
|
label.text = prefix + "-";
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
float value = minValue + (picker.GetValue(type) * (maxValue - minValue));
|
||||||
|
|
||||||
|
label.text = prefix + ConvertToDisplayString(value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private string ConvertToDisplayString(float value)
|
||||||
|
{
|
||||||
|
if (precision > 0)
|
||||||
|
return value.ToString("f " + precision);
|
||||||
|
else
|
||||||
|
return Mathf.FloorToInt(value).ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 6b10e832a32d2d14facd8a3f489ee8d6
|
||||||
|
timeCreated: 1442587803
|
||||||
|
licenseType: Free
|
||||||
|
MonoImporter:
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,306 @@
|
|||||||
|
using UnityEngine;
|
||||||
|
namespace HSVPicker
|
||||||
|
{
|
||||||
|
public class ColorPicker : MonoBehaviour
|
||||||
|
{
|
||||||
|
|
||||||
|
private float _hue = 0;
|
||||||
|
private float _saturation = 0;
|
||||||
|
private float _brightness = 0;
|
||||||
|
|
||||||
|
[SerializeField]
|
||||||
|
private Color _color = Color.red;
|
||||||
|
|
||||||
|
[Header("Setup")]
|
||||||
|
public ColorPickerSetup Setup;
|
||||||
|
|
||||||
|
[Header("Event")]
|
||||||
|
public ColorChangedEvent onValueChanged = new ColorChangedEvent();
|
||||||
|
public HSVChangedEvent onHSVChanged = new HSVChangedEvent();
|
||||||
|
|
||||||
|
public Color CurrentColor
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return _color;
|
||||||
|
}
|
||||||
|
set
|
||||||
|
{
|
||||||
|
if (CurrentColor == value)
|
||||||
|
return;
|
||||||
|
|
||||||
|
_color = value;
|
||||||
|
|
||||||
|
RGBChanged();
|
||||||
|
|
||||||
|
SendChangedEvent();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void Start()
|
||||||
|
{
|
||||||
|
Setup.AlphaSlidiers.Toggle(Setup.ShowAlpha);
|
||||||
|
Setup.ColorToggleElement.Toggle(Setup.ShowColorSliderToggle);
|
||||||
|
Setup.RgbSliders.Toggle(Setup.ShowRgb);
|
||||||
|
Setup.HsvSliders.Toggle(Setup.ShowHsv);
|
||||||
|
Setup.ColorBox.Toggle(Setup.ShowColorBox);
|
||||||
|
|
||||||
|
HandleHeaderSetting(Setup.ShowHeader);
|
||||||
|
UpdateColorToggleText();
|
||||||
|
|
||||||
|
RGBChanged();
|
||||||
|
SendChangedEvent();
|
||||||
|
}
|
||||||
|
|
||||||
|
public float H
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return _hue;
|
||||||
|
}
|
||||||
|
set
|
||||||
|
{
|
||||||
|
if (_hue == value)
|
||||||
|
return;
|
||||||
|
|
||||||
|
_hue = value;
|
||||||
|
|
||||||
|
HSVChanged();
|
||||||
|
|
||||||
|
SendChangedEvent();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public float S
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return _saturation;
|
||||||
|
}
|
||||||
|
set
|
||||||
|
{
|
||||||
|
if (_saturation == value)
|
||||||
|
return;
|
||||||
|
|
||||||
|
_saturation = value;
|
||||||
|
|
||||||
|
HSVChanged();
|
||||||
|
|
||||||
|
SendChangedEvent();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public float V
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return _brightness;
|
||||||
|
}
|
||||||
|
set
|
||||||
|
{
|
||||||
|
if (_brightness == value)
|
||||||
|
return;
|
||||||
|
|
||||||
|
_brightness = value;
|
||||||
|
|
||||||
|
HSVChanged();
|
||||||
|
|
||||||
|
SendChangedEvent();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public float R
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return _color.r;
|
||||||
|
}
|
||||||
|
set
|
||||||
|
{
|
||||||
|
if (_color.r == value)
|
||||||
|
return;
|
||||||
|
|
||||||
|
_color.r = value;
|
||||||
|
|
||||||
|
RGBChanged();
|
||||||
|
|
||||||
|
SendChangedEvent();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public float G
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return _color.g;
|
||||||
|
}
|
||||||
|
set
|
||||||
|
{
|
||||||
|
if (_color.g == value)
|
||||||
|
return;
|
||||||
|
|
||||||
|
_color.g = value;
|
||||||
|
|
||||||
|
RGBChanged();
|
||||||
|
|
||||||
|
SendChangedEvent();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public float B
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return _color.b;
|
||||||
|
}
|
||||||
|
set
|
||||||
|
{
|
||||||
|
if (_color.b == value)
|
||||||
|
return;
|
||||||
|
|
||||||
|
_color.b = value;
|
||||||
|
|
||||||
|
RGBChanged();
|
||||||
|
|
||||||
|
SendChangedEvent();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private float A
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return _color.a;
|
||||||
|
}
|
||||||
|
set
|
||||||
|
{
|
||||||
|
if (_color.a == value)
|
||||||
|
return;
|
||||||
|
|
||||||
|
_color.a = value;
|
||||||
|
|
||||||
|
SendChangedEvent();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void RGBChanged()
|
||||||
|
{
|
||||||
|
HsvColor color = HSVUtil.ConvertRgbToHsv(CurrentColor);
|
||||||
|
|
||||||
|
_hue = color.normalizedH;
|
||||||
|
_saturation = color.normalizedS;
|
||||||
|
_brightness = color.normalizedV;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void HSVChanged()
|
||||||
|
{
|
||||||
|
Color color = HSVUtil.ConvertHsvToRgb(_hue * 360, _saturation, _brightness, _color.a);
|
||||||
|
|
||||||
|
_color = color;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void SendChangedEvent()
|
||||||
|
{
|
||||||
|
onValueChanged.Invoke(CurrentColor);
|
||||||
|
onHSVChanged.Invoke(_hue, _saturation, _brightness);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void AssignColor(ColorValues type, float value)
|
||||||
|
{
|
||||||
|
switch (type)
|
||||||
|
{
|
||||||
|
case ColorValues.R:
|
||||||
|
R = value;
|
||||||
|
break;
|
||||||
|
case ColorValues.G:
|
||||||
|
G = value;
|
||||||
|
break;
|
||||||
|
case ColorValues.B:
|
||||||
|
B = value;
|
||||||
|
break;
|
||||||
|
case ColorValues.A:
|
||||||
|
A = value;
|
||||||
|
break;
|
||||||
|
case ColorValues.Hue:
|
||||||
|
H = value;
|
||||||
|
break;
|
||||||
|
case ColorValues.Saturation:
|
||||||
|
S = value;
|
||||||
|
break;
|
||||||
|
case ColorValues.Value:
|
||||||
|
V = value;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void AssignColor(Color color)
|
||||||
|
{
|
||||||
|
CurrentColor = color;
|
||||||
|
}
|
||||||
|
|
||||||
|
public float GetValue(ColorValues type)
|
||||||
|
{
|
||||||
|
switch (type)
|
||||||
|
{
|
||||||
|
case ColorValues.R:
|
||||||
|
return R;
|
||||||
|
case ColorValues.G:
|
||||||
|
return G;
|
||||||
|
case ColorValues.B:
|
||||||
|
return B;
|
||||||
|
case ColorValues.A:
|
||||||
|
return A;
|
||||||
|
case ColorValues.Hue:
|
||||||
|
return H;
|
||||||
|
case ColorValues.Saturation:
|
||||||
|
return S;
|
||||||
|
case ColorValues.Value:
|
||||||
|
return V;
|
||||||
|
default:
|
||||||
|
throw new System.NotImplementedException("");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void ToggleColorSliders()
|
||||||
|
{
|
||||||
|
Setup.ShowHsv = !Setup.ShowHsv;
|
||||||
|
Setup.ShowRgb = !Setup.ShowRgb;
|
||||||
|
Setup.HsvSliders.Toggle(Setup.ShowHsv);
|
||||||
|
Setup.RgbSliders.Toggle(Setup.ShowRgb);
|
||||||
|
|
||||||
|
|
||||||
|
UpdateColorToggleText();
|
||||||
|
}
|
||||||
|
|
||||||
|
void UpdateColorToggleText()
|
||||||
|
{
|
||||||
|
if (Setup.ShowRgb)
|
||||||
|
{
|
||||||
|
Setup.SliderToggleButtonText.text = "RGB";
|
||||||
|
}
|
||||||
|
|
||||||
|
if (Setup.ShowHsv)
|
||||||
|
{
|
||||||
|
Setup.SliderToggleButtonText.text = "HSV";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void HandleHeaderSetting(ColorPickerSetup.ColorHeaderShowing setupShowHeader)
|
||||||
|
{
|
||||||
|
if (setupShowHeader == ColorPickerSetup.ColorHeaderShowing.Hide)
|
||||||
|
{
|
||||||
|
Setup.ColorHeader.Toggle(false);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
Setup.ColorHeader.Toggle(true);
|
||||||
|
|
||||||
|
Setup.ColorPreview.Toggle(setupShowHeader != ColorPickerSetup.ColorHeaderShowing.ShowColorCode);
|
||||||
|
Setup.ColorCode.Toggle(setupShowHeader != ColorPickerSetup.ColorHeaderShowing.ShowColor);
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 8262e4a8322117f4da079921eaa72834
|
||||||
|
MonoImporter:
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
@@ -0,0 +1,58 @@
|
|||||||
|
|
||||||
|
using UnityEngine;
|
||||||
|
using TMPro;
|
||||||
|
|
||||||
|
namespace HSVPicker
|
||||||
|
{
|
||||||
|
[System.Serializable]
|
||||||
|
public class ColorPickerSetup
|
||||||
|
{
|
||||||
|
public enum ColorHeaderShowing
|
||||||
|
{
|
||||||
|
Hide,
|
||||||
|
ShowColor,
|
||||||
|
ShowColorCode,
|
||||||
|
ShowAll,
|
||||||
|
}
|
||||||
|
|
||||||
|
[System.Serializable]
|
||||||
|
public class UiElements
|
||||||
|
{
|
||||||
|
public RectTransform[] Elements;
|
||||||
|
|
||||||
|
|
||||||
|
public void Toggle(bool active)
|
||||||
|
{
|
||||||
|
for (int cnt = 0; cnt < Elements.Length; cnt++)
|
||||||
|
{
|
||||||
|
Elements[cnt].gameObject.SetActive(active);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public bool ShowRgb = true;
|
||||||
|
public bool ShowHsv;
|
||||||
|
public bool ShowAlpha = true;
|
||||||
|
public bool ShowColorBox = true;
|
||||||
|
public bool ShowColorSliderToggle = true;
|
||||||
|
|
||||||
|
public ColorHeaderShowing ShowHeader = ColorHeaderShowing.ShowAll;
|
||||||
|
|
||||||
|
public UiElements RgbSliders;
|
||||||
|
public UiElements HsvSliders;
|
||||||
|
public UiElements ColorToggleElement;
|
||||||
|
public UiElements AlphaSlidiers;
|
||||||
|
|
||||||
|
|
||||||
|
public UiElements ColorHeader;
|
||||||
|
public UiElements ColorCode;
|
||||||
|
public UiElements ColorPreview;
|
||||||
|
|
||||||
|
public UiElements ColorBox;
|
||||||
|
public TMP_Text SliderToggleButtonText;
|
||||||
|
|
||||||
|
public string PresetColorsId = "default";
|
||||||
|
public Color[] DefaultPresetColors;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,11 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 5f1e0a31fe4cdb5458d5a88aa1268434
|
||||||
|
MonoImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,67 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using UnityEngine;
|
||||||
|
using UnityEngine.Events;
|
||||||
|
|
||||||
|
namespace HSVPicker
|
||||||
|
{
|
||||||
|
public static class ColorPresetManager
|
||||||
|
{
|
||||||
|
private static Dictionary<string, ColorPresetList> _presets = new Dictionary<string, ColorPresetList>();
|
||||||
|
|
||||||
|
public static ColorPresetList Get(string listId = "default")
|
||||||
|
{
|
||||||
|
ColorPresetList preset;
|
||||||
|
if (!_presets.TryGetValue(listId, out preset))
|
||||||
|
{
|
||||||
|
preset = new ColorPresetList(listId);
|
||||||
|
_presets.Add(listId, preset);
|
||||||
|
}
|
||||||
|
|
||||||
|
return preset;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public class ColorPresetList
|
||||||
|
{
|
||||||
|
public string ListId { get; private set; }
|
||||||
|
public List<Color> Colors { get; private set; }
|
||||||
|
|
||||||
|
public event UnityAction<List<Color>> OnColorsUpdated;
|
||||||
|
|
||||||
|
public ColorPresetList(string listId, List<Color> colors = null)
|
||||||
|
{
|
||||||
|
if (colors == null)
|
||||||
|
{
|
||||||
|
colors = new List<Color>();
|
||||||
|
}
|
||||||
|
|
||||||
|
Colors = colors;
|
||||||
|
ListId = listId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void AddColor(Color color)
|
||||||
|
{
|
||||||
|
Colors.Add(color);
|
||||||
|
if (OnColorsUpdated != null)
|
||||||
|
{
|
||||||
|
OnColorsUpdated.Invoke(Colors);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void UpdateList(IEnumerable<Color> colors)
|
||||||
|
{
|
||||||
|
Colors.Clear();
|
||||||
|
Colors.AddRange(colors);
|
||||||
|
|
||||||
|
if (OnColorsUpdated != null)
|
||||||
|
{
|
||||||
|
OnColorsUpdated.Invoke(Colors);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,11 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 55b59bed8e892614e9397d8a20e36e0c
|
||||||
|
MonoImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,86 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using UnityEngine;
|
||||||
|
using UnityEngine.UI;
|
||||||
|
|
||||||
|
namespace HSVPicker
|
||||||
|
{
|
||||||
|
public class ColorPresets : MonoBehaviour
|
||||||
|
{
|
||||||
|
public ColorPicker picker;
|
||||||
|
public GameObject[] presets;
|
||||||
|
public Image createPresetImage;
|
||||||
|
|
||||||
|
private ColorPresetList _colors;
|
||||||
|
|
||||||
|
void Awake()
|
||||||
|
{
|
||||||
|
// picker.onHSVChanged.AddListener(HSVChanged);
|
||||||
|
picker.onValueChanged.AddListener(ColorChanged);
|
||||||
|
}
|
||||||
|
|
||||||
|
void Start()
|
||||||
|
{
|
||||||
|
_colors = ColorPresetManager.Get(picker.Setup.PresetColorsId);
|
||||||
|
|
||||||
|
if (_colors.Colors.Count < picker.Setup.DefaultPresetColors.Length)
|
||||||
|
{
|
||||||
|
_colors.UpdateList(picker.Setup.DefaultPresetColors);
|
||||||
|
}
|
||||||
|
|
||||||
|
_colors.OnColorsUpdated += OnColorsUpdate;
|
||||||
|
OnColorsUpdate(_colors.Colors);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnColorsUpdate(List<Color> colors)
|
||||||
|
{
|
||||||
|
for (int cnt = 0; cnt < presets.Length; cnt++)
|
||||||
|
{
|
||||||
|
if (colors.Count <= cnt)
|
||||||
|
{
|
||||||
|
presets[cnt].SetActive(false);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
presets[cnt].SetActive(true);
|
||||||
|
presets[cnt].GetComponent<Image>().color = colors[cnt];
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
createPresetImage.gameObject.SetActive(colors.Count < presets.Length);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public void CreatePresetButton()
|
||||||
|
{
|
||||||
|
_colors.AddColor(picker.CurrentColor);
|
||||||
|
|
||||||
|
// for (var i = 0; i < presets.Length; i++)
|
||||||
|
//{
|
||||||
|
// if (!presets[i].activeSelf)
|
||||||
|
// {
|
||||||
|
// presets[i].SetActive(true);
|
||||||
|
// presets[i].GetComponent<Image>().color = picker.CurrentColor;
|
||||||
|
// break;
|
||||||
|
// }
|
||||||
|
//}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void PresetSelect(Image sender)
|
||||||
|
{
|
||||||
|
picker.CurrentColor = sender.color;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Not working, it seems ConvertHsvToRgb() is broken. It doesn't work when fed
|
||||||
|
// input h, s, v as shown below.
|
||||||
|
// private void HSVChanged(float h, float s, float v)
|
||||||
|
// {
|
||||||
|
// createPresetImage.color = HSVUtil.ConvertHsvToRgb(h, s, v, 1);
|
||||||
|
// }
|
||||||
|
private void ColorChanged(Color color)
|
||||||
|
{
|
||||||
|
createPresetImage.color = color;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 0923373e76e77402c9c53a2f1250ad3e
|
||||||
|
timeCreated: 1456875791
|
||||||
|
licenseType: Pro
|
||||||
|
MonoImporter:
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,92 @@
|
|||||||
|
using UnityEngine;
|
||||||
|
using UnityEngine.UI;
|
||||||
|
namespace HSVPicker
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Displays one of the color values of aColorPicker
|
||||||
|
/// </summary>
|
||||||
|
[RequireComponent(typeof(Slider))]
|
||||||
|
public class ColorSlider : MonoBehaviour
|
||||||
|
{
|
||||||
|
public ColorPicker hsvpicker;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Which value this slider can edit.
|
||||||
|
/// </summary>
|
||||||
|
public ColorValues type;
|
||||||
|
|
||||||
|
private Slider slider;
|
||||||
|
|
||||||
|
private bool listen = true;
|
||||||
|
|
||||||
|
private void Awake()
|
||||||
|
{
|
||||||
|
slider = GetComponent<Slider>();
|
||||||
|
|
||||||
|
hsvpicker.onValueChanged.AddListener(ColorChanged);
|
||||||
|
hsvpicker.onHSVChanged.AddListener(HSVChanged);
|
||||||
|
slider.onValueChanged.AddListener(SliderChanged);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnDestroy()
|
||||||
|
{
|
||||||
|
hsvpicker.onValueChanged.RemoveListener(ColorChanged);
|
||||||
|
hsvpicker.onHSVChanged.RemoveListener(HSVChanged);
|
||||||
|
slider.onValueChanged.RemoveListener(SliderChanged);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ColorChanged(Color newColor)
|
||||||
|
{
|
||||||
|
listen = false;
|
||||||
|
switch (type)
|
||||||
|
{
|
||||||
|
case ColorValues.R:
|
||||||
|
slider.normalizedValue = newColor.r;
|
||||||
|
break;
|
||||||
|
case ColorValues.G:
|
||||||
|
slider.normalizedValue = newColor.g;
|
||||||
|
break;
|
||||||
|
case ColorValues.B:
|
||||||
|
slider.normalizedValue = newColor.b;
|
||||||
|
break;
|
||||||
|
case ColorValues.A:
|
||||||
|
slider.normalizedValue = newColor.a;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void HSVChanged(float hue, float saturation, float value)
|
||||||
|
{
|
||||||
|
listen = false;
|
||||||
|
switch (type)
|
||||||
|
{
|
||||||
|
case ColorValues.Hue:
|
||||||
|
slider.normalizedValue = hue; //1 - hue;
|
||||||
|
break;
|
||||||
|
case ColorValues.Saturation:
|
||||||
|
slider.normalizedValue = saturation;
|
||||||
|
break;
|
||||||
|
case ColorValues.Value:
|
||||||
|
slider.normalizedValue = value;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void SliderChanged(float newValue)
|
||||||
|
{
|
||||||
|
if (listen)
|
||||||
|
{
|
||||||
|
newValue = slider.normalizedValue;
|
||||||
|
//if (type == ColorValues.Hue)
|
||||||
|
// newValue = 1 - newValue;
|
||||||
|
|
||||||
|
hsvpicker.AssignColor(type, newValue);
|
||||||
|
}
|
||||||
|
listen = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: c600592efa0cf25479655321bf4fb08a
|
||||||
|
timeCreated: 1442586558
|
||||||
|
licenseType: Free
|
||||||
|
MonoImporter:
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,206 @@
|
|||||||
|
using UnityEngine;
|
||||||
|
using UnityEngine.UI;
|
||||||
|
namespace HSVPicker
|
||||||
|
{
|
||||||
|
[RequireComponent(typeof(RawImage)), ExecuteInEditMode()]
|
||||||
|
public class ColorSliderImage : MonoBehaviour
|
||||||
|
{
|
||||||
|
public ColorPicker picker;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Which value this slider can edit.
|
||||||
|
/// </summary>
|
||||||
|
public ColorValues type;
|
||||||
|
|
||||||
|
public Slider.Direction direction;
|
||||||
|
|
||||||
|
private RawImage image;
|
||||||
|
|
||||||
|
private RectTransform rectTransform
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return transform as RectTransform;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void Awake()
|
||||||
|
{
|
||||||
|
image = GetComponent<RawImage>();
|
||||||
|
|
||||||
|
if(Application.isPlaying)
|
||||||
|
RegenerateTexture();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnEnable()
|
||||||
|
{
|
||||||
|
if (picker != null && Application.isPlaying)
|
||||||
|
{
|
||||||
|
picker.onValueChanged.AddListener(ColorChanged);
|
||||||
|
picker.onHSVChanged.AddListener(HSVChanged);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnDisable()
|
||||||
|
{
|
||||||
|
if (picker != null)
|
||||||
|
{
|
||||||
|
picker.onValueChanged.RemoveListener(ColorChanged);
|
||||||
|
picker.onHSVChanged.RemoveListener(HSVChanged);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnDestroy()
|
||||||
|
{
|
||||||
|
if (image.texture != null)
|
||||||
|
DestroyImmediate(image.texture);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ColorChanged(Color newColor)
|
||||||
|
{
|
||||||
|
switch (type)
|
||||||
|
{
|
||||||
|
case ColorValues.R:
|
||||||
|
case ColorValues.G:
|
||||||
|
case ColorValues.B:
|
||||||
|
case ColorValues.Saturation:
|
||||||
|
case ColorValues.Value:
|
||||||
|
RegenerateTexture();
|
||||||
|
break;
|
||||||
|
case ColorValues.A:
|
||||||
|
case ColorValues.Hue:
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void HSVChanged(float hue, float saturation, float value)
|
||||||
|
{
|
||||||
|
switch (type)
|
||||||
|
{
|
||||||
|
case ColorValues.R:
|
||||||
|
case ColorValues.G:
|
||||||
|
case ColorValues.B:
|
||||||
|
case ColorValues.Saturation:
|
||||||
|
case ColorValues.Value:
|
||||||
|
RegenerateTexture();
|
||||||
|
break;
|
||||||
|
case ColorValues.A:
|
||||||
|
case ColorValues.Hue:
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void RegenerateTexture()
|
||||||
|
{
|
||||||
|
Color32 baseColor = picker != null ? picker.CurrentColor : Color.black;
|
||||||
|
|
||||||
|
float h = picker != null ? picker.H : 0;
|
||||||
|
float s = picker != null ? picker.S : 0;
|
||||||
|
float v = picker != null ? picker.V : 0;
|
||||||
|
|
||||||
|
Texture2D texture;
|
||||||
|
Color32[] colors;
|
||||||
|
|
||||||
|
bool vertical = direction == Slider.Direction.BottomToTop || direction == Slider.Direction.TopToBottom;
|
||||||
|
bool inverted = direction == Slider.Direction.TopToBottom || direction == Slider.Direction.RightToLeft;
|
||||||
|
|
||||||
|
int size;
|
||||||
|
switch (type)
|
||||||
|
{
|
||||||
|
case ColorValues.R:
|
||||||
|
case ColorValues.G:
|
||||||
|
case ColorValues.B:
|
||||||
|
case ColorValues.A:
|
||||||
|
size = 255;
|
||||||
|
break;
|
||||||
|
case ColorValues.Hue:
|
||||||
|
size = 360;
|
||||||
|
break;
|
||||||
|
case ColorValues.Saturation:
|
||||||
|
case ColorValues.Value:
|
||||||
|
size = 100;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
throw new System.NotImplementedException("");
|
||||||
|
}
|
||||||
|
if (vertical)
|
||||||
|
texture = new Texture2D(1, size);
|
||||||
|
else
|
||||||
|
texture = new Texture2D(size, 1);
|
||||||
|
|
||||||
|
texture.hideFlags = HideFlags.DontSave;
|
||||||
|
colors = new Color32[size];
|
||||||
|
|
||||||
|
switch (type)
|
||||||
|
{
|
||||||
|
case ColorValues.R:
|
||||||
|
for (byte i = 0; i < size; i++)
|
||||||
|
{
|
||||||
|
colors[inverted ? size - 1 - i : i] = new Color32(i, baseColor.g, baseColor.b, 255);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case ColorValues.G:
|
||||||
|
for (byte i = 0; i < size; i++)
|
||||||
|
{
|
||||||
|
colors[inverted ? size - 1 - i : i] = new Color32(baseColor.r, i, baseColor.b, 255);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case ColorValues.B:
|
||||||
|
for (byte i = 0; i < size; i++)
|
||||||
|
{
|
||||||
|
colors[inverted ? size - 1 - i : i] = new Color32(baseColor.r, baseColor.g, i, 255);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case ColorValues.A:
|
||||||
|
for (byte i = 0; i < size; i++)
|
||||||
|
{
|
||||||
|
colors[inverted ? size - 1 - i : i] = new Color32(i, i, i, 255);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case ColorValues.Hue:
|
||||||
|
for (int i = 0; i < size; i++)
|
||||||
|
{
|
||||||
|
colors[inverted ? size - 1 - i : i] = HSVUtil.ConvertHsvToRgb(i, 1, 1, 1);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case ColorValues.Saturation:
|
||||||
|
for (int i = 0; i < size; i++)
|
||||||
|
{
|
||||||
|
colors[inverted ? size - 1 - i : i] = HSVUtil.ConvertHsvToRgb(h * 360, (float)i / size, v, 1);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case ColorValues.Value:
|
||||||
|
for (int i = 0; i < size; i++)
|
||||||
|
{
|
||||||
|
colors[inverted ? size - 1 - i : i] = HSVUtil.ConvertHsvToRgb(h * 360, s, (float)i / size, 1);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
throw new System.NotImplementedException("");
|
||||||
|
}
|
||||||
|
texture.SetPixels32(colors);
|
||||||
|
texture.Apply();
|
||||||
|
|
||||||
|
if (image.texture != null)
|
||||||
|
DestroyImmediate(image.texture);
|
||||||
|
image.texture = texture;
|
||||||
|
|
||||||
|
switch (direction)
|
||||||
|
{
|
||||||
|
case Slider.Direction.BottomToTop:
|
||||||
|
case Slider.Direction.TopToBottom:
|
||||||
|
image.uvRect = new Rect(0, 0, 2, 1);
|
||||||
|
break;
|
||||||
|
case Slider.Direction.LeftToRight:
|
||||||
|
case Slider.Direction.RightToLeft:
|
||||||
|
image.uvRect = new Rect(0, 0, 1, 2);
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 7ca76dd9ad6eb204c9b0481aece34497
|
||||||
|
timeCreated: 1442682013
|
||||||
|
licenseType: Free
|
||||||
|
MonoImporter:
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,53 @@
|
|||||||
|
using UnityEngine;
|
||||||
|
using UnityEngine.UI;
|
||||||
|
using TMPro;
|
||||||
|
namespace HSVPicker
|
||||||
|
{
|
||||||
|
[RequireComponent(typeof(TMP_InputField))]
|
||||||
|
public class HexColorField : MonoBehaviour
|
||||||
|
{
|
||||||
|
public ColorPicker hsvpicker;
|
||||||
|
|
||||||
|
public bool displayAlpha;
|
||||||
|
|
||||||
|
private TMP_InputField hexInputField;
|
||||||
|
|
||||||
|
private void Awake()
|
||||||
|
{
|
||||||
|
hexInputField = GetComponent<TMP_InputField>();
|
||||||
|
|
||||||
|
// Add listeners to keep text (and color) up to date
|
||||||
|
hexInputField.onEndEdit.AddListener(UpdateColor);
|
||||||
|
hsvpicker.onValueChanged.AddListener(UpdateHex);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnDestroy()
|
||||||
|
{
|
||||||
|
hexInputField.onValueChanged.RemoveListener(UpdateColor);
|
||||||
|
hsvpicker.onValueChanged.RemoveListener(UpdateHex);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void UpdateHex(Color newColor)
|
||||||
|
{
|
||||||
|
hexInputField.text = ColorToHex(newColor);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void UpdateColor(string newHex)
|
||||||
|
{
|
||||||
|
Color color;
|
||||||
|
if (!newHex.StartsWith("#"))
|
||||||
|
newHex = "#"+newHex;
|
||||||
|
if (ColorUtility.TryParseHtmlString(newHex, out color))
|
||||||
|
hsvpicker.CurrentColor = color;
|
||||||
|
else
|
||||||
|
Debug.Log("hex value is in the wrong format, valid formats are: #RGB, #RGBA, #RRGGBB and #RRGGBBAA (# is optional)");
|
||||||
|
}
|
||||||
|
|
||||||
|
private string ColorToHex(Color32 color)
|
||||||
|
{
|
||||||
|
return displayAlpha
|
||||||
|
? string.Format("#{0:X2}{1:X2}{2:X2}{3:X2}", color.r, color.g, color.b, color.a)
|
||||||
|
: string.Format("#{0:X2}{1:X2}{2:X2}", color.r, color.g, color.b);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: d85c534b3c1560544b09d0996dfeba84
|
||||||
|
MonoImporter:
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
@@ -0,0 +1,121 @@
|
|||||||
|
using UnityEngine;
|
||||||
|
using UnityEngine.UI;
|
||||||
|
|
||||||
|
namespace HSVPicker
|
||||||
|
{
|
||||||
|
[RequireComponent(typeof(BoxSlider), typeof(RawImage)), ExecuteInEditMode()]
|
||||||
|
public class SVBoxSlider : MonoBehaviour
|
||||||
|
{
|
||||||
|
public ColorPicker picker;
|
||||||
|
|
||||||
|
private BoxSlider slider;
|
||||||
|
private RawImage image;
|
||||||
|
|
||||||
|
private int textureWidth = 128;
|
||||||
|
private int textureHeight = 128;
|
||||||
|
|
||||||
|
private float lastH = -1;
|
||||||
|
private bool listen = true;
|
||||||
|
|
||||||
|
public RectTransform rectTransform
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return transform as RectTransform;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void Awake()
|
||||||
|
{
|
||||||
|
slider = GetComponent<BoxSlider>();
|
||||||
|
image = GetComponent<RawImage>();
|
||||||
|
if(Application.isPlaying)
|
||||||
|
{
|
||||||
|
RegenerateSVTexture ();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnEnable()
|
||||||
|
{
|
||||||
|
if (Application.isPlaying && picker != null)
|
||||||
|
{
|
||||||
|
slider.onValueChanged.AddListener(SliderChanged);
|
||||||
|
picker.onHSVChanged.AddListener(HSVChanged);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnDisable()
|
||||||
|
{
|
||||||
|
if (picker != null)
|
||||||
|
{
|
||||||
|
slider.onValueChanged.RemoveListener(SliderChanged);
|
||||||
|
picker.onHSVChanged.RemoveListener(HSVChanged);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnDestroy()
|
||||||
|
{
|
||||||
|
if ( image.texture != null )
|
||||||
|
{
|
||||||
|
DestroyImmediate (image.texture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void SliderChanged(float saturation, float value)
|
||||||
|
{
|
||||||
|
if (listen)
|
||||||
|
{
|
||||||
|
picker.AssignColor(ColorValues.Saturation, saturation);
|
||||||
|
picker.AssignColor(ColorValues.Value, value);
|
||||||
|
}
|
||||||
|
listen = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void HSVChanged(float h, float s, float v)
|
||||||
|
{
|
||||||
|
if (!lastH.Equals(h))
|
||||||
|
{
|
||||||
|
lastH = h;
|
||||||
|
RegenerateSVTexture();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!s.Equals(slider.normalizedValue))
|
||||||
|
{
|
||||||
|
listen = false;
|
||||||
|
slider.normalizedValue = s;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!v.Equals(slider.normalizedValueY))
|
||||||
|
{
|
||||||
|
listen = false;
|
||||||
|
slider.normalizedValueY = v;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void RegenerateSVTexture()
|
||||||
|
{
|
||||||
|
double h = picker != null ? picker.H * 360 : 0;
|
||||||
|
|
||||||
|
if ( image.texture != null )
|
||||||
|
DestroyImmediate (image.texture);
|
||||||
|
|
||||||
|
var texture = new Texture2D (textureWidth, textureHeight);
|
||||||
|
texture.wrapMode = TextureWrapMode.Clamp;
|
||||||
|
texture.hideFlags = HideFlags.DontSave;
|
||||||
|
|
||||||
|
for ( int s = 0; s < textureWidth; s++ )
|
||||||
|
{
|
||||||
|
Color[] colors = new Color[textureHeight];
|
||||||
|
for ( int v = 0; v < textureHeight; v++ )
|
||||||
|
{
|
||||||
|
colors[v] = HSVUtil.ConvertHsvToRgb (h, (float)s / textureWidth, (float)v / textureHeight, 1);
|
||||||
|
}
|
||||||
|
texture.SetPixels (s, 0, 1, textureHeight, colors);
|
||||||
|
}
|
||||||
|
texture.Apply();
|
||||||
|
|
||||||
|
image.texture = texture;
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 1e4240873631f724496efec97d7151b3
|
||||||
|
timeCreated: 1442650713
|
||||||
|
licenseType: Free
|
||||||
|
MonoImporter:
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 2b33138f525222146865861432dbe845
|
||||||
|
folderAsset: yes
|
||||||
|
timeCreated: 1426051345
|
||||||
|
licenseType: Pro
|
||||||
|
DefaultImporter:
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,448 @@
|
|||||||
|
using System;
|
||||||
|
using UnityEngine;
|
||||||
|
using UnityEngine.Events;
|
||||||
|
using UnityEngine.EventSystems;
|
||||||
|
using UnityEngine.UI;
|
||||||
|
|
||||||
|
namespace HSVPicker
|
||||||
|
{
|
||||||
|
[AddComponentMenu("UI/BoxSlider", 35)]
|
||||||
|
[RequireComponent(typeof(RectTransform))]
|
||||||
|
public class BoxSlider : Selectable, IDragHandler, IInitializePotentialDragHandler, ICanvasElement
|
||||||
|
{
|
||||||
|
public enum Direction
|
||||||
|
{
|
||||||
|
LeftToRight,
|
||||||
|
RightToLeft,
|
||||||
|
BottomToTop,
|
||||||
|
TopToBottom,
|
||||||
|
}
|
||||||
|
|
||||||
|
[Serializable]
|
||||||
|
public class BoxSliderEvent : UnityEvent<float, float> { }
|
||||||
|
|
||||||
|
[SerializeField]
|
||||||
|
private RectTransform m_HandleRect;
|
||||||
|
public RectTransform handleRect { get { return m_HandleRect; } set { if (SetClass(ref m_HandleRect, value)) { UpdateCachedReferences(); UpdateVisuals(); } } }
|
||||||
|
|
||||||
|
[Space(6)]
|
||||||
|
|
||||||
|
[SerializeField]
|
||||||
|
private float m_MinValue = 0;
|
||||||
|
public float minValue { get { return m_MinValue; } set { if (SetStruct(ref m_MinValue, value)) { Set(m_Value); SetY (m_ValueY); UpdateVisuals(); } } }
|
||||||
|
|
||||||
|
[SerializeField]
|
||||||
|
private float m_MaxValue = 1;
|
||||||
|
public float maxValue { get { return m_MaxValue; } set { if (SetStruct(ref m_MaxValue, value)) { Set(m_Value); SetY (m_ValueY); UpdateVisuals(); } } }
|
||||||
|
|
||||||
|
[SerializeField]
|
||||||
|
private bool m_WholeNumbers = false;
|
||||||
|
public bool wholeNumbers { get { return m_WholeNumbers; } set { if (SetStruct(ref m_WholeNumbers, value)) { Set(m_Value); SetY (m_ValueY); UpdateVisuals(); } } }
|
||||||
|
|
||||||
|
[SerializeField]
|
||||||
|
private float m_Value = 1f;
|
||||||
|
public float value
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
if (wholeNumbers)
|
||||||
|
return Mathf.Round(m_Value);
|
||||||
|
return m_Value;
|
||||||
|
}
|
||||||
|
set
|
||||||
|
{
|
||||||
|
Set(value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public float normalizedValue
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
if (Mathf.Approximately(minValue, maxValue))
|
||||||
|
return 0;
|
||||||
|
return Mathf.InverseLerp(minValue, maxValue, value);
|
||||||
|
}
|
||||||
|
set
|
||||||
|
{
|
||||||
|
this.value = Mathf.Lerp(minValue, maxValue, value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
[SerializeField]
|
||||||
|
private float m_ValueY = 1f;
|
||||||
|
public float valueY
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
if (wholeNumbers)
|
||||||
|
return Mathf.Round(m_ValueY);
|
||||||
|
return m_ValueY;
|
||||||
|
}
|
||||||
|
set
|
||||||
|
{
|
||||||
|
SetY(value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public float normalizedValueY
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
if (Mathf.Approximately(minValue, maxValue))
|
||||||
|
return 0;
|
||||||
|
return Mathf.InverseLerp(minValue, maxValue, valueY);
|
||||||
|
}
|
||||||
|
set
|
||||||
|
{
|
||||||
|
this.valueY = Mathf.Lerp(minValue, maxValue, value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
[Space(6)]
|
||||||
|
|
||||||
|
// Allow for delegate-based subscriptions for faster events than 'eventReceiver', and allowing for multiple receivers.
|
||||||
|
[SerializeField]
|
||||||
|
private BoxSliderEvent m_OnValueChanged = new BoxSliderEvent();
|
||||||
|
public BoxSliderEvent onValueChanged { get { return m_OnValueChanged; } set { m_OnValueChanged = value; } }
|
||||||
|
|
||||||
|
// Private fields
|
||||||
|
|
||||||
|
//private Image m_FillImage;
|
||||||
|
//private Transform m_FillTransform;
|
||||||
|
//private RectTransform m_FillContainerRect;
|
||||||
|
private Transform m_HandleTransform;
|
||||||
|
private RectTransform m_HandleContainerRect;
|
||||||
|
|
||||||
|
// The offset from handle position to mouse down position
|
||||||
|
private Vector2 m_Offset = Vector2.zero;
|
||||||
|
|
||||||
|
private DrivenRectTransformTracker m_Tracker;
|
||||||
|
|
||||||
|
// Size of each step.
|
||||||
|
float stepSize { get { return wholeNumbers ? 1 : (maxValue - minValue) * 0.1f; } }
|
||||||
|
|
||||||
|
protected BoxSlider()
|
||||||
|
{ }
|
||||||
|
|
||||||
|
#if UNITY_EDITOR
|
||||||
|
protected override void OnValidate()
|
||||||
|
{
|
||||||
|
base.OnValidate();
|
||||||
|
|
||||||
|
if (wholeNumbers)
|
||||||
|
{
|
||||||
|
m_MinValue = Mathf.Round(m_MinValue);
|
||||||
|
m_MaxValue = Mathf.Round(m_MaxValue);
|
||||||
|
}
|
||||||
|
|
||||||
|
//Onvalidate is called before OnEnabled. We need to make sure not to touch any other objects before OnEnable is run.
|
||||||
|
if (IsActive())
|
||||||
|
{
|
||||||
|
UpdateCachedReferences();
|
||||||
|
Set(m_Value, false);
|
||||||
|
SetY(m_ValueY, false);
|
||||||
|
// Update rects since other things might affect them even if value didn't change.
|
||||||
|
UpdateVisuals();
|
||||||
|
}
|
||||||
|
|
||||||
|
#if UNITY_2018_3_OR_NEWER
|
||||||
|
|
||||||
|
if (!UnityEditor.PrefabUtility.IsPartOfPrefabAsset(this) && !Application.isPlaying)
|
||||||
|
CanvasUpdateRegistry.RegisterCanvasElementForLayoutRebuild(this);
|
||||||
|
|
||||||
|
#else
|
||||||
|
|
||||||
|
var prefabType = UnityEditor.PrefabUtility.GetPrefabType(this);
|
||||||
|
if (prefabType != UnityEditor.PrefabType.Prefab && !Application.isPlaying)
|
||||||
|
CanvasUpdateRegistry.RegisterCanvasElementForLayoutRebuild(this);
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
#endif // if UNITY_EDITOR
|
||||||
|
|
||||||
|
public virtual void Rebuild(CanvasUpdate executing)
|
||||||
|
{
|
||||||
|
#if UNITY_EDITOR
|
||||||
|
if (executing == CanvasUpdate.Prelayout)
|
||||||
|
onValueChanged.Invoke(value, valueY);
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
public void LayoutComplete()
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public void GraphicUpdateComplete()
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public static bool SetClass<T>(ref T currentValue, T newValue) where T: class
|
||||||
|
{
|
||||||
|
if ((currentValue == null && newValue == null) || (currentValue != null && currentValue.Equals(newValue)))
|
||||||
|
return false;
|
||||||
|
|
||||||
|
currentValue = newValue;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static bool SetStruct<T>(ref T currentValue, T newValue) where T: struct
|
||||||
|
{
|
||||||
|
if (currentValue.Equals(newValue))
|
||||||
|
return false;
|
||||||
|
|
||||||
|
currentValue = newValue;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected override void OnEnable()
|
||||||
|
{
|
||||||
|
base.OnEnable();
|
||||||
|
UpdateCachedReferences();
|
||||||
|
Set(m_Value, false);
|
||||||
|
SetY(m_ValueY, false);
|
||||||
|
// Update rects since they need to be initialized correctly.
|
||||||
|
UpdateVisuals();
|
||||||
|
}
|
||||||
|
|
||||||
|
protected override void OnDisable()
|
||||||
|
{
|
||||||
|
m_Tracker.Clear();
|
||||||
|
base.OnDisable();
|
||||||
|
}
|
||||||
|
|
||||||
|
void UpdateCachedReferences()
|
||||||
|
{
|
||||||
|
|
||||||
|
if (m_HandleRect)
|
||||||
|
{
|
||||||
|
m_HandleTransform = m_HandleRect.transform;
|
||||||
|
if (m_HandleTransform.parent != null)
|
||||||
|
m_HandleContainerRect = m_HandleTransform.parent.GetComponent<RectTransform>();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
m_HandleContainerRect = null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Set the valueUpdate the visible Image.
|
||||||
|
void Set(float input)
|
||||||
|
{
|
||||||
|
Set(input, true);
|
||||||
|
}
|
||||||
|
|
||||||
|
void Set(float input, bool sendCallback)
|
||||||
|
{
|
||||||
|
// Clamp the input
|
||||||
|
float newValue = Mathf.Clamp(input, minValue, maxValue);
|
||||||
|
if (wholeNumbers)
|
||||||
|
newValue = Mathf.Round(newValue);
|
||||||
|
|
||||||
|
// If the stepped value doesn't match the last one, it's time to update
|
||||||
|
if (m_Value.Equals(newValue))
|
||||||
|
return;
|
||||||
|
|
||||||
|
m_Value = newValue;
|
||||||
|
UpdateVisuals();
|
||||||
|
if (sendCallback)
|
||||||
|
m_OnValueChanged.Invoke(newValue, valueY);
|
||||||
|
}
|
||||||
|
|
||||||
|
void SetY(float input)
|
||||||
|
{
|
||||||
|
SetY(input, true);
|
||||||
|
}
|
||||||
|
|
||||||
|
void SetY(float input, bool sendCallback)
|
||||||
|
{
|
||||||
|
// Clamp the input
|
||||||
|
float newValue = Mathf.Clamp(input, minValue, maxValue);
|
||||||
|
if (wholeNumbers)
|
||||||
|
newValue = Mathf.Round(newValue);
|
||||||
|
|
||||||
|
// If the stepped value doesn't match the last one, it's time to update
|
||||||
|
if (m_ValueY.Equals(newValue))
|
||||||
|
return;
|
||||||
|
|
||||||
|
m_ValueY = newValue;
|
||||||
|
UpdateVisuals();
|
||||||
|
if (sendCallback)
|
||||||
|
m_OnValueChanged.Invoke(value, newValue);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
protected override void OnRectTransformDimensionsChange()
|
||||||
|
{
|
||||||
|
base.OnRectTransformDimensionsChange();
|
||||||
|
UpdateVisuals();
|
||||||
|
}
|
||||||
|
|
||||||
|
enum Axis
|
||||||
|
{
|
||||||
|
Horizontal = 0,
|
||||||
|
Vertical = 1
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Force-update the slider. Useful if you've changed the properties and want it to update visually.
|
||||||
|
private void UpdateVisuals()
|
||||||
|
{
|
||||||
|
#if UNITY_EDITOR
|
||||||
|
if (!Application.isPlaying)
|
||||||
|
UpdateCachedReferences();
|
||||||
|
#endif
|
||||||
|
|
||||||
|
m_Tracker.Clear();
|
||||||
|
|
||||||
|
|
||||||
|
//to business!
|
||||||
|
if (m_HandleContainerRect != null)
|
||||||
|
{
|
||||||
|
m_Tracker.Add(this, m_HandleRect, DrivenTransformProperties.Anchors);
|
||||||
|
Vector2 anchorMin = Vector2.zero;
|
||||||
|
Vector2 anchorMax = Vector2.one;
|
||||||
|
anchorMin[0] = anchorMax[0] = (normalizedValue);
|
||||||
|
anchorMin[1] = anchorMax[1] = ( normalizedValueY);
|
||||||
|
|
||||||
|
m_HandleRect.anchorMin = anchorMin;
|
||||||
|
m_HandleRect.anchorMax = anchorMax;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Update the slider's position based on the mouse.
|
||||||
|
void UpdateDrag(PointerEventData eventData, Camera cam)
|
||||||
|
{
|
||||||
|
RectTransform clickRect = m_HandleContainerRect;
|
||||||
|
if (clickRect != null && clickRect.rect.size[0] > 0)
|
||||||
|
{
|
||||||
|
Vector2 localCursor;
|
||||||
|
if (!RectTransformUtility.ScreenPointToLocalPointInRectangle(clickRect, eventData.position, cam, out localCursor))
|
||||||
|
return;
|
||||||
|
localCursor -= clickRect.rect.position;
|
||||||
|
|
||||||
|
float val = Mathf.Clamp01((localCursor - m_Offset)[0] / clickRect.rect.size[0]);
|
||||||
|
normalizedValue = (val);
|
||||||
|
|
||||||
|
float valY = Mathf.Clamp01((localCursor - m_Offset)[1] / clickRect.rect.size[1]);
|
||||||
|
normalizedValueY = ( valY);
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private bool MayDrag(PointerEventData eventData)
|
||||||
|
{
|
||||||
|
return IsActive() && IsInteractable() && eventData.button == PointerEventData.InputButton.Left;
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void OnPointerDown(PointerEventData eventData)
|
||||||
|
{
|
||||||
|
if (!MayDrag(eventData))
|
||||||
|
return;
|
||||||
|
|
||||||
|
base.OnPointerDown(eventData);
|
||||||
|
|
||||||
|
m_Offset = Vector2.zero;
|
||||||
|
if (m_HandleContainerRect != null && RectTransformUtility.RectangleContainsScreenPoint(m_HandleRect, eventData.position, eventData.enterEventCamera))
|
||||||
|
{
|
||||||
|
Vector2 localMousePos;
|
||||||
|
if (RectTransformUtility.ScreenPointToLocalPointInRectangle(m_HandleRect, eventData.position, eventData.pressEventCamera, out localMousePos))
|
||||||
|
m_Offset = localMousePos;
|
||||||
|
m_Offset.y = -m_Offset.y;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// Outside the slider handle - jump to this point instead
|
||||||
|
UpdateDrag(eventData, eventData.pressEventCamera);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public virtual void OnDrag(PointerEventData eventData)
|
||||||
|
{
|
||||||
|
if (!MayDrag(eventData))
|
||||||
|
return;
|
||||||
|
|
||||||
|
UpdateDrag(eventData, eventData.pressEventCamera);
|
||||||
|
}
|
||||||
|
|
||||||
|
//public override void OnMove(AxisEventData eventData)
|
||||||
|
//{
|
||||||
|
// if (!IsActive() || !IsInteractable())
|
||||||
|
// {
|
||||||
|
// base.OnMove(eventData);
|
||||||
|
// return;
|
||||||
|
// }
|
||||||
|
|
||||||
|
// switch (eventData.moveDir)
|
||||||
|
// {
|
||||||
|
// case MoveDirection.Left:
|
||||||
|
// if (axis == Axis.Horizontal && FindSelectableOnLeft() == null) {
|
||||||
|
// Set(reverseValue ? value + stepSize : value - stepSize);
|
||||||
|
// SetY (reverseValue ? valueY + stepSize : valueY - stepSize);
|
||||||
|
// }
|
||||||
|
// else
|
||||||
|
// base.OnMove(eventData);
|
||||||
|
// break;
|
||||||
|
// case MoveDirection.Right:
|
||||||
|
// if (axis == Axis.Horizontal && FindSelectableOnRight() == null) {
|
||||||
|
// Set(reverseValue ? value - stepSize : value + stepSize);
|
||||||
|
// SetY(reverseValue ? valueY - stepSize : valueY + stepSize);
|
||||||
|
// }
|
||||||
|
// else
|
||||||
|
// base.OnMove(eventData);
|
||||||
|
// break;
|
||||||
|
// case MoveDirection.Up:
|
||||||
|
// if (axis == Axis.Vertical && FindSelectableOnUp() == null) {
|
||||||
|
// Set(reverseValue ? value - stepSize : value + stepSize);
|
||||||
|
// SetY(reverseValue ? valueY - stepSize : valueY + stepSize);
|
||||||
|
// }
|
||||||
|
// else
|
||||||
|
// base.OnMove(eventData);
|
||||||
|
// break;
|
||||||
|
// case MoveDirection.Down:
|
||||||
|
// if (axis == Axis.Vertical && FindSelectableOnDown() == null) {
|
||||||
|
// Set(reverseValue ? value + stepSize : value - stepSize);
|
||||||
|
// SetY(reverseValue ? valueY + stepSize : valueY - stepSize);
|
||||||
|
// }
|
||||||
|
// else
|
||||||
|
// base.OnMove(eventData);
|
||||||
|
// break;
|
||||||
|
// }
|
||||||
|
//}
|
||||||
|
|
||||||
|
//public override Selectable FindSelectableOnLeft()
|
||||||
|
//{
|
||||||
|
// if (navigation.mode == Navigation.Mode.Automatic && axis == Axis.Horizontal)
|
||||||
|
// return null;
|
||||||
|
// return base.FindSelectableOnLeft();
|
||||||
|
//}
|
||||||
|
|
||||||
|
//public override Selectable FindSelectableOnRight()
|
||||||
|
//{
|
||||||
|
// if (navigation.mode == Navigation.Mode.Automatic && axis == Axis.Horizontal)
|
||||||
|
// return null;
|
||||||
|
// return base.FindSelectableOnRight();
|
||||||
|
//}
|
||||||
|
|
||||||
|
//public override Selectable FindSelectableOnUp()
|
||||||
|
//{
|
||||||
|
// if (navigation.mode == Navigation.Mode.Automatic && axis == Axis.Vertical)
|
||||||
|
// return null;
|
||||||
|
// return base.FindSelectableOnUp();
|
||||||
|
//}
|
||||||
|
|
||||||
|
//public override Selectable FindSelectableOnDown()
|
||||||
|
//{
|
||||||
|
// if (navigation.mode == Navigation.Mode.Automatic && axis == Axis.Vertical)
|
||||||
|
// return null;
|
||||||
|
// return base.FindSelectableOnDown();
|
||||||
|
//}
|
||||||
|
|
||||||
|
public virtual void OnInitializePotentialDrag(PointerEventData eventData)
|
||||||
|
{
|
||||||
|
eventData.useDragThreshold = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 37c44bc94a9a7f241b5b552f3ff89458
|
||||||
|
MonoImporter:
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
@@ -0,0 +1,210 @@
|
|||||||
|
using UnityEngine;
|
||||||
|
using System;
|
||||||
|
|
||||||
|
namespace HSVPicker
|
||||||
|
{
|
||||||
|
|
||||||
|
#region ColorUtilities
|
||||||
|
|
||||||
|
public static class HSVUtil
|
||||||
|
{
|
||||||
|
|
||||||
|
public static HsvColor ConvertRgbToHsv(Color color)
|
||||||
|
{
|
||||||
|
return ConvertRgbToHsv((int)(color.r * 255), (int)(color.g * 255), (int)(color.b * 255));
|
||||||
|
}
|
||||||
|
|
||||||
|
//Converts an RGB color to an HSV color.
|
||||||
|
public static HsvColor ConvertRgbToHsv(double r, double b, double g)
|
||||||
|
{
|
||||||
|
double delta, min;
|
||||||
|
double h = 0, s, v;
|
||||||
|
|
||||||
|
min = Math.Min(Math.Min(r, g), b);
|
||||||
|
v = Math.Max(Math.Max(r, g), b);
|
||||||
|
delta = v - min;
|
||||||
|
|
||||||
|
if (v.Equals(0))
|
||||||
|
s = 0;
|
||||||
|
else
|
||||||
|
s = delta / v;
|
||||||
|
|
||||||
|
if (s.Equals(0))
|
||||||
|
h = 360;
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (r.Equals(v))
|
||||||
|
h = (g - b) / delta;
|
||||||
|
else if (g.Equals(v))
|
||||||
|
h = 2 + (b - r) / delta;
|
||||||
|
else if (b.Equals(v))
|
||||||
|
h = 4 + (r - g) / delta;
|
||||||
|
|
||||||
|
h *= 60;
|
||||||
|
if (h <= 0.0)
|
||||||
|
h += 360;
|
||||||
|
}
|
||||||
|
|
||||||
|
HsvColor hsvColor = new HsvColor();
|
||||||
|
hsvColor.H = 360 - h;
|
||||||
|
hsvColor.S = s;
|
||||||
|
hsvColor.V = v / 255;
|
||||||
|
|
||||||
|
return hsvColor;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
// Converts an HSV color to an RGB color.
|
||||||
|
public static Color ConvertHsvToRgb(double h, double s, double v, float alpha)
|
||||||
|
{
|
||||||
|
|
||||||
|
double r = 0, g = 0, b = 0;
|
||||||
|
|
||||||
|
if (s.Equals(0))
|
||||||
|
{
|
||||||
|
r = v;
|
||||||
|
g = v;
|
||||||
|
b = v;
|
||||||
|
}
|
||||||
|
|
||||||
|
else
|
||||||
|
{
|
||||||
|
int i;
|
||||||
|
double f, p, q, t;
|
||||||
|
|
||||||
|
|
||||||
|
if (h.Equals(360))
|
||||||
|
h = 0;
|
||||||
|
else
|
||||||
|
h = h / 60;
|
||||||
|
|
||||||
|
i = (int)(h);
|
||||||
|
f = h - i;
|
||||||
|
|
||||||
|
p = v * (1.0 - s);
|
||||||
|
q = v * (1.0 - (s * f));
|
||||||
|
t = v * (1.0 - (s * (1.0f - f)));
|
||||||
|
|
||||||
|
|
||||||
|
switch (i)
|
||||||
|
{
|
||||||
|
case 0:
|
||||||
|
r = v;
|
||||||
|
g = t;
|
||||||
|
b = p;
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 1:
|
||||||
|
r = q;
|
||||||
|
g = v;
|
||||||
|
b = p;
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 2:
|
||||||
|
r = p;
|
||||||
|
g = v;
|
||||||
|
b = t;
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 3:
|
||||||
|
r = p;
|
||||||
|
g = q;
|
||||||
|
b = v;
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 4:
|
||||||
|
r = t;
|
||||||
|
g = p;
|
||||||
|
b = v;
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
r = v;
|
||||||
|
g = p;
|
||||||
|
b = q;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
return new Color((float)r, (float)g, (float)b, alpha);
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#endregion ColorUtilities
|
||||||
|
|
||||||
|
|
||||||
|
// Describes a color in terms of
|
||||||
|
// Hue, Saturation, and Value (brightness)
|
||||||
|
#region HsvColor
|
||||||
|
public struct HsvColor
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The Hue, ranges between 0 and 360
|
||||||
|
/// </summary>
|
||||||
|
public double H;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The saturation, ranges between 0 and 1
|
||||||
|
/// </summary>
|
||||||
|
public double S;
|
||||||
|
|
||||||
|
// The value (brightness), ranges between 0 and 1
|
||||||
|
public double V;
|
||||||
|
|
||||||
|
public float normalizedH
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return (float)H / 360f;
|
||||||
|
}
|
||||||
|
|
||||||
|
set
|
||||||
|
{
|
||||||
|
H = (double)value * 360;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public float normalizedS
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return (float)S;
|
||||||
|
}
|
||||||
|
set
|
||||||
|
{
|
||||||
|
S = (double)value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public float normalizedV
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return (float)V;
|
||||||
|
}
|
||||||
|
set
|
||||||
|
{
|
||||||
|
V = (double)value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public HsvColor(double h, double s, double v)
|
||||||
|
{
|
||||||
|
this.H = h;
|
||||||
|
this.S = s;
|
||||||
|
this.V = v;
|
||||||
|
}
|
||||||
|
|
||||||
|
public override string ToString()
|
||||||
|
{
|
||||||
|
return "{" + H.ToString("f2") + "," + S.ToString("f2") + "," + V.ToString("f2") + "}";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endregion HsvColor
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 4f3189246d7fc204faba7a1e9c08e0af
|
||||||
|
MonoImporter:
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
@@ -0,0 +1,11 @@
|
|||||||
|
{
|
||||||
|
"name": "judah4.hsvcolorpickerunity",
|
||||||
|
"displayName": "HSVPicker",
|
||||||
|
"version": "3.0.1",
|
||||||
|
"unity": "2019.4",
|
||||||
|
"description": "HSV color picker for Unity UI",
|
||||||
|
"keywords": [
|
||||||
|
],
|
||||||
|
"dependencies": {
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: d46aec3749789425caab28d9edf026cf
|
||||||
|
TextScriptImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 24186f479168b3d44a3298aec596738f
|
||||||
|
folderAsset: yes
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,78 @@
|
|||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!21 &2100000
|
||||||
|
Material:
|
||||||
|
serializedVersion: 6
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_Name: InvisibleMaterial
|
||||||
|
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
|
||||||
|
m_ShaderKeywords: _ALPHATEST_ON
|
||||||
|
m_LightmapFlags: 4
|
||||||
|
m_EnableInstancingVariants: 0
|
||||||
|
m_DoubleSidedGI: 0
|
||||||
|
m_CustomRenderQueue: 2450
|
||||||
|
stringTagMap:
|
||||||
|
RenderType: TransparentCutout
|
||||||
|
disabledShaderPasses: []
|
||||||
|
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}
|
||||||
|
- _MainTex:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
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}
|
||||||
|
m_Floats:
|
||||||
|
- _BumpScale: 1
|
||||||
|
- _Cutoff: 0.5
|
||||||
|
- _DetailNormalMapScale: 1
|
||||||
|
- _DstBlend: 0
|
||||||
|
- _GlossMapScale: 1
|
||||||
|
- _Glossiness: 0.5
|
||||||
|
- _GlossyReflections: 1
|
||||||
|
- _Metallic: 0
|
||||||
|
- _Mode: 1
|
||||||
|
- _OcclusionStrength: 1
|
||||||
|
- _Parallax: 0.02
|
||||||
|
- _SmoothnessTextureChannel: 0
|
||||||
|
- _SpecularHighlights: 1
|
||||||
|
- _SrcBlend: 1
|
||||||
|
- _UVSec: 0
|
||||||
|
- _ZWrite: 1
|
||||||
|
m_Colors:
|
||||||
|
- _Color: {r: 1, g: 1, b: 1, a: 0}
|
||||||
|
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 822a9b0732637f04b88e39818d097a19
|
||||||
|
NativeFormatImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
mainObjectFileID: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,79 @@
|
|||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!21 &2100000
|
||||||
|
Material:
|
||||||
|
serializedVersion: 6
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_Name: New Material
|
||||||
|
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
|
||||||
|
m_ShaderKeywords: _ALPHAPREMULTIPLY_ON
|
||||||
|
m_LightmapFlags: 4
|
||||||
|
m_EnableInstancingVariants: 0
|
||||||
|
m_DoubleSidedGI: 0
|
||||||
|
m_CustomRenderQueue: 3000
|
||||||
|
stringTagMap:
|
||||||
|
RenderType: Transparent
|
||||||
|
disabledShaderPasses: []
|
||||||
|
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}
|
||||||
|
- _MainTex:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
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}
|
||||||
|
m_Floats:
|
||||||
|
- _BumpScale: 1
|
||||||
|
- _Cutoff: 0.5
|
||||||
|
- _DetailNormalMapScale: 1
|
||||||
|
- _DstBlend: 10
|
||||||
|
- _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: 0, b: 0, a: 0.14901961}
|
||||||
|
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
||||||
|
m_BuildTextureStacks: []
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 679e2894c1678ec429166a86a676a44d
|
||||||
|
NativeFormatImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
mainObjectFileID: 2100000
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,196 @@
|
|||||||
|
|
||||||
|
Shader "Uma/Base" {
|
||||||
|
Properties {
|
||||||
|
_MainTex ("Diffuse (_diff)", 2D) = "white" {}
|
||||||
|
_ShadTex ("Shaded (_shad_c)", 2D) = "black" {}
|
||||||
|
_BaseTex ("Base Map (_base)", 2D) = "white" {}
|
||||||
|
_CtrlTex ("Control Map (_ctrl)", 2D) = "white" {}
|
||||||
|
_OutlineWidth ("Outline Width", float) = 2.0
|
||||||
|
[HideInInspector] _OutlineColor ("Outline Color", Color) = (0.125,0.047,0,0.098)
|
||||||
|
}
|
||||||
|
SubShader {
|
||||||
|
Tags {
|
||||||
|
"RenderType"="Transparent"
|
||||||
|
"VRCFallback"="ToonCutout"
|
||||||
|
}
|
||||||
|
|
||||||
|
Pass {
|
||||||
|
Name "Forward"
|
||||||
|
Tags {
|
||||||
|
"LightMode"="ForwardBase"
|
||||||
|
}
|
||||||
|
Cull Off
|
||||||
|
|
||||||
|
CGPROGRAM
|
||||||
|
#pragma vertex vert
|
||||||
|
#pragma fragment frag
|
||||||
|
#include "UnityCG.cginc"
|
||||||
|
#include "AutoLight.cginc"
|
||||||
|
#include "Lighting.cginc"
|
||||||
|
|
||||||
|
// Standard diffuse
|
||||||
|
uniform sampler2D _MainTex;
|
||||||
|
uniform float4 _MainTex_ST;
|
||||||
|
// Shaded version of diffuse
|
||||||
|
uniform sampler2D _ShadTex;
|
||||||
|
uniform float4 _ShadTex_ST;
|
||||||
|
// Red: Ambient Occlusion, Green: Specular, Blue: Clip
|
||||||
|
uniform sampler2D _BaseTex;
|
||||||
|
uniform float4 _BaseTex_ST;
|
||||||
|
// Red: Unused?, Green: Metal?, Blue: Some sort of shading? Rimlight?
|
||||||
|
uniform sampler2D _CtrlTex;
|
||||||
|
uniform float4 _CtrlTex_ST;
|
||||||
|
|
||||||
|
struct VertexInput {
|
||||||
|
float4 vertex : POSITION;
|
||||||
|
float3 normal : NORMAL;
|
||||||
|
float2 texcoord0 : TEXCOORD0;
|
||||||
|
};
|
||||||
|
struct VertexOutput {
|
||||||
|
float4 pos: SV_POSITION;
|
||||||
|
float2 uv0 : TEXCOORD0;
|
||||||
|
float4 posWorld : TEXCOORD1;
|
||||||
|
float3 normalDir : TEXCOORD2;
|
||||||
|
};
|
||||||
|
|
||||||
|
VertexOutput vert (VertexInput v) {
|
||||||
|
VertexOutput o;
|
||||||
|
o.uv0 = v.texcoord0;
|
||||||
|
o.pos = UnityObjectToClipPos(v.vertex.xyz);
|
||||||
|
o.posWorld = mul(unity_ObjectToWorld, v.vertex);
|
||||||
|
o.normalDir = UnityObjectToWorldNormal(v.normal);
|
||||||
|
TRANSFER_VERTEX_TO_FRAGMENT(o)
|
||||||
|
return o;
|
||||||
|
}
|
||||||
|
|
||||||
|
float4 frag (VertexOutput i): COLOR {
|
||||||
|
float4 diff = tex2D(_MainTex, TRANSFORM_TEX(i.uv0, _MainTex));
|
||||||
|
float4 shad = tex2D(_ShadTex, TRANSFORM_TEX(i.uv0, _ShadTex));
|
||||||
|
float4 base = tex2D(_BaseTex, TRANSFORM_TEX(i.uv0, _BaseTex));
|
||||||
|
float4 ctrl = tex2D(_CtrlTex, TRANSFORM_TEX(i.uv0, _CtrlTex));
|
||||||
|
|
||||||
|
float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz);
|
||||||
|
float facing = dot(i.normalDir, viewDirection);
|
||||||
|
|
||||||
|
// Lighting
|
||||||
|
float3 lightDirection = normalize(lerp(_WorldSpaceLightPos0.xyz, _WorldSpaceLightPos0.xyz - i.posWorld.xyz, _WorldSpaceLightPos0.w));
|
||||||
|
float halfLambert = 0.5 * dot(i.normalDir, lightDirection) + 0.5;
|
||||||
|
float shadowLerp = saturate(1 + ((base.r * 2 * halfLambert - 0.2) * 100));
|
||||||
|
float3 lightColor = saturate(max(_LightColor0, max(ShadeSH9(half4(0, 0, 0, 1)).rgb, ShadeSH9(half4(0, -1, 0, 1)).rgb)));
|
||||||
|
float4 shadedDiff = lerp(shad, diff, shadowLerp) * fixed4(lightColor, 1);
|
||||||
|
|
||||||
|
// Specular
|
||||||
|
float specularMult = 1 + saturate(base.g * 50 * (facing - 0.6));
|
||||||
|
|
||||||
|
// Rim
|
||||||
|
float rimLerp = (1 - saturate(facing * 8)) * ctrl.b;
|
||||||
|
float4 rimColor = diff * 10;
|
||||||
|
|
||||||
|
clip(base.b - 0.5);
|
||||||
|
|
||||||
|
return shadedDiff * specularMult * lerp(float4(1, 1, 1, 1), rimColor, rimLerp);
|
||||||
|
}
|
||||||
|
|
||||||
|
ENDCG
|
||||||
|
}
|
||||||
|
|
||||||
|
Pass {
|
||||||
|
Name "Outline"
|
||||||
|
Tags {
|
||||||
|
}
|
||||||
|
Cull Front
|
||||||
|
|
||||||
|
CGPROGRAM
|
||||||
|
#pragma vertex vert
|
||||||
|
#pragma fragment frag
|
||||||
|
#include "UnityCG.cginc"
|
||||||
|
#include "Lighting.cginc"
|
||||||
|
|
||||||
|
uniform sampler2D _MainTex;
|
||||||
|
uniform float4 _MainTex_ST;
|
||||||
|
uniform sampler2D _BaseTex;
|
||||||
|
uniform float4 _BaseTex_ST;
|
||||||
|
|
||||||
|
uniform float _OutlineWidth;
|
||||||
|
uniform float4 _OutlineColor;
|
||||||
|
|
||||||
|
struct VertexInput {
|
||||||
|
float4 vertex : POSITION;
|
||||||
|
float3 normal : NORMAL;
|
||||||
|
float2 texcoord0 : TEXCOORD0;
|
||||||
|
};
|
||||||
|
struct VertexOutput {
|
||||||
|
float4 pos : SV_POSITION;
|
||||||
|
float2 uv0 : TEXCOORD0;
|
||||||
|
float4 posWorld : TEXCOORD1;
|
||||||
|
};
|
||||||
|
|
||||||
|
VertexOutput vert (VertexInput v) {
|
||||||
|
VertexOutput o = (VertexOutput)0;
|
||||||
|
float outlineScale = _OutlineWidth * 0.001;
|
||||||
|
o.pos = UnityObjectToClipPos(float4(v.vertex.xyz + v.normal * outlineScale, 1));
|
||||||
|
o.uv0 = v.texcoord0;
|
||||||
|
o.posWorld = mul(unity_ObjectToWorld, v.vertex);
|
||||||
|
return o;
|
||||||
|
}
|
||||||
|
|
||||||
|
float4 frag(VertexOutput i): COLOR {
|
||||||
|
float4 diff = tex2D(_MainTex, TRANSFORM_TEX(i.uv0, _MainTex));
|
||||||
|
float4 base = tex2D(_BaseTex, TRANSFORM_TEX(i.uv0, _BaseTex));
|
||||||
|
|
||||||
|
float3 lightColor = saturate(max(_LightColor0, max(ShadeSH9(half4(0, 0, 0, 1)).rgb, ShadeSH9(half4(0, -1, 0, 1)).rgb)));
|
||||||
|
float4 outlineColor = lerp(_OutlineColor, diff, 0.2) * fixed4(lightColor, 1);
|
||||||
|
|
||||||
|
clip(base.b - 0.5);
|
||||||
|
|
||||||
|
return fixed4(outlineColor.rgb, 1);
|
||||||
|
}
|
||||||
|
ENDCG
|
||||||
|
}
|
||||||
|
|
||||||
|
Pass {
|
||||||
|
Name "ShadowCaster"
|
||||||
|
Tags {
|
||||||
|
"LightMode"="ShadowCaster"
|
||||||
|
}
|
||||||
|
|
||||||
|
CGPROGRAM
|
||||||
|
#pragma vertex vert
|
||||||
|
#pragma fragment frag
|
||||||
|
#define UNITY_PASS_SHADOWCASTER
|
||||||
|
#include "UnityCG.cginc"
|
||||||
|
#include "Lighting.cginc"
|
||||||
|
|
||||||
|
uniform sampler2D _BaseTex;
|
||||||
|
uniform float4 _BaseTex_ST;
|
||||||
|
|
||||||
|
struct VertexInput {
|
||||||
|
float4 vertex : POSITION;
|
||||||
|
float2 texcoord0 : TEXCOORD0;
|
||||||
|
};
|
||||||
|
struct VertexOutput {
|
||||||
|
V2F_SHADOW_CASTER;
|
||||||
|
float2 uv0 : TEXCOORD1;
|
||||||
|
};
|
||||||
|
|
||||||
|
VertexOutput vert (VertexInput v) {
|
||||||
|
VertexOutput o;
|
||||||
|
o.uv0 = v.texcoord0;
|
||||||
|
o.pos = UnityObjectToClipPos(v.vertex);
|
||||||
|
TRANSFER_SHADOW_CASTER(o);
|
||||||
|
return o;
|
||||||
|
}
|
||||||
|
|
||||||
|
float4 frag(VertexOutput i): COLOR {
|
||||||
|
float4 base = tex2D(_BaseTex, TRANSFORM_TEX(i.uv0, _BaseTex));
|
||||||
|
|
||||||
|
clip(base.b - 0.5);
|
||||||
|
|
||||||
|
SHADOW_CASTER_FRAGMENT(i);
|
||||||
|
}
|
||||||
|
|
||||||
|
ENDCG
|
||||||
|
}
|
||||||
|
}
|
||||||
|
FallBack "Diffuse"
|
||||||
|
}
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: e33c55b5d7d517442a6d826f7e14e969
|
||||||
|
ShaderImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
defaultTextures: []
|
||||||
|
nonModifiableTextures: []
|
||||||
|
preprocessorOverride: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,125 @@
|
|||||||
|
|
||||||
|
Shader "Uma/Eye" {
|
||||||
|
Properties {
|
||||||
|
_MainTex ("Eye Diffuse (_eye0)", 2D) = "white" {}
|
||||||
|
_Highlight00 ("Highlight #1 (_hi00)", 2D) = "black" {}
|
||||||
|
_Highlight01 ("Highlight #2 (_hi01)", 2D) = "black" {}
|
||||||
|
_Highlight02 ("Highlight #3 (_hi02)", 2D) = "black" {}
|
||||||
|
_EyeSelect ("Eye Select", Int) = 0
|
||||||
|
_Show00 ("Show #1", Range(0.01, 1)) = 0.35
|
||||||
|
_Show01 ("Show #2", Range(0.01, 1)) = 0.35
|
||||||
|
}
|
||||||
|
SubShader {
|
||||||
|
Tags {
|
||||||
|
"RenderType"="Transparent"
|
||||||
|
"VRCFallback"="ToonCutout"
|
||||||
|
}
|
||||||
|
|
||||||
|
Pass {
|
||||||
|
Name "Forward"
|
||||||
|
Tags {
|
||||||
|
"LightMode"="ForwardBase"
|
||||||
|
}
|
||||||
|
Cull Off
|
||||||
|
|
||||||
|
CGPROGRAM
|
||||||
|
#pragma vertex vert
|
||||||
|
#pragma fragment frag
|
||||||
|
#include "UnityCG.cginc"
|
||||||
|
#include "AutoLight.cginc"
|
||||||
|
#include "Lighting.cginc"
|
||||||
|
|
||||||
|
// Standard diffuse
|
||||||
|
uniform sampler2D _MainTex;
|
||||||
|
uniform float4 _MainTex_ST;
|
||||||
|
uniform sampler2D _Highlight00;
|
||||||
|
uniform float4 _Highlight00_ST;
|
||||||
|
uniform sampler2D _Highlight01;
|
||||||
|
uniform float4 _Highlight01_ST;
|
||||||
|
uniform sampler2D _Highlight02;
|
||||||
|
uniform float4 _Highlight02_ST;
|
||||||
|
|
||||||
|
int _EyeSelect;
|
||||||
|
|
||||||
|
float _Show00;
|
||||||
|
float _Show01;
|
||||||
|
|
||||||
|
struct VertexInput {
|
||||||
|
float4 vertex : POSITION;
|
||||||
|
float3 normal : NORMAL;
|
||||||
|
float2 texcoord0 : TEXCOORD0;
|
||||||
|
};
|
||||||
|
struct VertexOutput {
|
||||||
|
float4 pos: SV_POSITION;
|
||||||
|
float2 uv0 : TEXCOORD0;
|
||||||
|
float4 posWorld : TEXCOORD1;
|
||||||
|
float3 normalDir : TEXCOORD2;
|
||||||
|
};
|
||||||
|
|
||||||
|
VertexOutput vert (VertexInput v) {
|
||||||
|
VertexOutput o;
|
||||||
|
o.uv0 = v.texcoord0;
|
||||||
|
o.pos = UnityObjectToClipPos(v.vertex.xyz);
|
||||||
|
o.posWorld = mul(unity_ObjectToWorld, v.vertex);
|
||||||
|
o.normalDir = UnityObjectToWorldNormal(v.normal);
|
||||||
|
TRANSFER_VERTEX_TO_FRAGMENT(o)
|
||||||
|
return o;
|
||||||
|
}
|
||||||
|
|
||||||
|
float4 frag (VertexOutput i): COLOR {
|
||||||
|
float2 eyeUv = float2(i.uv0.x + (_EyeSelect * 0.25), i.uv0.y);
|
||||||
|
float4 diff = tex2D(_MainTex, TRANSFORM_TEX(eyeUv, _MainTex));
|
||||||
|
float2 altUv = float2(i.uv0.x * 4, i.uv0.y * 2);
|
||||||
|
float4 hi00 = tex2D(_Highlight00, TRANSFORM_TEX(altUv, _Highlight00));
|
||||||
|
float4 hi01 = tex2D(_Highlight01, TRANSFORM_TEX(altUv, _Highlight01));
|
||||||
|
float4 hi02 = tex2D(_Highlight02, TRANSFORM_TEX(altUv, _Highlight02));
|
||||||
|
|
||||||
|
float4 hl00 = step(_Show00, hi00);
|
||||||
|
float4 hl01 = step(_Show01, hi01);
|
||||||
|
|
||||||
|
float3 lightColor = saturate(max(_LightColor0, max(ShadeSH9(half4(0, 0, 0, 1)).rgb, ShadeSH9(half4(0, -1, 0, 1)).rgb)));
|
||||||
|
return (diff + hl00 + hl01) * fixed4(lightColor, 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
ENDCG
|
||||||
|
}
|
||||||
|
|
||||||
|
Pass {
|
||||||
|
Name "ShadowCaster"
|
||||||
|
Tags {
|
||||||
|
"LightMode"="ShadowCaster"
|
||||||
|
}
|
||||||
|
|
||||||
|
CGPROGRAM
|
||||||
|
#pragma vertex vert
|
||||||
|
#pragma fragment frag
|
||||||
|
#define UNITY_PASS_SHADOWCASTER
|
||||||
|
#include "UnityCG.cginc"
|
||||||
|
#include "Lighting.cginc"
|
||||||
|
|
||||||
|
struct VertexInput {
|
||||||
|
float4 vertex : POSITION;
|
||||||
|
float2 texcoord0 : TEXCOORD0;
|
||||||
|
};
|
||||||
|
struct VertexOutput {
|
||||||
|
V2F_SHADOW_CASTER;
|
||||||
|
float2 uv0 : TEXCOORD1;
|
||||||
|
};
|
||||||
|
|
||||||
|
VertexOutput vert (VertexInput v) {
|
||||||
|
VertexOutput o;
|
||||||
|
o.uv0 = v.texcoord0;
|
||||||
|
o.pos = UnityObjectToClipPos(v.vertex);
|
||||||
|
TRANSFER_SHADOW_CASTER(o);
|
||||||
|
return o;
|
||||||
|
}
|
||||||
|
|
||||||
|
float4 frag(VertexOutput i): COLOR {
|
||||||
|
SHADOW_CASTER_FRAGMENT(i);
|
||||||
|
}
|
||||||
|
|
||||||
|
ENDCG
|
||||||
|
}
|
||||||
|
}
|
||||||
|
FallBack "Diffuse"
|
||||||
|
}
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 09e6d87c36af83746a4eded3b2751afe
|
||||||
|
ShaderImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
defaultTextures: []
|
||||||
|
nonModifiableTextures: []
|
||||||
|
preprocessorOverride: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,128 @@
|
|||||||
|
|
||||||
|
Shader "Uma/Face" {
|
||||||
|
Properties {
|
||||||
|
_MainTex ("Diffuse (_diff)", 2D) = "white" {}
|
||||||
|
_ShadTex ("Shaded (_shad_c)", 2D) = "black" {}
|
||||||
|
_BaseTex ("Base Map (_base)", 2D) = "white" {}
|
||||||
|
_CtrlTex ("Control Map (_ctrl)", 2D) = "white" {}
|
||||||
|
}
|
||||||
|
SubShader {
|
||||||
|
Tags {
|
||||||
|
"RenderType"="Transparent"
|
||||||
|
"VRCFallback"="ToonCutout"
|
||||||
|
}
|
||||||
|
|
||||||
|
Pass {
|
||||||
|
Name "Forward"
|
||||||
|
Tags {
|
||||||
|
"LightMode"="ForwardBase"
|
||||||
|
}
|
||||||
|
Cull Off
|
||||||
|
|
||||||
|
CGPROGRAM
|
||||||
|
#pragma vertex vert
|
||||||
|
#pragma fragment frag
|
||||||
|
#include "UnityCG.cginc"
|
||||||
|
#include "AutoLight.cginc"
|
||||||
|
#include "Lighting.cginc"
|
||||||
|
|
||||||
|
// Standard diffuse
|
||||||
|
uniform sampler2D _MainTex;
|
||||||
|
uniform float4 _MainTex_ST;
|
||||||
|
// Shaded version of diffuse
|
||||||
|
uniform sampler2D _ShadTex;
|
||||||
|
uniform float4 _ShadTex_ST;
|
||||||
|
// ??
|
||||||
|
uniform sampler2D _BaseTex;
|
||||||
|
uniform float4 _BaseTex_ST;
|
||||||
|
// ??
|
||||||
|
uniform sampler2D _CtrlTex;
|
||||||
|
uniform float4 _CtrlTex_ST;
|
||||||
|
|
||||||
|
struct VertexInput {
|
||||||
|
float4 vertex : POSITION;
|
||||||
|
float3 normal : NORMAL;
|
||||||
|
float2 texcoord0 : TEXCOORD0;
|
||||||
|
};
|
||||||
|
struct VertexOutput {
|
||||||
|
float4 pos: SV_POSITION;
|
||||||
|
float2 uv0 : TEXCOORD0;
|
||||||
|
float4 posWorld : TEXCOORD1;
|
||||||
|
float3 normalDir : TEXCOORD2;
|
||||||
|
};
|
||||||
|
|
||||||
|
VertexOutput vert (VertexInput v) {
|
||||||
|
VertexOutput o;
|
||||||
|
o.uv0 = v.texcoord0;
|
||||||
|
o.pos = UnityObjectToClipPos(v.vertex.xyz);
|
||||||
|
o.posWorld = mul(unity_ObjectToWorld, v.vertex);
|
||||||
|
o.normalDir = UnityObjectToWorldNormal(v.normal);
|
||||||
|
TRANSFER_VERTEX_TO_FRAGMENT(o)
|
||||||
|
return o;
|
||||||
|
}
|
||||||
|
|
||||||
|
float4 frag (VertexOutput i): COLOR {
|
||||||
|
float4 diff = tex2D(_MainTex, TRANSFORM_TEX(i.uv0, _MainTex));
|
||||||
|
float4 shad = tex2D(_ShadTex, TRANSFORM_TEX(i.uv0, _ShadTex));
|
||||||
|
float4 base = tex2D(_BaseTex, TRANSFORM_TEX(i.uv0, _BaseTex));
|
||||||
|
float4 ctrl = tex2D(_CtrlTex, TRANSFORM_TEX(i.uv0, _CtrlTex));
|
||||||
|
|
||||||
|
float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz);
|
||||||
|
float facing = dot(i.normalDir, viewDirection);
|
||||||
|
|
||||||
|
// Lighting
|
||||||
|
float3 lightDirection = float3(0, -1, 0);
|
||||||
|
float halfLambert = 0.5 * dot(i.normalDir, lightDirection) + 0.5;
|
||||||
|
float shadowLerp = saturate(1 + ((base.r * 2 * halfLambert - 0.3) * 50));
|
||||||
|
float3 lightColor = saturate(max(_LightColor0, max(ShadeSH9(half4(0, 0, 0, 1)).rgb, ShadeSH9(half4(0, -1, 0, 1)).rgb)));
|
||||||
|
float4 shadedDiff = lerp(shad, diff, shadowLerp) * fixed4(lightColor, 1);
|
||||||
|
|
||||||
|
// Rim
|
||||||
|
float rimLerp = (1 - saturate(facing * 8)) * ctrl.b;
|
||||||
|
float4 rimColor = diff * 10;
|
||||||
|
|
||||||
|
return shadedDiff * lerp(float4(1, 1, 1, 1), rimColor, rimLerp);
|
||||||
|
}
|
||||||
|
|
||||||
|
ENDCG
|
||||||
|
}
|
||||||
|
|
||||||
|
Pass {
|
||||||
|
Name "ShadowCaster"
|
||||||
|
Tags {
|
||||||
|
"LightMode"="ShadowCaster"
|
||||||
|
}
|
||||||
|
|
||||||
|
CGPROGRAM
|
||||||
|
#pragma vertex vert
|
||||||
|
#pragma fragment frag
|
||||||
|
#define UNITY_PASS_SHADOWCASTER
|
||||||
|
#include "UnityCG.cginc"
|
||||||
|
#include "Lighting.cginc"
|
||||||
|
|
||||||
|
struct VertexInput {
|
||||||
|
float4 vertex : POSITION;
|
||||||
|
float2 texcoord0 : TEXCOORD0;
|
||||||
|
};
|
||||||
|
struct VertexOutput {
|
||||||
|
V2F_SHADOW_CASTER;
|
||||||
|
float2 uv0 : TEXCOORD1;
|
||||||
|
};
|
||||||
|
|
||||||
|
VertexOutput vert (VertexInput v) {
|
||||||
|
VertexOutput o;
|
||||||
|
o.uv0 = v.texcoord0;
|
||||||
|
o.pos = UnityObjectToClipPos(v.vertex);
|
||||||
|
TRANSFER_SHADOW_CASTER(o);
|
||||||
|
return o;
|
||||||
|
}
|
||||||
|
|
||||||
|
float4 frag(VertexOutput i): COLOR {
|
||||||
|
SHADOW_CASTER_FRAGMENT(i);
|
||||||
|
}
|
||||||
|
|
||||||
|
ENDCG
|
||||||
|
}
|
||||||
|
}
|
||||||
|
FallBack "Diffuse"
|
||||||
|
}
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 8dd9a36995719164398728c3117a5cf8
|
||||||
|
ShaderImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
defaultTextures: []
|
||||||
|
nonModifiableTextures: []
|
||||||
|
preprocessorOverride: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,166 @@
|
|||||||
|
|
||||||
|
Shader "Uma/Tail" {
|
||||||
|
Properties {
|
||||||
|
_MainTex ("Diffuse (_diff)", 2D) = "white" {}
|
||||||
|
_ShadTex ("Shaded (_shad_c)", 2D) = "black" {}
|
||||||
|
_OutlineWidth ("Outline Width", float) = 2.0
|
||||||
|
[HideInInspector] _OutlineColor ("Outline Color", Color) = (0.125,0.047,0,0.098)
|
||||||
|
}
|
||||||
|
SubShader {
|
||||||
|
Tags {
|
||||||
|
"RenderType"="Transparent"
|
||||||
|
"VRCFallback"="ToonCutout"
|
||||||
|
}
|
||||||
|
|
||||||
|
Pass {
|
||||||
|
Name "Forward"
|
||||||
|
Tags {
|
||||||
|
"LightMode"="ForwardBase"
|
||||||
|
}
|
||||||
|
Cull Off
|
||||||
|
|
||||||
|
CGPROGRAM
|
||||||
|
#pragma vertex vert
|
||||||
|
#pragma fragment frag
|
||||||
|
#include "UnityCG.cginc"
|
||||||
|
#include "AutoLight.cginc"
|
||||||
|
#include "Lighting.cginc"
|
||||||
|
|
||||||
|
// Standard diffuse
|
||||||
|
uniform sampler2D _MainTex;
|
||||||
|
uniform float4 _MainTex_ST;
|
||||||
|
// Shaded version of diffuse
|
||||||
|
uniform sampler2D _ShadTex;
|
||||||
|
uniform float4 _ShadTex_ST;
|
||||||
|
|
||||||
|
struct VertexInput {
|
||||||
|
float4 vertex : POSITION;
|
||||||
|
float3 normal : NORMAL;
|
||||||
|
float2 texcoord0 : TEXCOORD0;
|
||||||
|
};
|
||||||
|
struct VertexOutput {
|
||||||
|
float4 pos: SV_POSITION;
|
||||||
|
float2 uv0 : TEXCOORD0;
|
||||||
|
float4 posWorld : TEXCOORD1;
|
||||||
|
float3 normalDir : TEXCOORD2;
|
||||||
|
};
|
||||||
|
|
||||||
|
VertexOutput vert (VertexInput v) {
|
||||||
|
VertexOutput o;
|
||||||
|
o.uv0 = v.texcoord0;
|
||||||
|
o.pos = UnityObjectToClipPos(v.vertex.xyz);
|
||||||
|
o.posWorld = mul(unity_ObjectToWorld, v.vertex);
|
||||||
|
o.normalDir = UnityObjectToWorldNormal(v.normal);
|
||||||
|
TRANSFER_VERTEX_TO_FRAGMENT(o)
|
||||||
|
return o;
|
||||||
|
}
|
||||||
|
|
||||||
|
float4 frag (VertexOutput i): COLOR {
|
||||||
|
float4 diff = tex2D(_MainTex, TRANSFORM_TEX(i.uv0, _MainTex));
|
||||||
|
float4 shad = tex2D(_ShadTex, TRANSFORM_TEX(i.uv0, _ShadTex));
|
||||||
|
|
||||||
|
float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz);
|
||||||
|
float facing = dot(i.normalDir, viewDirection);
|
||||||
|
|
||||||
|
// Lighting
|
||||||
|
float3 lightDirection = normalize(lerp(_WorldSpaceLightPos0.xyz, _WorldSpaceLightPos0.xyz - i.posWorld.xyz, _WorldSpaceLightPos0.w));
|
||||||
|
float halfLambert = 0.5 * dot(i.normalDir, lightDirection) + 0.5;
|
||||||
|
float shadowLerp = saturate(1 + ((2 * halfLambert - 0.2) * 100));
|
||||||
|
float3 lightColor = saturate(max(_LightColor0, max(ShadeSH9(half4(0, 0, 0, 1)).rgb, ShadeSH9(half4(0, -1, 0, 1)).rgb)));
|
||||||
|
float4 shadedDiff = lerp(shad, diff, shadowLerp) * fixed4(lightColor, 1);
|
||||||
|
|
||||||
|
return shadedDiff;
|
||||||
|
}
|
||||||
|
|
||||||
|
ENDCG
|
||||||
|
}
|
||||||
|
|
||||||
|
Pass {
|
||||||
|
Name "Outline"
|
||||||
|
Tags {
|
||||||
|
}
|
||||||
|
Offset 1, 1
|
||||||
|
Cull Front
|
||||||
|
|
||||||
|
CGPROGRAM
|
||||||
|
#pragma vertex vert
|
||||||
|
#pragma fragment frag
|
||||||
|
#include "UnityCG.cginc"
|
||||||
|
#include "Lighting.cginc"
|
||||||
|
|
||||||
|
uniform sampler2D _MainTex;
|
||||||
|
uniform float4 _MainTex_ST;
|
||||||
|
|
||||||
|
uniform float _OutlineWidth;
|
||||||
|
uniform float4 _OutlineColor;
|
||||||
|
|
||||||
|
struct VertexInput {
|
||||||
|
float4 vertex : POSITION;
|
||||||
|
float3 normal : NORMAL;
|
||||||
|
float2 texcoord0 : TEXCOORD0;
|
||||||
|
};
|
||||||
|
struct VertexOutput {
|
||||||
|
float4 pos : SV_POSITION;
|
||||||
|
float2 uv0 : TEXCOORD0;
|
||||||
|
float4 posWorld : TEXCOORD1;
|
||||||
|
};
|
||||||
|
|
||||||
|
VertexOutput vert (VertexInput v) {
|
||||||
|
VertexOutput o = (VertexOutput)0;
|
||||||
|
float outlineScale = _OutlineWidth * 0.001;
|
||||||
|
o.pos = UnityObjectToClipPos(float4(v.vertex.xyz + v.normal * outlineScale, 1));
|
||||||
|
o.uv0 = v.texcoord0;
|
||||||
|
o.posWorld = mul(unity_ObjectToWorld, v.vertex);
|
||||||
|
return o;
|
||||||
|
}
|
||||||
|
|
||||||
|
float4 frag(VertexOutput i): COLOR {
|
||||||
|
float4 diff = tex2D(_MainTex, TRANSFORM_TEX(i.uv0, _MainTex));
|
||||||
|
|
||||||
|
float3 lightColor = saturate(max(_LightColor0, max(ShadeSH9(half4(0, 0, 0, 1)).rgb, ShadeSH9(half4(0, -1, 0, 1)).rgb)));
|
||||||
|
float4 outlineColor = lerp(_OutlineColor, diff, 0.2) * fixed4(lightColor, 1);
|
||||||
|
|
||||||
|
return fixed4(outlineColor.rgb, 1);
|
||||||
|
}
|
||||||
|
ENDCG
|
||||||
|
}
|
||||||
|
|
||||||
|
Pass {
|
||||||
|
Name "ShadowCaster"
|
||||||
|
Tags {
|
||||||
|
"LightMode"="ShadowCaster"
|
||||||
|
}
|
||||||
|
|
||||||
|
CGPROGRAM
|
||||||
|
#pragma vertex vert
|
||||||
|
#pragma fragment frag
|
||||||
|
#define UNITY_PASS_SHADOWCASTER
|
||||||
|
#include "UnityCG.cginc"
|
||||||
|
#include "Lighting.cginc"
|
||||||
|
|
||||||
|
struct VertexInput {
|
||||||
|
float4 vertex : POSITION;
|
||||||
|
float2 texcoord0 : TEXCOORD0;
|
||||||
|
};
|
||||||
|
struct VertexOutput {
|
||||||
|
V2F_SHADOW_CASTER;
|
||||||
|
float2 uv0 : TEXCOORD1;
|
||||||
|
};
|
||||||
|
|
||||||
|
VertexOutput vert (VertexInput v) {
|
||||||
|
VertexOutput o;
|
||||||
|
o.uv0 = v.texcoord0;
|
||||||
|
o.pos = UnityObjectToClipPos(v.vertex);
|
||||||
|
TRANSFER_SHADOW_CASTER(o);
|
||||||
|
return o;
|
||||||
|
}
|
||||||
|
|
||||||
|
float4 frag(VertexOutput i): COLOR {
|
||||||
|
SHADOW_CASTER_FRAGMENT(i);
|
||||||
|
}
|
||||||
|
|
||||||
|
ENDCG
|
||||||
|
}
|
||||||
|
}
|
||||||
|
FallBack "Diffuse"
|
||||||
|
}
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 521ea3109ac72d04f8ebea353d6f7d9d
|
||||||
|
ShaderImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
defaultTextures: []
|
||||||
|
nonModifiableTextures: []
|
||||||
|
preprocessorOverride: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: ea36e4aa473ea4a40a6c1a192ddeac29
|
||||||
|
folderAsset: yes
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 6bce01a81f00b804e8200b6df3eae457
|
||||||
|
folderAsset: yes
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,43 @@
|
|||||||
|
%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: 78b2425a2284af743826c689403a4924, type: 3}
|
||||||
|
m_Name: Centered_Texture_UV
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
m_functionInfo: "// Made with Amplify Shader Editor\n// Available at the Unity
|
||||||
|
Asset Store - http://u3d.as/y3X \n/*ASEBEGIN\nVersion=18912\n1274;705;989;646;1611.433;663.2083;2.804105;True;False\nNode;AmplifyShaderEditor.TexCoordVertexDataNode;10;-864.7002,5.2;Inherit;False;0;2;0;5;FLOAT2;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4\nNode;AmplifyShaderEditor.SimpleAddOpNode;2;-58.43505,8.174695;Inherit;False;2;2;0;FLOAT2;0,0;False;1;FLOAT2;0,0;False;1;FLOAT2;0\nNode;AmplifyShaderEditor.SimpleMultiplyOpNode;3;83.44295,8.174695;Inherit;False;2;2;0;FLOAT2;0,0;False;1;FLOAT2;0,0;False;1;FLOAT2;0\nNode;AmplifyShaderEditor.RangedFloatNode;11;-651.2002,78.7;Inherit;False;Constant;_Float0;Float
|
||||||
|
0;0;0;Create;True;0;0;0;False;0;False;0.5;0;0;0;0;1;FLOAT;0\nNode;AmplifyShaderEditor.FunctionSwitch;12;-323.1221,3.001092;Inherit;False;PRE
|
||||||
|
subtract half;True;1;2;0;In 0;In 1;Object;-1;9;0;FLOAT2;0,0;False;1;FLOAT2;0,0;False;2;FLOAT;0;False;3;FLOAT;0;False;4;FLOAT;0;False;5;FLOAT;0;False;6;FLOAT;0;False;7;FLOAT;0;False;8;FLOAT;0;False;1;FLOAT2;0\nNode;AmplifyShaderEditor.SimpleSubtractOpNode;1;-480.5436,30.78948;Inherit;False;2;0;FLOAT2;0,0;False;1;FLOAT;0.5;False;1;FLOAT2;0\nNode;AmplifyShaderEditor.SimpleAddOpNode;4;227.5646,62.17469;Inherit;False;2;2;0;FLOAT2;0,0;False;1;FLOAT;0.5;False;1;FLOAT2;0\nNode;AmplifyShaderEditor.FunctionSwitch;13;358.0586,3.687207;Inherit;False;POST
|
||||||
|
add half;True;1;2;2;In 0;In 1;Object;-1;9;0;FLOAT2;0,0;False;1;FLOAT2;0,0;False;2;FLOAT;0;False;3;FLOAT;0;False;4;FLOAT;0;False;5;FLOAT;0;False;6;FLOAT;0;False;7;FLOAT;0;False;8;FLOAT;0;False;1;FLOAT2;0\nNode;AmplifyShaderEditor.FunctionInput;6;-649.7002,0.2;Inherit;False;UV;2;0;False;1;0;FLOAT2;0,0;False;1;FLOAT2;0\nNode;AmplifyShaderEditor.FunctionInput;8;-269,102.6999;Inherit;False;Offset;2;2;False;1;0;FLOAT2;0,0;False;1;FLOAT2;0\nNode;AmplifyShaderEditor.FunctionInput;7;-84.40004,101.8;Inherit;False;Tiling;2;1;False;1;0;FLOAT2;1,1;False;1;FLOAT2;0\nNode;AmplifyShaderEditor.FunctionOutput;0;598.6,8.8;Inherit;False;True;-1;Out;0;False;1;0;FLOAT2;0,0;False;1;FLOAT2;0\nWireConnection;2;0;12;0\nWireConnection;2;1;8;0\nWireConnection;3;0;2;0\nWireConnection;3;1;7;0\nWireConnection;12;0;6;0\nWireConnection;12;1;1;0\nWireConnection;1;0;6;0\nWireConnection;1;1;11;0\nWireConnection;4;0;3;0\nWireConnection;4;1;11;0\nWireConnection;13;0;3;0\nWireConnection;13;1;4;0\nWireConnection;6;0;10;0\nWireConnection;0;0;13;0\nASEEND*/\n//CHKSM=8A6BF964D6080F50F6ABB0CA940DEC68843F3C90"
|
||||||
|
m_functionName:
|
||||||
|
m_description: TexCoord UVs as Default
|
||||||
|
m_additionalIncludes:
|
||||||
|
m_additionalIncludes: []
|
||||||
|
m_outsideIncludes: []
|
||||||
|
m_additionalPragmas:
|
||||||
|
m_additionalPragmas: []
|
||||||
|
m_outsidePragmas: []
|
||||||
|
m_additionalDirectives:
|
||||||
|
m_validData: 0
|
||||||
|
m_isDirty: 0
|
||||||
|
m_moduleName: ' Additional Directives'
|
||||||
|
m_independentModule: 1
|
||||||
|
m_customEdited: 0
|
||||||
|
m_additionalDirectives: []
|
||||||
|
m_shaderFunctionDirectives: []
|
||||||
|
m_nativeDirectives: []
|
||||||
|
m_nativeDirectivesIndex: -1
|
||||||
|
m_nativeDirectivesFoldout: 0
|
||||||
|
m_directivesSaveItems: []
|
||||||
|
m_nodeCategory: 3
|
||||||
|
m_customNodeCategory:
|
||||||
|
m_previewPosition: 0
|
||||||
|
m_hidden: 0
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: b57a5970c828c684cbfd13cde8f02ce5
|
||||||
|
NativeFormatImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
mainObjectFileID: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,54 @@
|
|||||||
|
%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: 78b2425a2284af743826c689403a4924, type: 3}
|
||||||
|
m_Name: Dot_Creation
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
m_functionInfo: "// Made with Amplify Shader Editor\n// Available at the Unity Asset
|
||||||
|
Store - http://u3d.as/y3X \n/*ASEBEGIN\nVersion=18900\n2730;141;1978;1084;559.1395;359.0948;1;True;True\nNode;AmplifyShaderEditor.ConditionalIfNode;3;-1267.551,74.28906;Inherit;False;False;5;0;FLOAT;0;False;1;FLOAT;0;False;2;FLOAT3;0,0,0;False;3;FLOAT3;0,0,0;False;4;FLOAT;0;False;1;FLOAT3;0\nNode;AmplifyShaderEditor.FunctionInput;17;-984.6958,-383.1276;Inherit;False;Light
|
||||||
|
Direction Setting;1;1;False;1;0;FLOAT;0;False;1;FLOAT;0\nNode;AmplifyShaderEditor.DotProductOpNode;50;5.864481,631.6702;Inherit;False;2;0;FLOAT3;0,0,0;False;1;FLOAT3;0,0,0;False;1;FLOAT;0\nNode;AmplifyShaderEditor.WorldPosInputsNode;40;-927.6497,508.8965;Inherit;False;0;4;FLOAT3;0;FLOAT;1;FLOAT;2;FLOAT;3\nNode;AmplifyShaderEditor.WorldSpaceLightDirHlpNode;36;-1539.93,-263.8102;Inherit;True;True;1;0;FLOAT;0;False;4;FLOAT3;0;FLOAT;1;FLOAT;2;FLOAT;3\nNode;AmplifyShaderEditor.DotProductOpNode;46;-224.0256,-66.7878;Inherit;False;2;0;FLOAT3;0,0,0;False;1;FLOAT3;0,0,0;False;1;FLOAT;0\nNode;AmplifyShaderEditor.WorldNormalVector;47;-561.067,190.5634;Inherit;False;True;1;0;FLOAT3;0,0,1;False;4;FLOAT3;0;FLOAT;1;FLOAT;2;FLOAT;3\nNode;AmplifyShaderEditor.NormalizeNode;48;-555.2034,402.4863;Inherit;False;False;1;0;FLOAT3;0,0,0;False;1;FLOAT3;0\nNode;AmplifyShaderEditor.SimpleAddOpNode;49;-302.2365,670.5883;Inherit;False;2;2;0;FLOAT3;0,0,0;False;1;FLOAT3;0,0,0;False;1;FLOAT3;0\nNode;AmplifyShaderEditor.DotProductOpNode;31;-115.166,400.1263;Inherit;False;2;0;FLOAT3;0,0,0;False;1;FLOAT3;0,0,0;False;1;FLOAT;0\nNode;AmplifyShaderEditor.CustomExpressionNode;32;-713.65,513.8965;Inherit;False;#if
|
||||||
|
UNITY_SINGLE_PASS_STEREO$float3 cameraPos = float3((unity_StereoWorldSpaceCameraPos[0]+
|
||||||
|
unity_StereoWorldSpaceCameraPos[1])*.5)@ $#else$float3 cameraPos = _WorldSpaceCameraPos@$#endif$float3
|
||||||
|
worldViewDir = normalize((cameraPos - worldPos))@$return worldViewDir@;3;False;1;True;worldPos;FLOAT3;0,0,0;In;;Float;False;Stereo
|
||||||
|
Camera View Direction;True;False;0;1;0;FLOAT3;0,0,0;False;1;FLOAT3;0\nNode;AmplifyShaderEditor.NormalizeNode;26;-1752.755,392.6116;Inherit;False;False;1;0;FLOAT3;0,0,0;False;1;FLOAT3;0\nNode;AmplifyShaderEditor.NormalizeNode;51;-161.6992,666.2639;Inherit;False;False;1;0;FLOAT3;0,0,0;False;1;FLOAT3;0\nNode;AmplifyShaderEditor.FunctionInput;34;-2238.546,194.7088;Inherit;False;View
|
||||||
|
Dir Offset Yaw;1;6;False;1;0;FLOAT;0;False;1;FLOAT;0\nNode;AmplifyShaderEditor.FunctionNode;27;-1982.785,409.4107;Inherit;False;FakeLightDir;-1;;638;cd44a314984e6d54bbbf431a1fcdff4b;0;2;1;FLOAT;0;False;18;FLOAT;0;False;1;FLOAT3;0\nNode;AmplifyShaderEditor.ConditionalIfNode;9;-661.8511,-120.3108;Inherit;False;False;5;0;FLOAT;0;False;1;FLOAT;0;False;2;FLOAT3;0,0,0;False;3;FLOAT3;0,0,0;False;4;FLOAT;0;False;1;FLOAT3;0\nNode;AmplifyShaderEditor.CustomExpressionNode;30;-2254.546,18.70866;Inherit;False;#if
|
||||||
|
UNITY_SINGLE_PASS_STEREO$float3 cameraPos = float3((unity_StereoWorldSpaceCameraPos[0]+
|
||||||
|
unity_StereoWorldSpaceCameraPos[1])*.5)@ $#else$float3 cameraPos = _WorldSpaceCameraPos@$#endif$return
|
||||||
|
cameraPos@;3;False;0;Stereo Camera View Position;True;False;0;0;1;FLOAT3;0\nNode;AmplifyShaderEditor.NormalizeNode;38;-1536.367,127.8187;Inherit;False;False;1;0;FLOAT3;0,0,0;False;1;FLOAT3;0\nNode;AmplifyShaderEditor.ConditionalIfNode;8;-1055.361,-136.637;Inherit;False;False;5;0;FLOAT;0;False;1;FLOAT;0;False;2;FLOAT3;0,0,0;False;3;FLOAT3;0,0,0;False;4;FLOAT;0;False;1;FLOAT3;0\nNode;AmplifyShaderEditor.FunctionInput;28;-2268.384,503.1104;Inherit;False;Fake
|
||||||
|
Light Dir Y;1;4;False;1;0;FLOAT;0;False;1;FLOAT;0\nNode;AmplifyShaderEditor.FunctionInput;29;-2263.784,409.4107;Inherit;False;Fake
|
||||||
|
Light Dir X;1;3;False;1;0;FLOAT;0;False;1;FLOAT;0\nNode;AmplifyShaderEditor.FunctionNode;25;-1907.23,110.8606;Inherit;False;View
|
||||||
|
Direction Offset;-1;;637;7c087a43276f11d4cbac544fa5cae594;0;3;295;FLOAT3;0,0,0;False;296;FLOAT;0;False;297;FLOAT;0;False;1;FLOAT3;0\nNode;AmplifyShaderEditor.FunctionInput;16;-1640.696,-54.12757;Inherit;False;Fallback
|
||||||
|
Light Direction;1;2;False;1;0;FLOAT;0;False;1;FLOAT;0\nNode;AmplifyShaderEditor.FunctionInput;12;-1458.696,-375.1276;Inherit;False;IsThereWorldLight;1;0;False;1;0;FLOAT;0;False;1;FLOAT;0\nNode;AmplifyShaderEditor.FunctionInput;33;-2238.546,114.7086;Inherit;False;View
|
||||||
|
Dir Offset Pitch;1;5;False;1;0;FLOAT;0;False;1;FLOAT;0\nNode;AmplifyShaderEditor.FunctionOutput;42;68.10706,404.9595;Inherit;False;False;-1;NdV;1;False;1;0;FLOAT;0;False;1;FLOAT;0\nNode;AmplifyShaderEditor.FunctionOutput;52;197.2115,623.0217;Inherit;False;False;-1;NdH;2;False;1;0;FLOAT;0;False;1;FLOAT;0\nNode;AmplifyShaderEditor.FunctionOutput;0;55.6214,-67.40279;Inherit;False;True;-1;NdL;0;False;1;0;FLOAT;0;False;1;FLOAT;0\nWireConnection;3;0;16;0\nWireConnection;3;2;38;0\nWireConnection;3;3;26;0\nWireConnection;50;0;47;0\nWireConnection;50;1;51;0\nWireConnection;46;0;9;0\nWireConnection;46;1;47;0\nWireConnection;48;0;9;0\nWireConnection;49;0;48;0\nWireConnection;49;1;32;0\nWireConnection;31;0;47;0\nWireConnection;31;1;32;0\nWireConnection;32;0;40;0\nWireConnection;26;0;27;0\nWireConnection;51;0;49;0\nWireConnection;27;1;29;0\nWireConnection;27;18;28;0\nWireConnection;9;0;17;0\nWireConnection;9;2;3;0\nWireConnection;9;3;8;0\nWireConnection;38;0;25;0\nWireConnection;8;0;12;0\nWireConnection;8;2;36;0\nWireConnection;8;3;3;0\nWireConnection;25;295;30;0\nWireConnection;25;296;33;0\nWireConnection;25;297;34;0\nWireConnection;42;0;31;0\nWireConnection;52;0;50;0\nWireConnection;0;0;46;0\nASEEND*/\n//CHKSM=57270F2D971CECE51796C20133BC7F5B69505209"
|
||||||
|
m_functionName:
|
||||||
|
m_description:
|
||||||
|
m_additionalIncludes:
|
||||||
|
m_additionalIncludes: []
|
||||||
|
m_outsideIncludes: []
|
||||||
|
m_additionalPragmas:
|
||||||
|
m_additionalPragmas: []
|
||||||
|
m_outsidePragmas: []
|
||||||
|
m_additionalDirectives:
|
||||||
|
m_validData: 0
|
||||||
|
m_isDirty: 0
|
||||||
|
m_moduleName: ' Additional Directives'
|
||||||
|
m_independentModule: 1
|
||||||
|
m_customEdited: 0
|
||||||
|
m_additionalDirectives: []
|
||||||
|
m_shaderFunctionDirectives: []
|
||||||
|
m_nativeDirectives: []
|
||||||
|
m_nativeDirectivesIndex: -1
|
||||||
|
m_nativeDirectivesFoldout: 0
|
||||||
|
m_directivesSaveItems: []
|
||||||
|
m_nodeCategory: 3
|
||||||
|
m_customNodeCategory:
|
||||||
|
m_previewPosition: 0
|
||||||
|
m_hidden: 0
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 5dc6ab91272cf5948b2879e6e6e1078b
|
||||||
|
NativeFormatImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
mainObjectFileID: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,41 @@
|
|||||||
|
%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: 78b2425a2284af743826c689403a4924, type: 3}
|
||||||
|
m_Name: FakeLightDir
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
m_functionInfo: "// Made with Amplify Shader Editor\n// Available at the Unity Asset
|
||||||
|
Store - http://u3d.as/y3X \n/*ASEBEGIN\nVersion=18719\n2885;182;2195;1072;2621.709;646.2035;1.776079;True;True\nNode;AmplifyShaderEditor.SimpleDivideOpNode;3;-766.0289,101.7025;Inherit;False;2;0;FLOAT;0;False;1;FLOAT;180;False;1;FLOAT;0\nNode;AmplifyShaderEditor.NormalizeNode;2;435.7711,180.5063;Inherit;False;1;0;FLOAT3;0,0,0;False;1;FLOAT3;0\nNode;AmplifyShaderEditor.SinOpNode;13;-272,208;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0\nNode;AmplifyShaderEditor.CosOpNode;7;-272,288;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0\nNode;AmplifyShaderEditor.CosOpNode;10;-272,368;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0\nNode;AmplifyShaderEditor.DynamicAppendNode;15;253.745,171.9334;Inherit;False;FLOAT3;4;0;FLOAT;0;False;1;FLOAT;0;False;2;FLOAT;0;False;3;FLOAT;0;False;1;FLOAT3;0\nNode;AmplifyShaderEditor.SinOpNode;9;-272,128;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0\nNode;AmplifyShaderEditor.FunctionInput;1;-961.9783,113.4478;Inherit;False;X;1;0;False;1;0;FLOAT;0;False;1;FLOAT;0\nNode;AmplifyShaderEditor.SimpleMultiplyOpNode;14;22.42889,307.2759;Inherit;False;3;3;0;FLOAT;0;False;1;FLOAT;0;False;2;FLOAT;0;False;1;FLOAT;0\nNode;AmplifyShaderEditor.FunctionInput;18;-973.363,241.5632;Inherit;False;Y;1;1;False;1;0;FLOAT;0;False;1;FLOAT;0\nNode;AmplifyShaderEditor.PiNode;6;-607.1745,228.6206;Inherit;False;1;0;FLOAT;1;False;1;FLOAT;0\nNode;AmplifyShaderEditor.PiNode;5;-619.0288,112.7025;Inherit;False;1;0;FLOAT;1;False;1;FLOAT;0\nNode;AmplifyShaderEditor.SimpleDivideOpNode;4;-745.9622,241.9843;Inherit;False;2;0;FLOAT;0;False;1;FLOAT;180;False;1;FLOAT;0\nNode;AmplifyShaderEditor.SimpleMultiplyOpNode;12;42.15698,95.17993;Inherit;False;3;3;0;FLOAT;0;False;1;FLOAT;0;False;2;FLOAT;0;False;1;FLOAT;0\nNode;AmplifyShaderEditor.CosOpNode;8;-272,48;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0\nNode;AmplifyShaderEditor.RangedFloatNode;11;-91.8431,215.1798;Inherit;False;Constant;_Float1;Float
|
||||||
|
0;1;0;Create;True;0;0;0;False;0;False;-1;0;0;0;0;1;FLOAT;0\nNode;AmplifyShaderEditor.FunctionOutput;0;616,172.5;Inherit;False;True;-1;Output;0;False;1;0;FLOAT3;0,0,0;False;1;FLOAT3;0\nWireConnection;3;0;1;0\nWireConnection;2;0;15;0\nWireConnection;13;0;5;0\nWireConnection;7;0;5;0\nWireConnection;10;0;6;0\nWireConnection;15;0;12;0\nWireConnection;15;1;13;0\nWireConnection;15;2;14;0\nWireConnection;9;0;6;0\nWireConnection;14;0;7;0\nWireConnection;14;1;10;0\nWireConnection;14;2;11;0\nWireConnection;6;0;4;0\nWireConnection;5;0;3;0\nWireConnection;4;0;18;0\nWireConnection;12;0;8;0\nWireConnection;12;1;9;0\nWireConnection;12;2;11;0\nWireConnection;8;0;5;0\nWireConnection;0;0;2;0\nASEEND*/\n//CHKSM=FFA46ACB312EDD066434DE1D4C48C14A93BC1A7A"
|
||||||
|
m_functionName:
|
||||||
|
m_description:
|
||||||
|
m_additionalIncludes:
|
||||||
|
m_additionalIncludes: []
|
||||||
|
m_outsideIncludes: []
|
||||||
|
m_additionalPragmas:
|
||||||
|
m_additionalPragmas: []
|
||||||
|
m_outsidePragmas: []
|
||||||
|
m_additionalDirectives:
|
||||||
|
m_validData: 0
|
||||||
|
m_isDirty: 0
|
||||||
|
m_moduleName: ' Additional Directives'
|
||||||
|
m_independentModule: 1
|
||||||
|
m_customEdited: 0
|
||||||
|
m_additionalDirectives: []
|
||||||
|
m_shaderFunctionDirectives: []
|
||||||
|
m_nativeDirectives: []
|
||||||
|
m_nativeDirectivesIndex: -1
|
||||||
|
m_nativeDirectivesFoldout: 0
|
||||||
|
m_directivesSaveItems: []
|
||||||
|
m_nodeCategory: 0
|
||||||
|
m_customNodeCategory: Arc System Works
|
||||||
|
m_previewPosition: 0
|
||||||
|
m_hidden: 0
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 4a27e92962c2c2649a3af0cd4f2903b6
|
||||||
|
NativeFormatImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
mainObjectFileID: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,43 @@
|
|||||||
|
%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: 78b2425a2284af743826c689403a4924, type: 3}
|
||||||
|
m_Name: Is_There_A_Light
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
m_functionInfo: "// Made with Amplify Shader Editor\n// Available at the Unity Asset
|
||||||
|
Store - http://u3d.as/y3X \n/*ASEBEGIN\nVersion=18800\n-2187;56;1978;1084;2871.405;707.5833;1;True;True\nNode;AmplifyShaderEditor.WorldSpaceLightDirHlpNode;1;-2123.09,-262.4436;Inherit;False;True;1;0;FLOAT;0;False;4;FLOAT3;0;FLOAT;1;FLOAT;2;FLOAT;3\nNode;AmplifyShaderEditor.LightColorNode;2;-2072.402,-77.29663;Inherit;True;0;3;COLOR;0;FLOAT3;1;FLOAT;2\nNode;AmplifyShaderEditor.AbsOpNode;3;-1881.6,-260.3427;Inherit;False;1;0;FLOAT3;0,0,0;False;1;FLOAT3;0\nNode;AmplifyShaderEditor.Compare;4;-1665.985,-262.2367;Inherit;False;2;4;0;FLOAT3;0,0,0;False;1;FLOAT3;0,0,0;False;2;FLOAT;1;False;3;FLOAT;0;False;1;FLOAT;0\nNode;AmplifyShaderEditor.Compare;5;-1750.82,-51.8457;Inherit;False;2;4;0;FLOAT;0;False;1;FLOAT;0;False;2;FLOAT;1;False;3;FLOAT;0;False;1;FLOAT;0\nNode;AmplifyShaderEditor.SimpleAddOpNode;6;-1450.823,-145.0476;Inherit;False;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0\nNode;AmplifyShaderEditor.ClampOpNode;7;-1275.05,-161.5237;Inherit;False;3;0;FLOAT;0;False;1;FLOAT;0;False;2;FLOAT;1;False;1;FLOAT;0\nNode;AmplifyShaderEditor.ColorNode;8;-1087.847,157.4763;Inherit;False;Constant;_Color2;Color
|
||||||
|
1;9;0;Create;True;0;0;0;False;0;False;0,1,0,0;0,0,0,0;True;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4\nNode;AmplifyShaderEditor.StaticSwitch;9;-680.864,-25.23364;Inherit;False;Property;_Keyword1;Keyword
|
||||||
|
0;6;0;Create;True;0;0;0;False;0;False;0;0;0;False;UNITY_PASS_FORWARDADD;Toggle;2;Key0;Key1;Fetch;False;True;9;1;COLOR;0,0,0,0;False;0;COLOR;0,0,0,0;False;2;COLOR;0,0,0,0;False;3;COLOR;0,0,0,0;False;4;COLOR;0,0,0,0;False;5;COLOR;0,0,0,0;False;6;COLOR;0,0,0,0;False;7;COLOR;0,0,0,0;False;8;COLOR;0,0,0,0;False;1;COLOR;0\nNode;AmplifyShaderEditor.BreakToComponentsNode;10;-380.0607,-20.04272;Inherit;False;COLOR;1;0;COLOR;0,0,0,0;False;16;FLOAT;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4;FLOAT;5;FLOAT;6;FLOAT;7;FLOAT;8;FLOAT;9;FLOAT;10;FLOAT;11;FLOAT;12;FLOAT;13;FLOAT;14;FLOAT;15\nNode;AmplifyShaderEditor.SimpleMultiplyOpNode;13;-857.725,-49.78662;Inherit;False;2;2;0;FLOAT;0;False;1;COLOR;0,0,0,0;False;1;COLOR;0\nNode;AmplifyShaderEditor.ColorNode;14;-1180.725,-22.78662;Inherit;False;Constant;_Color3;Color
|
||||||
|
2;10;0;Create;True;0;0;0;False;0;False;1,0,0,0;0,0,0,0;True;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4\nNode;AmplifyShaderEditor.FunctionOutput;15;-197.9163,25.18365;Inherit;False;False;-1;IsTherePointLight;1;False;1;0;FLOAT;0;False;1;FLOAT;0\nNode;AmplifyShaderEditor.FunctionOutput;0;-205,-54;Inherit;False;True;-1;IsThereWorldLight;0;False;1;0;FLOAT;0;False;1;FLOAT;0\nWireConnection;3;0;1;0\nWireConnection;4;0;3;0\nWireConnection;5;0;2;2\nWireConnection;6;0;4;0\nWireConnection;6;1;5;0\nWireConnection;7;0;6;0\nWireConnection;9;1;13;0\nWireConnection;9;0;8;0\nWireConnection;10;0;9;0\nWireConnection;13;0;7;0\nWireConnection;13;1;14;0\nWireConnection;15;0;10;1\nWireConnection;0;0;10;0\nASEEND*/\n//CHKSM=5D5BAAFDB66AE5ACD3A0E1B8A8E6AEB7AFB5EBDE"
|
||||||
|
m_functionName:
|
||||||
|
m_description:
|
||||||
|
m_additionalIncludes:
|
||||||
|
m_additionalIncludes: []
|
||||||
|
m_outsideIncludes: []
|
||||||
|
m_additionalPragmas:
|
||||||
|
m_additionalPragmas: []
|
||||||
|
m_outsidePragmas: []
|
||||||
|
m_additionalDirectives:
|
||||||
|
m_validData: 0
|
||||||
|
m_isDirty: 0
|
||||||
|
m_moduleName: ' Additional Directives'
|
||||||
|
m_independentModule: 1
|
||||||
|
m_customEdited: 0
|
||||||
|
m_additionalDirectives: []
|
||||||
|
m_shaderFunctionDirectives: []
|
||||||
|
m_nativeDirectives: []
|
||||||
|
m_nativeDirectivesIndex: -1
|
||||||
|
m_nativeDirectivesFoldout: 0
|
||||||
|
m_directivesSaveItems: []
|
||||||
|
m_nodeCategory: 3
|
||||||
|
m_customNodeCategory:
|
||||||
|
m_previewPosition: 0
|
||||||
|
m_hidden: 0
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 98bba35e0adeb7a4db4bb32317e70d55
|
||||||
|
NativeFormatImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
mainObjectFileID: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,44 @@
|
|||||||
|
%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: 78b2425a2284af743826c689403a4924, type: 3}
|
||||||
|
m_Name: View_Direction_Offset
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
m_functionInfo: "// Made with Amplify Shader Editor\n// Available at the Unity Asset
|
||||||
|
Store - http://u3d.as/y3X \n/*ASEBEGIN\nVersion=18719\n2855;302;1919;839;-1272.054;-3864.198;3.66724;True;True\nNode;AmplifyShaderEditor.SimpleMultiplyOpNode;369;3144.834,4831.834;Inherit;False;2;2;0;FLOAT;0;False;1;FLOAT;-1;False;1;FLOAT;0\nNode;AmplifyShaderEditor.RadiansOpNode;378;3307.603,4858.271;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0\nNode;AmplifyShaderEditor.WireNode;381;2628.787,5272.055;Inherit;False;1;0;FLOAT3;0,0,0;False;1;FLOAT3;0\nNode;AmplifyShaderEditor.NormalizeNode;384;3767.766,4366.329;Inherit;False;1;0;FLOAT3;0,0,0;False;1;FLOAT3;0\nNode;AmplifyShaderEditor.WorldPosInputsNode;390;2180.397,4934.364;Inherit;False;0;4;FLOAT3;0;FLOAT;1;FLOAT;2;FLOAT;3\nNode;AmplifyShaderEditor.FunctionInput;297;2966.908,4825.527;Inherit;False;Yaw;1;2;False;1;0;FLOAT;0;False;1;FLOAT;0\nNode;AmplifyShaderEditor.FunctionInput;296;3165.27,4437.029;Inherit;False;Pitch;1;1;False;1;0;FLOAT;0;False;1;FLOAT;0\nNode;AmplifyShaderEditor.SimpleSubtractOpNode;388;4397.638,4943.644;Inherit;False;2;0;FLOAT3;0,0,0;False;1;FLOAT3;0,0,0;False;1;FLOAT3;0\nNode;AmplifyShaderEditor.RotateAboutAxisNode;387;4038.786,4555.428;Inherit;False;True;4;0;FLOAT3;0,1,0;False;1;FLOAT;0;False;2;FLOAT3;0,0,0;False;3;FLOAT3;0,0,1;False;1;FLOAT3;0\nNode;AmplifyShaderEditor.NormalizeNode;389;4629.431,4933.75;Inherit;False;1;0;FLOAT3;0,0,0;False;1;FLOAT3;0\nNode;AmplifyShaderEditor.WireNode;386;4311.789,5246.17;Inherit;False;1;0;FLOAT3;0,0,0;False;1;FLOAT3;0\nNode;AmplifyShaderEditor.RadiansOpNode;382;3746.993,4507.66;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0\nNode;AmplifyShaderEditor.SimpleMultiplyOpNode;377;3530.694,4458.626;Inherit;False;2;2;0;FLOAT;0;False;1;FLOAT;1;False;1;FLOAT;0\nNode;AmplifyShaderEditor.NormalizeNode;376;3236.959,4741.025;Inherit;False;1;0;FLOAT3;0,0,0;False;1;FLOAT3;0\nNode;AmplifyShaderEditor.CustomExpressionNode;375;3596.97,4366.211;Inherit;False;return
|
||||||
|
UNITY_MATRIX_V[0]@;3;False;0;View Matrix [0];True;False;0;0;1;FLOAT3;0\nNode;AmplifyShaderEditor.CustomExpressionNode;373;3013.945,4740.818;Inherit;False;return
|
||||||
|
UNITY_MATRIX_V[1]@;3;False;0;View Matrix [1];True;False;0;0;1;FLOAT3;0\nNode;AmplifyShaderEditor.WireNode;383;2636.787,4605.055;Inherit;False;1;0;FLOAT3;0,0,0;False;1;FLOAT3;0\nNode;AmplifyShaderEditor.FunctionInput;295;2975.552,4976.986;Inherit;False;View
|
||||||
|
Position;3;0;False;1;0;FLOAT3;0,0,0;False;1;FLOAT3;0\nNode;AmplifyShaderEditor.SimpleAddOpNode;380;2447.651,4904.878;Inherit;False;2;2;0;FLOAT3;0,0,0;False;1;FLOAT3;0,0,0;False;1;FLOAT3;0\nNode;AmplifyShaderEditor.RotateAboutAxisNode;385;3549.403,4859.913;Inherit;False;False;4;0;FLOAT3;0,1,0;False;1;FLOAT;0;False;2;FLOAT3;0,0,0;False;3;FLOAT3;0,0,0;False;1;FLOAT3;0\nNode;AmplifyShaderEditor.FunctionOutput;0;4849.276,4931.584;Inherit;False;True;-1;Adjusted
|
||||||
|
Position;0;False;1;0;FLOAT3;0,0,0;False;1;FLOAT3;0\nWireConnection;369;0;297;0\nWireConnection;378;0;369;0\nWireConnection;381;0;380;0\nWireConnection;384;0;375;0\nWireConnection;388;0;387;0\nWireConnection;388;1;386;0\nWireConnection;387;0;384;0\nWireConnection;387;1;382;0\nWireConnection;387;2;383;0\nWireConnection;387;3;385;0\nWireConnection;389;0;388;0\nWireConnection;386;0;381;0\nWireConnection;382;0;377;0\nWireConnection;377;0;296;0\nWireConnection;376;0;373;0\nWireConnection;383;0;380;0\nWireConnection;380;1;390;0\nWireConnection;385;0;376;0\nWireConnection;385;1;378;0\nWireConnection;385;2;380;0\nWireConnection;385;3;295;0\nWireConnection;0;0;389;0\nASEEND*/\n//CHKSM=41C5182ACF29C7F61CA49609200D5152C83ABEC2"
|
||||||
|
m_functionName:
|
||||||
|
m_description:
|
||||||
|
m_additionalIncludes:
|
||||||
|
m_additionalIncludes: []
|
||||||
|
m_outsideIncludes: []
|
||||||
|
m_additionalPragmas:
|
||||||
|
m_additionalPragmas: []
|
||||||
|
m_outsidePragmas: []
|
||||||
|
m_additionalDirectives:
|
||||||
|
m_validData: 0
|
||||||
|
m_isDirty: 0
|
||||||
|
m_moduleName: ' Additional Directives'
|
||||||
|
m_independentModule: 1
|
||||||
|
m_customEdited: 0
|
||||||
|
m_additionalDirectives: []
|
||||||
|
m_shaderFunctionDirectives: []
|
||||||
|
m_nativeDirectives: []
|
||||||
|
m_nativeDirectivesIndex: -1
|
||||||
|
m_nativeDirectivesFoldout: 0
|
||||||
|
m_directivesSaveItems: []
|
||||||
|
m_nodeCategory: 0
|
||||||
|
m_customNodeCategory: Arc System Works
|
||||||
|
m_previewPosition: 0
|
||||||
|
m_hidden: 0
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 0ed390ab7f73e4d45a6b076cf1eb4d6f
|
||||||
|
NativeFormatImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
mainObjectFileID: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: d941fe036f5998946bb787368bc8e73f
|
||||||
|
folderAsset: yes
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,319 @@
|
|||||||
|
// Made with Amplify Shader Editor
|
||||||
|
// Available at the Unity Asset Store - http://u3d.as/y3X
|
||||||
|
Shader "Nars/UmaMusume/Eyes"
|
||||||
|
{
|
||||||
|
Properties
|
||||||
|
{
|
||||||
|
[KeywordEnum(Eye1,Eye2,Eye3,Eye4)] _Styles("Styles", Float) = 0
|
||||||
|
[NoScaleOffset]_MainTex("Base", 2D) = "white" {}
|
||||||
|
[Toggle]_Switch1and2("Switch 1 and 2 ", Float) = 0
|
||||||
|
_HighLightBrightness("HighLight Brightness", Float) = 1
|
||||||
|
[KeywordEnum(Yes,No)] _HasHighlight("Has Highlight", Float) = 1
|
||||||
|
[KeywordEnum(One,Two)] _NumberofHighLights("Number of HighLights", Float) = 0
|
||||||
|
[NoScaleOffset]_High0Tex("HighLight One", 2D) = "white" {}
|
||||||
|
[NoScaleOffset]_High1Tex("HighLight Two", 2D) = "white" {}
|
||||||
|
_FallBackBrightness1("FallBack Brightness", Range( 0 , 1)) = 0.6
|
||||||
|
[HideInInspector] _texcoord( "", 2D ) = "white" {}
|
||||||
|
[HideInInspector] __dirty( "", Int ) = 1
|
||||||
|
}
|
||||||
|
|
||||||
|
SubShader
|
||||||
|
{
|
||||||
|
Tags{ "RenderType" = "Opaque" "Queue" = "Geometry+0" }
|
||||||
|
Cull Back
|
||||||
|
CGPROGRAM
|
||||||
|
#include "UnityPBSLighting.cginc"
|
||||||
|
#include "UnityCG.cginc"
|
||||||
|
#include "UnityShaderVariables.cginc"
|
||||||
|
#pragma target 3.0
|
||||||
|
#pragma shader_feature _HASHIGHLIGHT_YES _HASHIGHLIGHT_NO
|
||||||
|
#pragma shader_feature _STYLES_EYE1 _STYLES_EYE2 _STYLES_EYE3 _STYLES_EYE4
|
||||||
|
#pragma shader_feature _NUMBEROFHIGHLIGHTS_ONE _NUMBEROFHIGHLIGHTS_TWO
|
||||||
|
#pragma surface surf StandardCustomLighting keepalpha addshadow fullforwardshadows noshadow
|
||||||
|
struct Input
|
||||||
|
{
|
||||||
|
float3 worldPos;
|
||||||
|
float2 uv_texcoord;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct SurfaceOutputCustomLightingCustom
|
||||||
|
{
|
||||||
|
half3 Albedo;
|
||||||
|
half3 Normal;
|
||||||
|
half3 Emission;
|
||||||
|
half Metallic;
|
||||||
|
half Smoothness;
|
||||||
|
half Occlusion;
|
||||||
|
half Alpha;
|
||||||
|
Input SurfInput;
|
||||||
|
UnityGIInput GIData;
|
||||||
|
};
|
||||||
|
|
||||||
|
uniform float _FallBackBrightness1;
|
||||||
|
uniform sampler2D _MainTex;
|
||||||
|
uniform float _Switch1and2;
|
||||||
|
uniform float _HighLightBrightness;
|
||||||
|
uniform sampler2D _High0Tex;
|
||||||
|
uniform sampler2D _High1Tex;
|
||||||
|
|
||||||
|
inline half4 LightingStandardCustomLighting( inout SurfaceOutputCustomLightingCustom s, half3 viewDir, UnityGI gi )
|
||||||
|
{
|
||||||
|
UnityGIInput data = s.GIData;
|
||||||
|
Input i = s.SurfInput;
|
||||||
|
half4 c = 0;
|
||||||
|
#ifdef UNITY_PASS_FORWARDBASE
|
||||||
|
float ase_lightAtten = data.atten;
|
||||||
|
if( _LightColor0.a == 0)
|
||||||
|
ase_lightAtten = 0;
|
||||||
|
#else
|
||||||
|
float3 ase_lightAttenRGB = gi.light.color / ( ( _LightColor0.rgb ) + 0.000001 );
|
||||||
|
float ase_lightAtten = max( max( ase_lightAttenRGB.r, ase_lightAttenRGB.g ), ase_lightAttenRGB.b );
|
||||||
|
#endif
|
||||||
|
#if defined(HANDLE_SHADOWS_BLENDING_IN_GI)
|
||||||
|
half bakedAtten = UnitySampleBakedOcclusion(data.lightmapUV.xy, data.worldPos);
|
||||||
|
float zDist = dot(_WorldSpaceCameraPos - data.worldPos, UNITY_MATRIX_V[2].xyz);
|
||||||
|
float fadeDist = UnityComputeShadowFadeDistance(data.worldPos, zDist);
|
||||||
|
ase_lightAtten = UnityMixRealtimeAndBakedShadows(data.atten, bakedAtten, UnityComputeShadowFade(fadeDist));
|
||||||
|
#endif
|
||||||
|
float3 ase_worldPos = i.worldPos;
|
||||||
|
#if defined(LIGHTMAP_ON) && UNITY_VERSION < 560 //aseld
|
||||||
|
float3 ase_worldlightDir = 0;
|
||||||
|
#else //aseld
|
||||||
|
float3 ase_worldlightDir = Unity_SafeNormalize( UnityWorldSpaceLightDir( ase_worldPos ) );
|
||||||
|
#endif //aseld
|
||||||
|
#if defined(LIGHTMAP_ON) && ( UNITY_VERSION < 560 || ( defined(LIGHTMAP_SHADOW_MIXING) && !defined(SHADOWS_SHADOWMASK) && defined(SHADOWS_SCREEN) ) )//aselc
|
||||||
|
float4 ase_lightColor = 0;
|
||||||
|
#else //aselc
|
||||||
|
float4 ase_lightColor = _LightColor0;
|
||||||
|
#endif //aselc
|
||||||
|
float clampResult7_g640 = clamp( ( ( abs( ase_worldlightDir ).x > float3( 0,0,0 ) ? 1.0 : 0.0 ) + ( ase_lightColor.a > 0.0 ? 1.0 : 0.0 ) ) , 0.0 , 1.0 );
|
||||||
|
float4 color14_g640 = IsGammaSpace() ? float4(1,0,0,0) : float4(1,0,0,0);
|
||||||
|
float4 color8_g640 = IsGammaSpace() ? float4(0,1,0,0) : float4(0,1,0,0);
|
||||||
|
#ifdef UNITY_PASS_FORWARDADD
|
||||||
|
float4 staticSwitch9_g640 = color8_g640;
|
||||||
|
#else
|
||||||
|
float4 staticSwitch9_g640 = ( clampResult7_g640 * color14_g640 );
|
||||||
|
#endif
|
||||||
|
float4 break10_g640 = staticSwitch9_g640;
|
||||||
|
float temp_output_82_0 = break10_g640.r;
|
||||||
|
float Isworldlight90 = temp_output_82_0;
|
||||||
|
float4 temp_output_333_0 = ( ase_lightColor * ase_lightAtten );
|
||||||
|
float4 temp_cast_1 = (_FallBackBrightness1).xxxx;
|
||||||
|
#ifdef UNITY_PASS_FORWARDADD
|
||||||
|
float4 staticSwitch337 = max( float4( 0,0,0,0 ) , temp_output_333_0 );
|
||||||
|
#else
|
||||||
|
float4 staticSwitch337 = ( ( 0.0 - 0.0 > 1.0 ? 0.0 : 0.0 - 0.0 <= 1.0 && 0.0 + 0.0 >= 1.0 ? 0.0 : Isworldlight90 ) - 0.0 > 0.0 ? temp_output_333_0 : ( 0.0 - 0.0 > 1.0 ? 0.0 : 0.0 - 0.0 <= 1.0 && 0.0 + 0.0 >= 1.0 ? 0.0 : Isworldlight90 ) - 0.0 <= 0.0 && ( 0.0 - 0.0 > 1.0 ? 0.0 : 0.0 - 0.0 <= 1.0 && 0.0 + 0.0 >= 1.0 ? 0.0 : Isworldlight90 ) + 0.0 >= 0.0 ? temp_cast_1 : 0.0 ) ;
|
||||||
|
#endif
|
||||||
|
float4 Globnallightcolour338 = staticSwitch337;
|
||||||
|
float2 uv_TexCoord353 = i.uv_texcoord * float2( 0.25,1 ) + float2( 0,0 );
|
||||||
|
float2 uv_TexCoord367 = i.uv_texcoord * float2( 0.25,1 ) + float2( 0.25,0 );
|
||||||
|
float2 uv_TexCoord370 = i.uv_texcoord * float2( 0.25,1 ) + float2( 0.5,0 );
|
||||||
|
float2 uv_TexCoord373 = i.uv_texcoord * float2( 0.25,1 ) + float2( 0.75,0 );
|
||||||
|
#if defined(_STYLES_EYE1)
|
||||||
|
float2 staticSwitch360 = uv_TexCoord353;
|
||||||
|
#elif defined(_STYLES_EYE2)
|
||||||
|
float2 staticSwitch360 = uv_TexCoord367;
|
||||||
|
#elif defined(_STYLES_EYE3)
|
||||||
|
float2 staticSwitch360 = uv_TexCoord370;
|
||||||
|
#elif defined(_STYLES_EYE4)
|
||||||
|
float2 staticSwitch360 = uv_TexCoord373;
|
||||||
|
#else
|
||||||
|
float2 staticSwitch360 = uv_TexCoord353;
|
||||||
|
#endif
|
||||||
|
float4 tex2DNode62 = tex2Dlod( _MainTex, float4( staticSwitch360, 0, 0.0) );
|
||||||
|
float4 temp_cast_2 = (_HighLightBrightness).xxxx;
|
||||||
|
float2 uv_TexCoord388 = i.uv_texcoord * float2( 1,2 );
|
||||||
|
float4 tex2DNode380 = tex2D( _High0Tex, uv_TexCoord388 );
|
||||||
|
float4 lerpResult392 = lerp( temp_cast_2 , tex2DNode62 , ( 1.0 - tex2DNode380 ));
|
||||||
|
float4 temp_cast_3 = (_HighLightBrightness).xxxx;
|
||||||
|
float4 tex2DNode385 = tex2D( _High1Tex, uv_TexCoord388 );
|
||||||
|
float4 lerpResult397 = lerp( temp_cast_3 , tex2DNode62 , ( 1.0 - tex2DNode385 ));
|
||||||
|
float4 temp_cast_4 = (_HighLightBrightness).xxxx;
|
||||||
|
float4 lerpResult381 = lerp( temp_cast_4 , tex2DNode62 , ( 1.0 - ( tex2DNode380 + tex2DNode385 ) ));
|
||||||
|
#if defined(_NUMBEROFHIGHLIGHTS_ONE)
|
||||||
|
float4 staticSwitch391 = (( _Switch1and2 )?( lerpResult397 ):( lerpResult392 ));
|
||||||
|
#elif defined(_NUMBEROFHIGHLIGHTS_TWO)
|
||||||
|
float4 staticSwitch391 = lerpResult381;
|
||||||
|
#else
|
||||||
|
float4 staticSwitch391 = (( _Switch1and2 )?( lerpResult397 ):( lerpResult392 ));
|
||||||
|
#endif
|
||||||
|
#if defined(_HASHIGHLIGHT_YES)
|
||||||
|
float4 staticSwitch390 = staticSwitch391;
|
||||||
|
#elif defined(_HASHIGHLIGHT_NO)
|
||||||
|
float4 staticSwitch390 = tex2DNode62;
|
||||||
|
#else
|
||||||
|
float4 staticSwitch390 = tex2DNode62;
|
||||||
|
#endif
|
||||||
|
float4 BaseTexture158 = staticSwitch390;
|
||||||
|
float4 temp_output_351_0 = ( BaseTexture158 * BaseTexture158 );
|
||||||
|
float4 lerpResult78 = lerp( temp_output_351_0 , BaseTexture158 , 0.26);
|
||||||
|
float4 Shadow64 = lerpResult78;
|
||||||
|
c.rgb = ( Globnallightcolour338 * Shadow64 ).rgb;
|
||||||
|
c.a = 1;
|
||||||
|
return c;
|
||||||
|
}
|
||||||
|
|
||||||
|
inline void LightingStandardCustomLighting_GI( inout SurfaceOutputCustomLightingCustom s, UnityGIInput data, inout UnityGI gi )
|
||||||
|
{
|
||||||
|
s.GIData = data;
|
||||||
|
}
|
||||||
|
|
||||||
|
void surf( Input i , inout SurfaceOutputCustomLightingCustom o )
|
||||||
|
{
|
||||||
|
o.SurfInput = i;
|
||||||
|
}
|
||||||
|
|
||||||
|
ENDCG
|
||||||
|
}
|
||||||
|
Fallback "Diffuse"
|
||||||
|
CustomEditor "ASEMaterialInspector"
|
||||||
|
}
|
||||||
|
/*ASEBEGIN
|
||||||
|
Version=18901
|
||||||
|
789;81;1121;389;1227.201;-1315.593;1.082344;True;False
|
||||||
|
Node;AmplifyShaderEditor.CommentaryNode;362;-3584.533,-123.3915;Inherit;False;2063.248;1879.443;Comment;29;158;360;62;353;359;358;367;368;369;373;374;375;372;371;377;380;381;383;385;386;387;388;390;391;392;393;395;396;397;;1,1,1,1;0;0
|
||||||
|
Node;AmplifyShaderEditor.Vector2Node;368;-3543.7,474.7205;Inherit;False;Constant;_Vector2;Vector 2;4;0;Create;True;0;0;0;False;0;False;0.25,1;0.25,1;0;3;FLOAT2;0;FLOAT;1;FLOAT;2
|
||||||
|
Node;AmplifyShaderEditor.Vector2Node;369;-3531.473,663.8401;Inherit;False;Constant;_Vector3;Vector 3;8;0;Create;True;0;0;0;False;0;False;0.25,0;0.25,0;0;3;FLOAT2;0;FLOAT;1;FLOAT;2
|
||||||
|
Node;AmplifyShaderEditor.Vector2Node;371;-3534.856,848.8988;Inherit;False;Constant;_Vector4;Vector 4;5;0;Create;True;0;0;0;False;0;False;0.25,1;0.25,1;0;3;FLOAT2;0;FLOAT;1;FLOAT;2
|
||||||
|
Node;AmplifyShaderEditor.Vector2Node;372;-3518.856,976.8988;Inherit;False;Constant;_Vector5;Vector 5;9;0;Create;True;0;0;0;False;0;False;0.5,0;0.5,0;0;3;FLOAT2;0;FLOAT;1;FLOAT;2
|
||||||
|
Node;AmplifyShaderEditor.Vector2Node;374;-3522.389,1173.064;Inherit;False;Constant;_Vector6;Vector 6;6;0;Create;True;0;0;0;False;0;False;0.25,1;0.25,1;0;3;FLOAT2;0;FLOAT;1;FLOAT;2
|
||||||
|
Node;AmplifyShaderEditor.Vector2Node;359;-3540,272;Inherit;False;Constant;_Vector1;Vector 1;7;0;Create;True;0;0;0;False;0;False;0,0;0,0;0;3;FLOAT2;0;FLOAT;1;FLOAT;2
|
||||||
|
Node;AmplifyShaderEditor.Vector2Node;375;-3527.076,1321.751;Inherit;False;Constant;_Vector7;Vector 7;10;0;Create;True;0;0;0;False;0;False;0.75,0;0.75,0;0;3;FLOAT2;0;FLOAT;1;FLOAT;2
|
||||||
|
Node;AmplifyShaderEditor.Vector2Node;387;-3525.779,-15.3995;Inherit;False;Constant;_Vector8;Vector 8;10;0;Create;True;0;0;0;False;0;False;1,2;0.75,0;0;3;FLOAT2;0;FLOAT;1;FLOAT;2
|
||||||
|
Node;AmplifyShaderEditor.Vector2Node;358;-3536,144;Inherit;False;Constant;_Vector0;Vector 0;3;0;Create;True;0;0;0;False;0;False;0.25,1;0.25,1;0;3;FLOAT2;0;FLOAT;1;FLOAT;2
|
||||||
|
Node;AmplifyShaderEditor.TextureCoordinatesNode;353;-3301.188,254.1345;Inherit;False;0;-1;2;3;2;SAMPLER2D;;False;0;FLOAT2;1,1;False;1;FLOAT2;0,0;False;5;FLOAT2;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
||||||
|
Node;AmplifyShaderEditor.TextureCoordinatesNode;370;-3300.044,959.0333;Inherit;False;0;-1;2;3;2;SAMPLER2D;;False;0;FLOAT2;1,1;False;1;FLOAT2;0,0;False;5;FLOAT2;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
||||||
|
Node;AmplifyShaderEditor.TextureCoordinatesNode;373;-3287.577,1283.199;Inherit;False;0;-1;2;3;2;SAMPLER2D;;False;0;FLOAT2;1,1;False;1;FLOAT2;0,0;False;5;FLOAT2;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
||||||
|
Node;AmplifyShaderEditor.TextureCoordinatesNode;367;-3295.888,607.8551;Inherit;False;0;-1;2;3;2;SAMPLER2D;;False;0;FLOAT2;1,1;False;1;FLOAT2;0,0;False;5;FLOAT2;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
||||||
|
Node;AmplifyShaderEditor.TextureCoordinatesNode;388;-3206.317,99.32188;Inherit;False;0;-1;2;3;2;SAMPLER2D;;False;0;FLOAT2;1,1;False;1;FLOAT2;0,0;False;5;FLOAT2;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
||||||
|
Node;AmplifyShaderEditor.SamplerNode;385;-2895.152,190.8158;Inherit;True;Property;_High1Tex;HighLight Two;7;1;[NoScaleOffset];Create;True;0;0;0;False;0;False;-1;None;c64b3ae05d9fd4c408fbe158a802b8f8;True;0;False;white;Auto;False;Object;-1;Auto;Texture2D;8;0;SAMPLER2D;;False;1;FLOAT2;0,0;False;2;FLOAT;0;False;3;FLOAT2;0,0;False;4;FLOAT2;0,0;False;5;FLOAT;1;False;6;FLOAT;0;False;7;SAMPLERSTATE;;False;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
||||||
|
Node;AmplifyShaderEditor.SamplerNode;380;-2889.155,-39.23049;Inherit;True;Property;_High0Tex;HighLight One;6;1;[NoScaleOffset];Create;True;0;0;0;False;0;False;-1;None;6eddc1168021e97419045e8c07ddc1b7;True;0;False;white;Auto;False;Object;-1;Auto;Texture2D;8;0;SAMPLER2D;;False;1;FLOAT2;0,0;False;2;FLOAT;0;False;3;FLOAT2;0,0;False;4;FLOAT2;0,0;False;5;FLOAT;1;False;6;FLOAT;0;False;7;SAMPLERSTATE;;False;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
||||||
|
Node;AmplifyShaderEditor.StaticSwitch;360;-2794.664,771.7491;Inherit;False;Property;_Styles;Styles;0;0;Create;True;0;0;0;False;0;False;0;0;0;True;;KeywordEnum;4;Eye1;Eye2;Eye3;Eye4;Create;False;True;9;1;FLOAT2;0,0;False;0;FLOAT2;0,0;False;2;FLOAT2;0,0;False;3;FLOAT2;0,0;False;4;FLOAT2;0,0;False;5;FLOAT2;0,0;False;6;FLOAT2;0,0;False;7;FLOAT2;0,0;False;8;FLOAT2;0,0;False;1;FLOAT2;0
|
||||||
|
Node;AmplifyShaderEditor.OneMinusNode;393;-2397.197,94.33471;Inherit;False;1;0;COLOR;0,0,0,0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.SamplerNode;62;-2481.591,651.8398;Inherit;True;Property;_MainTex;Base;1;1;[NoScaleOffset];Create;True;0;0;0;False;0;False;-1;None;dff50b2a8af16ca45a7af6c1217fe162;True;0;False;white;Auto;False;Object;-1;MipLevel;Texture2D;8;0;SAMPLER2D;;False;1;FLOAT2;0,0;False;2;FLOAT;0;False;3;FLOAT2;0,0;False;4;FLOAT2;0,0;False;5;FLOAT;1;False;6;FLOAT;0;False;7;SAMPLERSTATE;;False;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
||||||
|
Node;AmplifyShaderEditor.OneMinusNode;396;-2397.834,257.4658;Inherit;False;1;0;COLOR;0,0,0,0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;377;-2817.374,409.0841;Inherit;False;Property;_HighLightBrightness;HighLight Brightness;3;0;Create;True;0;0;0;False;0;False;1;2;0;0;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.SimpleAddOpNode;386;-2540.903,149.5288;Inherit;False;2;2;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.OneMinusNode;383;-2396.313,175.7564;Inherit;False;1;0;COLOR;0,0,0,0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.LerpOp;392;-2138.381,-59.6656;Inherit;True;3;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;2;COLOR;0,0,0,0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.LerpOp;397;-2124.084,400.1891;Inherit;True;3;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;2;COLOR;0,0,0,0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.LerpOp;381;-2133.926,162.9593;Inherit;True;3;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;2;COLOR;0,0,0,0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.CommentaryNode;325;-1872,-992;Inherit;False;1347.069;756.9989;Comment;11;85;84;87;88;83;82;86;89;91;247;90;Lights;0.579394,1,0,1;0;0
|
||||||
|
Node;AmplifyShaderEditor.ToggleSwitchNode;395;-1809.888,71.73196;Inherit;False;Property;_Switch1and2;Switch 1 and 2 ;2;0;Create;True;0;0;0;False;0;False;0;True;2;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.FunctionNode;82;-1824,-944;Inherit;False;Is_There_A_Light;-1;;640;692d888142f187d479d5e6f976e674b0;0;0;2;FLOAT;0;FLOAT;15
|
||||||
|
Node;AmplifyShaderEditor.StaticSwitch;391;-1812.175,271.3702;Inherit;False;Property;_NumberofHighLights;Number of HighLights;5;0;Create;True;0;0;0;False;0;False;0;0;1;True;;KeywordEnum;2;One;Two;Create;False;True;9;1;COLOR;0,0,0,0;False;0;COLOR;0,0,0,0;False;2;COLOR;0,0,0,0;False;3;COLOR;0,0,0,0;False;4;COLOR;0,0,0,0;False;5;COLOR;0,0,0,0;False;6;COLOR;0,0,0,0;False;7;COLOR;0,0,0,0;False;8;COLOR;0,0,0,0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.CommentaryNode;327;-896,1168;Inherit;False;1617.594;695.9377;Comment;12;338;337;336;335;334;333;332;331;330;329;328;398;Light Autist;0.4860944,1,0,1;0;0
|
||||||
|
Node;AmplifyShaderEditor.RegisterLocalVarNode;90;-1536,-944;Inherit;False;Isworldlight;-1;True;1;0;FLOAT;0;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.StaticSwitch;390;-1969.297,748.0529;Inherit;False;Property;_HasHighlight;Has Highlight;4;0;Create;True;0;0;0;False;0;False;0;1;0;True;;KeywordEnum;2;Yes;No;Create;False;True;9;1;COLOR;0,0,0,0;False;0;COLOR;0,0,0,0;False;2;COLOR;0,0,0,0;False;3;COLOR;0,0,0,0;False;4;COLOR;0,0,0,0;False;5;COLOR;0,0,0,0;False;6;COLOR;0,0,0,0;False;7;COLOR;0,0,0,0;False;8;COLOR;0,0,0,0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.RegisterLocalVarNode;158;-1744.723,799.8381;Inherit;False;BaseTexture;-1;True;1;0;COLOR;0,0,0,0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.LightAttenuation;331;-864,1552;Inherit;False;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;328;-864,1232;Inherit;False;Constant;_LightColour;Light Colour;6;1;[Enum];Create;True;0;2;Automatic;0;Fake;1;0;False;0;False;0;0;0;0;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.GetLocalVarNode;330;-864,1328;Inherit;False;90;Isworldlight;1;0;OBJECT;;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.CommentaryNode;324;323.5219,-1788.889;Inherit;False;983.0802;394.0726;Comment;6;352;64;78;95;351;271;Shading;1,0,0,1;0;0
|
||||||
|
Node;AmplifyShaderEditor.LightColorNode;329;-864,1424;Inherit;False;0;3;COLOR;0;FLOAT3;1;FLOAT;2
|
||||||
|
Node;AmplifyShaderEditor.TFHCIf;334;-592,1248;Inherit;False;6;0;FLOAT;0;False;1;FLOAT;1;False;2;FLOAT;0;False;3;FLOAT;0;False;4;FLOAT;0;False;5;FLOAT;0;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;398;-614.5943,1604.579;Inherit;False;Property;_FallBackBrightness1;FallBack Brightness;8;0;Create;True;0;0;0;False;0;False;0.6;0;0;1;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.GetLocalVarNode;271;443.1941,-1666.888;Inherit;False;158;BaseTexture;1;0;OBJECT;;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;333;-592,1440;Inherit;False;2;2;0;COLOR;0,0,0,0;False;1;FLOAT;0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;95;432.1845,-1570.234;Inherit;False;Constant;_LightSmoothness;Light Smoothness;3;0;Create;True;0;0;0;False;0;False;0.26;0.4;0;0;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.SimpleMaxOpNode;335;-96,1552;Inherit;False;2;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.TFHCIf;336;-192,1360;Inherit;False;6;0;FLOAT;0;False;1;FLOAT;0;False;2;COLOR;0,0,0,0;False;3;FLOAT;0;False;4;FLOAT;0;False;5;FLOAT;0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;351;681.7751,-1703.547;Inherit;False;2;2;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.StaticSwitch;337;64,1360;Inherit;False;Property;_Keyword0;Keyword 0;10;0;Create;True;0;0;0;False;0;False;0;0;0;False;UNITY_PASS_FORWARDADD;Toggle;2;Key0;Key1;Fetch;False;True;9;1;COLOR;0,0,0,0;False;0;COLOR;0,0,0,0;False;2;COLOR;0,0,0,0;False;3;COLOR;0,0,0,0;False;4;COLOR;0,0,0,0;False;5;COLOR;0,0,0,0;False;6;COLOR;0,0,0,0;False;7;COLOR;0,0,0,0;False;8;COLOR;0,0,0,0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.LerpOp;78;859.1939,-1628.888;Inherit;False;3;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;2;FLOAT;0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.RegisterLocalVarNode;338;432,1360;Inherit;False;Globnallightcolour;-1;True;1;0;COLOR;0,0,0,0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.CommentaryNode;326;-482,21.46355;Inherit;False;1237.712;1021.536;Comment;4;0;119;339;340;Outputs;0.981343,1,0,1;0;0
|
||||||
|
Node;AmplifyShaderEditor.RegisterLocalVarNode;64;1051.194,-1628.888;Inherit;False;Shadow;-1;True;1;0;COLOR;0,0,0,0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.CommentaryNode;56;-1344,592;Inherit;False;794.4915;416.6398;Light ;4;55;53;52;58;ViewDIr;1,1,1,1;0;0
|
||||||
|
Node;AmplifyShaderEditor.GetLocalVarNode;119;80,304;Inherit;False;64;Shadow;1;0;OBJECT;;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.GetLocalVarNode;339;16,208;Inherit;False;338;Globnallightcolour;1;0;OBJECT;;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.ViewDirInputsCoordNode;55;-1232,816;Inherit;False;World;False;0;4;FLOAT3;0;FLOAT;1;FLOAT;2;FLOAT;3
|
||||||
|
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;340;288,224;Inherit;False;2;2;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;87;-1824,-352;Inherit;False;Constant;_ViewDirY;ViewDir Y;8;0;Create;True;0;0;0;False;0;False;0;0;-200;200;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.RegisterLocalVarNode;352;929.0795,-1719.013;Inherit;False;EyeSSS;-1;True;1;0;COLOR;0,0,0,0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;85;-1824,-640;Inherit;False;Constant;_FakeDirX;FakeDir X ;7;0;Create;True;0;0;0;False;0;False;0;0;-200;200;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;84;-1824,-816;Inherit;False;Constant;_LightDirection;Light Direction;2;1;[Enum];Create;True;0;2;Normal;0;ViewDirection;1;0;False;0;False;0;0;0;0;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.DotProductOpNode;53;-976,720;Inherit;False;2;0;FLOAT3;0,0,0;False;1;FLOAT3;0,0,0;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.WorldSpaceLightDirHlpNode;52;-1296,640;Inherit;False;True;1;0;FLOAT;0;False;4;FLOAT3;0;FLOAT;1;FLOAT;2;FLOAT;3
|
||||||
|
Node;AmplifyShaderEditor.RegisterLocalVarNode;247;-1008,-656;Inherit;False;NDV;-1;True;1;0;FLOAT;0;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.RegisterLocalVarNode;91;-768,-800;Inherit;False;NDL;-1;True;1;0;FLOAT;0;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;88;-1824,-464;Inherit;False;Constant;_ViewDirX;ViewDir X;9;0;Create;True;0;0;0;False;0;False;0;0;-200;200;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;83;-1824,-736;Inherit;False;Constant;_FallbackLight;Fallback Light ;2;1;[Enum];Create;True;0;2;Automatic;0;Fake;1;0;False;0;False;1;0;0;0;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.RegisterLocalVarNode;58;-800,736;Inherit;False;Viewdir_light;-1;True;1;0;FLOAT;0;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;86;-1824,-560;Inherit;False;Constant;_FakeDirY;FakeDir Y;6;0;Create;True;0;0;0;False;0;False;0;0;-200;200;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.FunctionNode;89;-1472,-688;Inherit;False;Dot_Creation;-1;;641;2e5876d4432839c4c9496c6ced2f9534;0;7;12;FLOAT;0;False;17;FLOAT;0;False;16;FLOAT;0;False;29;FLOAT;0;False;28;FLOAT;0;False;33;FLOAT;0;False;34;FLOAT;0;False;3;FLOAT;0;FLOAT;42;FLOAT;52
|
||||||
|
Node;AmplifyShaderEditor.ColorNode;332;-864,1648;Inherit;False;Constant;_FakeColourtint;Fake Colour tint;5;0;Create;True;0;0;0;False;0;False;1,1,1,0;1,1,1,0;True;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
||||||
|
Node;AmplifyShaderEditor.StandardSurfaceOutputNode;0;492.7116,71.46355;Float;False;True;-1;2;ASEMaterialInspector;0;0;CustomLighting;Nars/UmaMusume/Eyes;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;Back;0;False;-1;0;False;-1;False;0;False;-1;0;False;-1;False;0;Opaque;0.5;True;True;0;False;Opaque;;Geometry;All;14;all;True;True;True;True;0;False;-1;False;0;False;-1;255;False;-1;255;False;-1;0;False;-1;0;False;-1;0;False;-1;0;False;-1;0;False;-1;0;False;-1;0;False;-1;0;False;-1;False;2;15;10;25;False;0.5;False;0;0;False;-1;0;False;-1;0;0;False;-1;0;False;-1;0;False;-1;0;False;-1;0;False;0;0,0,0,0;VertexOffset;True;False;Cylindrical;False;Relative;0;;-1;-1;-1;-1;0;False;0;0;False;-1;-1;0;False;-1;0;0;0;False;0.1;False;-1;0;False;-1;False;15;0;FLOAT3;0,0,0;False;1;FLOAT3;0,0,0;False;2;FLOAT3;0,0,0;False;3;FLOAT3;0,0,0;False;4;FLOAT;0;False;6;FLOAT3;0,0,0;False;7;FLOAT3;0,0,0;False;8;FLOAT;0;False;9;FLOAT;0;False;10;FLOAT;0;False;13;FLOAT3;0,0,0;False;11;FLOAT3;0,0,0;False;12;FLOAT3;0,0,0;False;14;FLOAT4;0,0,0,0;False;15;FLOAT3;0,0,0;False;0
|
||||||
|
WireConnection;353;0;358;0
|
||||||
|
WireConnection;353;1;359;0
|
||||||
|
WireConnection;370;0;371;0
|
||||||
|
WireConnection;370;1;372;0
|
||||||
|
WireConnection;373;0;374;0
|
||||||
|
WireConnection;373;1;375;0
|
||||||
|
WireConnection;367;0;368;0
|
||||||
|
WireConnection;367;1;369;0
|
||||||
|
WireConnection;388;0;387;0
|
||||||
|
WireConnection;385;1;388;0
|
||||||
|
WireConnection;380;1;388;0
|
||||||
|
WireConnection;360;1;353;0
|
||||||
|
WireConnection;360;0;367;0
|
||||||
|
WireConnection;360;2;370;0
|
||||||
|
WireConnection;360;3;373;0
|
||||||
|
WireConnection;393;0;380;0
|
||||||
|
WireConnection;62;1;360;0
|
||||||
|
WireConnection;396;0;385;0
|
||||||
|
WireConnection;386;0;380;0
|
||||||
|
WireConnection;386;1;385;0
|
||||||
|
WireConnection;383;0;386;0
|
||||||
|
WireConnection;392;0;377;0
|
||||||
|
WireConnection;392;1;62;0
|
||||||
|
WireConnection;392;2;393;0
|
||||||
|
WireConnection;397;0;377;0
|
||||||
|
WireConnection;397;1;62;0
|
||||||
|
WireConnection;397;2;396;0
|
||||||
|
WireConnection;381;0;377;0
|
||||||
|
WireConnection;381;1;62;0
|
||||||
|
WireConnection;381;2;383;0
|
||||||
|
WireConnection;395;0;392;0
|
||||||
|
WireConnection;395;1;397;0
|
||||||
|
WireConnection;391;1;395;0
|
||||||
|
WireConnection;391;0;381;0
|
||||||
|
WireConnection;90;0;82;0
|
||||||
|
WireConnection;390;1;391;0
|
||||||
|
WireConnection;390;0;62;0
|
||||||
|
WireConnection;158;0;390;0
|
||||||
|
WireConnection;334;0;328;0
|
||||||
|
WireConnection;334;4;330;0
|
||||||
|
WireConnection;333;0;329;0
|
||||||
|
WireConnection;333;1;331;0
|
||||||
|
WireConnection;335;1;333;0
|
||||||
|
WireConnection;336;0;334;0
|
||||||
|
WireConnection;336;2;333;0
|
||||||
|
WireConnection;336;3;398;0
|
||||||
|
WireConnection;351;0;271;0
|
||||||
|
WireConnection;351;1;271;0
|
||||||
|
WireConnection;337;1;336;0
|
||||||
|
WireConnection;337;0;335;0
|
||||||
|
WireConnection;78;0;351;0
|
||||||
|
WireConnection;78;1;271;0
|
||||||
|
WireConnection;78;2;95;0
|
||||||
|
WireConnection;338;0;337;0
|
||||||
|
WireConnection;64;0;78;0
|
||||||
|
WireConnection;340;0;339;0
|
||||||
|
WireConnection;340;1;119;0
|
||||||
|
WireConnection;352;0;351;0
|
||||||
|
WireConnection;53;0;52;0
|
||||||
|
WireConnection;53;1;55;0
|
||||||
|
WireConnection;247;0;89;42
|
||||||
|
WireConnection;91;0;89;0
|
||||||
|
WireConnection;58;0;53;0
|
||||||
|
WireConnection;89;12;82;0
|
||||||
|
WireConnection;89;17;84;0
|
||||||
|
WireConnection;89;16;83;0
|
||||||
|
WireConnection;89;29;85;0
|
||||||
|
WireConnection;89;28;86;0
|
||||||
|
WireConnection;89;33;88;0
|
||||||
|
WireConnection;89;34;87;0
|
||||||
|
WireConnection;0;13;340;0
|
||||||
|
ASEEND*/
|
||||||
|
//CHKSM=3AB46B0CE8F6F32B264DF2FBCA3719D91A8FB914
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 5ab62aa7fc808ce438fddff06ba6cfcc
|
||||||
|
ShaderImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
defaultTextures: []
|
||||||
|
nonModifiableTextures: []
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,472 @@
|
|||||||
|
// Made with Amplify Shader Editor
|
||||||
|
// Available at the Unity Asset Store - http://u3d.as/y3X
|
||||||
|
Shader "Nars/UmaMusume/Face"
|
||||||
|
{
|
||||||
|
Properties
|
||||||
|
{
|
||||||
|
[NoScaleOffset]_MainTex("Base", 2D) = "white" {}
|
||||||
|
[NoScaleOffset]_ToonMap("SSS", 2D) = "white" {}
|
||||||
|
[NoScaleOffset]_TripleMaskMap("HardShadows", 2D) = "white" {}
|
||||||
|
_Outlinewidth("Outline width", Float) = 0
|
||||||
|
_ShadowStrength("Shadow Strength", Range( 0 , 3)) = 3
|
||||||
|
_ViewDirY("ViewDir Y", Range( -200 , 200)) = 0
|
||||||
|
_ViewDirX("ViewDir X", Range( -200 , 200)) = 0
|
||||||
|
_FallBackBrightness1("FallBack Brightness", Range( 0 , 1)) = 0.6
|
||||||
|
[HideInInspector] _texcoord( "", 2D ) = "white" {}
|
||||||
|
[HideInInspector] __dirty( "", Int ) = 1
|
||||||
|
}
|
||||||
|
|
||||||
|
SubShader
|
||||||
|
{
|
||||||
|
Tags{ }
|
||||||
|
Cull Front
|
||||||
|
CGPROGRAM
|
||||||
|
#pragma target 3.0
|
||||||
|
#pragma surface outlineSurf Outline nofog keepalpha noshadow noambient novertexlights nolightmap nodynlightmap nodirlightmap nometa noforwardadd vertex:outlineVertexDataFunc
|
||||||
|
|
||||||
|
void outlineVertexDataFunc( inout appdata_full v, out Input o )
|
||||||
|
{
|
||||||
|
UNITY_INITIALIZE_OUTPUT( Input, o );
|
||||||
|
float outlineVar = ( _Outlinewidth * v.color * 0.001 ).r;
|
||||||
|
v.vertex.xyz += ( v.normal * outlineVar );
|
||||||
|
}
|
||||||
|
inline half4 LightingOutline( SurfaceOutput s, half3 lightDir, half atten ) { return half4 ( 0,0,0, s.Alpha); }
|
||||||
|
void outlineSurf( Input i, inout SurfaceOutput o )
|
||||||
|
{
|
||||||
|
float2 uv_MainTex62 = i.uv_texcoord;
|
||||||
|
float4 BaseTexture158 = tex2Dlod( _MainTex, float4( uv_MainTex62, 0, 0.0) );
|
||||||
|
float2 uv_ToonMap80 = i.uv_texcoord;
|
||||||
|
float4 ShadowTexture147 = tex2Dlod( _ToonMap, float4( uv_ToonMap80, 0, 0.0) );
|
||||||
|
float3 ase_worldPos = i.worldPos;
|
||||||
|
#if defined(LIGHTMAP_ON) && UNITY_VERSION < 560 //aseld
|
||||||
|
float3 ase_worldlightDir = 0;
|
||||||
|
#else //aseld
|
||||||
|
float3 ase_worldlightDir = normalize( UnityWorldSpaceLightDir( ase_worldPos ) );
|
||||||
|
#endif //aseld
|
||||||
|
#if defined(LIGHTMAP_ON) && ( UNITY_VERSION < 560 || ( defined(LIGHTMAP_SHADOW_MIXING) && !defined(SHADOWS_SHADOWMASK) && defined(SHADOWS_SCREEN) ) )//aselc
|
||||||
|
float4 ase_lightColor = 0;
|
||||||
|
#else //aselc
|
||||||
|
float4 ase_lightColor = _LightColor0;
|
||||||
|
#endif //aselc
|
||||||
|
float clampResult7_g640 = clamp( ( ( abs( ase_worldlightDir ).x > float3( 0,0,0 ) ? 1.0 : 0.0 ) + ( ase_lightColor.a > 0.0 ? 1.0 : 0.0 ) ) , 0.0 , 1.0 );
|
||||||
|
float4 color14_g640 = IsGammaSpace() ? float4(1,0,0,0) : float4(1,0,0,0);
|
||||||
|
float4 color8_g640 = IsGammaSpace() ? float4(0,1,0,0) : float4(0,1,0,0);
|
||||||
|
#ifdef UNITY_PASS_FORWARDADD
|
||||||
|
float4 staticSwitch9_g640 = color8_g640;
|
||||||
|
#else
|
||||||
|
float4 staticSwitch9_g640 = ( clampResult7_g640 * color14_g640 );
|
||||||
|
#endif
|
||||||
|
float4 break10_g640 = staticSwitch9_g640;
|
||||||
|
float temp_output_82_0 = break10_g640.r;
|
||||||
|
float Isworldlight90 = temp_output_82_0;
|
||||||
|
float4 temp_output_333_0 = ( ase_lightColor * 1 );
|
||||||
|
float4 temp_cast_1 = (_FallBackBrightness1).xxxx;
|
||||||
|
#ifdef UNITY_PASS_FORWARDADD
|
||||||
|
float4 staticSwitch337 = max( float4( 0,0,0,0 ) , temp_output_333_0 );
|
||||||
|
#else
|
||||||
|
float4 staticSwitch337 = ( ( 0.0 - 0.0 > 1.0 ? 0.0 : 0.0 - 0.0 <= 1.0 && 0.0 + 0.0 >= 1.0 ? 0.0 : Isworldlight90 ) - 0.0 > 0.0 ? temp_output_333_0 : ( 0.0 - 0.0 > 1.0 ? 0.0 : 0.0 - 0.0 <= 1.0 && 0.0 + 0.0 >= 1.0 ? 0.0 : Isworldlight90 ) - 0.0 <= 0.0 && ( 0.0 - 0.0 > 1.0 ? 0.0 : 0.0 - 0.0 <= 1.0 && 0.0 + 0.0 >= 1.0 ? 0.0 : Isworldlight90 ) + 0.0 >= 0.0 ? temp_cast_1 : 0.0 ) ;
|
||||||
|
#endif
|
||||||
|
float4 Globnallightcolour338 = staticSwitch337;
|
||||||
|
o.Emission = ( BaseTexture158 * ( ShadowTexture147 * 0.5 ) * Globnallightcolour338 ).rgb;
|
||||||
|
}
|
||||||
|
ENDCG
|
||||||
|
|
||||||
|
|
||||||
|
Tags{ "RenderType" = "Opaque" "Queue" = "Geometry+0" }
|
||||||
|
Cull Back
|
||||||
|
CGINCLUDE
|
||||||
|
#include "UnityPBSLighting.cginc"
|
||||||
|
#include "UnityCG.cginc"
|
||||||
|
#include "UnityShaderVariables.cginc"
|
||||||
|
#include "Lighting.cginc"
|
||||||
|
#pragma target 3.0
|
||||||
|
struct Input
|
||||||
|
{
|
||||||
|
float3 worldPos;
|
||||||
|
float2 uv_texcoord;
|
||||||
|
float3 worldNormal;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct SurfaceOutputCustomLightingCustom
|
||||||
|
{
|
||||||
|
half3 Albedo;
|
||||||
|
half3 Normal;
|
||||||
|
half3 Emission;
|
||||||
|
half Metallic;
|
||||||
|
half Smoothness;
|
||||||
|
half Occlusion;
|
||||||
|
half Alpha;
|
||||||
|
Input SurfInput;
|
||||||
|
UnityGIInput GIData;
|
||||||
|
};
|
||||||
|
|
||||||
|
uniform float _FallBackBrightness1;
|
||||||
|
uniform sampler2D _ToonMap;
|
||||||
|
uniform sampler2D _MainTex;
|
||||||
|
uniform sampler2D _TripleMaskMap;
|
||||||
|
uniform float _ViewDirX;
|
||||||
|
uniform float _ViewDirY;
|
||||||
|
uniform float _ShadowStrength;
|
||||||
|
uniform float _Outlinewidth;
|
||||||
|
|
||||||
|
|
||||||
|
float3 ViewMatrix0375_g643( )
|
||||||
|
{
|
||||||
|
return UNITY_MATRIX_V[0];
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
float3 ViewMatrix1373_g643( )
|
||||||
|
{
|
||||||
|
return UNITY_MATRIX_V[1];
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
float3 StereoCameraViewPosition30_g641( )
|
||||||
|
{
|
||||||
|
#if UNITY_SINGLE_PASS_STEREO
|
||||||
|
float3 cameraPos = float3((unity_StereoWorldSpaceCameraPos[0]+ unity_StereoWorldSpaceCameraPos[1])*.5);
|
||||||
|
#else
|
||||||
|
float3 cameraPos = _WorldSpaceCameraPos;
|
||||||
|
#endif
|
||||||
|
return cameraPos;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
float3 RotateAroundAxis( float3 center, float3 original, float3 u, float angle )
|
||||||
|
{
|
||||||
|
original -= center;
|
||||||
|
float C = cos( angle );
|
||||||
|
float S = sin( angle );
|
||||||
|
float t = 1 - C;
|
||||||
|
float m00 = t * u.x * u.x + C;
|
||||||
|
float m01 = t * u.x * u.y - S * u.z;
|
||||||
|
float m02 = t * u.x * u.z + S * u.y;
|
||||||
|
float m10 = t * u.x * u.y + S * u.z;
|
||||||
|
float m11 = t * u.y * u.y + C;
|
||||||
|
float m12 = t * u.y * u.z - S * u.x;
|
||||||
|
float m20 = t * u.x * u.z - S * u.y;
|
||||||
|
float m21 = t * u.y * u.z + S * u.x;
|
||||||
|
float m22 = t * u.z * u.z + C;
|
||||||
|
float3x3 finalMatrix = float3x3( m00, m01, m02, m10, m11, m12, m20, m21, m22 );
|
||||||
|
return mul( finalMatrix, original ) + center;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void vertexDataFunc( inout appdata_full v, out Input o )
|
||||||
|
{
|
||||||
|
UNITY_INITIALIZE_OUTPUT( Input, o );
|
||||||
|
v.vertex.xyz += 0;
|
||||||
|
v.vertex.w = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
inline half4 LightingStandardCustomLighting( inout SurfaceOutputCustomLightingCustom s, half3 viewDir, UnityGI gi )
|
||||||
|
{
|
||||||
|
UnityGIInput data = s.GIData;
|
||||||
|
Input i = s.SurfInput;
|
||||||
|
half4 c = 0;
|
||||||
|
#ifdef UNITY_PASS_FORWARDBASE
|
||||||
|
float ase_lightAtten = data.atten;
|
||||||
|
if( _LightColor0.a == 0)
|
||||||
|
ase_lightAtten = 0;
|
||||||
|
#else
|
||||||
|
float3 ase_lightAttenRGB = gi.light.color / ( ( _LightColor0.rgb ) + 0.000001 );
|
||||||
|
float ase_lightAtten = max( max( ase_lightAttenRGB.r, ase_lightAttenRGB.g ), ase_lightAttenRGB.b );
|
||||||
|
#endif
|
||||||
|
#if defined(HANDLE_SHADOWS_BLENDING_IN_GI)
|
||||||
|
half bakedAtten = UnitySampleBakedOcclusion(data.lightmapUV.xy, data.worldPos);
|
||||||
|
float zDist = dot(_WorldSpaceCameraPos - data.worldPos, UNITY_MATRIX_V[2].xyz);
|
||||||
|
float fadeDist = UnityComputeShadowFadeDistance(data.worldPos, zDist);
|
||||||
|
ase_lightAtten = UnityMixRealtimeAndBakedShadows(data.atten, bakedAtten, UnityComputeShadowFade(fadeDist));
|
||||||
|
#endif
|
||||||
|
float3 ase_worldPos = i.worldPos;
|
||||||
|
#if defined(LIGHTMAP_ON) && UNITY_VERSION < 560 //aseld
|
||||||
|
float3 ase_worldlightDir = 0;
|
||||||
|
#else //aseld
|
||||||
|
float3 ase_worldlightDir = Unity_SafeNormalize( UnityWorldSpaceLightDir( ase_worldPos ) );
|
||||||
|
#endif //aseld
|
||||||
|
#if defined(LIGHTMAP_ON) && ( UNITY_VERSION < 560 || ( defined(LIGHTMAP_SHADOW_MIXING) && !defined(SHADOWS_SHADOWMASK) && defined(SHADOWS_SCREEN) ) )//aselc
|
||||||
|
float4 ase_lightColor = 0;
|
||||||
|
#else //aselc
|
||||||
|
float4 ase_lightColor = _LightColor0;
|
||||||
|
#endif //aselc
|
||||||
|
float clampResult7_g640 = clamp( ( ( abs( ase_worldlightDir ).x > float3( 0,0,0 ) ? 1.0 : 0.0 ) + ( ase_lightColor.a > 0.0 ? 1.0 : 0.0 ) ) , 0.0 , 1.0 );
|
||||||
|
float4 color14_g640 = IsGammaSpace() ? float4(1,0,0,0) : float4(1,0,0,0);
|
||||||
|
float4 color8_g640 = IsGammaSpace() ? float4(0,1,0,0) : float4(0,1,0,0);
|
||||||
|
#ifdef UNITY_PASS_FORWARDADD
|
||||||
|
float4 staticSwitch9_g640 = color8_g640;
|
||||||
|
#else
|
||||||
|
float4 staticSwitch9_g640 = ( clampResult7_g640 * color14_g640 );
|
||||||
|
#endif
|
||||||
|
float4 break10_g640 = staticSwitch9_g640;
|
||||||
|
float temp_output_82_0 = break10_g640.r;
|
||||||
|
float Isworldlight90 = temp_output_82_0;
|
||||||
|
float4 temp_output_333_0 = ( ase_lightColor * ase_lightAtten );
|
||||||
|
float4 temp_cast_1 = (_FallBackBrightness1).xxxx;
|
||||||
|
#ifdef UNITY_PASS_FORWARDADD
|
||||||
|
float4 staticSwitch337 = max( float4( 0,0,0,0 ) , temp_output_333_0 );
|
||||||
|
#else
|
||||||
|
float4 staticSwitch337 = ( ( 0.0 - 0.0 > 1.0 ? 0.0 : 0.0 - 0.0 <= 1.0 && 0.0 + 0.0 >= 1.0 ? 0.0 : Isworldlight90 ) - 0.0 > 0.0 ? temp_output_333_0 : ( 0.0 - 0.0 > 1.0 ? 0.0 : 0.0 - 0.0 <= 1.0 && 0.0 + 0.0 >= 1.0 ? 0.0 : Isworldlight90 ) - 0.0 <= 0.0 && ( 0.0 - 0.0 > 1.0 ? 0.0 : 0.0 - 0.0 <= 1.0 && 0.0 + 0.0 >= 1.0 ? 0.0 : Isworldlight90 ) + 0.0 >= 0.0 ? temp_cast_1 : 0.0 ) ;
|
||||||
|
#endif
|
||||||
|
float4 Globnallightcolour338 = staticSwitch337;
|
||||||
|
float2 uv_ToonMap80 = i.uv_texcoord;
|
||||||
|
float4 ShadowTexture147 = tex2Dlod( _ToonMap, float4( uv_ToonMap80, 0, 0.0) );
|
||||||
|
float2 uv_MainTex62 = i.uv_texcoord;
|
||||||
|
float4 BaseTexture158 = tex2Dlod( _MainTex, float4( uv_MainTex62, 0, 0.0) );
|
||||||
|
float2 uv_TripleMaskMap310 = i.uv_texcoord;
|
||||||
|
float4 tex2DNode310 = tex2D( _TripleMaskMap, uv_TripleMaskMap310 );
|
||||||
|
float3 localViewMatrix0375_g643 = ViewMatrix0375_g643();
|
||||||
|
float3 normalizeResult384_g643 = normalize( localViewMatrix0375_g643 );
|
||||||
|
float3 temp_output_380_0_g643 = ( float3( 0,0,0 ) + ase_worldPos );
|
||||||
|
float3 localViewMatrix1373_g643 = ViewMatrix1373_g643();
|
||||||
|
float3 normalizeResult376_g643 = normalize( localViewMatrix1373_g643 );
|
||||||
|
float3 localStereoCameraViewPosition30_g641 = StereoCameraViewPosition30_g641();
|
||||||
|
float3 rotatedValue385_g643 = RotateAroundAxis( temp_output_380_0_g643, localStereoCameraViewPosition30_g641, normalizeResult376_g643, radians( ( _ViewDirY * -1.0 ) ) );
|
||||||
|
float3 rotatedValue387_g643 = RotateAroundAxis( temp_output_380_0_g643, rotatedValue385_g643, normalize( normalizeResult384_g643 ), radians( ( _ViewDirX * 1.0 ) ) );
|
||||||
|
float3 normalizeResult389_g643 = normalize( ( rotatedValue387_g643 - temp_output_380_0_g643 ) );
|
||||||
|
float3 normalizeResult38_g641 = normalize( normalizeResult389_g643 );
|
||||||
|
float3 appendResult15_g642 = (float3(( cos( ( ( 0.0 / 180.0 ) * UNITY_PI ) ) * sin( ( ( 0.0 / 180.0 ) * UNITY_PI ) ) * -1.0 ) , sin( ( ( 0.0 / 180.0 ) * UNITY_PI ) ) , ( cos( ( ( 0.0 / 180.0 ) * UNITY_PI ) ) * cos( ( ( 0.0 / 180.0 ) * UNITY_PI ) ) * -1.0 )));
|
||||||
|
float3 normalizeResult2_g642 = normalize( appendResult15_g642 );
|
||||||
|
float3 normalizeResult26_g641 = normalize( normalizeResult2_g642 );
|
||||||
|
float3 ifLocalVar3_g641 = 0;
|
||||||
|
if( 1.0 > 0.0 )
|
||||||
|
ifLocalVar3_g641 = normalizeResult38_g641;
|
||||||
|
else if( 1.0 == 0.0 )
|
||||||
|
ifLocalVar3_g641 = normalizeResult26_g641;
|
||||||
|
float3 ifLocalVar8_g641 = 0;
|
||||||
|
if( temp_output_82_0 > 0.0 )
|
||||||
|
ifLocalVar8_g641 = ase_worldlightDir;
|
||||||
|
else if( temp_output_82_0 == 0.0 )
|
||||||
|
ifLocalVar8_g641 = ifLocalVar3_g641;
|
||||||
|
float3 ifLocalVar9_g641 = 0;
|
||||||
|
if( 1.0 > 0.0 )
|
||||||
|
ifLocalVar9_g641 = ifLocalVar3_g641;
|
||||||
|
else if( 1.0 == 0.0 )
|
||||||
|
ifLocalVar9_g641 = ifLocalVar8_g641;
|
||||||
|
float3 ase_worldNormal = i.worldNormal;
|
||||||
|
float3 ase_normWorldNormal = normalize( ase_worldNormal );
|
||||||
|
float dotResult46_g641 = dot( ifLocalVar9_g641 , ase_normWorldNormal );
|
||||||
|
float NDL91 = dotResult46_g641;
|
||||||
|
float smoothstepResult311 = smoothstep( 0.0 , ( tex2DNode310.g * ( 1.0 - NDL91 ) ) , ( ( NDL91 * _ShadowStrength ) * tex2DNode310.g ));
|
||||||
|
float temp_output_3_0_g644 = ( smoothstepResult311 - 0.26 );
|
||||||
|
float4 lerpResult78 = lerp( ShadowTexture147 , BaseTexture158 , saturate( ( temp_output_3_0_g644 / fwidth( temp_output_3_0_g644 ) ) ));
|
||||||
|
float4 Shadow64 = lerpResult78;
|
||||||
|
c.rgb = ( Globnallightcolour338 * Shadow64 ).rgb;
|
||||||
|
c.a = 1;
|
||||||
|
return c;
|
||||||
|
}
|
||||||
|
|
||||||
|
inline void LightingStandardCustomLighting_GI( inout SurfaceOutputCustomLightingCustom s, UnityGIInput data, inout UnityGI gi )
|
||||||
|
{
|
||||||
|
s.GIData = data;
|
||||||
|
}
|
||||||
|
|
||||||
|
void surf( Input i , inout SurfaceOutputCustomLightingCustom o )
|
||||||
|
{
|
||||||
|
o.SurfInput = i;
|
||||||
|
}
|
||||||
|
|
||||||
|
ENDCG
|
||||||
|
CGPROGRAM
|
||||||
|
#pragma surface surf StandardCustomLighting keepalpha fullforwardshadows noshadow vertex:vertexDataFunc
|
||||||
|
|
||||||
|
ENDCG
|
||||||
|
Pass
|
||||||
|
{
|
||||||
|
Name "ShadowCaster"
|
||||||
|
Tags{ "LightMode" = "ShadowCaster" }
|
||||||
|
ZWrite On
|
||||||
|
CGPROGRAM
|
||||||
|
#pragma vertex vert
|
||||||
|
#pragma fragment frag
|
||||||
|
#pragma target 3.0
|
||||||
|
#pragma multi_compile_shadowcaster
|
||||||
|
#pragma multi_compile UNITY_PASS_SHADOWCASTER
|
||||||
|
#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2
|
||||||
|
#include "HLSLSupport.cginc"
|
||||||
|
#if ( SHADER_API_D3D11 || SHADER_API_GLCORE || SHADER_API_GLES || SHADER_API_GLES3 || SHADER_API_METAL || SHADER_API_VULKAN )
|
||||||
|
#define CAN_SKIP_VPOS
|
||||||
|
#endif
|
||||||
|
#include "UnityCG.cginc"
|
||||||
|
#include "Lighting.cginc"
|
||||||
|
#include "UnityPBSLighting.cginc"
|
||||||
|
struct v2f
|
||||||
|
{
|
||||||
|
V2F_SHADOW_CASTER;
|
||||||
|
float2 customPack1 : TEXCOORD1;
|
||||||
|
float3 worldPos : TEXCOORD2;
|
||||||
|
float3 worldNormal : TEXCOORD3;
|
||||||
|
UNITY_VERTEX_INPUT_INSTANCE_ID
|
||||||
|
UNITY_VERTEX_OUTPUT_STEREO
|
||||||
|
};
|
||||||
|
v2f vert( appdata_full v )
|
||||||
|
{
|
||||||
|
v2f o;
|
||||||
|
UNITY_SETUP_INSTANCE_ID( v );
|
||||||
|
UNITY_INITIALIZE_OUTPUT( v2f, o );
|
||||||
|
UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO( o );
|
||||||
|
UNITY_TRANSFER_INSTANCE_ID( v, o );
|
||||||
|
Input customInputData;
|
||||||
|
vertexDataFunc( v, customInputData );
|
||||||
|
float3 worldPos = mul( unity_ObjectToWorld, v.vertex ).xyz;
|
||||||
|
half3 worldNormal = UnityObjectToWorldNormal( v.normal );
|
||||||
|
o.worldNormal = worldNormal;
|
||||||
|
o.customPack1.xy = customInputData.uv_texcoord;
|
||||||
|
o.customPack1.xy = v.texcoord;
|
||||||
|
o.worldPos = worldPos;
|
||||||
|
TRANSFER_SHADOW_CASTER_NORMALOFFSET( o )
|
||||||
|
return o;
|
||||||
|
}
|
||||||
|
half4 frag( v2f IN
|
||||||
|
#if !defined( CAN_SKIP_VPOS )
|
||||||
|
, UNITY_VPOS_TYPE vpos : VPOS
|
||||||
|
#endif
|
||||||
|
) : SV_Target
|
||||||
|
{
|
||||||
|
UNITY_SETUP_INSTANCE_ID( IN );
|
||||||
|
Input surfIN;
|
||||||
|
UNITY_INITIALIZE_OUTPUT( Input, surfIN );
|
||||||
|
surfIN.uv_texcoord = IN.customPack1.xy;
|
||||||
|
float3 worldPos = IN.worldPos;
|
||||||
|
half3 worldViewDir = normalize( UnityWorldSpaceViewDir( worldPos ) );
|
||||||
|
surfIN.worldPos = worldPos;
|
||||||
|
surfIN.worldNormal = IN.worldNormal;
|
||||||
|
SurfaceOutputCustomLightingCustom o;
|
||||||
|
UNITY_INITIALIZE_OUTPUT( SurfaceOutputCustomLightingCustom, o )
|
||||||
|
surf( surfIN, o );
|
||||||
|
#if defined( CAN_SKIP_VPOS )
|
||||||
|
float2 vpos = IN.pos;
|
||||||
|
#endif
|
||||||
|
SHADOW_CASTER_FRAGMENT( IN )
|
||||||
|
}
|
||||||
|
ENDCG
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Fallback "Diffuse"
|
||||||
|
CustomEditor "ASEMaterialInspector"
|
||||||
|
}
|
||||||
|
/*ASEBEGIN
|
||||||
|
Version=18901
|
||||||
|
789;81;1121;389;2070.441;-1022.954;2.72116;True;False
|
||||||
|
Node;AmplifyShaderEditor.CommentaryNode;325;-1872,-992;Inherit;False;1347.069;756.9989;Comment;11;85;84;87;88;83;82;86;89;91;247;90;Lights;0.579394,1,0,1;0;0
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;88;-1824,-464;Inherit;False;Property;_ViewDirX;ViewDir X;6;0;Create;True;0;0;0;False;0;False;0;0;-200;200;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;84;-1824,-816;Inherit;False;Constant;_LightDirection;Light Direction;2;1;[Enum];Create;True;0;2;Normal;0;ViewDirection;1;0;False;0;False;1;0;0;0;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;83;-1824,-736;Inherit;False;Constant;_FallbackLight;Fallback Light ;2;1;[Enum];Create;True;0;2;Automatic;0;Fake;1;0;False;0;False;1;0;0;0;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;87;-1824,-352;Inherit;False;Property;_ViewDirY;ViewDir Y;5;0;Create;True;0;0;0;False;0;False;0;0;-200;200;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.FunctionNode;82;-1824,-944;Inherit;False;Is_There_A_Light;-1;;640;692d888142f187d479d5e6f976e674b0;0;0;2;FLOAT;0;FLOAT;15
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;85;-1824,-640;Inherit;False;Constant;_FakeDirX;FakeDir X ;7;0;Create;True;0;0;0;False;0;False;0;0;-200;200;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;86;-1824,-560;Inherit;False;Constant;_FakeDirY;FakeDir Y;6;0;Create;True;0;0;0;False;0;False;0;0;-200;200;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.FunctionNode;89;-1472,-688;Inherit;False;Dot_Creation;-1;;641;2e5876d4432839c4c9496c6ced2f9534;0;7;12;FLOAT;0;False;17;FLOAT;0;False;16;FLOAT;0;False;29;FLOAT;0;False;28;FLOAT;0;False;33;FLOAT;0;False;34;FLOAT;0;False;3;FLOAT;0;FLOAT;42;FLOAT;52
|
||||||
|
Node;AmplifyShaderEditor.RegisterLocalVarNode;91;-768,-800;Inherit;False;NDL;-1;True;1;0;FLOAT;0;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.CommentaryNode;324;-464,-976;Inherit;False;1663.408;915.915;Comment;19;147;80;62;158;64;270;78;271;231;95;311;97;313;321;317;310;320;318;322;Shading;1,0,0,1;0;0
|
||||||
|
Node;AmplifyShaderEditor.GetLocalVarNode;321;-352,-544;Inherit;False;91;NDL;1;0;OBJECT;;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;313;-416,-816;Inherit;False;Property;_ShadowStrength;Shadow Strength;4;0;Create;True;0;0;0;False;0;False;3;0.182;0;3;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.RegisterLocalVarNode;90;-1536,-944;Inherit;False;Isworldlight;-1;True;1;0;FLOAT;0;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.CommentaryNode;327;-896,1168;Inherit;False;1617.594;695.9377;Comment;12;338;337;336;335;334;333;332;331;330;329;328;341;Light Autist;0.4860944,1,0,1;0;0
|
||||||
|
Node;AmplifyShaderEditor.GetLocalVarNode;97;-352,-896;Inherit;False;91;NDL;1;0;OBJECT;;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.GetLocalVarNode;330;-864,1328;Inherit;False;90;Isworldlight;1;0;OBJECT;;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;328;-864,1232;Inherit;False;Constant;_LightColour;Light Colour;6;1;[Enum];Create;True;0;2;Automatic;0;Fake;1;0;False;0;False;0;0;0;0;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;320;-128,-864;Inherit;False;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.SamplerNode;310;-288,-736;Inherit;True;Property;_TripleMaskMap;HardShadows;2;1;[NoScaleOffset];Create;True;0;0;0;False;0;False;-1;None;438fdeaa34f2adf4d9bda8aefeb312b7;True;0;False;white;Auto;False;Object;-1;Auto;Texture2D;8;0;SAMPLER2D;;False;1;FLOAT2;0,0;False;2;FLOAT;0;False;3;FLOAT2;0,0;False;4;FLOAT2;0,0;False;5;FLOAT;1;False;6;FLOAT;0;False;7;SAMPLERSTATE;;False;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
||||||
|
Node;AmplifyShaderEditor.LightAttenuation;331;-864,1552;Inherit;False;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.OneMinusNode;317;-160,-544;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.LightColorNode;329;-864,1424;Inherit;False;0;3;COLOR;0;FLOAT3;1;FLOAT;2
|
||||||
|
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;322;48,-640;Inherit;False;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.SamplerNode;62;96,-528;Inherit;True;Property;_MainTex;Base;0;1;[NoScaleOffset];Create;True;0;0;0;False;0;False;-1;None;bf857c4f87097504aa2c360fa3bc2469;True;0;False;white;Auto;False;Object;-1;MipLevel;Texture2D;8;0;SAMPLER2D;;False;1;FLOAT2;0,0;False;2;FLOAT;0;False;3;FLOAT2;0,0;False;4;FLOAT2;0,0;False;5;FLOAT;1;False;6;FLOAT;0;False;7;SAMPLERSTATE;;False;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
||||||
|
Node;AmplifyShaderEditor.SamplerNode;80;96,-320;Inherit;True;Property;_ToonMap;SSS;1;1;[NoScaleOffset];Create;True;0;0;0;False;0;False;-1;None;64cc5ff020b4ec843a1a5c5e1e239a4a;True;0;False;white;Auto;False;Object;-1;MipLevel;Texture2D;8;0;SAMPLER2D;;False;1;FLOAT2;0,0;False;2;FLOAT;0;False;3;FLOAT2;0,0;False;4;FLOAT2;0,0;False;5;FLOAT;1;False;6;FLOAT;0;False;7;SAMPLERSTATE;;False;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;341;-566.3372,1674.242;Inherit;False;Property;_FallBackBrightness1;FallBack Brightness;7;0;Create;True;0;0;0;False;0;False;0.6;0;0;1;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.TFHCIf;334;-592,1248;Inherit;False;6;0;FLOAT;0;False;1;FLOAT;1;False;2;FLOAT;0;False;3;FLOAT;0;False;4;FLOAT;0;False;5;FLOAT;0;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;333;-592,1440;Inherit;False;2;2;0;COLOR;0,0,0,0;False;1;FLOAT;0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;318;48,-752;Inherit;False;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.RegisterLocalVarNode;158;416,-528;Inherit;False;BaseTexture;-1;True;1;0;COLOR;0,0,0,0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;95;224,-800;Inherit;False;Constant;_LightSmoothness;Light Smoothness;3;0;Create;True;0;0;0;False;0;False;0.26;0.4;0;0;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.RegisterLocalVarNode;147;432,-320;Inherit;False;ShadowTexture;-1;True;1;0;COLOR;0,0,0,0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.SmoothstepOpNode;311;224,-720;Inherit;False;3;0;FLOAT;0;False;1;FLOAT;0;False;2;FLOAT;1;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.TFHCIf;336;-192,1360;Inherit;False;6;0;FLOAT;0;False;1;FLOAT;0;False;2;COLOR;0,0,0,0;False;3;FLOAT;0;False;4;FLOAT;0;False;5;FLOAT;0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.SimpleMaxOpNode;335;-96,1552;Inherit;False;2;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.GetLocalVarNode;270;448,-928;Inherit;False;147;ShadowTexture;1;0;OBJECT;;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.StaticSwitch;337;64,1360;Inherit;False;Property;_Keyword0;Keyword 0;10;0;Create;True;0;0;0;False;0;False;0;0;0;False;UNITY_PASS_FORWARDADD;Toggle;2;Key0;Key1;Fetch;False;True;9;1;COLOR;0,0,0,0;False;0;COLOR;0,0,0,0;False;2;COLOR;0,0,0,0;False;3;COLOR;0,0,0,0;False;4;COLOR;0,0,0,0;False;5;COLOR;0,0,0,0;False;6;COLOR;0,0,0,0;False;7;COLOR;0,0,0,0;False;8;COLOR;0,0,0,0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.FunctionNode;231;464,-752;Inherit;False;Step Antialiasing;-1;;644;2a825e80dfb3290468194f83380797bd;0;2;1;FLOAT;0;False;2;FLOAT;0;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.CommentaryNode;326;-482,21.46355;Inherit;False;1237.712;1021.536;Comment;14;136;0;143;166;148;156;159;165;137;139;145;119;339;340;Outputs;0.981343,1,0,1;0;0
|
||||||
|
Node;AmplifyShaderEditor.GetLocalVarNode;271;464,-832;Inherit;False;158;BaseTexture;1;0;OBJECT;;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.GetLocalVarNode;148;-432,496;Inherit;False;147;ShadowTexture;1;0;OBJECT;;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.LerpOp;78;752,-816;Inherit;False;3;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;2;FLOAT;0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;165;-368,608;Inherit;False;Constant;_Float2;Float 2;10;0;Create;True;0;0;0;False;0;False;0.5;0;0;0;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.RegisterLocalVarNode;338;432,1360;Inherit;False;Globnallightcolour;-1;True;1;0;COLOR;0,0,0,0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.VertexColorNode;139;-384,768;Inherit;False;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
||||||
|
Node;AmplifyShaderEditor.RegisterLocalVarNode;64;944,-816;Inherit;False;Shadow;-1;True;1;0;COLOR;0,0,0,0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;145;-400,928;Inherit;False;Constant;_Float0;Float 0;13;0;Create;True;0;0;0;False;0;False;0.001;0;0;0;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.GetLocalVarNode;339;16,208;Inherit;False;338;Globnallightcolour;1;0;OBJECT;;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;166;-144,496;Inherit;False;2;2;0;COLOR;0,0,0,0;False;1;FLOAT;0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.GetLocalVarNode;159;-208,400;Inherit;False;158;BaseTexture;1;0;OBJECT;;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;137;-384,688;Inherit;False;Property;_Outlinewidth;Outline width;3;0;Create;True;0;0;0;False;0;False;0;1.36;0;0;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;143;16,544;Inherit;False;3;3;0;FLOAT;0;False;1;COLOR;0,0,0,0;False;2;FLOAT;0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.CommentaryNode;56;-1344,592;Inherit;False;794.4915;416.6398;Light ;4;55;53;52;58;ViewDIr;1,1,1,1;0;0
|
||||||
|
Node;AmplifyShaderEditor.GetLocalVarNode;119;80,304;Inherit;False;64;Shadow;1;0;OBJECT;;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;156;16,416;Inherit;False;3;3;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;2;COLOR;0,0,0,0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.ColorNode;332;-864,1648;Inherit;False;Constant;_FakeColourtint;Fake Colour tint;5;0;Create;True;0;0;0;False;0;False;1,1,1,0;1,1,1,0;True;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
||||||
|
Node;AmplifyShaderEditor.DotProductOpNode;53;-976,720;Inherit;False;2;0;FLOAT3;0,0,0;False;1;FLOAT3;0,0,0;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.RegisterLocalVarNode;58;-800,736;Inherit;False;Viewdir_light;-1;True;1;0;FLOAT;0;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.ViewDirInputsCoordNode;55;-1232,816;Inherit;False;World;False;0;4;FLOAT3;0;FLOAT;1;FLOAT;2;FLOAT;3
|
||||||
|
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;340;288,224;Inherit;False;2;2;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.WorldSpaceLightDirHlpNode;52;-1296,640;Inherit;False;True;1;0;FLOAT;0;False;4;FLOAT3;0;FLOAT;1;FLOAT;2;FLOAT;3
|
||||||
|
Node;AmplifyShaderEditor.RegisterLocalVarNode;247;-1008,-656;Inherit;False;NDV;-1;True;1;0;FLOAT;0;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.OutlineNode;136;175.8069,431.8843;Inherit;False;0;True;None;0;0;Front;3;0;FLOAT3;0,0,0;False;2;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT3;0
|
||||||
|
Node;AmplifyShaderEditor.StandardSurfaceOutputNode;0;492.7116,71.46355;Float;False;True;-1;2;ASEMaterialInspector;0;0;CustomLighting;Nars/UmaMusume/Face;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;Back;0;False;-1;0;False;-1;False;0;False;-1;0;False;-1;False;0;Opaque;0.5;True;True;0;False;Opaque;;Geometry;All;14;all;True;True;True;True;0;False;-1;False;0;False;-1;255;False;-1;255;False;-1;0;False;-1;0;False;-1;0;False;-1;0;False;-1;0;False;-1;0;False;-1;0;False;-1;0;False;-1;False;2;15;10;25;False;0.5;False;0;0;False;-1;0;False;-1;0;0;False;-1;0;False;-1;0;False;-1;0;False;-1;0;False;0;0,0,0,0;VertexOffset;True;False;Cylindrical;False;Relative;0;;-1;-1;-1;-1;0;False;0;0;False;-1;-1;0;False;-1;0;0;0;False;0.1;False;-1;0;False;-1;False;15;0;FLOAT3;0,0,0;False;1;FLOAT3;0,0,0;False;2;FLOAT3;0,0,0;False;3;FLOAT3;0,0,0;False;4;FLOAT;0;False;6;FLOAT3;0,0,0;False;7;FLOAT3;0,0,0;False;8;FLOAT;0;False;9;FLOAT;0;False;10;FLOAT;0;False;13;FLOAT3;0,0,0;False;11;FLOAT3;0,0,0;False;12;FLOAT3;0,0,0;False;14;FLOAT4;0,0,0,0;False;15;FLOAT3;0,0,0;False;0
|
||||||
|
WireConnection;89;12;82;0
|
||||||
|
WireConnection;89;17;84;0
|
||||||
|
WireConnection;89;16;83;0
|
||||||
|
WireConnection;89;29;85;0
|
||||||
|
WireConnection;89;28;86;0
|
||||||
|
WireConnection;89;33;88;0
|
||||||
|
WireConnection;89;34;87;0
|
||||||
|
WireConnection;91;0;89;0
|
||||||
|
WireConnection;90;0;82;0
|
||||||
|
WireConnection;320;0;97;0
|
||||||
|
WireConnection;320;1;313;0
|
||||||
|
WireConnection;317;0;321;0
|
||||||
|
WireConnection;322;0;310;2
|
||||||
|
WireConnection;322;1;317;0
|
||||||
|
WireConnection;334;0;328;0
|
||||||
|
WireConnection;334;4;330;0
|
||||||
|
WireConnection;333;0;329;0
|
||||||
|
WireConnection;333;1;331;0
|
||||||
|
WireConnection;318;0;320;0
|
||||||
|
WireConnection;318;1;310;2
|
||||||
|
WireConnection;158;0;62;0
|
||||||
|
WireConnection;147;0;80;0
|
||||||
|
WireConnection;311;0;318;0
|
||||||
|
WireConnection;311;2;322;0
|
||||||
|
WireConnection;336;0;334;0
|
||||||
|
WireConnection;336;2;333;0
|
||||||
|
WireConnection;336;3;341;0
|
||||||
|
WireConnection;335;1;333;0
|
||||||
|
WireConnection;337;1;336;0
|
||||||
|
WireConnection;337;0;335;0
|
||||||
|
WireConnection;231;1;95;0
|
||||||
|
WireConnection;231;2;311;0
|
||||||
|
WireConnection;78;0;270;0
|
||||||
|
WireConnection;78;1;271;0
|
||||||
|
WireConnection;78;2;231;0
|
||||||
|
WireConnection;338;0;337;0
|
||||||
|
WireConnection;64;0;78;0
|
||||||
|
WireConnection;166;0;148;0
|
||||||
|
WireConnection;166;1;165;0
|
||||||
|
WireConnection;143;0;137;0
|
||||||
|
WireConnection;143;1;139;0
|
||||||
|
WireConnection;143;2;145;0
|
||||||
|
WireConnection;156;0;159;0
|
||||||
|
WireConnection;156;1;166;0
|
||||||
|
WireConnection;156;2;339;0
|
||||||
|
WireConnection;53;0;52;0
|
||||||
|
WireConnection;53;1;55;0
|
||||||
|
WireConnection;58;0;53;0
|
||||||
|
WireConnection;340;0;339;0
|
||||||
|
WireConnection;340;1;119;0
|
||||||
|
WireConnection;247;0;89;42
|
||||||
|
WireConnection;136;0;156;0
|
||||||
|
WireConnection;136;1;143;0
|
||||||
|
WireConnection;0;13;340;0
|
||||||
|
WireConnection;0;11;136;0
|
||||||
|
ASEEND*/
|
||||||
|
//CHKSM=D4A0518E1D98A1249A7478DAD2593C6140E8E53A
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 0f906fb5c12bff84fbbd0e789a01014c
|
||||||
|
ShaderImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
defaultTextures: []
|
||||||
|
nonModifiableTextures: []
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,610 @@
|
|||||||
|
// Made with Amplify Shader Editor
|
||||||
|
// Available at the Unity Asset Store - http://u3d.as/y3X
|
||||||
|
Shader "Nars/UmaMusume/Body"
|
||||||
|
{
|
||||||
|
Properties
|
||||||
|
{
|
||||||
|
_Cutoff( "Mask Clip Value", Float ) = 0.5
|
||||||
|
[NoScaleOffset]_MainTex("Base", 2D) = "white" {}
|
||||||
|
[NoScaleOffset]_ToonMap("SSS", 2D) = "white" {}
|
||||||
|
[NoScaleOffset]_TripleMaskMap("HardShadows", 2D) = "white" {}
|
||||||
|
[NoScaleOffset]_OptionMaskMap("HardShadows2", 2D) = "white" {}
|
||||||
|
_Outlinewidth("Outline width", Float) = 0
|
||||||
|
_HighlightColor("Highlight Color", Color) = (1,1,1,0)
|
||||||
|
_HighlightBrightness("Highlight Brightness", Range( 0 , 1)) = 0.4
|
||||||
|
_SpecularSmoothness("Specular Smoothness", Float) = 1.03
|
||||||
|
_ViewDirY("ViewDir Y", Range( -200 , 200)) = 0
|
||||||
|
_Float2("Float 2", Float) = 0.5
|
||||||
|
_SpecularBrightness("Specular Brightness", Range( -30 , 30)) = -30
|
||||||
|
_ViewDirX("ViewDir X", Range( -200 , 200)) = 0
|
||||||
|
_SpecSize("Spec Size", Range( 0 , 10)) = 5
|
||||||
|
_FallBackBrightness("FallBack Brightness", Range( 0 , 1)) = 0.6
|
||||||
|
[HideInInspector] _texcoord( "", 2D ) = "white" {}
|
||||||
|
[HideInInspector] __dirty( "", Int ) = 1
|
||||||
|
}
|
||||||
|
|
||||||
|
SubShader
|
||||||
|
{
|
||||||
|
Tags{ "RenderType" = "TransparentCutout" "Queue" = "AlphaTest+0"}
|
||||||
|
Cull Front
|
||||||
|
CGPROGRAM
|
||||||
|
#pragma target 3.0
|
||||||
|
#pragma surface outlineSurf Outline nofog keepalpha noshadow noambient novertexlights nolightmap nodynlightmap nodirlightmap nometa noforwardadd vertex:outlineVertexDataFunc
|
||||||
|
|
||||||
|
void outlineVertexDataFunc( inout appdata_full v, out Input o )
|
||||||
|
{
|
||||||
|
UNITY_INITIALIZE_OUTPUT( Input, o );
|
||||||
|
float outlineVar = ( _Outlinewidth * v.color * 0.001 ).r;
|
||||||
|
v.vertex.xyz += ( v.normal * outlineVar );
|
||||||
|
}
|
||||||
|
inline half4 LightingOutline( SurfaceOutput s, half3 lightDir, half atten ) { return half4 ( 0,0,0, s.Alpha); }
|
||||||
|
void outlineSurf( Input i, inout SurfaceOutput o )
|
||||||
|
{
|
||||||
|
float2 uv_MainTex62 = i.uv_texcoord;
|
||||||
|
float4 BaseTexture158 = tex2Dlod( _MainTex, float4( uv_MainTex62, 0, 0.0) );
|
||||||
|
float2 uv_ToonMap80 = i.uv_texcoord;
|
||||||
|
float4 ShadowTexture147 = tex2Dlod( _ToonMap, float4( uv_ToonMap80, 0, 0.0) );
|
||||||
|
float3 ase_worldPos = i.worldPos;
|
||||||
|
#if defined(LIGHTMAP_ON) && UNITY_VERSION < 560 //aseld
|
||||||
|
float3 ase_worldlightDir = 0;
|
||||||
|
#else //aseld
|
||||||
|
float3 ase_worldlightDir = normalize( UnityWorldSpaceLightDir( ase_worldPos ) );
|
||||||
|
#endif //aseld
|
||||||
|
#if defined(LIGHTMAP_ON) && ( UNITY_VERSION < 560 || ( defined(LIGHTMAP_SHADOW_MIXING) && !defined(SHADOWS_SHADOWMASK) && defined(SHADOWS_SCREEN) ) )//aselc
|
||||||
|
float4 ase_lightColor = 0;
|
||||||
|
#else //aselc
|
||||||
|
float4 ase_lightColor = _LightColor0;
|
||||||
|
#endif //aselc
|
||||||
|
float clampResult7_g640 = clamp( ( ( abs( ase_worldlightDir ).x > float3( 0,0,0 ) ? 1.0 : 0.0 ) + ( ase_lightColor.a > 0.0 ? 1.0 : 0.0 ) ) , 0.0 , 1.0 );
|
||||||
|
float4 color14_g640 = IsGammaSpace() ? float4(1,0,0,0) : float4(1,0,0,0);
|
||||||
|
float4 color8_g640 = IsGammaSpace() ? float4(0,1,0,0) : float4(0,1,0,0);
|
||||||
|
#ifdef UNITY_PASS_FORWARDADD
|
||||||
|
float4 staticSwitch9_g640 = color8_g640;
|
||||||
|
#else
|
||||||
|
float4 staticSwitch9_g640 = ( clampResult7_g640 * color14_g640 );
|
||||||
|
#endif
|
||||||
|
float4 break10_g640 = staticSwitch9_g640;
|
||||||
|
float temp_output_82_0 = break10_g640.r;
|
||||||
|
float Isworldlight90 = temp_output_82_0;
|
||||||
|
float4 temp_output_288_0 = ( ase_lightColor * 1 );
|
||||||
|
float4 temp_cast_1 = (_FallBackBrightness).xxxx;
|
||||||
|
#ifdef UNITY_PASS_FORWARDADD
|
||||||
|
float4 staticSwitch292 = max( float4( 0,0,0,0 ) , temp_output_288_0 );
|
||||||
|
#else
|
||||||
|
float4 staticSwitch292 = ( ( 0.0 - 0.0 > 1.0 ? 0.0 : 0.0 - 0.0 <= 1.0 && 0.0 + 0.0 >= 1.0 ? 0.0 : Isworldlight90 ) - 0.0 > 0.0 ? temp_output_288_0 : ( 0.0 - 0.0 > 1.0 ? 0.0 : 0.0 - 0.0 <= 1.0 && 0.0 + 0.0 >= 1.0 ? 0.0 : Isworldlight90 ) - 0.0 <= 0.0 && ( 0.0 - 0.0 > 1.0 ? 0.0 : 0.0 - 0.0 <= 1.0 && 0.0 + 0.0 >= 1.0 ? 0.0 : Isworldlight90 ) + 0.0 >= 0.0 ? temp_cast_1 : 0.0 ) ;
|
||||||
|
#endif
|
||||||
|
float4 Globnallightcolour293 = staticSwitch292;
|
||||||
|
float4 color322 = IsGammaSpace() ? float4(0.7075472,0,0,0) : float4(0.4588115,0,0,0);
|
||||||
|
float2 uv_TripleMaskMap102 = i.uv_texcoord;
|
||||||
|
float4 tex2DNode102 = tex2Dlod( _TripleMaskMap, float4( uv_TripleMaskMap102, 0, 0.0) );
|
||||||
|
float4 Transparency315 = tex2DNode102;
|
||||||
|
float4 color326 = IsGammaSpace() ? float4(0.8018868,0.8018868,0.8018868,0) : float4(0.6070304,0.6070304,0.6070304,0);
|
||||||
|
float Opacity341 = ( saturate( ( 1.0 - ( ( distance( ( 1.0 - color322 ).rgb , Transparency315.rgb ) - 0.63 ) / max( 1.25 , 1E-05 ) ) ) ) * saturate( ( 1.0 - ( ( distance( ( 1.0 - color326 ).rgb , Transparency315.rgb ) - 1.52 ) / max( -2.44 , 1E-05 ) ) ) ) );
|
||||||
|
o.Emission = ( BaseTexture158 * ( ShadowTexture147 * _Float2 ) * Globnallightcolour293 ).rgb;
|
||||||
|
clip( Opacity341 - _Cutoff );
|
||||||
|
}
|
||||||
|
ENDCG
|
||||||
|
|
||||||
|
|
||||||
|
Tags{ "RenderType" = "TransparentCutout" "Queue" = "Transparent+0" }
|
||||||
|
Cull Back
|
||||||
|
CGINCLUDE
|
||||||
|
#include "UnityPBSLighting.cginc"
|
||||||
|
#include "UnityCG.cginc"
|
||||||
|
#include "UnityShaderVariables.cginc"
|
||||||
|
#include "Lighting.cginc"
|
||||||
|
#pragma target 3.0
|
||||||
|
struct Input
|
||||||
|
{
|
||||||
|
float2 uv_texcoord;
|
||||||
|
float3 worldPos;
|
||||||
|
float3 worldNormal;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct SurfaceOutputCustomLightingCustom
|
||||||
|
{
|
||||||
|
half3 Albedo;
|
||||||
|
half3 Normal;
|
||||||
|
half3 Emission;
|
||||||
|
half Metallic;
|
||||||
|
half Smoothness;
|
||||||
|
half Occlusion;
|
||||||
|
half Alpha;
|
||||||
|
Input SurfInput;
|
||||||
|
UnityGIInput GIData;
|
||||||
|
};
|
||||||
|
|
||||||
|
uniform sampler2D _TripleMaskMap;
|
||||||
|
uniform sampler2D _ToonMap;
|
||||||
|
uniform sampler2D _MainTex;
|
||||||
|
uniform float _HighlightBrightness;
|
||||||
|
uniform float4 _HighlightColor;
|
||||||
|
uniform float _ViewDirX;
|
||||||
|
uniform float _ViewDirY;
|
||||||
|
uniform sampler2D _OptionMaskMap;
|
||||||
|
uniform float _SpecularBrightness;
|
||||||
|
uniform float _SpecularSmoothness;
|
||||||
|
uniform float _SpecSize;
|
||||||
|
uniform float _FallBackBrightness;
|
||||||
|
uniform float _Cutoff = 0.5;
|
||||||
|
uniform float _Float2;
|
||||||
|
uniform float _Outlinewidth;
|
||||||
|
|
||||||
|
|
||||||
|
float3 ViewMatrix0375_g643( )
|
||||||
|
{
|
||||||
|
return UNITY_MATRIX_V[0];
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
float3 ViewMatrix1373_g643( )
|
||||||
|
{
|
||||||
|
return UNITY_MATRIX_V[1];
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
float3 StereoCameraViewPosition30_g641( )
|
||||||
|
{
|
||||||
|
#if UNITY_SINGLE_PASS_STEREO
|
||||||
|
float3 cameraPos = float3((unity_StereoWorldSpaceCameraPos[0]+ unity_StereoWorldSpaceCameraPos[1])*.5);
|
||||||
|
#else
|
||||||
|
float3 cameraPos = _WorldSpaceCameraPos;
|
||||||
|
#endif
|
||||||
|
return cameraPos;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
float3 RotateAroundAxis( float3 center, float3 original, float3 u, float angle )
|
||||||
|
{
|
||||||
|
original -= center;
|
||||||
|
float C = cos( angle );
|
||||||
|
float S = sin( angle );
|
||||||
|
float t = 1 - C;
|
||||||
|
float m00 = t * u.x * u.x + C;
|
||||||
|
float m01 = t * u.x * u.y - S * u.z;
|
||||||
|
float m02 = t * u.x * u.z + S * u.y;
|
||||||
|
float m10 = t * u.x * u.y + S * u.z;
|
||||||
|
float m11 = t * u.y * u.y + C;
|
||||||
|
float m12 = t * u.y * u.z - S * u.x;
|
||||||
|
float m20 = t * u.x * u.z - S * u.y;
|
||||||
|
float m21 = t * u.y * u.z + S * u.x;
|
||||||
|
float m22 = t * u.z * u.z + C;
|
||||||
|
float3x3 finalMatrix = float3x3( m00, m01, m02, m10, m11, m12, m20, m21, m22 );
|
||||||
|
return mul( finalMatrix, original ) + center;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
float3 StereoCameraViewDirection32_g641( float3 worldPos )
|
||||||
|
{
|
||||||
|
#if UNITY_SINGLE_PASS_STEREO
|
||||||
|
float3 cameraPos = float3((unity_StereoWorldSpaceCameraPos[0]+ unity_StereoWorldSpaceCameraPos[1])*.5);
|
||||||
|
#else
|
||||||
|
float3 cameraPos = _WorldSpaceCameraPos;
|
||||||
|
#endif
|
||||||
|
float3 worldViewDir = normalize((cameraPos - worldPos));
|
||||||
|
return worldViewDir;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void vertexDataFunc( inout appdata_full v, out Input o )
|
||||||
|
{
|
||||||
|
UNITY_INITIALIZE_OUTPUT( Input, o );
|
||||||
|
v.vertex.xyz += 0;
|
||||||
|
v.vertex.w = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
inline half4 LightingStandardCustomLighting( inout SurfaceOutputCustomLightingCustom s, half3 viewDir, UnityGI gi )
|
||||||
|
{
|
||||||
|
UnityGIInput data = s.GIData;
|
||||||
|
Input i = s.SurfInput;
|
||||||
|
half4 c = 0;
|
||||||
|
#ifdef UNITY_PASS_FORWARDBASE
|
||||||
|
float ase_lightAtten = data.atten;
|
||||||
|
if( _LightColor0.a == 0)
|
||||||
|
ase_lightAtten = 0;
|
||||||
|
#else
|
||||||
|
float3 ase_lightAttenRGB = gi.light.color / ( ( _LightColor0.rgb ) + 0.000001 );
|
||||||
|
float ase_lightAtten = max( max( ase_lightAttenRGB.r, ase_lightAttenRGB.g ), ase_lightAttenRGB.b );
|
||||||
|
#endif
|
||||||
|
#if defined(HANDLE_SHADOWS_BLENDING_IN_GI)
|
||||||
|
half bakedAtten = UnitySampleBakedOcclusion(data.lightmapUV.xy, data.worldPos);
|
||||||
|
float zDist = dot(_WorldSpaceCameraPos - data.worldPos, UNITY_MATRIX_V[2].xyz);
|
||||||
|
float fadeDist = UnityComputeShadowFadeDistance(data.worldPos, zDist);
|
||||||
|
ase_lightAtten = UnityMixRealtimeAndBakedShadows(data.atten, bakedAtten, UnityComputeShadowFade(fadeDist));
|
||||||
|
#endif
|
||||||
|
float4 color322 = IsGammaSpace() ? float4(0.7075472,0,0,0) : float4(0.4588115,0,0,0);
|
||||||
|
float2 uv_TripleMaskMap102 = i.uv_texcoord;
|
||||||
|
float4 tex2DNode102 = tex2Dlod( _TripleMaskMap, float4( uv_TripleMaskMap102, 0, 0.0) );
|
||||||
|
float4 Transparency315 = tex2DNode102;
|
||||||
|
float4 color326 = IsGammaSpace() ? float4(0.8018868,0.8018868,0.8018868,0) : float4(0.6070304,0.6070304,0.6070304,0);
|
||||||
|
float Opacity341 = ( saturate( ( 1.0 - ( ( distance( ( 1.0 - color322 ).rgb , Transparency315.rgb ) - 0.63 ) / max( 1.25 , 1E-05 ) ) ) ) * saturate( ( 1.0 - ( ( distance( ( 1.0 - color326 ).rgb , Transparency315.rgb ) - 1.52 ) / max( -2.44 , 1E-05 ) ) ) ) );
|
||||||
|
float2 uv_ToonMap80 = i.uv_texcoord;
|
||||||
|
float4 ShadowTexture147 = tex2Dlod( _ToonMap, float4( uv_ToonMap80, 0, 0.0) );
|
||||||
|
float HD2303 = tex2DNode102.g;
|
||||||
|
float2 uv_MainTex62 = i.uv_texcoord;
|
||||||
|
float4 BaseTexture158 = tex2Dlod( _MainTex, float4( uv_MainTex62, 0, 0.0) );
|
||||||
|
float3 localViewMatrix0375_g643 = ViewMatrix0375_g643();
|
||||||
|
float3 normalizeResult384_g643 = normalize( localViewMatrix0375_g643 );
|
||||||
|
float3 ase_worldPos = i.worldPos;
|
||||||
|
float3 temp_output_380_0_g643 = ( float3( 0,0,0 ) + ase_worldPos );
|
||||||
|
float3 localViewMatrix1373_g643 = ViewMatrix1373_g643();
|
||||||
|
float3 normalizeResult376_g643 = normalize( localViewMatrix1373_g643 );
|
||||||
|
float3 localStereoCameraViewPosition30_g641 = StereoCameraViewPosition30_g641();
|
||||||
|
float3 rotatedValue385_g643 = RotateAroundAxis( temp_output_380_0_g643, localStereoCameraViewPosition30_g641, normalizeResult376_g643, radians( ( _ViewDirY * -1.0 ) ) );
|
||||||
|
float3 rotatedValue387_g643 = RotateAroundAxis( temp_output_380_0_g643, rotatedValue385_g643, normalize( normalizeResult384_g643 ), radians( ( _ViewDirX * 1.0 ) ) );
|
||||||
|
float3 normalizeResult389_g643 = normalize( ( rotatedValue387_g643 - temp_output_380_0_g643 ) );
|
||||||
|
float3 normalizeResult38_g641 = normalize( normalizeResult389_g643 );
|
||||||
|
float3 appendResult15_g642 = (float3(( cos( ( ( 122.1598 / 180.0 ) * UNITY_PI ) ) * sin( ( ( 0.0 / 180.0 ) * UNITY_PI ) ) * -1.0 ) , sin( ( ( 122.1598 / 180.0 ) * UNITY_PI ) ) , ( cos( ( ( 122.1598 / 180.0 ) * UNITY_PI ) ) * cos( ( ( 0.0 / 180.0 ) * UNITY_PI ) ) * -1.0 )));
|
||||||
|
float3 normalizeResult2_g642 = normalize( appendResult15_g642 );
|
||||||
|
float3 normalizeResult26_g641 = normalize( normalizeResult2_g642 );
|
||||||
|
float3 ifLocalVar3_g641 = 0;
|
||||||
|
if( 1.0 > 0.0 )
|
||||||
|
ifLocalVar3_g641 = normalizeResult38_g641;
|
||||||
|
else if( 1.0 == 0.0 )
|
||||||
|
ifLocalVar3_g641 = normalizeResult26_g641;
|
||||||
|
#if defined(LIGHTMAP_ON) && UNITY_VERSION < 560 //aseld
|
||||||
|
float3 ase_worldlightDir = 0;
|
||||||
|
#else //aseld
|
||||||
|
float3 ase_worldlightDir = Unity_SafeNormalize( UnityWorldSpaceLightDir( ase_worldPos ) );
|
||||||
|
#endif //aseld
|
||||||
|
#if defined(LIGHTMAP_ON) && ( UNITY_VERSION < 560 || ( defined(LIGHTMAP_SHADOW_MIXING) && !defined(SHADOWS_SHADOWMASK) && defined(SHADOWS_SCREEN) ) )//aselc
|
||||||
|
float4 ase_lightColor = 0;
|
||||||
|
#else //aselc
|
||||||
|
float4 ase_lightColor = _LightColor0;
|
||||||
|
#endif //aselc
|
||||||
|
float clampResult7_g640 = clamp( ( ( abs( ase_worldlightDir ).x > float3( 0,0,0 ) ? 1.0 : 0.0 ) + ( ase_lightColor.a > 0.0 ? 1.0 : 0.0 ) ) , 0.0 , 1.0 );
|
||||||
|
float4 color14_g640 = IsGammaSpace() ? float4(1,0,0,0) : float4(1,0,0,0);
|
||||||
|
float4 color8_g640 = IsGammaSpace() ? float4(0,1,0,0) : float4(0,1,0,0);
|
||||||
|
#ifdef UNITY_PASS_FORWARDADD
|
||||||
|
float4 staticSwitch9_g640 = color8_g640;
|
||||||
|
#else
|
||||||
|
float4 staticSwitch9_g640 = ( clampResult7_g640 * color14_g640 );
|
||||||
|
#endif
|
||||||
|
float4 break10_g640 = staticSwitch9_g640;
|
||||||
|
float temp_output_82_0 = break10_g640.r;
|
||||||
|
float3 ifLocalVar8_g641 = 0;
|
||||||
|
if( temp_output_82_0 > 0.0 )
|
||||||
|
ifLocalVar8_g641 = ase_worldlightDir;
|
||||||
|
else if( temp_output_82_0 == 0.0 )
|
||||||
|
ifLocalVar8_g641 = ifLocalVar3_g641;
|
||||||
|
float3 ifLocalVar9_g641 = 0;
|
||||||
|
if( 1.0 > 0.0 )
|
||||||
|
ifLocalVar9_g641 = ifLocalVar3_g641;
|
||||||
|
else if( 1.0 == 0.0 )
|
||||||
|
ifLocalVar9_g641 = ifLocalVar8_g641;
|
||||||
|
float3 ase_worldNormal = i.worldNormal;
|
||||||
|
float3 ase_normWorldNormal = normalize( ase_worldNormal );
|
||||||
|
float dotResult46_g641 = dot( ifLocalVar9_g641 , ase_normWorldNormal );
|
||||||
|
float NDL91 = dotResult46_g641;
|
||||||
|
float temp_output_3_0_g644 = ( 0.4 - ( NDL91 * tex2DNode102 ).r );
|
||||||
|
float4 lerpResult78 = lerp( ( ShadowTexture147 + ( ShadowTexture147 * ShadowTexture147 * 0.0 ) + ( HD2303 * 0.21 ) ) , ( BaseTexture158 + ( BaseTexture158 * HD2303 * _HighlightBrightness * _HighlightColor ) ) , ( 1.0 - saturate( ( temp_output_3_0_g644 / fwidth( temp_output_3_0_g644 ) ) ) ));
|
||||||
|
float2 uv_OptionMaskMap131 = i.uv_texcoord;
|
||||||
|
float4 tex2DNode131 = tex2Dlod( _OptionMaskMap, float4( uv_OptionMaskMap131, 0, 0.0) );
|
||||||
|
float3 worldPos32_g641 = ase_worldPos;
|
||||||
|
float3 localStereoCameraViewDirection32_g641 = StereoCameraViewDirection32_g641( worldPos32_g641 );
|
||||||
|
float dotResult31_g641 = dot( ase_normWorldNormal , localStereoCameraViewDirection32_g641 );
|
||||||
|
float NDV247 = dotResult31_g641;
|
||||||
|
float smoothstepResult260 = smoothstep( 0.0 , _SpecularSmoothness , ( ( _SpecSize * 0.1 ) <= ( NDL91 * NDV247 ) ? 1.0 : 0.0 ));
|
||||||
|
float4 Shadow64 = ( lerpResult78 + ( ( ShadowTexture147 * tex2DNode131.g * tex2DNode131.b * _SpecularBrightness * BaseTexture158 ) * smoothstepResult260 * ShadowTexture147 * BaseTexture158 ) );
|
||||||
|
float Isworldlight90 = temp_output_82_0;
|
||||||
|
float4 temp_output_288_0 = ( ase_lightColor * ase_lightAtten );
|
||||||
|
float4 temp_cast_6 = (_FallBackBrightness).xxxx;
|
||||||
|
#ifdef UNITY_PASS_FORWARDADD
|
||||||
|
float4 staticSwitch292 = max( float4( 0,0,0,0 ) , temp_output_288_0 );
|
||||||
|
#else
|
||||||
|
float4 staticSwitch292 = ( ( 0.0 - 0.0 > 1.0 ? 0.0 : 0.0 - 0.0 <= 1.0 && 0.0 + 0.0 >= 1.0 ? 0.0 : Isworldlight90 ) - 0.0 > 0.0 ? temp_output_288_0 : ( 0.0 - 0.0 > 1.0 ? 0.0 : 0.0 - 0.0 <= 1.0 && 0.0 + 0.0 >= 1.0 ? 0.0 : Isworldlight90 ) - 0.0 <= 0.0 && ( 0.0 - 0.0 > 1.0 ? 0.0 : 0.0 - 0.0 <= 1.0 && 0.0 + 0.0 >= 1.0 ? 0.0 : Isworldlight90 ) + 0.0 >= 0.0 ? temp_cast_6 : 0.0 ) ;
|
||||||
|
#endif
|
||||||
|
float4 Globnallightcolour293 = staticSwitch292;
|
||||||
|
c.rgb = ( Shadow64 * Globnallightcolour293 ).rgb;
|
||||||
|
c.a = 1;
|
||||||
|
clip( Opacity341 - _Cutoff );
|
||||||
|
return c;
|
||||||
|
}
|
||||||
|
|
||||||
|
inline void LightingStandardCustomLighting_GI( inout SurfaceOutputCustomLightingCustom s, UnityGIInput data, inout UnityGI gi )
|
||||||
|
{
|
||||||
|
s.GIData = data;
|
||||||
|
}
|
||||||
|
|
||||||
|
void surf( Input i , inout SurfaceOutputCustomLightingCustom o )
|
||||||
|
{
|
||||||
|
o.SurfInput = i;
|
||||||
|
}
|
||||||
|
|
||||||
|
ENDCG
|
||||||
|
CGPROGRAM
|
||||||
|
#pragma surface surf StandardCustomLighting keepalpha fullforwardshadows noshadow vertex:vertexDataFunc
|
||||||
|
|
||||||
|
ENDCG
|
||||||
|
Pass
|
||||||
|
{
|
||||||
|
Name "ShadowCaster"
|
||||||
|
Tags{ "LightMode" = "ShadowCaster" }
|
||||||
|
ZWrite On
|
||||||
|
CGPROGRAM
|
||||||
|
#pragma vertex vert
|
||||||
|
#pragma fragment frag
|
||||||
|
#pragma target 3.0
|
||||||
|
#pragma multi_compile_shadowcaster
|
||||||
|
#pragma multi_compile UNITY_PASS_SHADOWCASTER
|
||||||
|
#pragma skip_variants FOG_LINEAR FOG_EXP FOG_EXP2
|
||||||
|
#include "HLSLSupport.cginc"
|
||||||
|
#if ( SHADER_API_D3D11 || SHADER_API_GLCORE || SHADER_API_GLES || SHADER_API_GLES3 || SHADER_API_METAL || SHADER_API_VULKAN )
|
||||||
|
#define CAN_SKIP_VPOS
|
||||||
|
#endif
|
||||||
|
#include "UnityCG.cginc"
|
||||||
|
#include "Lighting.cginc"
|
||||||
|
#include "UnityPBSLighting.cginc"
|
||||||
|
struct v2f
|
||||||
|
{
|
||||||
|
V2F_SHADOW_CASTER;
|
||||||
|
float2 customPack1 : TEXCOORD1;
|
||||||
|
float3 worldPos : TEXCOORD2;
|
||||||
|
float3 worldNormal : TEXCOORD3;
|
||||||
|
UNITY_VERTEX_INPUT_INSTANCE_ID
|
||||||
|
UNITY_VERTEX_OUTPUT_STEREO
|
||||||
|
};
|
||||||
|
v2f vert( appdata_full v )
|
||||||
|
{
|
||||||
|
v2f o;
|
||||||
|
UNITY_SETUP_INSTANCE_ID( v );
|
||||||
|
UNITY_INITIALIZE_OUTPUT( v2f, o );
|
||||||
|
UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO( o );
|
||||||
|
UNITY_TRANSFER_INSTANCE_ID( v, o );
|
||||||
|
Input customInputData;
|
||||||
|
vertexDataFunc( v, customInputData );
|
||||||
|
float3 worldPos = mul( unity_ObjectToWorld, v.vertex ).xyz;
|
||||||
|
half3 worldNormal = UnityObjectToWorldNormal( v.normal );
|
||||||
|
o.worldNormal = worldNormal;
|
||||||
|
o.customPack1.xy = customInputData.uv_texcoord;
|
||||||
|
o.customPack1.xy = v.texcoord;
|
||||||
|
o.worldPos = worldPos;
|
||||||
|
TRANSFER_SHADOW_CASTER_NORMALOFFSET( o )
|
||||||
|
return o;
|
||||||
|
}
|
||||||
|
half4 frag( v2f IN
|
||||||
|
#if !defined( CAN_SKIP_VPOS )
|
||||||
|
, UNITY_VPOS_TYPE vpos : VPOS
|
||||||
|
#endif
|
||||||
|
) : SV_Target
|
||||||
|
{
|
||||||
|
UNITY_SETUP_INSTANCE_ID( IN );
|
||||||
|
Input surfIN;
|
||||||
|
UNITY_INITIALIZE_OUTPUT( Input, surfIN );
|
||||||
|
surfIN.uv_texcoord = IN.customPack1.xy;
|
||||||
|
float3 worldPos = IN.worldPos;
|
||||||
|
half3 worldViewDir = normalize( UnityWorldSpaceViewDir( worldPos ) );
|
||||||
|
surfIN.worldPos = worldPos;
|
||||||
|
surfIN.worldNormal = IN.worldNormal;
|
||||||
|
SurfaceOutputCustomLightingCustom o;
|
||||||
|
UNITY_INITIALIZE_OUTPUT( SurfaceOutputCustomLightingCustom, o )
|
||||||
|
surf( surfIN, o );
|
||||||
|
UnityGI gi;
|
||||||
|
UNITY_INITIALIZE_OUTPUT( UnityGI, gi );
|
||||||
|
o.Alpha = LightingStandardCustomLighting( o, worldViewDir, gi ).a;
|
||||||
|
#if defined( CAN_SKIP_VPOS )
|
||||||
|
float2 vpos = IN.pos;
|
||||||
|
#endif
|
||||||
|
SHADOW_CASTER_FRAGMENT( IN )
|
||||||
|
}
|
||||||
|
ENDCG
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Fallback "Diffuse"
|
||||||
|
CustomEditor "ASEMaterialInspector"
|
||||||
|
}
|
||||||
|
/*ASEBEGIN
|
||||||
|
Version=18901
|
||||||
|
789;81;1121;389;2993.236;-319.876;1.3;True;False
|
||||||
|
Node;AmplifyShaderEditor.CommentaryNode;294;-5680,1744;Inherit;False;1347.069;756.9989;Comment;11;86;84;87;83;82;85;88;89;247;91;90;Light;0,0.6940067,0.7264151,1;0;0
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;83;-5632,2000;Inherit;False;Constant;_FallbackLight;Fallback Light ;3;1;[Enum];Create;True;0;2;Automatic;0;Fake;1;0;False;0;False;1;1;0;0;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;84;-5632,1920;Inherit;False;Constant;_LightDirection;Light Direction;2;1;[Enum];Create;True;0;2;Normal;0;ViewDirection;1;0;False;0;False;1;0;0;0;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;87;-5632,2384;Inherit;False;Property;_ViewDirY;ViewDir Y;9;0;Create;True;0;0;0;False;0;False;0;0;-200;200;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;85;-5632,2096;Inherit;False;Constant;_FakeDirX;FakeDir X ;7;0;Create;True;0;0;0;False;0;False;122.1598;0;-200;200;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;88;-5632,2272;Inherit;False;Property;_ViewDirX;ViewDir X;13;0;Create;True;0;0;0;False;0;False;0;0;-200;200;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.FunctionNode;82;-5632,1792;Inherit;False;Is_There_A_Light;-1;;640;692d888142f187d479d5e6f976e674b0;0;0;2;FLOAT;0;FLOAT;15
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;86;-5632,2176;Inherit;False;Constant;_FakeDirY;FakeDir Y;6;0;Create;True;0;0;0;False;0;False;0;0;-200;200;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.CommentaryNode;306;-5728,16;Inherit;False;3116.3;1634.136;Comment;48;64;62;264;267;252;257;263;266;158;255;249;261;243;301;131;242;295;260;296;245;244;78;250;253;302;298;297;233;304;239;305;299;300;232;303;95;231;97;102;227;80;147;309;308;312;311;314;315;Shading;1,0,0,1;0;0
|
||||||
|
Node;AmplifyShaderEditor.FunctionNode;89;-5264,2048;Inherit;False;Dot_Creation;-1;;641;2e5876d4432839c4c9496c6ced2f9534;0;7;12;FLOAT;0;False;17;FLOAT;0;False;16;FLOAT;0;False;29;FLOAT;0;False;28;FLOAT;0;False;33;FLOAT;0;False;34;FLOAT;0;False;3;FLOAT;0;FLOAT;42;FLOAT;52
|
||||||
|
Node;AmplifyShaderEditor.SamplerNode;62;-5744,80;Inherit;True;Property;_MainTex;Base;1;1;[NoScaleOffset];Create;True;0;0;0;False;0;False;-1;None;23368b2b15c396e4285427c2d21f4338;True;0;False;white;Auto;False;Object;-1;MipLevel;Texture2D;8;0;SAMPLER2D;;False;1;FLOAT2;0,0;False;2;FLOAT;0;False;3;FLOAT2;0,0;False;4;FLOAT2;0,0;False;5;FLOAT;1;False;6;FLOAT;0;False;7;SAMPLERSTATE;;False;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
||||||
|
Node;AmplifyShaderEditor.SamplerNode;102;-5583,639;Inherit;True;Property;_TripleMaskMap;HardShadows;3;1;[NoScaleOffset];Create;True;0;0;0;False;0;False;-1;None;05845c9e92dcedd4f9a5b7ad5d707ddd;True;0;False;white;Auto;False;Object;-1;MipLevel;Texture2D;8;0;SAMPLER2D;;False;1;FLOAT2;0,0;False;2;FLOAT;0;False;3;FLOAT2;0,0;False;4;FLOAT2;0,0;False;5;FLOAT;1;False;6;FLOAT;0;False;7;SAMPLERSTATE;;False;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
||||||
|
Node;AmplifyShaderEditor.SamplerNode;80;-5728,304;Inherit;True;Property;_ToonMap;SSS;2;1;[NoScaleOffset];Create;True;0;0;0;False;0;False;-1;None;7ca0e4ead13dcff47854babd60c93998;True;0;False;white;Auto;False;Object;-1;MipLevel;Texture2D;8;0;SAMPLER2D;;False;1;FLOAT2;0,0;False;2;FLOAT;0;False;3;FLOAT2;0,0;False;4;FLOAT2;0,0;False;5;FLOAT;1;False;6;FLOAT;0;False;7;SAMPLERSTATE;;False;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
||||||
|
Node;AmplifyShaderEditor.RegisterLocalVarNode;91;-4576,1936;Inherit;False;NDL;-1;True;1;0;FLOAT;0;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.RegisterLocalVarNode;247;-4816,2080;Inherit;False;NDV;-1;True;1;0;FLOAT;0;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;264;-5255.775,1223.871;Inherit;False;Constant;_Float4;Float 4;9;0;Create;True;0;0;0;False;0;False;0.1;0;0;0;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.CommentaryNode;282;-2448,1136;Inherit;False;1617.594;695.9377;Comment;12;293;292;291;290;289;288;287;286;285;284;283;347;Light Autist;0.4860944,1,0,1;0;0
|
||||||
|
Node;AmplifyShaderEditor.RegisterLocalVarNode;158;-5360,80;Inherit;False;BaseTexture;-1;True;1;0;COLOR;0,0,0,0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.GetLocalVarNode;252;-5434.129,1403.161;Inherit;False;91;NDL;1;0;OBJECT;;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;257;-5357.046,1129.836;Inherit;False;Property;_SpecSize;Spec Size;14;0;Create;True;0;0;0;False;0;False;5;5;0;10;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.RegisterLocalVarNode;303;-5072,736;Inherit;False;HD2;-1;True;1;0;FLOAT;0;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.GetLocalVarNode;267;-5423.715,1481.274;Inherit;False;247;NDV;1;0;OBJECT;;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.RegisterLocalVarNode;147;-5344,288;Inherit;False;ShadowTexture;-1;True;1;0;COLOR;0,0,0,0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.GetLocalVarNode;97;-5264,528;Inherit;False;91;NDL;1;0;OBJECT;;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.RegisterLocalVarNode;90;-5344,1792;Inherit;False;Isworldlight;-1;True;1;0;FLOAT;0;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.GetLocalVarNode;285;-2416,1296;Inherit;False;90;Isworldlight;1;0;OBJECT;;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;266;-5143.542,1333.11;Inherit;True;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.CommentaryNode;345;-2904.398,-1000.279;Inherit;False;1577.253;711.3821;Comment;14;330;323;321;325;324;331;334;328;320;329;333;341;322;326;Opacity;1,1,1,1;0;0
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;311;-4704,560;Inherit;False;Constant;_Float5;Float 5;9;0;Create;True;0;0;0;False;0;False;0.21;0.21;0;0;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.ColorNode;314;-4570.162,773.2895;Inherit;False;Property;_HighlightColor;Highlight Color;6;0;Create;True;0;0;0;False;0;False;1,1,1,0;1,1,1,0;True;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
||||||
|
Node;AmplifyShaderEditor.GetLocalVarNode;299;-4737.536,295.9054;Inherit;False;147;ShadowTexture;1;0;OBJECT;;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;283;-2416,1200;Inherit;False;Constant;_LightColour;Light Colour;11;1;[Enum];Create;True;0;2;Automatic;0;Fake;1;0;False;0;False;0;0;0;0;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;227;-4984,546;Inherit;False;2;2;0;FLOAT;0;False;1;COLOR;0,0,0,0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;95;-5200,832;Inherit;False;Constant;_LightSmoothness;Light Smoothness;3;0;Create;True;0;0;0;False;0;False;0.4;0.4;0;1;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.GetLocalVarNode;309;-4717.588,491.2482;Inherit;False;303;HD2;1;0;OBJECT;;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;263;-5086.575,1217.461;Inherit;False;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.GetLocalVarNode;298;-4304,544;Inherit;False;158;BaseTexture;1;0;OBJECT;;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.GetLocalVarNode;304;-4415.32,622.4467;Inherit;False;303;HD2;1;0;OBJECT;;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.GetLocalVarNode;305;-4736,368;Inherit;False;147;ShadowTexture;1;0;OBJECT;;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;308;-4544,448;Inherit;False;Constant;_Float3;Float 3;9;0;Create;True;0;0;0;False;0;False;0;0;0;0;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.LightAttenuation;286;-2416,1520;Inherit;False;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.LightColorNode;284;-2416,1392;Inherit;False;0;3;COLOR;0;FLOAT3;1;FLOAT;2
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;239;-4704.968,646.7232;Inherit;False;Property;_HighlightBrightness;Highlight Brightness;7;0;Create;True;0;0;0;False;0;False;0.4;0.4;0;1;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.TFHCIf;289;-2142,1216;Inherit;False;6;0;FLOAT;0;False;1;FLOAT;1;False;2;FLOAT;0;False;3;FLOAT;0;False;4;FLOAT;0;False;5;FLOAT;0;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;242;-4304,336;Inherit;False;3;3;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;2;FLOAT;0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;312;-4304,448;Inherit;False;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.RegisterLocalVarNode;315;-5251.789,658.5535;Inherit;False;Transparency;-1;True;1;0;COLOR;0,0,0,0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.ColorNode;322;-2854.398,-933.0788;Inherit;False;Constant;_Color0;Color 0;11;0;Create;True;0;0;0;False;0;False;0.7075472,0,0,0;0.7075472,0,0,0;True;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
||||||
|
Node;AmplifyShaderEditor.FunctionNode;231;-4800,736;Inherit;False;Step Antialiasing;-1;;644;2a825e80dfb3290468194f83380797bd;0;2;1;FLOAT;0;False;2;FLOAT;0;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;261;-4743.385,1417.633;Inherit;False;Property;_SpecularSmoothness;Specular Smoothness;8;0;Create;True;0;0;0;False;0;False;1.03;1.03;0;0;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;243;-4048,624;Inherit;False;4;4;0;COLOR;0,0,0,0;False;1;FLOAT;0;False;2;FLOAT;0;False;3;COLOR;0,0,0,0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.ColorNode;326;-2850.286,-623.8107;Inherit;False;Constant;_Color1;Color 1;11;0;Create;True;0;0;0;False;0;False;0.8018868,0.8018868,0.8018868,0;0,0,0,0;True;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
||||||
|
Node;AmplifyShaderEditor.GetLocalVarNode;301;-3712,880;Inherit;False;147;ShadowTexture;1;0;OBJECT;;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;288;-2073,1413;Inherit;False;2;2;0;COLOR;0,0,0,0;False;1;FLOAT;0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.GetLocalVarNode;300;-4297.575,257.7716;Inherit;False;147;ShadowTexture;1;0;OBJECT;;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.GetLocalVarNode;295;-3809.152,1180.614;Inherit;False;158;BaseTexture;1;0;OBJECT;;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.Compare;255;-4823.385,1241.633;Inherit;False;5;4;0;FLOAT;0;False;1;FLOAT;0;False;2;FLOAT;1;False;3;FLOAT;0;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.SamplerNode;131;-4222,929;Inherit;True;Property;_OptionMaskMap;HardShadows2;4;1;[NoScaleOffset];Create;True;0;0;0;False;0;False;-1;None;1d36ccfaa822c2b4c923d52d507f65fe;True;0;False;white;Auto;False;Object;-1;MipLevel;Texture2D;8;0;SAMPLER2D;;False;1;FLOAT2;0,0;False;2;FLOAT;0;False;3;FLOAT2;0,0;False;4;FLOAT2;0,0;False;5;FLOAT;1;False;6;FLOAT;0;False;7;SAMPLERSTATE;;False;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;347;-2113.057,1561.396;Inherit;False;Property;_FallBackBrightness;FallBack Brightness;15;0;Create;True;0;0;0;False;0;False;0.6;0;0;1;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;249;-3811,1043;Inherit;False;Property;_SpecularBrightness;Specular Brightness;12;0;Create;True;0;0;0;False;0;False;-30;1;-30;30;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.GetLocalVarNode;297;-4048,544;Inherit;False;158;BaseTexture;1;0;OBJECT;;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;245;-3349.949,914.2349;Inherit;False;5;5;0;COLOR;0,0,0,0;False;1;FLOAT;0;False;2;FLOAT;0;False;3;FLOAT;0;False;4;COLOR;0,0,0,0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.OneMinusNode;232;-3744,752;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.GetLocalVarNode;302;-3347.84,1143.388;Inherit;False;147;ShadowTexture;1;0;OBJECT;;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.GetLocalVarNode;321;-2579.898,-950.2789;Inherit;False;315;Transparency;1;0;OBJECT;;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.GetLocalVarNode;296;-3327.845,1233.864;Inherit;False;158;BaseTexture;1;0;OBJECT;;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;330;-2512.101,-403.8968;Inherit;False;Constant;_Float8;Float 8;13;0;Create;True;0;0;0;False;0;False;-2.44;-2.44;0;0;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.OneMinusNode;334;-2570.346,-566.2331;Inherit;False;1;0;COLOR;0,0,0,0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;325;-2516.213,-713.1649;Inherit;False;Constant;_Float7;Float 7;14;0;Create;True;0;0;0;False;0;False;1.25;1.25;0;0;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.OneMinusNode;323;-2595.615,-848.6649;Inherit;False;1;0;COLOR;0,0,0,0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;331;-2508.301,-471.7968;Inherit;False;Constant;_Float9;Float 9;15;0;Create;True;0;0;0;False;0;False;1.52;1.52;0;0;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.GetLocalVarNode;328;-2575.786,-641.0108;Inherit;False;315;Transparency;1;0;OBJECT;;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.SmoothstepOpNode;260;-4322.978,1174.258;Inherit;False;3;0;FLOAT;0;False;1;FLOAT;0;False;2;FLOAT;1;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.SimpleAddOpNode;233;-3968,416;Inherit;False;3;3;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;2;FLOAT;0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.SimpleAddOpNode;244;-3712,640;Inherit;False;2;2;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.TFHCIf;291;-1744,1328;Inherit;False;6;0;FLOAT;0;False;1;FLOAT;0;False;2;COLOR;0,0,0,0;False;3;FLOAT;0;False;4;FLOAT;0;False;5;FLOAT;0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;324;-2512.413,-781.0649;Inherit;False;Constant;_Float6;Float 6;12;0;Create;True;0;0;0;False;0;False;0.63;0.63;0;0;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.SimpleMaxOpNode;290;-1648,1536;Inherit;False;2;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.CommentaryNode;281;-2512,16;Inherit;False;1281.189;1021.536;Comment;16;148;0;143;165;137;166;139;145;159;136;119;156;117;280;343;344;Outputs;0.2077243,1,0,1;0;0
|
||||||
|
Node;AmplifyShaderEditor.LerpOp;78;-3472,688;Inherit;False;3;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;2;FLOAT;0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.FunctionNode;320;-2228.897,-853.2789;Inherit;False;Color Mask;-1;;647;eec747d987850564c95bde0e5a6d1867;0;4;1;FLOAT3;0,0,0;False;3;FLOAT3;0,0,0;False;4;FLOAT;0;False;5;FLOAT;0;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.StaticSwitch;292;-1488,1328;Inherit;False;Property;_Keyword0;Keyword 0;10;0;Create;True;0;0;0;False;0;False;0;0;0;False;UNITY_PASS_FORWARDADD;Toggle;2;Key0;Key1;Fetch;False;True;9;1;COLOR;0,0,0,0;False;0;COLOR;0,0,0,0;False;2;COLOR;0,0,0,0;False;3;COLOR;0,0,0,0;False;4;COLOR;0,0,0,0;False;5;COLOR;0,0,0,0;False;6;COLOR;0,0,0,0;False;7;COLOR;0,0,0,0;False;8;COLOR;0,0,0,0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;250;-3072,1008;Inherit;False;4;4;0;COLOR;0,0,0,0;False;1;FLOAT;0;False;2;COLOR;0,0,0,0;False;3;COLOR;0,0,0,0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.FunctionNode;329;-2224.785,-544.0107;Inherit;False;Color Mask;-1;;648;eec747d987850564c95bde0e5a6d1867;0;4;1;FLOAT3;0,0,0;False;3;FLOAT3;0,0,0;False;4;FLOAT;0;False;5;FLOAT;0;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.RegisterLocalVarNode;293;-1120,1328;Inherit;False;Globnallightcolour;-1;True;1;0;COLOR;0,0,0,0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;165;-2432,608;Inherit;False;Property;_Float2;Float 2;11;0;Create;True;0;0;0;False;0;False;0.5;0.5;0;0;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.GetLocalVarNode;148;-2464,528;Inherit;False;147;ShadowTexture;1;0;OBJECT;;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.SimpleAddOpNode;253;-3024,848;Inherit;False;2;2;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;333;-1808.12,-608.8052;Inherit;False;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;137;-2448,688;Inherit;False;Property;_Outlinewidth;Outline width;5;0;Create;True;0;0;0;False;0;False;0;0;0;0;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.GetLocalVarNode;117;-2496,352;Inherit;False;293;Globnallightcolour;1;0;OBJECT;;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.RegisterLocalVarNode;341;-1570.145,-546.6539;Inherit;False;Opacity;-1;True;1;0;FLOAT;0;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;166;-2224,528;Inherit;False;2;2;0;COLOR;0,0,0,0;False;1;FLOAT;0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.RangedFloatNode;145;-2432,928;Inherit;False;Constant;_Float0;Float 0;13;0;Create;True;0;0;0;False;0;False;0.001;0;0;0;0;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.RegisterLocalVarNode;64;-2848,784;Inherit;False;Shadow;-1;True;1;0;COLOR;0,0,0,0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.GetLocalVarNode;159;-2448,432;Inherit;False;158;BaseTexture;1;0;OBJECT;;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.VertexColorNode;139;-2432,768;Inherit;False;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
||||||
|
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;156;-2013,434;Inherit;False;3;3;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;2;COLOR;0,0,0,0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.GetLocalVarNode;119;-2045.898,324.6734;Inherit;False;64;Shadow;1;0;OBJECT;;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.GetLocalVarNode;344;-2103.606,619.9034;Inherit;False;341;Opacity;1;0;OBJECT;;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;143;-2008,705;Inherit;False;3;3;0;FLOAT;0;False;1;COLOR;0,0,0,0;False;2;FLOAT;0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.CommentaryNode;56;-2270.823,2019.463;Inherit;False;794.4915;416.6398;Light ;4;55;53;52;58;ViewDIr;1,1,1,1;0;0
|
||||||
|
Node;AmplifyShaderEditor.RegisterLocalVarNode;58;-1726.823,2163.463;Inherit;False;Viewdir_light;-1;True;1;0;FLOAT;0;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.WorldSpaceLightDirHlpNode;52;-2206.823,2067.463;Inherit;False;True;1;0;FLOAT;0;False;4;FLOAT3;0;FLOAT;1;FLOAT;2;FLOAT;3
|
||||||
|
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;280;-1760,368;Inherit;False;2;2;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;1;COLOR;0
|
||||||
|
Node;AmplifyShaderEditor.DotProductOpNode;53;-1886.823,2147.463;Inherit;False;2;0;FLOAT3;0,0,0;False;1;FLOAT3;0,0,0;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.OutlineNode;136;-1840,480;Inherit;False;0;True;Masked;0;0;Front;3;0;FLOAT3;0,0,0;False;2;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT3;0
|
||||||
|
Node;AmplifyShaderEditor.ViewDirInputsCoordNode;55;-2158.823,2243.463;Inherit;False;World;False;0;4;FLOAT3;0;FLOAT;1;FLOAT;2;FLOAT;3
|
||||||
|
Node;AmplifyShaderEditor.GetLocalVarNode;343;-1752.832,239.0012;Inherit;False;341;Opacity;1;0;OBJECT;;False;1;FLOAT;0
|
||||||
|
Node;AmplifyShaderEditor.ColorNode;287;-2416,1616;Inherit;False;Property;_FakeColourtint;Fake Colour tint;10;0;Create;True;0;0;0;False;0;False;1,1,1,0;1,1,1,0;True;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
|
||||||
|
Node;AmplifyShaderEditor.StandardSurfaceOutputNode;0;-1504,64;Float;False;True;-1;2;ASEMaterialInspector;0;0;CustomLighting;Nars/UmaMusume/Body;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;Back;0;False;-1;0;False;-1;False;0;False;-1;0;False;-1;False;0;Custom;0.5;True;True;0;True;TransparentCutout;;Transparent;All;14;all;True;True;True;True;0;False;-1;False;0;False;-1;255;False;-1;255;False;-1;0;False;-1;0;False;-1;0;False;-1;0;False;-1;0;False;-1;0;False;-1;0;False;-1;0;False;-1;False;2;15;10;25;False;0.5;False;0;0;False;-1;0;False;-1;0;0;False;-1;0;False;-1;0;False;-1;0;False;-1;0;False;0;0,0,0,0;VertexOffset;True;False;Cylindrical;False;Relative;0;;0;-1;-1;-1;0;False;0;0;False;-1;-1;0;False;-1;0;0;0;False;0.1;False;-1;0;False;-1;False;15;0;FLOAT3;0,0,0;False;1;FLOAT3;0,0,0;False;2;FLOAT3;0,0,0;False;3;FLOAT3;0,0,0;False;4;FLOAT;0;False;6;FLOAT3;0,0,0;False;7;FLOAT3;0,0,0;False;8;FLOAT;0;False;9;FLOAT;0;False;10;FLOAT;0;False;13;FLOAT3;0,0,0;False;11;FLOAT3;0,0,0;False;12;FLOAT3;0,0,0;False;14;FLOAT4;0,0,0,0;False;15;FLOAT3;0,0,0;False;0
|
||||||
|
WireConnection;89;12;82;0
|
||||||
|
WireConnection;89;17;84;0
|
||||||
|
WireConnection;89;16;83;0
|
||||||
|
WireConnection;89;29;85;0
|
||||||
|
WireConnection;89;28;86;0
|
||||||
|
WireConnection;89;33;88;0
|
||||||
|
WireConnection;89;34;87;0
|
||||||
|
WireConnection;91;0;89;0
|
||||||
|
WireConnection;247;0;89;42
|
||||||
|
WireConnection;158;0;62;0
|
||||||
|
WireConnection;303;0;102;2
|
||||||
|
WireConnection;147;0;80;0
|
||||||
|
WireConnection;90;0;82;0
|
||||||
|
WireConnection;266;0;252;0
|
||||||
|
WireConnection;266;1;267;0
|
||||||
|
WireConnection;227;0;97;0
|
||||||
|
WireConnection;227;1;102;0
|
||||||
|
WireConnection;263;0;257;0
|
||||||
|
WireConnection;263;1;264;0
|
||||||
|
WireConnection;289;0;283;0
|
||||||
|
WireConnection;289;4;285;0
|
||||||
|
WireConnection;242;0;299;0
|
||||||
|
WireConnection;242;1;305;0
|
||||||
|
WireConnection;242;2;308;0
|
||||||
|
WireConnection;312;0;309;0
|
||||||
|
WireConnection;312;1;311;0
|
||||||
|
WireConnection;315;0;102;0
|
||||||
|
WireConnection;231;1;227;0
|
||||||
|
WireConnection;231;2;95;0
|
||||||
|
WireConnection;243;0;298;0
|
||||||
|
WireConnection;243;1;304;0
|
||||||
|
WireConnection;243;2;239;0
|
||||||
|
WireConnection;243;3;314;0
|
||||||
|
WireConnection;288;0;284;0
|
||||||
|
WireConnection;288;1;286;0
|
||||||
|
WireConnection;255;0;263;0
|
||||||
|
WireConnection;255;1;266;0
|
||||||
|
WireConnection;245;0;301;0
|
||||||
|
WireConnection;245;1;131;2
|
||||||
|
WireConnection;245;2;131;3
|
||||||
|
WireConnection;245;3;249;0
|
||||||
|
WireConnection;245;4;295;0
|
||||||
|
WireConnection;232;0;231;0
|
||||||
|
WireConnection;334;0;326;0
|
||||||
|
WireConnection;323;0;322;0
|
||||||
|
WireConnection;260;0;255;0
|
||||||
|
WireConnection;260;2;261;0
|
||||||
|
WireConnection;233;0;300;0
|
||||||
|
WireConnection;233;1;242;0
|
||||||
|
WireConnection;233;2;312;0
|
||||||
|
WireConnection;244;0;297;0
|
||||||
|
WireConnection;244;1;243;0
|
||||||
|
WireConnection;291;0;289;0
|
||||||
|
WireConnection;291;2;288;0
|
||||||
|
WireConnection;291;3;347;0
|
||||||
|
WireConnection;290;1;288;0
|
||||||
|
WireConnection;78;0;233;0
|
||||||
|
WireConnection;78;1;244;0
|
||||||
|
WireConnection;78;2;232;0
|
||||||
|
WireConnection;320;1;321;0
|
||||||
|
WireConnection;320;3;323;0
|
||||||
|
WireConnection;320;4;324;0
|
||||||
|
WireConnection;320;5;325;0
|
||||||
|
WireConnection;292;1;291;0
|
||||||
|
WireConnection;292;0;290;0
|
||||||
|
WireConnection;250;0;245;0
|
||||||
|
WireConnection;250;1;260;0
|
||||||
|
WireConnection;250;2;302;0
|
||||||
|
WireConnection;250;3;296;0
|
||||||
|
WireConnection;329;1;328;0
|
||||||
|
WireConnection;329;3;334;0
|
||||||
|
WireConnection;329;4;331;0
|
||||||
|
WireConnection;329;5;330;0
|
||||||
|
WireConnection;293;0;292;0
|
||||||
|
WireConnection;253;0;78;0
|
||||||
|
WireConnection;253;1;250;0
|
||||||
|
WireConnection;333;0;320;0
|
||||||
|
WireConnection;333;1;329;0
|
||||||
|
WireConnection;341;0;333;0
|
||||||
|
WireConnection;166;0;148;0
|
||||||
|
WireConnection;166;1;165;0
|
||||||
|
WireConnection;64;0;253;0
|
||||||
|
WireConnection;156;0;159;0
|
||||||
|
WireConnection;156;1;166;0
|
||||||
|
WireConnection;156;2;117;0
|
||||||
|
WireConnection;143;0;137;0
|
||||||
|
WireConnection;143;1;139;0
|
||||||
|
WireConnection;143;2;145;0
|
||||||
|
WireConnection;58;0;53;0
|
||||||
|
WireConnection;280;0;119;0
|
||||||
|
WireConnection;280;1;117;0
|
||||||
|
WireConnection;53;0;52;0
|
||||||
|
WireConnection;53;1;55;0
|
||||||
|
WireConnection;136;0;156;0
|
||||||
|
WireConnection;136;2;344;0
|
||||||
|
WireConnection;136;1;143;0
|
||||||
|
WireConnection;0;10;343;0
|
||||||
|
WireConnection;0;13;280;0
|
||||||
|
WireConnection;0;11;136;0
|
||||||
|
ASEEND*/
|
||||||
|
//CHKSM=CAC062AD247551866641DDB9D91752BBAB8934D6
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 7ec653cb0fc8e8a4fab3acba9f70478c
|
||||||
|
ShaderImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
defaultTextures: []
|
||||||
|
nonModifiableTextures: []
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 8e5fdebe1df69354aa3949fa42a724f5
|
||||||
|
folderAsset: yes
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
Binary file not shown.
@@ -0,0 +1,33 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 273d4a8ac1b70f74ca428212accb7be4
|
||||||
|
PluginImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
serializedVersion: 2
|
||||||
|
iconMap: {}
|
||||||
|
executionOrder: {}
|
||||||
|
defineConstraints: []
|
||||||
|
isPreloaded: 0
|
||||||
|
isOverridable: 0
|
||||||
|
isExplicitlyReferenced: 0
|
||||||
|
validateReferences: 1
|
||||||
|
platformData:
|
||||||
|
- first:
|
||||||
|
Any:
|
||||||
|
second:
|
||||||
|
enabled: 1
|
||||||
|
settings: {}
|
||||||
|
- first:
|
||||||
|
Editor: Editor
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings:
|
||||||
|
DefaultValueInitialized: true
|
||||||
|
- first:
|
||||||
|
Windows Store Apps: WindowsStoreApps
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings:
|
||||||
|
CPU: AnyCPU
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
Binary file not shown.
@@ -0,0 +1,33 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 1a1c82da4c2323344b01a9745fd8ff08
|
||||||
|
PluginImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
serializedVersion: 2
|
||||||
|
iconMap: {}
|
||||||
|
executionOrder: {}
|
||||||
|
defineConstraints: []
|
||||||
|
isPreloaded: 0
|
||||||
|
isOverridable: 0
|
||||||
|
isExplicitlyReferenced: 0
|
||||||
|
validateReferences: 1
|
||||||
|
platformData:
|
||||||
|
- first:
|
||||||
|
Any:
|
||||||
|
second:
|
||||||
|
enabled: 1
|
||||||
|
settings: {}
|
||||||
|
- first:
|
||||||
|
Editor: Editor
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings:
|
||||||
|
DefaultValueInitialized: true
|
||||||
|
- first:
|
||||||
|
Windows Store Apps: WindowsStoreApps
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings:
|
||||||
|
CPU: AnyCPU
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,245 @@
|
|||||||
|
EXPORTS
|
||||||
|
sqlite3_aggregate_context
|
||||||
|
sqlite3_aggregate_count
|
||||||
|
sqlite3_auto_extension
|
||||||
|
sqlite3_backup_finish
|
||||||
|
sqlite3_backup_init
|
||||||
|
sqlite3_backup_pagecount
|
||||||
|
sqlite3_backup_remaining
|
||||||
|
sqlite3_backup_step
|
||||||
|
sqlite3_bind_blob
|
||||||
|
sqlite3_bind_blob64
|
||||||
|
sqlite3_bind_double
|
||||||
|
sqlite3_bind_int
|
||||||
|
sqlite3_bind_int64
|
||||||
|
sqlite3_bind_null
|
||||||
|
sqlite3_bind_parameter_count
|
||||||
|
sqlite3_bind_parameter_index
|
||||||
|
sqlite3_bind_parameter_name
|
||||||
|
sqlite3_bind_pointer
|
||||||
|
sqlite3_bind_text
|
||||||
|
sqlite3_bind_text16
|
||||||
|
sqlite3_bind_text64
|
||||||
|
sqlite3_bind_value
|
||||||
|
sqlite3_bind_zeroblob
|
||||||
|
sqlite3_bind_zeroblob64
|
||||||
|
sqlite3_blob_bytes
|
||||||
|
sqlite3_blob_close
|
||||||
|
sqlite3_blob_open
|
||||||
|
sqlite3_blob_read
|
||||||
|
sqlite3_blob_reopen
|
||||||
|
sqlite3_blob_write
|
||||||
|
sqlite3_busy_handler
|
||||||
|
sqlite3_busy_timeout
|
||||||
|
sqlite3_cancel_auto_extension
|
||||||
|
sqlite3_changes
|
||||||
|
sqlite3_clear_bindings
|
||||||
|
sqlite3_close
|
||||||
|
sqlite3_close_v2
|
||||||
|
sqlite3_collation_needed
|
||||||
|
sqlite3_collation_needed16
|
||||||
|
sqlite3_column_blob
|
||||||
|
sqlite3_column_bytes
|
||||||
|
sqlite3_column_bytes16
|
||||||
|
sqlite3_column_count
|
||||||
|
sqlite3_column_database_name
|
||||||
|
sqlite3_column_database_name16
|
||||||
|
sqlite3_column_decltype
|
||||||
|
sqlite3_column_decltype16
|
||||||
|
sqlite3_column_double
|
||||||
|
sqlite3_column_int
|
||||||
|
sqlite3_column_int64
|
||||||
|
sqlite3_column_name
|
||||||
|
sqlite3_column_name16
|
||||||
|
sqlite3_column_origin_name
|
||||||
|
sqlite3_column_origin_name16
|
||||||
|
sqlite3_column_table_name
|
||||||
|
sqlite3_column_table_name16
|
||||||
|
sqlite3_column_text
|
||||||
|
sqlite3_column_text16
|
||||||
|
sqlite3_column_type
|
||||||
|
sqlite3_column_value
|
||||||
|
sqlite3_commit_hook
|
||||||
|
sqlite3_compileoption_get
|
||||||
|
sqlite3_compileoption_used
|
||||||
|
sqlite3_complete
|
||||||
|
sqlite3_complete16
|
||||||
|
sqlite3_config
|
||||||
|
sqlite3_context_db_handle
|
||||||
|
sqlite3_create_collation
|
||||||
|
sqlite3_create_collation_v2
|
||||||
|
sqlite3_create_collation16
|
||||||
|
sqlite3_create_function
|
||||||
|
sqlite3_create_function_v2
|
||||||
|
sqlite3_create_function16
|
||||||
|
sqlite3_create_module
|
||||||
|
sqlite3_create_module_v2
|
||||||
|
sqlite3_data_count
|
||||||
|
sqlite3_data_directory
|
||||||
|
sqlite3_db_cacheflush
|
||||||
|
sqlite3_db_config
|
||||||
|
sqlite3_db_filename
|
||||||
|
sqlite3_db_handle
|
||||||
|
sqlite3_db_mutex
|
||||||
|
sqlite3_db_readonly
|
||||||
|
sqlite3_db_release_memory
|
||||||
|
sqlite3_db_status
|
||||||
|
sqlite3_declare_vtab
|
||||||
|
sqlite3_enable_load_extension
|
||||||
|
sqlite3_enable_shared_cache
|
||||||
|
sqlite3_errcode
|
||||||
|
sqlite3_errmsg
|
||||||
|
sqlite3_errmsg16
|
||||||
|
sqlite3_errstr
|
||||||
|
sqlite3_exec
|
||||||
|
sqlite3_expanded_sql
|
||||||
|
sqlite3_expired
|
||||||
|
sqlite3_extended_errcode
|
||||||
|
sqlite3_extended_result_codes
|
||||||
|
sqlite3_file_control
|
||||||
|
sqlite3_finalize
|
||||||
|
sqlite3_free
|
||||||
|
sqlite3_free_table
|
||||||
|
sqlite3_fts5_may_be_corrupt
|
||||||
|
sqlite3_get_autocommit
|
||||||
|
sqlite3_get_auxdata
|
||||||
|
sqlite3_get_table
|
||||||
|
sqlite3_global_recover
|
||||||
|
sqlite3_initialize
|
||||||
|
sqlite3_interrupt
|
||||||
|
sqlite3_last_insert_rowid
|
||||||
|
sqlite3_libversion
|
||||||
|
sqlite3_libversion_number
|
||||||
|
sqlite3_limit
|
||||||
|
sqlite3_load_extension
|
||||||
|
sqlite3_log
|
||||||
|
sqlite3_malloc
|
||||||
|
sqlite3_malloc64
|
||||||
|
sqlite3_memory_alarm
|
||||||
|
sqlite3_memory_highwater
|
||||||
|
sqlite3_memory_used
|
||||||
|
sqlite3_mprintf
|
||||||
|
sqlite3_msize
|
||||||
|
sqlite3_mutex_alloc
|
||||||
|
sqlite3_mutex_enter
|
||||||
|
sqlite3_mutex_free
|
||||||
|
sqlite3_mutex_leave
|
||||||
|
sqlite3_mutex_try
|
||||||
|
sqlite3_next_stmt
|
||||||
|
sqlite3_open
|
||||||
|
sqlite3_open_v2
|
||||||
|
sqlite3_open16
|
||||||
|
sqlite3_os_end
|
||||||
|
sqlite3_os_init
|
||||||
|
sqlite3_overload_function
|
||||||
|
sqlite3_prepare
|
||||||
|
sqlite3_prepare_v2
|
||||||
|
sqlite3_prepare_v3
|
||||||
|
sqlite3_prepare16
|
||||||
|
sqlite3_prepare16_v2
|
||||||
|
sqlite3_prepare16_v3
|
||||||
|
sqlite3_profile
|
||||||
|
sqlite3_progress_handler
|
||||||
|
sqlite3_randomness
|
||||||
|
sqlite3_realloc
|
||||||
|
sqlite3_realloc64
|
||||||
|
sqlite3_release_memory
|
||||||
|
sqlite3_reset
|
||||||
|
sqlite3_reset_auto_extension
|
||||||
|
sqlite3_result_blob
|
||||||
|
sqlite3_result_blob64
|
||||||
|
sqlite3_result_double
|
||||||
|
sqlite3_result_error
|
||||||
|
sqlite3_result_error_code
|
||||||
|
sqlite3_result_error_nomem
|
||||||
|
sqlite3_result_error_toobig
|
||||||
|
sqlite3_result_error16
|
||||||
|
sqlite3_result_int
|
||||||
|
sqlite3_result_int64
|
||||||
|
sqlite3_result_null
|
||||||
|
sqlite3_result_pointer
|
||||||
|
sqlite3_result_subtype
|
||||||
|
sqlite3_result_text
|
||||||
|
sqlite3_result_text16
|
||||||
|
sqlite3_result_text16be
|
||||||
|
sqlite3_result_text16le
|
||||||
|
sqlite3_result_text64
|
||||||
|
sqlite3_result_value
|
||||||
|
sqlite3_result_zeroblob
|
||||||
|
sqlite3_result_zeroblob64
|
||||||
|
sqlite3_rollback_hook
|
||||||
|
sqlite3_rtree_geometry_callback
|
||||||
|
sqlite3_rtree_query_callback
|
||||||
|
sqlite3_set_authorizer
|
||||||
|
sqlite3_set_auxdata
|
||||||
|
sqlite3_set_last_insert_rowid
|
||||||
|
sqlite3_shutdown
|
||||||
|
sqlite3_sleep
|
||||||
|
sqlite3_snprintf
|
||||||
|
sqlite3_soft_heap_limit
|
||||||
|
sqlite3_soft_heap_limit64
|
||||||
|
sqlite3_sourceid
|
||||||
|
sqlite3_sql
|
||||||
|
sqlite3_status
|
||||||
|
sqlite3_status64
|
||||||
|
sqlite3_step
|
||||||
|
sqlite3_stmt_busy
|
||||||
|
sqlite3_stmt_readonly
|
||||||
|
sqlite3_stmt_status
|
||||||
|
sqlite3_strglob
|
||||||
|
sqlite3_stricmp
|
||||||
|
sqlite3_strlike
|
||||||
|
sqlite3_strnicmp
|
||||||
|
sqlite3_system_errno
|
||||||
|
sqlite3_table_column_metadata
|
||||||
|
sqlite3_temp_directory
|
||||||
|
sqlite3_test_control
|
||||||
|
sqlite3_thread_cleanup
|
||||||
|
sqlite3_threadsafe
|
||||||
|
sqlite3_total_changes
|
||||||
|
sqlite3_trace
|
||||||
|
sqlite3_trace_v2
|
||||||
|
sqlite3_transfer_bindings
|
||||||
|
sqlite3_update_hook
|
||||||
|
sqlite3_uri_boolean
|
||||||
|
sqlite3_uri_int64
|
||||||
|
sqlite3_uri_parameter
|
||||||
|
sqlite3_user_data
|
||||||
|
sqlite3_value_blob
|
||||||
|
sqlite3_value_bytes
|
||||||
|
sqlite3_value_bytes16
|
||||||
|
sqlite3_value_double
|
||||||
|
sqlite3_value_dup
|
||||||
|
sqlite3_value_free
|
||||||
|
sqlite3_value_int
|
||||||
|
sqlite3_value_int64
|
||||||
|
sqlite3_value_numeric_type
|
||||||
|
sqlite3_value_pointer
|
||||||
|
sqlite3_value_subtype
|
||||||
|
sqlite3_value_text
|
||||||
|
sqlite3_value_text16
|
||||||
|
sqlite3_value_text16be
|
||||||
|
sqlite3_value_text16le
|
||||||
|
sqlite3_value_type
|
||||||
|
sqlite3_version
|
||||||
|
sqlite3_vfs_find
|
||||||
|
sqlite3_vfs_register
|
||||||
|
sqlite3_vfs_unregister
|
||||||
|
sqlite3_vmprintf
|
||||||
|
sqlite3_vsnprintf
|
||||||
|
sqlite3_vtab_config
|
||||||
|
sqlite3_vtab_on_conflict
|
||||||
|
sqlite3_wal_autocheckpoint
|
||||||
|
sqlite3_wal_checkpoint
|
||||||
|
sqlite3_wal_checkpoint_v2
|
||||||
|
sqlite3_wal_hook
|
||||||
|
sqlite3_win32_is_nt
|
||||||
|
sqlite3_win32_mbcs_to_utf8
|
||||||
|
sqlite3_win32_mbcs_to_utf8_v2
|
||||||
|
sqlite3_win32_set_directory
|
||||||
|
sqlite3_win32_sleep
|
||||||
|
sqlite3_win32_unicode_to_utf8
|
||||||
|
sqlite3_win32_utf8_to_mbcs
|
||||||
|
sqlite3_win32_utf8_to_mbcs_v2
|
||||||
|
sqlite3_win32_utf8_to_unicode
|
||||||
|
sqlite3_win32_write_debug
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 46fa6f48fc08ade408be299ded222b07
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
Binary file not shown.
@@ -0,0 +1,27 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 0bcccb49e6bff1c4c92c9ca3a556e83e
|
||||||
|
PluginImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
serializedVersion: 2
|
||||||
|
iconMap: {}
|
||||||
|
executionOrder: {}
|
||||||
|
defineConstraints: []
|
||||||
|
isPreloaded: 0
|
||||||
|
isOverridable: 0
|
||||||
|
isExplicitlyReferenced: 0
|
||||||
|
validateReferences: 1
|
||||||
|
platformData:
|
||||||
|
- first:
|
||||||
|
Any:
|
||||||
|
second:
|
||||||
|
enabled: 1
|
||||||
|
settings: {}
|
||||||
|
- first:
|
||||||
|
Editor: Editor
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings:
|
||||||
|
DefaultValueInitialized: true
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: bdacc2e1fe9c7e341b4ae44b162da042
|
||||||
|
folderAsset: yes
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 166d74ae99bc4c343a2ecb37aba687c2
|
||||||
|
PrefabImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: f5826e36de4fc944593e3107ea35bd88
|
||||||
|
folderAsset: yes
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,114 @@
|
|||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!1 &2643716285177954892
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 2643716285177954889}
|
||||||
|
- component: {fileID: 2643716285177954894}
|
||||||
|
- component: {fileID: 2643716285177954895}
|
||||||
|
- component: {fileID: 1134227396}
|
||||||
|
m_Layer: 0
|
||||||
|
m_Name: Camera
|
||||||
|
m_TagString: MainCamera
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!4 &2643716285177954889
|
||||||
|
Transform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 2643716285177954892}
|
||||||
|
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
m_LocalPosition: {x: 0, y: 20.3, z: -39}
|
||||||
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
|
m_Children: []
|
||||||
|
m_Father: {fileID: 0}
|
||||||
|
m_RootOrder: 0
|
||||||
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
|
--- !u!20 &2643716285177954894
|
||||||
|
Camera:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 2643716285177954892}
|
||||||
|
m_Enabled: 1
|
||||||
|
serializedVersion: 2
|
||||||
|
m_ClearFlags: 1
|
||||||
|
m_BackGroundColor: {r: 0, g: 1, b: 0.08161616, a: 0}
|
||||||
|
m_projectionMatrixMode: 1
|
||||||
|
m_GateFitMode: 2
|
||||||
|
m_FOVAxisMode: 0
|
||||||
|
m_SensorSize: {x: 36, y: 24}
|
||||||
|
m_LensShift: {x: 0, y: 0}
|
||||||
|
m_FocalLength: 50
|
||||||
|
m_NormalizedViewPortRect:
|
||||||
|
serializedVersion: 2
|
||||||
|
x: 0
|
||||||
|
y: 0
|
||||||
|
width: 1
|
||||||
|
height: 1
|
||||||
|
near clip plane: 0.01
|
||||||
|
far clip plane: 1000
|
||||||
|
field of view: 60
|
||||||
|
orthographic: 0
|
||||||
|
orthographic size: 400
|
||||||
|
m_Depth: 0
|
||||||
|
m_CullingMask:
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Bits: 4294967295
|
||||||
|
m_RenderingPath: -1
|
||||||
|
m_TargetTexture: {fileID: 0}
|
||||||
|
m_TargetDisplay: 0
|
||||||
|
m_TargetEye: 3
|
||||||
|
m_HDR: 1
|
||||||
|
m_AllowMSAA: 1
|
||||||
|
m_AllowDynamicResolution: 0
|
||||||
|
m_ForceIntoRT: 0
|
||||||
|
m_OcclusionCulling: 1
|
||||||
|
m_StereoConvergence: 10
|
||||||
|
m_StereoSeparation: 0.022
|
||||||
|
--- !u!81 &2643716285177954895
|
||||||
|
AudioListener:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 2643716285177954892}
|
||||||
|
m_Enabled: 1
|
||||||
|
--- !u!114 &1134227396
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 2643716285177954892}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: 32a48605970827e4999f4dd7807a5eac, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
CameraMode: 0
|
||||||
|
Light: {fileID: 0}
|
||||||
|
CameraModeDropdown: {fileID: 0}
|
||||||
|
CameraTargetHelper: {fileID: 0}
|
||||||
|
TargetCenter: {x: 0, y: 0, z: 0}
|
||||||
|
OrbitCamSettingsTab: {fileID: 0}
|
||||||
|
OrbitCamFovSlider: {fileID: 0}
|
||||||
|
OrbitCamZoomSlider: {fileID: 0}
|
||||||
|
OrbitCamZoomSpeedSlider: {fileID: 0}
|
||||||
|
OrbitCamTargetHeightSlider: {fileID: 0}
|
||||||
|
OrbitCamHeightSlider: {fileID: 0}
|
||||||
|
OrbitCamSpeedSlider: {fileID: 0}
|
||||||
|
FreeCamSettingsTab: {fileID: 0}
|
||||||
|
FreeCamFovSlider: {fileID: 0}
|
||||||
|
FreeCamMoveSpeedSlider: {fileID: 0}
|
||||||
|
FreeCamRotateSpeedSlider: {fileID: 0}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 6e92b65c635811545b96e40e5ce028a6
|
||||||
|
PrefabImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,318 @@
|
|||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!1 &2102046345194802910
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 4529783606387208940}
|
||||||
|
- component: {fileID: 8228620829211449322}
|
||||||
|
- component: {fileID: 6502420284631755509}
|
||||||
|
m_Layer: 5
|
||||||
|
m_Name: Checkmark
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!224 &4529783606387208940
|
||||||
|
RectTransform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 2102046345194802910}
|
||||||
|
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
||||||
|
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||||
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
|
m_Children: []
|
||||||
|
m_Father: {fileID: 7391215233658710373}
|
||||||
|
m_RootOrder: 0
|
||||||
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
|
m_AnchorMin: {x: 0.5, y: 0.5}
|
||||||
|
m_AnchorMax: {x: 0.5, y: 0.5}
|
||||||
|
m_AnchoredPosition: {x: 0, y: 0}
|
||||||
|
m_SizeDelta: {x: 20, y: 20}
|
||||||
|
m_Pivot: {x: 0.5, y: 0.5}
|
||||||
|
--- !u!222 &8228620829211449322
|
||||||
|
CanvasRenderer:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 2102046345194802910}
|
||||||
|
m_CullTransparentMesh: 1
|
||||||
|
--- !u!114 &6502420284631755509
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 2102046345194802910}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
m_Material: {fileID: 0}
|
||||||
|
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||||
|
m_RaycastTarget: 1
|
||||||
|
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
m_Maskable: 1
|
||||||
|
m_OnCullStateChanged:
|
||||||
|
m_PersistentCalls:
|
||||||
|
m_Calls: []
|
||||||
|
m_Sprite: {fileID: 10901, guid: 0000000000000000f000000000000000, type: 0}
|
||||||
|
m_Type: 0
|
||||||
|
m_PreserveAspect: 0
|
||||||
|
m_FillCenter: 1
|
||||||
|
m_FillMethod: 4
|
||||||
|
m_FillAmount: 1
|
||||||
|
m_FillClockwise: 1
|
||||||
|
m_FillOrigin: 0
|
||||||
|
m_UseSpriteMesh: 0
|
||||||
|
m_PixelsPerUnitMultiplier: 1
|
||||||
|
--- !u!1 &3267143881323478427
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 7391215233658710373}
|
||||||
|
- component: {fileID: 2899530527037857695}
|
||||||
|
- component: {fileID: 1721631212583931951}
|
||||||
|
m_Layer: 5
|
||||||
|
m_Name: Background
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!224 &7391215233658710373
|
||||||
|
RectTransform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 3267143881323478427}
|
||||||
|
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
||||||
|
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||||
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
|
m_Children:
|
||||||
|
- {fileID: 4529783606387208940}
|
||||||
|
m_Father: {fileID: 6499955869734128697}
|
||||||
|
m_RootOrder: 0
|
||||||
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
|
m_AnchorMin: {x: 0, y: 1}
|
||||||
|
m_AnchorMax: {x: 0, y: 1}
|
||||||
|
m_AnchoredPosition: {x: 10, y: -10}
|
||||||
|
m_SizeDelta: {x: 20, y: 20}
|
||||||
|
m_Pivot: {x: 0.5, y: 0.5}
|
||||||
|
--- !u!222 &2899530527037857695
|
||||||
|
CanvasRenderer:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 3267143881323478427}
|
||||||
|
m_CullTransparentMesh: 1
|
||||||
|
--- !u!114 &1721631212583931951
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 3267143881323478427}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
m_Material: {fileID: 0}
|
||||||
|
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||||
|
m_RaycastTarget: 1
|
||||||
|
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
m_Maskable: 1
|
||||||
|
m_OnCullStateChanged:
|
||||||
|
m_PersistentCalls:
|
||||||
|
m_Calls: []
|
||||||
|
m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0}
|
||||||
|
m_Type: 1
|
||||||
|
m_PreserveAspect: 0
|
||||||
|
m_FillCenter: 1
|
||||||
|
m_FillMethod: 4
|
||||||
|
m_FillAmount: 1
|
||||||
|
m_FillClockwise: 1
|
||||||
|
m_FillOrigin: 0
|
||||||
|
m_UseSpriteMesh: 0
|
||||||
|
m_PixelsPerUnitMultiplier: 1
|
||||||
|
--- !u!1 &5796671270242208813
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 6131465566193536423}
|
||||||
|
- component: {fileID: 1072386401425119893}
|
||||||
|
- component: {fileID: 8765187934913803546}
|
||||||
|
m_Layer: 5
|
||||||
|
m_Name: Label
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!224 &6131465566193536423
|
||||||
|
RectTransform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 5796671270242208813}
|
||||||
|
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
||||||
|
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||||
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
|
m_Children: []
|
||||||
|
m_Father: {fileID: 6499955869734128697}
|
||||||
|
m_RootOrder: 1
|
||||||
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
|
m_AnchorMin: {x: 0, y: 0}
|
||||||
|
m_AnchorMax: {x: 1, y: 1}
|
||||||
|
m_AnchoredPosition: {x: 9, y: -0.5}
|
||||||
|
m_SizeDelta: {x: -28, y: -3}
|
||||||
|
m_Pivot: {x: 0.5, y: 0.5}
|
||||||
|
--- !u!222 &1072386401425119893
|
||||||
|
CanvasRenderer:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 5796671270242208813}
|
||||||
|
m_CullTransparentMesh: 1
|
||||||
|
--- !u!114 &8765187934913803546
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 5796671270242208813}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
m_Material: {fileID: 0}
|
||||||
|
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||||
|
m_RaycastTarget: 1
|
||||||
|
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
m_Maskable: 1
|
||||||
|
m_OnCullStateChanged:
|
||||||
|
m_PersistentCalls:
|
||||||
|
m_Calls: []
|
||||||
|
m_FontData:
|
||||||
|
m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
|
||||||
|
m_FontSize: 14
|
||||||
|
m_FontStyle: 0
|
||||||
|
m_BestFit: 0
|
||||||
|
m_MinSize: 10
|
||||||
|
m_MaxSize: 40
|
||||||
|
m_Alignment: 0
|
||||||
|
m_AlignByGeometry: 0
|
||||||
|
m_RichText: 1
|
||||||
|
m_HorizontalOverflow: 0
|
||||||
|
m_VerticalOverflow: 0
|
||||||
|
m_LineSpacing: 1
|
||||||
|
m_Text: Toggle
|
||||||
|
--- !u!1 &6184459743446081862
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 6499955869734128697}
|
||||||
|
- component: {fileID: 1605396843229988083}
|
||||||
|
m_Layer: 5
|
||||||
|
m_Name: Toggle
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!224 &6499955869734128697
|
||||||
|
RectTransform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 6184459743446081862}
|
||||||
|
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||||
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
|
m_Children:
|
||||||
|
- {fileID: 7391215233658710373}
|
||||||
|
- {fileID: 6131465566193536423}
|
||||||
|
m_Father: {fileID: 0}
|
||||||
|
m_RootOrder: 0
|
||||||
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
|
m_AnchorMin: {x: 0, y: 0}
|
||||||
|
m_AnchorMax: {x: 0, y: 0}
|
||||||
|
m_AnchoredPosition: {x: 0, y: 0}
|
||||||
|
m_SizeDelta: {x: 160, y: 20}
|
||||||
|
m_Pivot: {x: 0.5, y: 0.5}
|
||||||
|
--- !u!114 &1605396843229988083
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 6184459743446081862}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: 9085046f02f69544eb97fd06b6048fe2, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
m_Navigation:
|
||||||
|
m_Mode: 3
|
||||||
|
m_WrapAround: 0
|
||||||
|
m_SelectOnUp: {fileID: 0}
|
||||||
|
m_SelectOnDown: {fileID: 0}
|
||||||
|
m_SelectOnLeft: {fileID: 0}
|
||||||
|
m_SelectOnRight: {fileID: 0}
|
||||||
|
m_Transition: 1
|
||||||
|
m_Colors:
|
||||||
|
m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
|
||||||
|
m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
|
||||||
|
m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}
|
||||||
|
m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
|
||||||
|
m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
|
||||||
|
m_ColorMultiplier: 1
|
||||||
|
m_FadeDuration: 0.1
|
||||||
|
m_SpriteState:
|
||||||
|
m_HighlightedSprite: {fileID: 0}
|
||||||
|
m_PressedSprite: {fileID: 0}
|
||||||
|
m_SelectedSprite: {fileID: 0}
|
||||||
|
m_DisabledSprite: {fileID: 0}
|
||||||
|
m_AnimationTriggers:
|
||||||
|
m_NormalTrigger: Normal
|
||||||
|
m_HighlightedTrigger: Highlighted
|
||||||
|
m_PressedTrigger: Pressed
|
||||||
|
m_SelectedTrigger: Selected
|
||||||
|
m_DisabledTrigger: Disabled
|
||||||
|
m_Interactable: 1
|
||||||
|
m_TargetGraphic: {fileID: 1721631212583931951}
|
||||||
|
toggleTransition: 1
|
||||||
|
graphic: {fileID: 6502420284631755509}
|
||||||
|
m_Group: {fileID: 0}
|
||||||
|
onValueChanged:
|
||||||
|
m_PersistentCalls:
|
||||||
|
m_Calls: []
|
||||||
|
m_IsOn: 1
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 79bba9cdb2b67a640bddce5d516706f6
|
||||||
|
PrefabImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,351 @@
|
|||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!1 &1637923180446071214
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 8721578812307819479}
|
||||||
|
- component: {fileID: 4812307947833921962}
|
||||||
|
- component: {fileID: 5150339076539758033}
|
||||||
|
m_Layer: 5
|
||||||
|
m_Name: RawImage
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!224 &8721578812307819479
|
||||||
|
RectTransform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1637923180446071214}
|
||||||
|
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||||
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
|
m_Children: []
|
||||||
|
m_Father: {fileID: 1824494756990190649}
|
||||||
|
m_RootOrder: 1
|
||||||
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
|
m_AnchorMin: {x: 0.5, y: 0.5}
|
||||||
|
m_AnchorMax: {x: 0.5, y: 0.5}
|
||||||
|
m_AnchoredPosition: {x: 0, y: 0}
|
||||||
|
m_SizeDelta: {x: 100, y: 100}
|
||||||
|
m_Pivot: {x: 0.5, y: 0.5}
|
||||||
|
--- !u!222 &4812307947833921962
|
||||||
|
CanvasRenderer:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1637923180446071214}
|
||||||
|
m_CullTransparentMesh: 1
|
||||||
|
--- !u!114 &5150339076539758033
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1637923180446071214}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: 1344c3c82d62a2a41a3576d8abb8e3ea, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
m_Material: {fileID: 0}
|
||||||
|
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||||
|
m_RaycastTarget: 1
|
||||||
|
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
m_Maskable: 1
|
||||||
|
m_OnCullStateChanged:
|
||||||
|
m_PersistentCalls:
|
||||||
|
m_Calls: []
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_UVRect:
|
||||||
|
serializedVersion: 2
|
||||||
|
x: 0
|
||||||
|
y: 0
|
||||||
|
width: 1
|
||||||
|
height: 1
|
||||||
|
--- !u!1 &3190167222013777342
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 6655673581813614976}
|
||||||
|
- component: {fileID: 159091678484206804}
|
||||||
|
- component: {fileID: 6320547556339639356}
|
||||||
|
m_Layer: 5
|
||||||
|
m_Name: Text
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!224 &6655673581813614976
|
||||||
|
RectTransform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 3190167222013777342}
|
||||||
|
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
||||||
|
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||||
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
|
m_Children: []
|
||||||
|
m_Father: {fileID: 1824494756990190649}
|
||||||
|
m_RootOrder: 0
|
||||||
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
|
m_AnchorMin: {x: 0.5, y: 1}
|
||||||
|
m_AnchorMax: {x: 0.5, y: 1}
|
||||||
|
m_AnchoredPosition: {x: 0, y: -125}
|
||||||
|
m_SizeDelta: {x: 200, y: 60}
|
||||||
|
m_Pivot: {x: 0.5, y: 1}
|
||||||
|
--- !u!222 &159091678484206804
|
||||||
|
CanvasRenderer:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 3190167222013777342}
|
||||||
|
m_CullTransparentMesh: 1
|
||||||
|
--- !u!114 &6320547556339639356
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 3190167222013777342}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
m_Material: {fileID: 0}
|
||||||
|
m_Color: {r: 0.9528302, g: 0.9528302, b: 0.9528302, a: 1}
|
||||||
|
m_RaycastTarget: 1
|
||||||
|
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
m_Maskable: 1
|
||||||
|
m_OnCullStateChanged:
|
||||||
|
m_PersistentCalls:
|
||||||
|
m_Calls: []
|
||||||
|
m_FontData:
|
||||||
|
m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
|
||||||
|
m_FontSize: 20
|
||||||
|
m_FontStyle: 1
|
||||||
|
m_BestFit: 0
|
||||||
|
m_MinSize: 2
|
||||||
|
m_MaxSize: 40
|
||||||
|
m_Alignment: 4
|
||||||
|
m_AlignByGeometry: 0
|
||||||
|
m_RichText: 1
|
||||||
|
m_HorizontalOverflow: 0
|
||||||
|
m_VerticalOverflow: 0
|
||||||
|
m_LineSpacing: 1
|
||||||
|
m_Text: ch_00012123
|
||||||
|
--- !u!1 &7767469884883945482
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 1824494756990190649}
|
||||||
|
- component: {fileID: 3156919070355677504}
|
||||||
|
- component: {fileID: 842623786796585949}
|
||||||
|
m_Layer: 5
|
||||||
|
m_Name: IconPrefab
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!224 &1824494756990190649
|
||||||
|
RectTransform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 7767469884883945482}
|
||||||
|
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
||||||
|
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||||
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
|
m_Children:
|
||||||
|
- {fileID: 6655673581813614976}
|
||||||
|
- {fileID: 8721578812307819479}
|
||||||
|
- {fileID: 5233998742534870034}
|
||||||
|
m_Father: {fileID: 0}
|
||||||
|
m_RootOrder: 0
|
||||||
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
|
m_AnchorMin: {x: 0, y: 0}
|
||||||
|
m_AnchorMax: {x: 0, y: 0}
|
||||||
|
m_AnchoredPosition: {x: 0, y: 0}
|
||||||
|
m_SizeDelta: {x: 0, y: 0}
|
||||||
|
m_Pivot: {x: 0.5, y: 0.5}
|
||||||
|
--- !u!222 &3156919070355677504
|
||||||
|
CanvasRenderer:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 7767469884883945482}
|
||||||
|
m_CullTransparentMesh: 1
|
||||||
|
--- !u!114 &842623786796585949
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 7767469884883945482}
|
||||||
|
m_Enabled: 0
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
m_Material: {fileID: 0}
|
||||||
|
m_Color: {r: 1, g: 1, b: 1, a: 0.392}
|
||||||
|
m_RaycastTarget: 1
|
||||||
|
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
m_Maskable: 1
|
||||||
|
m_OnCullStateChanged:
|
||||||
|
m_PersistentCalls:
|
||||||
|
m_Calls: []
|
||||||
|
m_Sprite: {fileID: 10907, guid: 0000000000000000f000000000000000, type: 0}
|
||||||
|
m_Type: 1
|
||||||
|
m_PreserveAspect: 0
|
||||||
|
m_FillCenter: 1
|
||||||
|
m_FillMethod: 4
|
||||||
|
m_FillAmount: 1
|
||||||
|
m_FillClockwise: 1
|
||||||
|
m_FillOrigin: 0
|
||||||
|
m_UseSpriteMesh: 0
|
||||||
|
m_PixelsPerUnitMultiplier: 1
|
||||||
|
--- !u!1 &8457259164473420140
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 5233998742534870034}
|
||||||
|
- component: {fileID: 2285649415285852442}
|
||||||
|
- component: {fileID: 6376301276344967779}
|
||||||
|
- component: {fileID: 1197044649033212756}
|
||||||
|
m_Layer: 5
|
||||||
|
m_Name: Button
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!224 &5233998742534870034
|
||||||
|
RectTransform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 8457259164473420140}
|
||||||
|
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
||||||
|
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||||
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
|
m_Children: []
|
||||||
|
m_Father: {fileID: 1824494756990190649}
|
||||||
|
m_RootOrder: 2
|
||||||
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
|
m_AnchorMin: {x: 0, y: 0}
|
||||||
|
m_AnchorMax: {x: 1, y: 1}
|
||||||
|
m_AnchoredPosition: {x: 0, y: 0}
|
||||||
|
m_SizeDelta: {x: 0, y: 0}
|
||||||
|
m_Pivot: {x: 0.5, y: 0.5}
|
||||||
|
--- !u!222 &2285649415285852442
|
||||||
|
CanvasRenderer:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 8457259164473420140}
|
||||||
|
m_CullTransparentMesh: 1
|
||||||
|
--- !u!114 &6376301276344967779
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 8457259164473420140}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
m_Material: {fileID: 0}
|
||||||
|
m_Color: {r: 1, g: 1, b: 1, a: 0}
|
||||||
|
m_RaycastTarget: 1
|
||||||
|
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
m_Maskable: 1
|
||||||
|
m_OnCullStateChanged:
|
||||||
|
m_PersistentCalls:
|
||||||
|
m_Calls: []
|
||||||
|
m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0}
|
||||||
|
m_Type: 1
|
||||||
|
m_PreserveAspect: 0
|
||||||
|
m_FillCenter: 1
|
||||||
|
m_FillMethod: 4
|
||||||
|
m_FillAmount: 1
|
||||||
|
m_FillClockwise: 1
|
||||||
|
m_FillOrigin: 0
|
||||||
|
m_UseSpriteMesh: 0
|
||||||
|
m_PixelsPerUnitMultiplier: 1
|
||||||
|
--- !u!114 &1197044649033212756
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 8457259164473420140}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
m_Navigation:
|
||||||
|
m_Mode: 3
|
||||||
|
m_WrapAround: 0
|
||||||
|
m_SelectOnUp: {fileID: 0}
|
||||||
|
m_SelectOnDown: {fileID: 0}
|
||||||
|
m_SelectOnLeft: {fileID: 0}
|
||||||
|
m_SelectOnRight: {fileID: 0}
|
||||||
|
m_Transition: 1
|
||||||
|
m_Colors:
|
||||||
|
m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
|
||||||
|
m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
|
||||||
|
m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}
|
||||||
|
m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
|
||||||
|
m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
|
||||||
|
m_ColorMultiplier: 1
|
||||||
|
m_FadeDuration: 0.1
|
||||||
|
m_SpriteState:
|
||||||
|
m_HighlightedSprite: {fileID: 0}
|
||||||
|
m_PressedSprite: {fileID: 0}
|
||||||
|
m_SelectedSprite: {fileID: 0}
|
||||||
|
m_DisabledSprite: {fileID: 0}
|
||||||
|
m_AnimationTriggers:
|
||||||
|
m_NormalTrigger: Normal
|
||||||
|
m_HighlightedTrigger: Highlighted
|
||||||
|
m_PressedTrigger: Pressed
|
||||||
|
m_SelectedTrigger: Selected
|
||||||
|
m_DisabledTrigger: Disabled
|
||||||
|
m_Interactable: 1
|
||||||
|
m_TargetGraphic: {fileID: 6376301276344967779}
|
||||||
|
m_OnClick:
|
||||||
|
m_PersistentCalls:
|
||||||
|
m_Calls: []
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 780d27c828249d647a5a0651ba908c63
|
||||||
|
PrefabImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user