유니티 UI 화면 비율 문제
Unity/Trouble Shooting2024. 1. 31. 00:03유니티 UI 화면 비율 문제

테스트 환경갤럭시 S20+, 갤럭시 플립4이슈 내용16 : 9 비율로 해상도 작업을 해오고 빌드 후, 팀원들에게 APK 배포 후 실행을 했을 때, 진행에 큰 문제는 없지만각자 다른 해상도에서 나오는 화면이 불균형하게 나타났다.재현 스텝APK 빌드 후, 각자 팀원들에게 배포된 APK 실행각자 다른 모바일 비율 환경에서 UI 해상도가 불균형하게 나오는 현상이 발생해결 방법UI Main Scene 부분은 Anchor 포지션을 수치가 아닌 pivot 값 수정으로 해결UI Canvas에서 Canvas Scaler 부분에서 Match 비율 조정을 Width = 0으로 고정문제 해결16:9 ~ 23:9까지 세로 비율 크기 상관없이 고정된 위치에 배치되도록 수정 완료추가적으로 뒤에 전투 부분은 따로 스크립트로 수정이 필요

유니티 Firebase를 활용한 데이터 시스템
Unity/SDK2024. 1. 29. 15:43유니티 Firebase를 활용한 데이터 시스템

기능 소개유저 데이터(Firestore)와 인벤토리 데이터(json)가 별개로 작동하여 시스템이 제대로 구축이 안 되어있음Firestore에 저장되는 데이터는 일일 사용량에 제한이 있어, 추후 출시에 문제가 발생할 수 있음그리고 Editor 내에서는 작동되지만 APK 빌드 후 인벤토리 저장에 문제가 발생⇒ 해당 3가지 트러블을 해결하기 위해 데이터 통합 작업을 진행기능 구현Data Savepublic void SaveToUserProfile(string fileName = "game_user.dat"){ string filePath = $"{Application.persistentDataPath}/{fileName}"; string json = JsonConvert.SerializeObject..

유니티 APK 빌드시 Text 파일 경로 문제
Unity/Trouble Shooting2024. 1. 29. 15:39유니티 APK 빌드시 Text 파일 경로 문제

테스트 환경Unity Editor 2022.3.15이슈 내용유니티 APK 빌드 후, 플레이가 정상적으로 실행이 안 되는 이유를 디버깅으로 찾다가 해당 부분에서 에러가 발생private string _jsonPath = $"{Application.dataPath}/Resources/Texts/Stage/StageData.json";_tableText = File.ReadAllText(_jsonPath); // ($"{{\\"stageDataTable\\":{_tableText}}}");재현 스탭APK 빌드 후, 안드로이드 시뮬레이터를 통해 실행해당 코드 부분에서 파일을 읽어 올 수 없어서 다음 스크립트 진행이 불가해결 방법Application.dataPath는 에디터에서는 파일 경로를 잘 읽어오지만 플랫폼..

유니티 실시간 딜레이 계산
Unity/Study2024. 1. 24. 21:38유니티 실시간 딜레이 계산

구현 소개유니티 에디터 플레이 모드가 아니더라도 저장된 데이터로 실시간 딜레이 구현하기기능 구현DateTimeDateTime timerStart = DateTime.Now;DateTime timerEnd = timerStart.Add(new TimeSpan(0, 10, 0));DateTime.Now를 통해 현재 시간을 확보 TimeSpan으로 10초의 딜레이 생성Delay Coroutinewhile (true){ if (totalSecondsLeft > 1) { if (totalSecondsLeft >= 60) { TimeSpan ts = TimeSpan.FromSeconds(totalSecondsLeft); timeCheckTe..

유니티 FirestoreProperty를 사용한 C# 클래스 매핑
Unity/SDK2024. 1. 21. 14:30유니티 FirestoreProperty를 사용한 C# 클래스 매핑

구현 소개Dictionary를 사용한 데이터 저장은 관리가 불편하다.관리를 쉽게 하기 위해 클래스로 만든 객체 필드,프로퍼티 값들을 Firestore에 저장할 필요가 있다.기능 구현Firestore 전용 데이터 클래스using Firebase.Firestore;[FirestoreData]public class GameUserProfile{ // Info [FirestoreProperty] public string Uid { get; set; } [FirestoreProperty] public string Nickname { get; set; } [FirestoreProperty] public long Gold { get; set; } [FirestoreProperty] publ..

유니티 Firestore를 통한 데이터 저장 & 불러오기
Unity/SDK2024. 1. 18. 22:12유니티 Firestore를 통한 데이터 저장 & 불러오기

기능 구현Firestore 초기화FirebaseApp app = FirebaseApp.DefaultInstance;FirebaseFirestore db = FirebaseFirestore.GetInstance(app);유저 데이터 읽어오기private void ReadUserDataFromFirestore(){ DocumentReference docRef = db.Collection("users").Document("GuestID"); docRef.GetSnapshotAsync().ContinueWithOnMainThread(task => { if (task.IsFaulted || task.IsCanceled) { Debug.Log("F..

유니티 Firebase 구글 로그인 구현
Unity/SDK2024. 1. 15. 15:44유니티 Firebase 구글 로그인 구현

필수 과정Firebase 사이트에서 테스트 프로젝트 생성프로젝트 기능으로 Authentication 등록Unity에서 연동할 SDK와 google-services-json 파일 업로드Android 빌드 맞춤과 Project Settings에서 user key 생성생성한 key에서 SHA 인증서 지문 등록unity 패키지 이름 = Firebase 패키지 이름 맞추기 (com.company.name)Google Web Client ID 준비구글 Signin 패키지 다운 Releases · googlesamples/google-signin-unityGoogle Sign-In API plugin for Unity game engine. Works with Android and iOS. - googlesample..

유니티 FirebaseDatabase 인스턴스 초기화 오류
Unity/Trouble Shooting2024. 1. 13. 22:55유니티 FirebaseDatabase 인스턴스 초기화 오류

문제의 코드private void Awake(){ DatabaseReference databaseRef = FirebaseDatabase.DefaultInstance.RootReference;}DatabaseException: Failed to get FirebaseDatabase instance: Specify DatabaseURL within FirebaseApp or from your GetInstance() call.Firebase 내에 제공하는 기능인 Realtime Database를 이용하기 위해 코드를 실행하던중, 오류가 발생하였다.인스턴스 과정중에 DatabaseURL이 제대로 적용이 안되어 해당 기능을 불러오지 못하는 문제가 발생한듯 하다.문제 해결Realtime Database를 ..

3D FPS [스파르타슈팅클럽]
게임 프로젝트2024. 1. 9. 20:153D FPS [스파르타슈팅클럽]

스파르타슈팅클럽  개발 기간24.01.02 ~ 24.01.09개발 환경Unity 2022.3.2Visual Studio 2022Git (GitHub Desktop)1920 x 1080 FHD담당 기능UIManger & UI Binding System 구현설정 [FOV, 마우스 감도, 볼륨 조절]플레이와 상호작용하는 UI Scene 구성UI Dynamic Crosshair, 스탠딩 모션, 장탄 수 표시AudioManager & 총기 사운드 구현관련 링크Github 링크 GitHub - psw1305/TEAM55555-SpartaShootingClubContribute to psw1305/TEAM55555-SpartaShootingClub development by creating an account on ..

유니티 AudioSource 최대 중첩 오류
Unity/Trouble Shooting2024. 1. 8. 19:17유니티 AudioSource 최대 중첩 오류

문제 코드public void PlayOneShot(AudioClip clip){ if (clip == null) return; AudioSource newAudioSource = ResourceManager.Instance.InstantiatePrefab("AudioSource").GetComponent(); newAudioSource.volume = Source.volume * SoundModifier; newAudioSource.clip = clip; newAudioSource.Play(); StartCoroutine(nameof(DestroySourceWhenFinished), newAudioSource);}해당 코드를 이용해 FPS에서 총이 격발 될..

image