Unity
-
[Addressable] 빌드 오류 해결 방법 - Addressables - Unable to load runtime data at locationUnity 2025. 1. 31. 16:31
개요Unity 프로젝트에서 Addressable Asset System은 에셋 관리의 핵심 도구다.그런데 어째서인지 버전관리에서 약간의 버거움이 발생했다. 병합 후에 빌드를 하려고 하니 안되는것 아닌가..분명 병합 과정에서 수동으로 머지를 진행했고, 에디터에서는 정상적으로 작동하는데 빌드에서는 왜 안되는건지 머리를 싸맸다.이 글에서는 Git 머지 과정에서 발생한 Addressable 빌드 오류와 그 해결 과정을 다루고자 한다.문제의 발단초기 상황우리 팀은 각자 다른 브랜치에서 Addressable 에셋을 수정하고 있었다.한 팀원은 캐릭터 일러스트 적용을 위해 스프라이트를 그룹에 할당하였고, 다른 팀원은 던전 데이터를 그룹에 할당하였다.해당 브랜치를 Develop 브랜치에서 병합하는 과정에서 Conflic..
-
[디자인패턴] 옵저버 패턴(Observer Pattern) - Unity로 게임 개발하기Unity 2024. 12. 15. 21:13
프로그래밍을 하다 보면 여러 객체가 서로 얽혀 있는 복잡한 구조로 인해 수정이나 유지보수가 어려운 상황을 마주할 때가 있다. 이런 문제를 해결하는 데 큰 도움을 줄 수 있는 디자인 패턴 중 하나가 바로 "옵저버 패턴"이다. 이 패턴은 주체 객체의 상태 변화가 관찰자 객체들에게 자동으로 전달되도록 설계하여 객체 간의 결합도를 낮추는 데 초점이 맞춰져 있다. 특히 유니티와 같은 게임 엔진에서는 이벤트 시스템 구현에 자주 활용된다. 왜 유니티에서 옵저버 패턴이 필요할까?유니티 개발을 진행하다 보면, 컴포넌트 간의 의존성이 지나치게 높아져 코드 수정과 확장이 어려워지는 경우가 자주 발생한다. 이런 상황에서 옵저버 패턴은 객체 간 결합도를 줄이고 코드를 더 간결하고 유연하게 만들 수 있는 강력한 도구가 된다.주요..
-
[디자인패턴] 전략 패턴(Strategy Pattern) - Unity로 게임 개발하기Unity 2024. 12. 15. 20:49
전략 패턴(Strategy Pattern)?런타임에서 동작을 변경하여 객체에 할당할 수 있도록 하는 디자인 패턴. 날아다니면서 플레이어를 공격하는 드론이 있다고 가정해보자.해당 드론들은좌우비행상하비행전후비행등 다양한 행동 패턴을 가지고 있을 수 있다.우리는 이들이 어떤 행동을 해야 할지 정의를 해줄 수 있다.어떤 드론은 횡비행을 하며 공격하고, 다른 드론은 종비행을 할 수 있도록 지정할 수 있다.전략 패턴은 이러한 행동이 쉽게 가능하도록 하는 디자인 패턴의 한 종류이다.전략 패턴 이해하기전략이라는 개별 클래스로 나누어 생각해보자.위에서 언급된 각각의 전략들을 캡슐화 하여 정의하는 것이 가능하다.1. 좌우비행 - x축으로 이동2. 상하비행 - y축으로 이동3. 전후비행 - z축으로 이동 해당 전략들은 S..
-
싱글톤이란 무엇인가? - Singleton기초Unity 2024. 12. 15. 20:33
특정 클래스의 인스턴스를 단 하나만 생성하고, 어디서든 접근할 수 있도록 보장하는 디자인 패턴 게임 개발에서 관리 클래스는 중요한 데이터를 저장하고, 시스템을 조율하는 역할을 한다.그러나 이러한 클래스가 복수로 생성된다면, 데이터 충돌이나 불일치가 발생할 위험이 있다.이러한 상황을 방지하고, 데이터를 중앙에서 일관성 있게 관리하기 위해 싱글톤 패턴(Singelton Pattern) 을 사용한다.왜 필요할까?데이터를 중앙에서 관리하는 것이 가능하다.- 게임 상태, 점수, 설정 등은 하나로 관리되어야 하는데, 이를 싱글톤 패턴이 적용된 매니저 클래스에서 관리하여 데이터의 혼동을 방지한다.전역에서 접근하는 것이 가능하다.- 다수의 객체가 해당 GameManager에 접근해야 하는 경우가 생기는데, 어디서든 접..