chore: Assets 디렉토리 구조 정리 및 네이밍 컨벤션 적용
- Assets/_Game/ 하위로 게임 에셋 통합 - External/ 패키지 벤더별 분류 (Synty, Animations, UI) - 에셋 네이밍 컨벤션 확립 및 적용 (Data_Skill_, Data_SkillEffect_, Prefab_, Anim_, Model_, BT_ 등) - pre-commit hook으로 네이밍 컨벤션 자동 검사 추가 - RESTRUCTURE_CHECKLIST.md 작성 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
204
Assets/External/Models/PolygonGeneric/Shaders/InterfaceOverrides/Editor/PolygonShaderGUI.cs
vendored
Normal file
204
Assets/External/Models/PolygonGeneric/Shaders/InterfaceOverrides/Editor/PolygonShaderGUI.cs
vendored
Normal file
@@ -0,0 +1,204 @@
|
||||
using UnityEditor;
|
||||
|
||||
public class PolygonShaderGUI : ShaderGUI
|
||||
{
|
||||
private bool _showBaseTexture = false;
|
||||
private bool _showOverlayTexture = false;
|
||||
private bool _showAlphaTexture = false;
|
||||
private bool _showNormalTexture = false;
|
||||
private bool _showTriplanar = false;
|
||||
private bool _showNormalTriplanar = false;
|
||||
private bool _showEmissionTexture = false;
|
||||
private bool _showSnow = false;
|
||||
private bool _showWave = false;
|
||||
|
||||
private bool CreatePropertyGroup(string title, string[] groupProperties, bool foldout, MaterialEditor materialEditor, MaterialProperty[] allProperties)
|
||||
{
|
||||
foldout = EditorGUILayout.BeginFoldoutHeaderGroup(foldout, title);
|
||||
if (foldout)
|
||||
{
|
||||
foreach (string property in groupProperties)
|
||||
{
|
||||
MaterialProperty propertyReference = FindProperty(property, allProperties);
|
||||
materialEditor.ShaderProperty(propertyReference, propertyReference.displayName, 1);
|
||||
}
|
||||
}
|
||||
EditorGUILayout.EndFoldoutHeaderGroup();
|
||||
return foldout;
|
||||
}
|
||||
|
||||
override public void OnGUI(MaterialEditor materialEditor, MaterialProperty[] properties)
|
||||
{
|
||||
EditorGUILayout.LabelField("Basic Parameters", EditorStyles.boldLabel);
|
||||
|
||||
// Ungrouped Basic Parameters
|
||||
string[] shaderProperties =
|
||||
{
|
||||
"_Color_Tint",
|
||||
"_Metallic",
|
||||
"_Smoothness",
|
||||
"_Metallic_Smoothness_Texture",
|
||||
"_Ambient_Occlusion",
|
||||
"_Specular_Color",
|
||||
"_Alpha_Transparency"
|
||||
};
|
||||
|
||||
foreach (string property in shaderProperties)
|
||||
{
|
||||
MaterialProperty propertyReference = FindProperty(property, properties);
|
||||
materialEditor.ShaderProperty(propertyReference, propertyReference.displayName, 0);
|
||||
}
|
||||
|
||||
EditorGUILayout.Separator();
|
||||
|
||||
// Base Texture Parameters
|
||||
shaderProperties = new[]
|
||||
{
|
||||
"_Enable_Base_Texture",
|
||||
"_Base_Texture",
|
||||
"_Base_Tiling",
|
||||
"_Base_Offset"
|
||||
};
|
||||
|
||||
_showBaseTexture = CreatePropertyGroup("Base Texture", shaderProperties, _showBaseTexture, materialEditor, properties);
|
||||
|
||||
// Alpha Texture Parameters
|
||||
shaderProperties = new[]
|
||||
{
|
||||
"_Enable_Alpha_Texture",
|
||||
"_Alpha_Texture",
|
||||
"_Alpha_Tiling",
|
||||
"_Alpha_Offset"
|
||||
};
|
||||
|
||||
_showAlphaTexture = CreatePropertyGroup("Alpha Texture", shaderProperties, _showAlphaTexture, materialEditor, properties);
|
||||
|
||||
// Normal Texture Parameters
|
||||
shaderProperties = new[]
|
||||
{
|
||||
"_Enable_Normal_Texture",
|
||||
"_Normal_Texture",
|
||||
"_Normal_Tiling",
|
||||
"_Normal_Offset"
|
||||
};
|
||||
|
||||
_showNormalTexture = CreatePropertyGroup("Normal Texture", shaderProperties, _showNormalTexture, materialEditor, properties);
|
||||
|
||||
// Emission Texture Parameters
|
||||
shaderProperties = new[]
|
||||
{
|
||||
"_Enable_Emission_Texture",
|
||||
"_Emission_Texture",
|
||||
"_Emission_Tiling",
|
||||
"_Emission_Offset"
|
||||
};
|
||||
|
||||
_showEmissionTexture = CreatePropertyGroup("Emission Texture", shaderProperties, _showEmissionTexture, materialEditor, properties);
|
||||
|
||||
EditorGUILayout.Separator();
|
||||
|
||||
EditorGUILayout.LabelField("Advanced Parameters", EditorStyles.boldLabel);
|
||||
|
||||
// Overlay Texture Parameters
|
||||
shaderProperties = new[]
|
||||
{
|
||||
"_Enable_Overlay_Texture",
|
||||
"_Overlay_Texture",
|
||||
"_Overlay_Tiling",
|
||||
"_Overlay_Offset",
|
||||
"_OVERLAY_UV_CHANNEL",
|
||||
"_Overlay_Intensity"
|
||||
};
|
||||
|
||||
_showOverlayTexture = CreatePropertyGroup("Overlay Texture", shaderProperties, _showOverlayTexture, materialEditor, properties);
|
||||
|
||||
// Triplanar Texture Parameters
|
||||
shaderProperties = new[]
|
||||
{
|
||||
"_Enable_Triplanar_Texture",
|
||||
"_Triplanar_Texture_Top",
|
||||
"_Triplanar_Tiling_Top",
|
||||
"_Triplanar_Offset_Top",
|
||||
"_Triplanar_Texture_Bottom",
|
||||
"_Triplanar_Tiling_Bottom",
|
||||
"_Triplanar_Offset_Bottom",
|
||||
"_Triplanar_Texture_Side",
|
||||
"_Triplanar_Tiling_Side",
|
||||
"_Triplanar_Offset_Side",
|
||||
"_Triplanar_Top_To_Side_Difference",
|
||||
"_Triplanar_Fade", "_Triplanar_Intensity"
|
||||
};
|
||||
|
||||
_showTriplanar = CreatePropertyGroup("Triplanar Texture", shaderProperties, _showTriplanar, materialEditor, properties);
|
||||
|
||||
// Triplanar Normal Texture Parameters
|
||||
shaderProperties = new[]
|
||||
{
|
||||
"_Enable_Triplanar_Normals",
|
||||
"_Triplanar_Normal_Texture_Top",
|
||||
"_Triplanar_Normal_Intensity_Top",
|
||||
"_Triplanar_Normal_Tiling_Top",
|
||||
"_Triplanar_Normal_Offset_Top",
|
||||
"_Triplanar_Normal_Texture_Bottom",
|
||||
"_Triplanar_Normal_Intensity_Bottom",
|
||||
"_Triplanar_Normal_Tiling_Bottom",
|
||||
"_Triplanar_Normal_Offset_Bottom",
|
||||
"_Triplanar_Normal_Texture_Side",
|
||||
"_Triplanar_Normal_Intensity_Side",
|
||||
"_Triplanar_Normal_Tiling_Side",
|
||||
"_Triplanar_Normal_Offset_Side",
|
||||
"_Triplanar_Normal_Top_To_Side_Difference",
|
||||
"_Triplanar_Normal_Fade"
|
||||
};
|
||||
|
||||
_showNormalTriplanar = CreatePropertyGroup("Triplanar Normal Texture", shaderProperties, _showNormalTriplanar, materialEditor, properties);
|
||||
|
||||
// Snow Parameters
|
||||
shaderProperties = new[]
|
||||
{
|
||||
"_Enable_Snow",
|
||||
"_Snow_Metallic",
|
||||
"_Snow_Smoothness",
|
||||
"_Snow_Level",
|
||||
"_Snow_Transition",
|
||||
"_Snow_Transition_Threshold",
|
||||
"_Snow_Transition_Threshold_Steps",
|
||||
"_Snow_Transition_Threshold_Step_Count",
|
||||
"_Snow_Angle_Threshold",
|
||||
"_Snow_Color",
|
||||
"_Sea_Level",
|
||||
"_Snow_Edge_Noise",
|
||||
"_Snow_Noise_Tiling",
|
||||
"_Snow_Noise_Offset",
|
||||
"_Snow_Noise_Fade",
|
||||
"_Snow_Noise_Top_To_Side_Difference",
|
||||
"_Snow_Normal_Texture",
|
||||
"_Snow_Overrides_Normals",
|
||||
"_Snow_Normal_Intensity",
|
||||
"_Snow_Normal_Tiling",
|
||||
"_Snow_Normal_Offset",
|
||||
"_Snow_Normal_Fade",
|
||||
"_Snow_Metallic_Smoothness_Texture",
|
||||
"_Snow_Metallic_Smoothness_Tiling",
|
||||
"_Snow_Metallic_Smoothness_Offset"
|
||||
};
|
||||
|
||||
_showSnow = CreatePropertyGroup("Snow", shaderProperties, _showSnow, materialEditor, properties);
|
||||
|
||||
// Wave Parameters
|
||||
shaderProperties = new[]
|
||||
{
|
||||
"_Enable_Wave",
|
||||
"_Wave_Direction_Vector",
|
||||
"_Wave_Scale",
|
||||
"_Wave_Noise_Tiling",
|
||||
"_Wave_Speed",
|
||||
"_Fade_Wave_To_Object_Origin",
|
||||
"_Fade_Wave_Scale",
|
||||
"_Fade_Wave_Vertical_Offset",
|
||||
"_Wave_Object_Offset"
|
||||
};
|
||||
|
||||
_showWave = CreatePropertyGroup("Wave", shaderProperties, _showWave, materialEditor, properties);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user