본문 바로가기

Unity6

유니티 시스템 프로그래밍 Pt.1 - 7~8 주차 개요7~8주차 학습을 진행하였다 학습 내용은 다음과 같다모델링 된 데이터를 CSV로 어떻게 관리/사용 하는지 학습GPM을 사용한 무한 스크롤 세팅 내용5. Lobby 시스템 제작유저 인벤토리 시스템모델링 된 데이터를 CSV로 관리/사용하는법모델링은 5자리의 숫자를 이용, 각 자릿수를 무기 종류 및 등급 등으로 분류하였고이 데이터를 게임 내에서 추출하여 필요한 동작을 구현하였다 예를들어 다음과 같은 방법으로 등급을 추출하고 사용한다var itemGrade = (ItemGrade)(m_InventoryItemSlotData.ItemId / 1000 % 10);var gradeBgTexture = Resources.Load($"Textures/{itemGrade}"); 진행하다보니, 한 번도 주도적으로 제대.. 2024. 11. 8.
Unity UniTask와 Coroutine 개요Unity 프로젝트에서 자주 사용되는 라이브러리인 UniTask에 대해 간단히 소개하고, Coroutine과 비교하여 왜 가능하면 UniTask를 사용하는 것이 좋은지 설명하려고 한다 우아한 스터디를 진행하면서 새로운 기술을 배우는 것도 중요하지만, 사용하는 기술을 제대로 이해하고 활용해야 부작용 없이 최상의 효과를 낼 수 있다고 생각했고, 그래서 이 글을 쓰게 되었다 이 글은 다음의 흐름으로 작성될 예정이다Coroutine과 UniTask 기술 소개 공통점과 차이점 비교 UniTask를 사용해야하는 이유검증하기 위한 테스트 코드 작성결론  내용1. Coroutine과 UniTask 기술 소개 CoroutineUnity Documentation - Splitting tasks across frames.. 2024. 10. 4.
유니티 시스템 프로그래밍 Pt.1 - 4주차 개요4주차 학습을 진행하였다 학습 내용은 다음과 같다Lobby 씬 구조 및 디자인 패턴 (LobbyManager, LobbyUIController)게임 설정 (UserSettingsData, SettingsUI)뒤로가기(ESC/BACK) 처리 (LobbyUIController, ConfirmUI)유저 재화 관리 및 커스텀 메뉴 (UserGoodsData, GoodsUI, CustomTools)  내용5. Lobby 시스템 제작Lobby 씬 구조 및 디자인 패턴 (LobbyManager, LobbyUIController)강사의 핵심 아이디어는 다음과 같다LobbyManager- 비지니스 로직 제어 및 데이터 주입LobbyUIController- 사용자 인터렉션 관리 및 주입된 데이터를 유저에게 보여주는 로.. 2024. 9. 29.
유니티 시스템 프로그래밍 Pt.1 - 3주차 개요3주차 학습을 진행하였다 학습 내용은 다음과 같다UI 시스템 구현  내용4. 필수 게임 시스템 제작UI 시스템 구현강사의 구현 아이디어는 다음과 같았다BaseUI 클래스를 상속받은 UI를 구현하고 그 안에 BaseUIData를 상속받은 데이터 클래스를 정의하여 사용구현된 객체들을 UI Pool에 저장, UIManager를 사용하는 형태의 아이디어 특히 객체를 설계/사용하면서 신경쓰는 지점 중 하나가 객체는 생성되면서 유효한 상태를 지니고 있어야 한다 인데, 강사가 제시한 솔루션은 OpenUI 메서드 호출을 이용한 설계로 부분을 확실하게 보장하는 것 같아 마음에 들었다 하지만 Stack의 메커니즘을 가지고 구현을 진행한 것 같은데 그럴 거면 아예 현재 활성화된 UI를 관리하는 UI Stack을 사용하여.. 2024. 9. 16.
유니티 시스템 프로그래밍 Pt.1 - 2주차 개요2주차 내용에 대하여 공부하고, 강의 내용 보완 혹은 추가적인 정보 제공을 목적으로 글을 서술할 예정이다 목차는 다음과 같다유저 데이터 및 데이터 관리 시스템데이터 테이블 관리 시스템오디오 시스템UI 시스템  내용필수 게임 시스템 제작유저 데이터 및 데이터 관리 시스템세이브/로드 기능이 있는 대다수의 게임이라면, 어떠한 형태로든 데이터를 저장하여야 한다이 강의의 유저 데이터 클래스 또한 무난한 클래스 구현이 진행되는데, 다만 짚고 넘어가고 싶은 점이 두개 있었다꼭 IUserData를 인터페이스 형태로 구현되어야 하는가? 구현 내용을 보면 추상 클래스로 정의하는 것이 좋을 것 같았다강의라 PlayerPrefs를 사용하여 저장하는 형태를 취했지만, 실무에서는 이런 민감한 데이터를 보안이 취약한 형태로 .. 2024. 9. 16.
유니티 시스템 프로그래밍 Pt.1 - 1주차 개요짧막 소개상용 게임에 필요한 주요 시스템의 구현 및 설계 노하우를 공유하는 강의를 기반으로 진행하는 스터디이다 이 스터디에 참여하는 이유는, 최근에 진행하고있는 프로젝트에 적용할 수 있는 지식을 습득하는 것이며 나아가 아키텍트를 목표로 하는 나로서는 업계 경력자인 지식 공유자의 설계를 보고 인사이트를 얻을 수 있는 기회라 생각했기 때문이다 학습을 진행할 때 사용한 프로그램은 다음과 같다Unity 2022.3.39f1 Apple SiliconJetBrain Rider 2023.1.1.Github Desktop학습 방향생각해둔 학습의 지향점 및 순서는 다음과 같다강의 학습내용 정리실전에서 사용할 땐 어떤식으로 바꾸어야 할까, 고민해보기(개선점 등) 내용1. 오리엔테이션개발 환경 세팅 진행학습을 진행할 프.. 2024. 9. 11.