본문 바로가기
728x90
반응형

🌐 유니티 (Unity)68

Day 44 - 구글 스프레드시트와 유니티 연동 및 다국어 데이터 관리 (2부) 주제>>  CSV 데이터 처리 >>  딕셔너리 데이터 불러오기 >>  UI 연동 공부내용이전 게시글(Day 43)에서는 LocalizingManager 클래스와 언어 설정(Enum)을 설명했다.이번 게시글에서는 CSV 데이터를 구글 스프레드시트에서 가져와 처리하는 방식과 UI에 적용하는 과정을 다룬다. 1. CSV 데이터 처리구글 스프레드시트의 데이터를 UnityWebRequest로 가져오면, CSV 형식의 텍스트가 반환된다.이 텍스트를 줄 단위로 분리하고, 각 열을 키(Key)와 값(Value)로 매칭해 딕셔너리(Dictionary)에 저장한다.이를 위해 정규 표현식을 활용한다.private IEnumerator LoadLocalizedTextCoroutine(string url, ELanguage e.. 2024. 12. 7.
Day 43 - 구글 스프레드시트와 유니티 연동 및 다국어 데이터 관리 (1부) 주제>>  구글 스프레드시트 준비 >>  LocalizingManager 클래스 소개 >>  LocalizingManager 클래스 구현 (1/2) >>  언어 설정 Enum >>  CSV 데이터 처리 공부내용유니티 프로젝트에서 다양한 언어를 지원하려면 다국어 데이터를 효율적으로 관리하는 것이 중요하다.이를 위해 구글 스프레드시트를 활용하면, 번역된 텍스트 데이터를 손쉽게 수정하고 관리할 수 있다.이번 게시글에서는 유니티와 구글 스프레드시트를 연동하여 다국어 데이터를 가져오는 방법을 알아본다. 1. 구글 스프레드시트 준비1-1. 스프레드시트 생성아래와 같은 형식으로 스프레드시트를 작성한다.첫 번째 열은 Key, 나머지 열은 언어별 번역 데이터를 입력한다.KeyEnglishKoreanJapaneseHell.. 2024. 12. 6.
Day 42 - Object Pooling을 활용한 특정 위치 아이템 드랍 주제>>  Object Pooling 개념 이해 >>  ObjectPool 클래스 >>  ItemManager 클래스 >>  아이템 드랍 예시 >>  장점공부내용게임 개발에서 객체를 매번 생성하고 삭제하는 대신, 미리 생성한 객체들을 재사용하는 Object Pooling 기법을 사용하면 성능을 크게 향상시킬 수 있다.이 기법은 특히 아이템이나 파티클처럼 자주 생성되고 삭제되는 객체들에 유용하다. 이 예제에서는 아이템 풀링 시스템을 구축하여, 게임 내에서 아이템이 필요할 때마다 풀에서 가져와 사용하고, 사용이 끝나면 다시 풀로 반환하는 방식을 설명한다. 1. Object Pooling 개념 이해 게임에서 객체를 매번 생성하고 삭제하는 것은 성능에 부담을 줄 수 있다. Object Pooling은 미리 일정.. 2024. 12. 6.
Day 41 - WebGL로 웹 새로고침 시 게임 상태 저장하기 주제>>  WebGL 게임 상태 저장 메서드 작성 >>  Unity WebGL과 JavaScript의 상호작용 코드 추가 >>  게임 저장 클래스(GameState)와 데이터 저장 구현 공부내용1. WebGL 게임 상태 저장 메서드 작성Unity에서 WebGL 빌드를 사용할 경우, 웹 브라우저 새로고침이나 페이지 닫기 시 데이터가 손실되지 않도록 게임 상태를 저장해야 한다.이를 위해 Unity의 SendMessage 메서드를 활용하여 JavaScript와 통신할 수 있다.아래는 Unity에서 게임 상태를 저장하는 메서드의 예제이다.GameManager.cs// Web에서 호출public void OnWebGLQuit(){ SaveGameState();}public void SaveGameState(.. 2024. 12. 5.
Day 40 - 상태머신(3D 방치형 게임 만들기 中) 주제>> 상태 인터페이스 (IState)>> 상태머신 추상 클래스 (StateMachine)>> 플레이어 상태머신 클래스 (PlayerStateMachine) >> 이동 상태 클래스 (PlayerMovingState) >> 공격 상태 클래스 (PlayerAttackingState) >> 추적 상태 클래스 (PlayerChasingState) 공부내용1. 상태 인터페이스(IState)상태 인터페이스는 상태들이 구현해야 하는 메서드들을 간략하게 정의한다.(공통 메서드 정의)Enter는 상태에 진입할 때, Exit는 상태에서 벗어날 때 호출된다.// 상태 인터페이스public interface IState{ void Enter(); // 상태 진입 void Exit(); // 상태 종료}2. 상태.. 2024. 6. 18.
Day 39 - SoundManager(오브젝트 풀에서 사운드 소스를 가져와 재생) 주제 : 사운드 관리 매니저 생성 및 활용>> 오브젝트 풀[ObjectPool](오브젝트를 미리 생성하여 큐에 넣어 놓고 필요할 때마다 가져다 사용)>> 게임매니저[GameManager](오브젝트 풀 초기화 및 관리)>> 사운드매니저[SoundManager](배경음악 및 효과음 관리) >> 사운드소스[SoundSource](효과음을 재생하는 오디오 소스 관리) >> 특정 상황 시 효과음 재생공부내용 1. 오브젝트 풀: Object Pooling은 몬스터나 총알, 효과음 등 게임화면에서 나타났다가 사라졌다를 반복하는 요소들을비활성화상태(안 보이는 상태)로 미리 생성해 놓고, 필요할 때마다 활성화시키는 기법이다.이 기법을 사용하면, 생성과 삭제를 반복하지 않기 때문에 메모리를 아낄 수 있다. [System... 2024. 6. 12.
728x90
반응형

loading