분류 전체보기 51

20250512 TIL 월드 스페이스와 로컬스페이스 내적과 외적, 쿼터니언

월드 스페이스(World Space)와 로컬 스페이스(Local Space)의 차이월드 스페이스씬 전체의 절대 좌표계(0,0,0)은 씬의 원점게임 오브젝트가 월드에서 어디에 있는지를 나타냄예) transform.position은 월드 기준 위치를 반환로컬 스페이스부모 오브젝트를 기준으로 한 상대 좌표계(0,0,0)은 부모의 위치예) transform.localPosition은 부모 기준 위치를 반환 차이점 요약구분기준설명월드 스페이스씬(세계) 전체절대 위치, 회전, 크기로컬 스페이스부모 오브젝트부모 기준 상대 위치, 회전, 크기 벡터의 내적(Dot Product)과 외적(Cross Product) 활용 상황내적 (Dot Product)두 벡터의 방향 유사도(각도)를 구할 때 사용두 벡터가 얼마나 같은 방..

카테고리 없음 2025.05.12

20250509 TIL 대리자 event back to the basic

콜백이란 무엇인가콜백(Callback)은 어떤 작업이 끝난 후 실행될 함수를 미리 전달해 두고, 작업이 끝났을 때 나중에 호출하는 프로그래밍 패턴입니다.주로 비동기 처리, 이벤트 처리, 로직 분리 등에 사용됩니다.예시유니티에서 StartCoroutine 과 함께 콜백 메서드 전달예) 플레이어 턴이 끝난 뒤 다음 턴을 시작하는 콜백 처리UI 버튼 클릭 이벤트에 메서드를 전달해서 호출void DoSomething(System.Action callback){ Debug.Log("작업 수행 중..."); callback?.Invoke();}DoSomething(() => Debug.Log("작업 완료 후 콜백 실행"));델리게이트(delegate; 대리자)란 무엇인가델리게이트는 메서드 참조를 저장할 ..

카테고리 없음 2025.05.09

200250508 TIL 유니티의 라이프 사이클,리스트와 배열,프로퍼티 Back to the Basic

1. Unity의 라이프 사이클 (Life Cycle)Unity에서 MonoBehaviour 기반 스크립트는 특정 순서로 호출되는 메서드들을 통해 작동합니다.이 흐름을 라이프 사이클이라고 부릅니다 기본흐름[객체 생성 시] → Awake() → OnEnable() → Start()[게임 루프] → Update() → LateUpdate() (매 프레임) → FixedUpdate() (물리 연산 주기) [비활성화 / 제거 시] → OnDisable() → OnDestroy()메서드 호출 시점 특징 및 용도Awake()오브젝트가 씬에 로드될 때 1회가장 먼저 실행됨. 다른 컴포넌트 참조 가능OnEnable()오브젝트가 활성화될 때마다이벤트 구독 등 추천Start()첫 프레임 전에 1회대부분의 초기화 여기에 작..

카테고리 없음 2025.05.08

20250424 TIL 박싱 언박싱

박싱 언박싱C#은 값 형식(Value Type)과 참조 형식(Reference Type)이 명확히 구분되어있는 언어이다. 때문에 박싱과 언박싱은 중요한 개념이다.박싱(Boxing)박싱은 값 형식을 참조 형식으로 변환하는 과정주로 object 형식에 값을 할당할 때 발생한다.int number = 123;object boxed = number; // 박싱메모리 힙(Heap)에 값이 복사되고 참조로 접근할 수 있게 됨.오버헤드가 발생할 수 있으므로 주의해야함.언박싱(Unboxing)언박싱은 참조 형식을 다시 값 형식으로 변환하는 과정이다.object boxed = 123;int number = (int)boxed; // 언박싱언박싱 시에는 명시적 형변환(Casting)이 필요하다.잘못된 형변환 시 Inval..

카테고리 없음 2025.04.24

20250423 TIL 팩토리 패턴

TIL: 팩토리 패턴 (Factory Pattern) 팩토리 패턴이란?객체 생성을 new 키워드로 직접 하지 않고, 전용 클래스(Factory) 가 대신 생성해주는 디자인 패턴.생성 로직을 하나의 장소로 집중시켜서, 유지보수, 확장성, 유닛 테스트 등에 유리하다.상황문제팩토리 패턴으로 해결new가 여기저기 흩어져 있음결합도 증가Factory 하나로 통합생성 조건이 다양함코드 중복, 혼란내부에서 조건 분기 처리다양한 하위 클래스 필요타입 의존성 증가추상 클래스/인터페이스로 통일public enum EnemyType { Goblin, Orc }public class Enemy { }public class Goblin : Enemy { }public class Orc : Enemy { }public stat..

카테고리 없음 2025.04.23