Unity/C# 2022. 2. 22. 17:26[Unity] FSM패턴

유한 상태 기계 (Finite State Machine) 정의 컴퓨터 프로그램을 설계할 때 쓰이는 모델이다. 컴퓨터 내에 유한한 상태를 가지는 기계가 있다고 가정하고, 컴퓨터는 오로지 하나의 상태만 갖고 있을 수 있으며 각 상태별 동작과 상태끼리의 전이에 대한 내용을 설계하게 된다. 유니티의 Animator처럼 한State에 머무르며 행동을하고 다른State로 전이(Transition)을 하며 행동을 변경하는 시스템이라고 생각하면 편하다. 이미지 출처 : https://boycoding.tistory.com/262 AI를 코딩으로 만들때 이 패턴이 유용한데, 기존에 애용하던 패턴은 Switch문을 활용한 이런식이다. 방법 1 // FSM을 활용한 몬스터 컨트롤러 public abstract class M..

Unity/C# 2022. 1. 28. 10:29[Unity, C#] Vector3 회전

Vector3(1, 0, 0)을 y출으로 45도 회전한다면 vector3 v = Vector3.right; v *= Quaternion.AngleAxis(-45, Vector3.up); //또는 v *= Quaternion.Euler(0, -45, 0); 처음 생각으로는 Vector3에 회전시키는 확장메소드가 있을줄알았는데 Quaternion이였다.

Unity/C# 2022. 1. 28. 10:18[C#]선택적 매개변수로 Color사용 / ?? 및 ??=, ?. 연산자

선택적 매개변수로 Color를 사용하려할때 private void MyColor(Color _color = Color.magenta) { } 이런식으로 기본값을 넣을려하면 컴파일타입 상수가 아니라면서 오류를 낸다. public GraphicsLine(Point startPoint, Point endPoint, Color? color = null, double width = 1.0) { StartPoint = startPoint; EndPoint = endPoint; Color = color ?? Colors.Black; Width = width; } 해결법은 이런식으로 작성하면 된다. 출처 : https://minecode.tistory.com/65 여기서 나오는 ?연산자와 ??연산자에대한 설명은 C# ..

Unity/C# 2022. 1. 26. 13:43[Unity] 카메라 장애물 회피

요런기능을 말함 필요한 변수와 함수 public float cameraSphereRadius = 0.2f; public float cameraCollisionOffset = 0.2f; public float maximunCollisionOffest = 2.2f; private void HandleCameraCollision(float maxDistance, Vector3 startPos) { targetPos = 0f; RaycastHit hit; Vector3 dir = (transform.position - startPos).normalized; Debug.DrawLine(startPos, startPos + dir * maxDistance, Color.red, 0.5f); if(Physics.Sph..

Unity/C# 2022. 1. 17. 10:45[C#] params 가변인자 매개변수

출처: https://blockdmask.tistory.com/317 [개발자 지망생] [C#] params 가변인자 매개변수에 대해서. 안녕하세요. BlockDMask 입니다. 오늘은 가변인자 매개변수 params 키워드에 대해서 알아보도록 하겠습니다. 날씨가 오락가락하네요. 1. C# params 가변 인자 매개변수란? ▼ C# params 설명과 기능 : 우리가 함수.. blockdmask.tistory.com 안녕하세요. BlockDMask 입니다. 오늘은 가변인자 매개변수 params 키워드에 대해서 알아보도록 하겠습니다. 날씨가 오락가락하네요. 1. C# params 가변 인자 매개변수란? ▼ C# params 설명과 기능 : 우리가 함수의 매개변수를 넘길때 1,2,3개 이렇게 개수를 지정해주..

Unity/C# 2021. 11. 2. 17:41C# Enum Count 가져오는 방법

[C# 문법] C# Enum Count 가져오는 방법 안녕하세요. 오늘은 C# 문법에서 Enum 열거형에 선언되어 있는 총 Count를 가져오는 방법에 대해서 알려 드리려고 합니다. 매우 간단하기 때문에 별 다른 설명 없이 예제 코드를 통해서 어떻게 Enum Count를 가져.. afsdzvcx123.tistory.com 위 블로그에서 참조 요약하자면 count = System.Enum.GetValues(typeof(COLUMNS)).Length; 출처: https://afsdzvcx123.tistory.com/entry/C-문법-C-Enum-Count-가져오는-방법 [BeomBeomJoJo - Programmer]

image