분류 전체보기61 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. Day 38 - SaveManager.cs 생성(정보 저장) 주제>> 게임 정보(인벤토리, 컨디션)를 Jason으로 저장하고 불러오는 기능을 담당하는 클래스 생성>> 싱글톤 패턴으로 관리하여 확장성 높이기>> 인벤토리 데이터를 관리하는 스크립트에 저장 관련 메서드 추가공부내용1. 저장기능 클래스 생성(SaveManager.cs)-게임 정보를 쉽게 저장하여 씬 전환이나 게임 종료 후 다시 시작해도 게임 정보를 불러올 수 있도록 확장 명사형 한글 주석-저장경로: savePathApplication.persistentDataPath는 각 플랫폼에 맞는 저장 경로를 반환 -저장 데이터: SaveDataJsonUtility.ToJson 메서드를 사용하여 객체를 JSON 문자열로 변환하고, 이를 파일에 저장 -데이터 불러오기: LoadData파일이 존재하면 내용을 읽어 Js.. 2024. 6. 11. 이전 1 2 3 4 5 6 7 ··· 11 다음 728x90 반응형