메인 ui

This commit is contained in:
Ino 2025-08-29 04:44:18 +09:00
parent e7e14eae0d
commit 977c1de2dd
27 changed files with 243862 additions and 21361 deletions

View File

@ -13,20 +13,8 @@ MonoBehaviour:
m_Name: Built In Data
m_EditorClassIdentifier:
m_GroupName: Built In Data
m_Data:
m_SerializedData: []
m_GUID: be90e6e989eaf0b448ef303fb86d9c03
m_SerializeEntries:
- m_GUID: Resources
m_Address: Resources
m_ReadOnly: 1
m_SerializedLabels: []
FlaggedDuringContentUpdateRestriction: 0
- m_GUID: EditorSceneList
m_Address: EditorSceneList
m_ReadOnly: 1
m_SerializedLabels: []
FlaggedDuringContentUpdateRestriction: 0
m_SerializeEntries: []
m_ReadOnly: 1
m_Settings: {fileID: 11400000, guid: c77becc48b6a4db458b18648f1e15a39, type: 2}
m_SchemaSet:

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.6 MiB

After

Width:  |  Height:  |  Size: 1.4 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 MiB

After

Width:  |  Height:  |  Size: 1.4 MiB

Binary file not shown.

View File

@ -0,0 +1,21 @@
fileFormatVersion: 2
guid: 7e713210acade564886595188935c58c
TrueTypeFontImporter:
externalObjects: {}
serializedVersion: 4
fontSize: 16
forceTextureCase: -2
characterSpacing: 0
characterPadding: 1
includeFontData: 1
fontNames:
- BM JUA_TTF
fallbackFontReferences: []
customCharacters:
fontRenderingMode: 0
ascentCalculationMode: 1
useLegacyBoundsCalculation: 0
shouldRoundAdvanceValue: 1
userData:
assetBundleName:
assetBundleVariant:

378
Assets/Editor/MyUIUtil.cs Normal file
View File

@ -0,0 +1,378 @@
using TMPro;
using UnityEditor;
using UnityEngine;
using UnityEngine.UI;
public static class MyUIUtil
{
static string path_whitebg = "Assets/ResWork/UI_Image/Common/whitebg.png";
static void SetLayerRecursively(GameObject obj, string newLayer = "UI")
{
obj.layer = LayerMask.NameToLayer(newLayer);
foreach (Transform child in obj.transform)
SetLayerRecursively(child.gameObject, newLayer); // 재귀 호출로 자식까지 처리
}
[MenuItem("GameObject/UI/New Image &i")] // &i는 Alt + I를 의미
static void CreateUIImage()
{
GameObject imageObject = new GameObject("New Image", typeof(Image));
// 생성된 오브젝트에 대한 Undo 기록 추가
Undo.RegisterCreatedObjectUndo(imageObject, "New Image");
var img = imageObject.GetComponent<Image>();
img.raycastTarget = false;
img.sprite = AssetDatabase.LoadAssetAtPath<Sprite>(path_whitebg);
if (Selection.activeGameObject != null)
{
imageObject.transform.SetParent(Selection.activeGameObject.transform, false);
SetLayerRecursively(imageObject);
// 새로 생성된 오브젝트를 선택
Selection.activeGameObject = imageObject;
// 씬 뷰에서 해당 오브젝트에 포커스 맞추기
//SceneView.lastActiveSceneView.FrameSelected();
}
}
[MenuItem("GameObject/UI/Text Only &t")] // &t는 Alt + T를 의미
static void CreateUITextMeshPro()
{
GameObject textObject = new GameObject("New TMP", typeof(TextMeshProUGUI));
// 생성된 오브젝트에 대한 Undo 기록 추가
Undo.RegisterCreatedObjectUndo(textObject, "New TMP");
var tm = textObject.GetComponent<TextMeshProUGUI>();
tm.raycastTarget = false;
tm.alignment = TextAlignmentOptions.Midline;
tm.textWrappingMode = TextWrappingModes.NoWrap;
if (Selection.activeGameObject != null)
{
textObject.transform.SetParent(Selection.activeGameObject.transform, false);
SetLayerRecursively(textObject);
// 새로 생성된 오브젝트를 선택
Selection.activeGameObject = textObject;
// 씬 뷰에서 해당 오브젝트에 포커스 맞추기
//SceneView.lastActiveSceneView.FrameSelected();
}
}
[MenuItem("GameObject/UI/Text - Local &y")]
static void CreateUITextMeshProWithLocal()
{
GameObject textObject = new GameObject("Local TMP", typeof(TextMeshProUGUI));
// 생성된 오브젝트에 대한 Undo 기록 추가
Undo.RegisterCreatedObjectUndo(textObject, "Local TMP");
var tm = textObject.GetComponent<TextMeshProUGUI>();
tm.raycastTarget = false;
tm.alignment = TextAlignmentOptions.Midline;
tm.textWrappingMode = TextWrappingModes.NoWrap;
if (Selection.activeGameObject != null)
{
textObject.transform.SetParent(Selection.activeGameObject.transform, false);
SetLayerRecursively(textObject);
// 새로 생성된 오브젝트를 선택
Selection.activeGameObject = textObject;
// 씬 뷰에서 해당 오브젝트에 포커스 맞추기
//SceneView.lastActiveSceneView.FrameSelected();
}
}
[MenuItem("GameObject/UI/Button &b")] // Alt + B: Button 생성 (Image, Button, PlayClickSound_Only 추가)
static void CreateUIButton()
{
// 버튼 오브젝트 생성 (Image, Button 컴포넌트 포함)
GameObject buttonObject = new GameObject("btn_");
// 생성된 오브젝트에 대한 Undo 기록 추가
Undo.RegisterCreatedObjectUndo(buttonObject, "btn_");
buttonObject.AddComponent<Image>().sprite = AssetDatabase.LoadAssetAtPath<Sprite>(path_whitebg);
buttonObject.AddComponent<Button>();
// TextMeshPro-UGUI 생성 및 설정
GameObject textObject = new GameObject("btnName", typeof(TextMeshProUGUI));
TextMeshProUGUI tmp = textObject.GetComponent<TextMeshProUGUI>();
tmp.text = "Button";
tmp.alignment = TextAlignmentOptions.Midline;
tmp.raycastTarget = false;
// Text 객체를 Button의 자식으로 설정
textObject.transform.SetParent(buttonObject.transform, false);
RectTransform textRect = textObject.GetComponent<RectTransform>();
textRect.anchorMin = Vector2.zero;
textRect.anchorMax = Vector2.one;
textRect.offsetMin = Vector2.zero;
textRect.offsetMax = Vector2.zero;
// 버튼 오브젝트의 부모 설정
if (Selection.activeGameObject != null)
{
buttonObject.transform.SetParent(Selection.activeGameObject.transform, false);
SetLayerRecursively(buttonObject);
// 새로 생성된 오브젝트를 선택
Selection.activeGameObject = buttonObject;
// 씬 뷰에서 해당 오브젝트에 포커스 맞추기
//SceneView.lastActiveSceneView.FrameSelected();
}
}
[MenuItem("GameObject/UI/My Slider &%#s")] // Alt + Shift + S: Slider 생성
static void CreateUISlider()
{
GameObject sliderObject = new GameObject("Slider_", typeof(Slider));
// 생성된 오브젝트에 대한 Undo 기록 추가
Undo.RegisterCreatedObjectUndo(sliderObject, "Slider_");
sliderObject.GetComponent<RectTransform>().sizeDelta = new Vector2(200f, 20f);
Slider slider = sliderObject.GetComponent<Slider>();
slider.value = 0.5f;
// Slider의 자식 오브젝트로 Background 이미지 추가
GameObject backgroundObject = new GameObject("Background", typeof(Image));
backgroundObject.transform.SetParent(sliderObject.transform, false);
var img = backgroundObject.GetComponent<Image>();
img.raycastTarget = false;
img.sprite = AssetDatabase.LoadAssetAtPath<Sprite>(path_whitebg);
RectTransform bgRect = backgroundObject.GetComponent<RectTransform>();
bgRect.anchorMin = new Vector2(0, 0);
bgRect.anchorMax = new Vector2(1, 1);
bgRect.offsetMin = new Vector2(0, 0); // Custom Stretch 적용
bgRect.offsetMax = new Vector2(0, 0); // Custom Stretch 적용
// Fill Area 오브젝트 추가
GameObject fillAreaObject = new GameObject("Fill Area", typeof(RectTransform));
fillAreaObject.transform.SetParent(sliderObject.transform, false);
RectTransform fillAreaRect = fillAreaObject.GetComponent<RectTransform>();
fillAreaRect.anchorMin = new Vector2(0, 0);
fillAreaRect.anchorMax = new Vector2(1, 1);
fillAreaRect.offsetMin = new Vector2(0, 0); // Custom Stretch 적용
fillAreaRect.offsetMax = new Vector2(0, 0); // Custom Stretch 적용
// Fill Area 자식으로 Fill 이미지 추가
GameObject fillObject = new GameObject("Fill", typeof(Image));
fillObject.transform.SetParent(fillAreaObject.transform, false);
slider.targetGraphic = fillObject.GetComponent<Image>();
slider.targetGraphic.color = Color.yellow;
slider.targetGraphic.raycastTarget = false;
(slider.targetGraphic as Image).sprite = AssetDatabase.LoadAssetAtPath<Sprite>(path_whitebg);
RectTransform fillRect = fillObject.GetComponent<RectTransform>();
fillRect.anchorMin = new Vector2(0, 0);
fillRect.anchorMax = new Vector2(1, 1);
fillRect.offsetMin = new Vector2(0, 0);
fillRect.offsetMax = new Vector2(0, 0); // Stretch left 적용
// Fill 이미지 설정
slider.fillRect = fillRect;
if (Selection.activeGameObject != null)
{
sliderObject.transform.SetParent(Selection.activeGameObject.transform, false);
SetLayerRecursively(sliderObject);
// 새로 생성된 오브젝트를 선택
Selection.activeGameObject = sliderObject;
// 씬 뷰에서 해당 오브젝트에 포커스 맞추기
//SceneView.lastActiveSceneView.FrameSelected();
}
}
[MenuItem("GameObject/UI/My CheckUI &%#c")]
static void CreateUICheck()
{
// 0. "check_" GameObject 생성
GameObject gocheck = new GameObject("check_");
// 생성된 오브젝트에 대한 Undo 기록 추가
Undo.RegisterCreatedObjectUndo(gocheck, "check_");
gocheck.AddComponent<RectTransform>();
// 1. 자식으로 크기 27x27 Image 추가
GameObject imageObject1 = new GameObject("checkbg", typeof(Image));
imageObject1.GetComponent<Image>().sprite = AssetDatabase.LoadAssetAtPath<Sprite>(path_whitebg);
imageObject1.transform.SetParent(gocheck.transform, false); // gocheck의 자식으로 설정
RectTransform image1Rect = imageObject1.GetComponent<RectTransform>();
image1Rect.sizeDelta = new Vector2(50, 50); // 크기 설정
// 버튼 및 버튼음 추가
imageObject1.AddComponent<Button>();
// 2. 1 의 자식으로 크기 39x30 Image 추가
GameObject imageObject2 = new GameObject("check", typeof(Image));
imageObject2.GetComponent<Image>().sprite = AssetDatabase.LoadAssetAtPath<Sprite>("Assets/ResWork/UI/NewRes/bg/checkmark.png");
imageObject2.transform.SetParent(imageObject1.transform, false); // imageObject1의 자식으로 설정
RectTransform image2Rect = imageObject2.GetComponent<RectTransform>();
image2Rect.sizeDelta = new Vector2(50, 37); // 크기 설정
// 3. 1의 오른쪽에 1과 같은 깊이로 TMP 추가
GameObject textObject = new GameObject("checkName", typeof(TextMeshProUGUI));
textObject.transform.SetParent(gocheck.transform, false); // gocheck의 자식으로 설정
RectTransform textRect = textObject.GetComponent<RectTransform>();
textRect.sizeDelta = new Vector2(100, 30); // TMP의 기본 크기 설정
textRect.anchoredPosition = new Vector2(image1Rect.sizeDelta.x + 50, 0); // Image1의 오른쪽으로 배치
TextMeshProUGUI tmp = textObject.GetComponent<TextMeshProUGUI>();
tmp.alignment = TextAlignmentOptions.MidlineLeft;
tmp.text = "체크 UI";
tmp.raycastTarget = false;
// 현재 선택된 오브젝트를 부모로 설정 (선택된 오브젝트가 있을 때만)
if (Selection.activeGameObject != null)
{
gocheck.transform.SetParent(Selection.activeGameObject.transform, false);
// 새로 생성된 오브젝트를 선택
Selection.activeGameObject = gocheck;
// 씬 뷰에서 해당 오브젝트에 포커스 맞추기
//SceneView.lastActiveSceneView.FrameSelected();
}
}
[MenuItem("GameObject/UI/My Scroll &#v")] // Alt + Shift + V 단축키
static void CreateUIScrollview()
{
// 0. "scrollview_" GameObject 생성
GameObject go_sv = new GameObject("scrollview_");
// 생성된 오브젝트에 대한 Undo 기록 추가
Undo.RegisterCreatedObjectUndo(go_sv, "scrollview_");
var img = go_sv.AddComponent<Image>();
img.sprite = AssetDatabase.LoadAssetAtPath<Sprite>(path_whitebg);
var sr = go_sv.AddComponent<ScrollRect>();
sr.horizontal = false;
// 1. 자식으로 Viewport 추가
GameObject go_vp = new GameObject("Viewport", typeof(Image));
go_vp.AddComponent<Mask>().showMaskGraphic = false;
go_vp.transform.SetParent(go_sv.transform, false); // 자식으로 설정
var rt_vp = go_vp.GetComponent<RectTransform>(); // 이미 추가된 RectTransform 가져오기
rt_vp.anchorMin = Vector2.zero;
rt_vp.anchorMax = Vector2.one;
rt_vp.pivot = Vector2.up;
rt_vp.offsetMin = Vector2.zero; // Left와 Bottom을 0으로 설정
rt_vp.offsetMax = Vector2.zero; // Right와 Top을 0으로 설정
var img_vp = go_vp.GetComponent<Image>();
img_vp.sprite = AssetDatabase.LoadAssetAtPath<Sprite>(path_whitebg);
// ScrollRect의 Viewport를 설정
sr.viewport = rt_vp;
// 2. 1의 자식으로 Content 추가
GameObject go_ct = new GameObject("Content");
go_ct.transform.SetParent(go_vp.transform, false); // Content를 Viewport의 자식으로 설정
go_ct.AddComponent<ContentSizeFitter>().verticalFit = ContentSizeFitter.FitMode.PreferredSize; // ContentSizeFitter 설정
var rt_ct = go_ct.GetComponent<RectTransform>();
rt_ct.anchorMin = Vector2.up;
rt_ct.anchorMax = Vector2.one;
rt_ct.pivot = Vector2.up;
rt_ct.offsetMin = Vector2.zero; // Left와 Bottom을 0으로 설정
rt_ct.offsetMax = Vector2.zero; // Right와 Top을 0으로 설정
// ScrollRect의 content 설정
sr.content = rt_ct;
// 현재 선택된 오브젝트를 부모로 설정 (선택된 오브젝트가 있을 때만)
if (Selection.activeGameObject != null)
{
go_sv.transform.SetParent(Selection.activeGameObject.transform, false);
SetLayerRecursively(go_sv);
// 새로 생성된 오브젝트를 선택
Selection.activeGameObject = go_sv;
// 씬 뷰에서 해당 오브젝트에 포커스 맞추기
//SceneView.lastActiveSceneView.FrameSelected();
}
}
[MenuItem("GameObject/UI/TMP InputField &%#i")] // Alt + Ctrl + Shift + i 단축키
static void CreateTMPInputField()
{
// 0. GameObject 생성
GameObject go_if = new GameObject("inputfield_");
// 생성된 오브젝트에 대한 Undo 기록 추가
Undo.RegisterCreatedObjectUndo(go_if, "inputfield_");
var img = go_if.AddComponent<Image>();
img.sprite = AssetDatabase.LoadAssetAtPath<Sprite>(path_whitebg);
img.color = new Color32(175, 175, 175, 255);
var tmp_if = go_if.AddComponent<TMP_InputField>();
var rt_if = go_if.GetComponent<RectTransform>();
rt_if.sizeDelta = new Vector2(160, 50);
// 1. 자식으로 Text Area 추가
GameObject go_vp = new GameObject("Text Area", typeof(RectMask2D), typeof(RectTransform));
go_vp.GetComponent<RectMask2D>().padding = new Vector4(-8, -5, -8, -5);
go_vp.transform.SetParent(go_if.transform, false); // 자식으로 설정
var rt_vp = go_vp.GetComponent<RectTransform>();
Set_RectTransform_CenterStretch(rt_vp);
tmp_if.textViewport = rt_vp;
// 2. 1의 자식으로 Placeholder 추가
GameObject go_ph = new GameObject("Placeholder", typeof(RectTransform));
go_ph.transform.SetParent(go_vp.transform, false); // 자식으로 설정
var rt_ph = go_ph.GetComponent<RectTransform>();
Set_RectTransform_CenterStretch(rt_ph);
var text_ph = go_ph.AddComponent<TextMeshProUGUI>();
text_ph.raycastTarget = false;
text_ph.textWrappingMode = TextWrappingModes.NoWrap;
text_ph.alignment = TextAlignmentOptions.Midline;
text_ph.text = "";
text_ph.color = Color.black;
text_ph.fontSize = 30;
tmp_if.placeholder = text_ph;
go_ph.AddComponent<LayoutElement>().ignoreLayout = true;
// 3. 1의 자식으로 Text 추가
GameObject go_txt = new GameObject("Text", typeof(RectTransform));
go_txt.transform.SetParent(go_vp.transform, false); // 자식으로 설정
var rt_txt = go_txt.GetComponent<RectTransform>();
Set_RectTransform_CenterStretch(rt_txt);
var text_txt = go_txt.AddComponent<TextMeshProUGUI>();
text_txt.raycastTarget = false;
text_txt.textWrappingMode = TextWrappingModes.NoWrap;
text_txt.alignment = TextAlignmentOptions.Midline;
text_txt.color = Color.black;
tmp_if.textComponent = text_txt;
tmp_if.pointSize = 30;
// 현재 선택된 오브젝트를 부모로 설정 (선택된 오브젝트가 있을 때만)
if (Selection.activeGameObject != null)
{
go_if.transform.SetParent(Selection.activeGameObject.transform, false);
SetLayerRecursively(go_if);
// 새로 생성된 오브젝트를 선택
Selection.activeGameObject = go_if;
// 씬 뷰에서 해당 오브젝트에 포커스 맞추기
//SceneView.lastActiveSceneView.FrameSelected();
}
}
static void Set_RectTransform_CenterStretch(RectTransform rtf)
{
rtf.anchorMin = Vector2.zero;
rtf.anchorMax = Vector2.one;
rtf.pivot = new Vector2(0.5f, 0.5f);
rtf.offsetMin = Vector2.zero;
rtf.offsetMax = Vector2.zero;
}
}

View File

@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 846df3e0e771d4442905602be2b880a7

View File

@ -0,0 +1,20 @@
#if UNITY_EDITOR
using UnityEditor;
public class SpriteSingleModeImporter : AssetPostprocessor
{
const int PostProcessOrder = 0;
public override int GetPostprocessOrder() => PostProcessOrder;
void OnPreprocessTexture()
{
var importer = assetImporter as TextureImporter;
if (importer.importSettingsMissing is false)
return;
importer.spriteImportMode = SpriteImportMode.Single;
importer.mipmapEnabled = false;
}
}
#endif

View File

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

File diff suppressed because it is too large Load Diff

View File

@ -6291,15 +6291,15 @@ RectTransform:
m_GameObject: {fileID: 1952734778}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1.25, y: 1.25, z: 1}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 106099445}
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_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 1024, y: 1792}
m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &1952734780
MonoBehaviour:

View File

@ -1,8 +0,0 @@
fileFormatVersion: 2
guid: deb185b0cd945c04a87d9aef806a2bc7
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -5,6 +5,7 @@ using UnityEngine;
public class BannerSpace : MonoBehaviour
{
[SerializeField] private RectTransform rect;
public float OffSet = -133f;
private void Awake()
{
@ -21,7 +22,7 @@ public class BannerSpace : MonoBehaviour
}
else
{
rect.offsetMax = new Vector2(rect.offsetMax.x, -150);
rect.offsetMax = new Vector2(rect.offsetMax.x, OffSet);
}
}
@ -38,7 +39,7 @@ public class BannerSpace : MonoBehaviour
}
else
{
rect.offsetMax = new Vector2(rect.offsetMax.x, -150);
rect.offsetMax = new Vector2(rect.offsetMax.x, OffSet);
}
}
}

View File

@ -222,13 +222,13 @@ public class TitleCanvas : MonoBehaviour
progressbarText.text = "로비 로드 하는 중...";
yield return new WaitUntil(() => GameManager.Instance != null);
float cnt = 0;
while (cnt < 2)
{
cnt += Time.deltaTime;
MaskableBar.FillAmount = cnt / 2;
yield return null;
}
//float cnt = 0;
//while (cnt < 2)
//{
// cnt += Time.deltaTime;
// MaskableBar.FillAmount = cnt / 2;
// yield return null;
//}
GameManager.Scene.LoadScene(ESceneType.Main);
}

View File

@ -56,6 +56,7 @@ Material:
- _BumpFace: 0
- _BumpOutline: 0
- _ColorMask: 15
- _CullMode: 0
- _Diffuse: 0.5
- _FaceDilate: 0.2
- _FaceUVSpeedX: 0
@ -64,7 +65,7 @@ Material:
- _GlowOffset: 0
- _GlowOuter: 0.05
- _GlowPower: 0.75
- _GradientScale: 21
- _GradientScale: 5
- _LightAngle: 3.1416
- _MaskSoftnessX: 0
- _MaskSoftnessY: 0
@ -74,12 +75,13 @@ Material:
- _OutlineWidth: 0.053
- _PerspectiveFilter: 0.875
- _Reflectivity: 10
- _ScaleRatioA: 0.95238096
- _ScaleRatioB: 0.5833333
- _ScaleRatioC: 0.5833333
- _ScaleRatioA: 0.8
- _ScaleRatioB: 0.49
- _ScaleRatioC: 0.49
- _ScaleX: 1
- _ScaleY: 1
- _ShaderFlags: 0
- _Sharpness: 0
- _SpecularPower: 2
- _Stencil: 0
- _StencilComp: 8
@ -108,3 +110,4 @@ Material:
- _SpecularColor: {r: 1, g: 1, b: 1, a: 1}
- _UnderlayColor: {r: 0, g: 0, b: 0, a: 0.5}
m_BuildTextureStacks: []
m_AllowLocking: 1

View File

@ -54,6 +54,7 @@ Material:
- _BumpFace: 0
- _BumpOutline: 0
- _ColorMask: 15
- _CullMode: 0
- _Diffuse: 0.5
- _FaceDilate: 0.3
- _FaceUVSpeedX: 0
@ -62,22 +63,23 @@ Material:
- _GlowOffset: 0
- _GlowOuter: 0.05
- _GlowPower: 0.75
- _GradientScale: 21
- _GradientScale: 5
- _LightAngle: 3.1416
- _MaskSoftnessX: 0
- _MaskSoftnessY: 0
- _OutlineSoftness: 0
- _OutlineUVSpeedX: 0
- _OutlineUVSpeedY: 0
- _OutlineWidth: 0.2
- _OutlineWidth: 1
- _PerspectiveFilter: 0.875
- _Reflectivity: 10
- _ScaleRatioA: 0.95238096
- _ScaleRatioB: 0.48809522
- _ScaleRatioC: 0.48809522
- _ScaleRatioA: 0.53781515
- _ScaleRatioB: 0.41
- _ScaleRatioC: 0.41
- _ScaleX: 1
- _ScaleY: 1
- _ShaderFlags: 0
- _Sharpness: 0
- _SpecularPower: 2
- _Stencil: 0
- _StencilComp: 8
@ -100,9 +102,10 @@ Material:
- _FaceColor: {r: 1, g: 1, b: 1, a: 1}
- _GlowColor: {r: 0, g: 1, b: 0, a: 0.5}
- _MaskCoord: {r: 0, g: 0, b: 32767, a: 32767}
- _OutlineColor: {r: 0, g: 0, b: 0, a: 1}
- _OutlineColor: {r: 0.08235294, g: 0.050980393, b: 0.039215688, a: 1}
- _ReflectFaceColor: {r: 0, g: 0, b: 0, a: 1}
- _ReflectOutlineColor: {r: 0, g: 0, b: 0, a: 1}
- _SpecularColor: {r: 1, g: 1, b: 1, a: 1}
- _UnderlayColor: {r: 0, g: 0, b: 0, a: 0.5}
m_BuildTextureStacks: []
m_AllowLocking: 1

View File

@ -0,0 +1,111 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: NotoSansKR-Regular - BoldOutline 3
m_Shader: {fileID: 4800000, guid: 68e6db2ebdc24f95958faec2be5558d6, type: 3}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords: []
m_InvalidKeywords: []
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_LockedProperties:
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _Cube:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _FaceTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 656917452037345304, guid: cf1ae75e65a967946b23286a5ffbb812, type: 2}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OutlineTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats:
- _Ambient: 0.5
- _Bevel: 0.5
- _BevelClamp: 0
- _BevelOffset: 0
- _BevelRoundness: 0
- _BevelWidth: 0
- _BumpFace: 0
- _BumpOutline: 0
- _ColorMask: 15
- _CullMode: 0
- _Diffuse: 0.5
- _FaceDilate: 0.3
- _FaceUVSpeedX: 0
- _FaceUVSpeedY: 0
- _GlowInner: 0.05
- _GlowOffset: 0
- _GlowOuter: 0.05
- _GlowPower: 0.75
- _GradientScale: 5
- _LightAngle: 3.1416
- _MaskSoftnessX: 0
- _MaskSoftnessY: 0
- _OutlineSoftness: 0
- _OutlineUVSpeedX: 0
- _OutlineUVSpeedY: 0
- _OutlineWidth: 0.2
- _PerspectiveFilter: 0.875
- _Reflectivity: 10
- _ScaleRatioA: 0.8
- _ScaleRatioB: 0.41
- _ScaleRatioC: 0.41
- _ScaleX: 1
- _ScaleY: 1
- _ShaderFlags: 0
- _Sharpness: 0
- _SpecularPower: 2
- _Stencil: 0
- _StencilComp: 8
- _StencilOp: 0
- _StencilReadMask: 255
- _StencilWriteMask: 255
- _TextureHeight: 4096
- _TextureWidth: 4096
- _UnderlayDilate: 0
- _UnderlayOffsetX: 0
- _UnderlayOffsetY: 0
- _UnderlaySoftness: 0
- _VertexOffsetX: 0
- _VertexOffsetY: 0
- _WeightBold: 0.75
- _WeightNormal: 0
m_Colors:
- _ClipRect: {r: -32767, g: -32767, b: 32767, a: 32767}
- _EnvMatrixRotation: {r: 0, g: 0, b: 0, a: 0}
- _FaceColor: {r: 1, g: 1, b: 1, a: 1}
- _GlowColor: {r: 0, g: 1, b: 0, a: 0.5}
- _MaskCoord: {r: 0, g: 0, b: 32767, a: 32767}
- _OutlineColor: {r: 0.08235294, g: 0.050980393, b: 0.039215688, a: 1}
- _ReflectFaceColor: {r: 0, g: 0, b: 0, a: 1}
- _ReflectOutlineColor: {r: 0, g: 0, b: 0, a: 1}
- _SpecularColor: {r: 1, g: 1, b: 1, a: 1}
- _UnderlayColor: {r: 0, g: 0, b: 0, a: 0.5}
m_BuildTextureStacks: []
m_AllowLocking: 1

View File

@ -1,8 +1,8 @@
fileFormatVersion: 2
guid: 5d507b903c241404e87fa536ebb4867c
folderAsset: yes
DefaultImporter:
guid: 90e310b2b2a174548b0b9d46592458fa
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -54,6 +54,7 @@ Material:
- _BumpFace: 0
- _BumpOutline: 0
- _ColorMask: 15
- _CullMode: 0
- _Diffuse: 0.5
- _FaceDilate: 0
- _FaceUVSpeedX: 0
@ -62,7 +63,7 @@ Material:
- _GlowOffset: 0
- _GlowOuter: 0.05
- _GlowPower: 0.75
- _GradientScale: 21
- _GradientScale: 5
- _LightAngle: 3.1416
- _MaskSoftnessX: 0
- _MaskSoftnessY: 0
@ -72,12 +73,13 @@ Material:
- _OutlineWidth: 0.08
- _PerspectiveFilter: 0.875
- _Reflectivity: 10
- _ScaleRatioA: 0.95238096
- _ScaleRatioB: 0.77380955
- _ScaleRatioC: 0.77380955
- _ScaleRatioA: 0.8
- _ScaleRatioB: 0.65
- _ScaleRatioC: 0.65
- _ScaleX: 1
- _ScaleY: 1
- _ShaderFlags: 0
- _Sharpness: 0
- _SpecularPower: 2
- _Stencil: 0
- _StencilComp: 8
@ -106,3 +108,4 @@ Material:
- _SpecularColor: {r: 1, g: 1, b: 1, a: 1}
- _UnderlayColor: {r: 0, g: 0, b: 0, a: 0.5}
m_BuildTextureStacks: []
m_AllowLocking: 1

View File

@ -108,6 +108,7 @@ Material:
- _SpecularColor: {r: 1, g: 1, b: 1, a: 1}
- _UnderlayColor: {r: 0, g: 0, b: 0, a: 0.5}
m_BuildTextureStacks: []
m_AllowLocking: 1
--- !u!28 &-5993167248186491677
Texture2D:
m_ObjectHideFlags: 0
@ -118,10 +119,8 @@ Texture2D:
m_ImageContentsHash:
serializedVersion: 2
Hash: 00000000000000000000000000000000
m_ForcedFallbackFormat: 4
m_DownscaleFallback: 0
m_IsAlphaChannelOptional: 0
serializedVersion: 2
serializedVersion: 3
m_Width: 2048
m_Height: 2048
m_CompleteImageSize: 4194304
@ -168,21 +167,14 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 71c1514a6bd24e1e882cebbe1904ce04, type: 3}
m_Name: NotoSansKR-Regular SDF
m_EditorClassIdentifier:
hashCode: -887855542
material: {fileID: -6350582610140527788}
materialHashCode: -504769750
m_Version: 1.1.0
m_SourceFontFileGUID: 68b55e8089714174ab7008db23177858
m_SourceFontFile_EditorRef: {fileID: 12800000, guid: 68b55e8089714174ab7008db23177858, type: 3}
m_SourceFontFile: {fileID: 12800000, guid: 68b55e8089714174ab7008db23177858, type: 3}
m_AtlasPopulationMode: 1
m_FaceInfo:
m_FaceIndex: 0
m_FamilyName: Noto Sans KR
m_StyleName: Regular
m_PointSize: 90
m_Scale: 1
m_UnitsPerEM: 0
m_UnitsPerEM: 1000
m_LineHeight: 130.32
m_AscentLine: 104.4
m_CapLine: 66
@ -198,6 +190,31 @@ MonoBehaviour:
m_StrikethroughOffset: 19.6
m_StrikethroughThickness: 4.5
m_TabWidth: 20
m_Material: {fileID: -6350582610140527788}
m_SourceFontFileGUID: 68b55e8089714174ab7008db23177858
m_CreationSettings:
sourceFontFileName:
sourceFontFileGUID: 68b55e8089714174ab7008db23177858
faceIndex: 0
pointSizeSamplingMode: 0
pointSize: 90
padding: 20
paddingMode: 0
packingMode: 0
atlasWidth: 2048
atlasHeight: 2048
characterSetSelectionMode: 7
characterSequence:
referencedFontAssetGUID:
referencedTextAssetGUID:
fontStyle: 0
fontStyleModifier: 0
renderMode: 4165
includeFontFeatures: 0
m_SourceFontFile: {fileID: 12800000, guid: 68b55e8089714174ab7008db23177858, type: 3}
m_SourceFontFilePath:
m_AtlasPopulationMode: 1
InternalDynamicOS: 0
m_GlyphTable:
- m_Index: 1
m_Metrics:
@ -6284,7 +6301,12 @@ MonoBehaviour:
- {fileID: -5993167248186491677}
m_AtlasTextureIndex: 0
m_IsMultiAtlasTexturesEnabled: 0
m_GetFontFeatures: 1
m_ClearDynamicDataOnBuild: 0
m_AtlasWidth: 2048
m_AtlasHeight: 2048
m_AtlasPadding: 20
m_AtlasRenderMode: 4165
m_UsedGlyphRects:
- m_X: 0
m_Y: 0
@ -8671,57 +8693,14 @@ MonoBehaviour:
m_Y: 865
m_Width: 9
m_Height: 65
m_fontInfo:
Name:
PointSize: 0
Scale: 0
CharacterCount: 0
LineHeight: 0
Baseline: 0
Ascender: 0
CapHeight: 0
Descender: 0
CenterLine: 0
SuperscriptOffset: 0
SubscriptOffset: 0
SubSize: 0
Underline: 0
UnderlineThickness: 0
strikethrough: 0
strikethroughThickness: 0
TabWidth: 0
Padding: 0
AtlasWidth: 0
AtlasHeight: 0
atlas: {fileID: 0}
m_AtlasWidth: 2048
m_AtlasHeight: 2048
m_AtlasPadding: 20
m_AtlasRenderMode: 4165
m_glyphInfoList: []
m_KerningTable:
kerningPairs: []
m_FontFeatureTable:
m_MultipleSubstitutionRecords: []
m_LigatureSubstitutionRecords: []
m_GlyphPairAdjustmentRecords: []
fallbackFontAssets: []
m_MarkToBaseAdjustmentRecords: []
m_MarkToMarkAdjustmentRecords: []
m_ShouldReimportFontFeatures: 0
m_FallbackFontAssetTable: []
m_CreationSettings:
sourceFontFileName:
sourceFontFileGUID: 68b55e8089714174ab7008db23177858
pointSizeSamplingMode: 0
pointSize: 90
padding: 20
packingMode: 0
atlasWidth: 2048
atlasHeight: 2048
characterSetSelectionMode: 7
characterSequence:
referencedFontAssetGUID:
referencedTextAssetGUID:
fontStyle: 0
fontStyleModifier: 0
renderMode: 4165
includeFontFeatures: 0
m_FontWeightTable:
- regularTypeface: {fileID: 0}
italicTypeface: {fileID: 0}
@ -8750,3 +8729,30 @@ MonoBehaviour:
boldSpacing: 7
italicStyle: 35
tabSize: 10
m_fontInfo:
Name:
PointSize: 0
Scale: 0
CharacterCount: 0
LineHeight: 0
Baseline: 0
Ascender: 0
CapHeight: 0
Descender: 0
CenterLine: 0
SuperscriptOffset: 0
SubscriptOffset: 0
SubSize: 0
Underline: 0
UnderlineThickness: 0
strikethrough: 0
strikethroughThickness: 0
TabWidth: 0
Padding: 0
AtlasWidth: 0
AtlasHeight: 0
m_glyphInfoList: []
m_KerningTable:
kerningPairs: []
fallbackFontAssets: []
atlas: {fileID: 0}

File diff suppressed because one or more lines are too long

View File

@ -15,16 +15,16 @@ MonoBehaviour:
assetVersion: 2
m_TextWrappingMode: 1
m_enableKerning: 1
m_ActiveFontFeatures: 00000000
m_ActiveFontFeatures: 6e72656b
m_enableExtraPadding: 0
m_enableTintAllSprites: 0
m_enableParseEscapeCharacters: 1
m_EnableRaycastTarget: 1
m_EnableRaycastTarget: 0
m_GetFontFeaturesAtRuntime: 1
m_missingGlyphCharacter: 0
m_ClearDynamicDataOnBuild: 1
m_warningsDisabled: 0
m_defaultFontAsset: {fileID: 11400000, guid: 322dbc2d7f49b3547a8251c46ba13010, type: 2}
m_defaultFontAsset: {fileID: 11400000, guid: cf1ae75e65a967946b23286a5ffbb812, type: 2}
m_defaultFontAssetPath: Fonts & Materials/
m_defaultFontSize: 36
m_defaultAutoSizeMinRatio: 0.5

View File

@ -121,8 +121,8 @@ TextureImporter:
width: 126
height: 67
alignment: 0
pivot: {x: 0, y: 0}
border: {x: 0, y: 0, z: 0, w: 0}
pivot: {x: 0.5, y: 0.5}
border: {x: 50, y: 0, z: 42, w: 0}
customData:
outline: []
physicsShape: []
@ -138,7 +138,7 @@ TextureImporter:
customData:
physicsShape: []
bones: []
spriteID:
spriteID: 510f1f14be76f654f89a31ae8f92b521
internalID: 0
vertices: []
indices:

View File

@ -52,7 +52,7 @@ TextureImporter:
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteBorder: {x: 94, y: 0, z: 102, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
@ -121,7 +121,7 @@ TextureImporter:
width: 241
height: 128
alignment: 0
pivot: {x: 0, y: 0}
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
@ -139,7 +139,7 @@ TextureImporter:
physicsShape: []
bones: []
spriteID: 5e97eb03825dee720800000000000000
internalID: 0
internalID: 1537655665
vertices: []
indices:
edges: []

View File

@ -52,7 +52,7 @@ TextureImporter:
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteBorder: {x: 98, y: 0, z: 95, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
@ -121,7 +121,7 @@ TextureImporter:
width: 241
height: 128
alignment: 0
pivot: {x: 0, y: 0}
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
@ -139,7 +139,7 @@ TextureImporter:
physicsShape: []
bones: []
spriteID: 5e97eb03825dee720800000000000000
internalID: 0
internalID: 1537655665
vertices: []
indices:
edges: []

View File

@ -121,8 +121,8 @@ TextureImporter:
width: 74
height: 64
alignment: 0
pivot: {x: 0, y: 0}
border: {x: 0, y: 0, z: 0, w: 0}
pivot: {x: 0.5, y: 0.5}
border: {x: 36, y: 31, z: 36, w: 30}
customData:
outline: []
physicsShape: []
@ -138,7 +138,7 @@ TextureImporter:
customData:
physicsShape: []
bones: []
spriteID:
spriteID: b6dbe9c2139051b41963f770cf237e1d
internalID: 0
vertices: []
indices:

View File

@ -36,11 +36,11 @@ SpriteAtlas:
m_ForceMaximumCompressionQuality_BC6H_BC7: 0
packingSettings:
serializedVersion: 2
padding: 4
padding: 8
blockOffset: 1
allowAlphaSplitting: 0
enableRotation: 1
enableTightPacking: 1
enableTightPacking: 0
enableAlphaDilation: 0
secondaryTextureSettings: {}
variantMultiplier: 1