전체 글 121

25.03.25 TIL

1. 오늘 학습 키워드 팝업 매니저 및 최적화 강의2. 오늘 학습 한 내용을 나만의 언어로 정리하기 간단히 들었던 특강에 대해서 정리를 하고 오늘 제작한 부분을 남기려고한다. 우선 오늘은 2D 최적화에 대해서 알려주셨는데, 최적화란 무엇인가에 대해서부터 말하자면,정의론 허용된 자원의 한계 내에서 주어진 요구 사항을 만족시키며 최선의 결과를 얻는 과정이라고 나와있다.나는 Unity라는 게임 개발에서 최적화는 필요하지 않거나 사용하지 않는 자원을 지워서 최대한의 이득을 얻는 것이라고 생각한다. 그리고 튜터님은 최적화의 핵심은 카메라를 사용하지 않는 부분에서는 카메라를 끄는 것 이라고 하셨다. 크게 코드와 렌더링을 통해 최적화를 할 수 있는데. 렌더링 같은 경우, 게임에 따라 프레임을 제한하는 것을 추천해주셨..

TIL 2025.03.25

25.03.24 TIL

1. 오늘 학습 키워드송금 기능 및 오류 수정2. 오늘 학습 한 내용을 나만의 언어로 정리하기우선 로그인 기능 및 json 저장 및 불러오기를 수정했다우선 json은 Wrapper 클래스를 생성해서 해당 리스트를 불러왔다.이 부분은 웹 서핑 및 AI의 도움으로 쓴 방법인데, 아직 이유는 잘 모르겠다. 이 부분은 내일 디테일을 추가할 때, 제외 해보려고한다. 우선 송금 기능은 이렇게 작성했고,이번에도 오류를 뚫고 나가야 주요 구문이 작동이 되도록 했다. 받는 사람 id는 UIManager에서 가져오고, 주는 사람 id는 인풋필드에서 받아와서람다를 사용해서 그 값을 sender와 receiver의 userid를 받아왔고,userid의 데이터에 접근하여 인풋필드에서 적은 값 만큼 송금이 되도록 생성했다.pub..

TIL 2025.03.24

25.03.21 TIL

1. 오늘 학습 키워드 json, 입출금 로직 생성, 해시 2. 오늘 학습 한 내용을 나만의 언어로 정리하기 우선 어제 데이터를 SO에서 클래스로 바꿔줬다. 그리고 로그인 기능을 넣어줄것이기에, password도 같이 유저 데이터에 넣었다.[System.Serializable]public class UsersData{ public string userName; public int money; public int balance; public string hashedPassword; public string userId; public UsersData() { userId = ""; userName = "DefaultUser"; money = 0; ..

TIL 2025.03.24

25.03.20 TIL

1. 오늘 학습 키워드제네릭 싱글톤, 액션 활용?2. 오늘 학습 한 내용을 나만의 언어로 정리하기 숙련 프로젝트가 끝이 났고, 심화 프로젝트가 시작됐다.이번 프로젝트에서는 내가 과정을 이해하는 바로는 부족했던 부분을 약간 되돌아보고, 스스로 갈고닦는 시간으로 느껴졌다. Unity 배치고사를 세상 망쳤기에, 기초를 되돌아보는 기회를 가질 수 있게 됐다. 우선 ATM을 제작하는 과제를 받았는데, 지난번에 아이템을 사용할 때, 썼던 SO와 제네릭 싱글톤, 그리고 액션 및 델리게이트의 추가적인 사용을 좀 우선적으로 생각했다. 구현이 목적이 아니라 구조를 짜는 것이 목적이였기에, 작업 과정은 좀 더뎠다.  우선 버튼을 많이 사용하는 기능이기에, ButtonManager를 제작해서 버튼을 관리했다. 리스트를 사용하..

TIL 2025.03.20

25.03.13 TIL

1. 오늘 학습 키워드 크래프팅 시스템2. 오늘 학습 한 내용을 나만의 언어로 정리하기 어제는 크래프팅을 만들기 위한 인벤토리 및 아이템을 제작하였다면, 오늘은 그 기반을 토대로 크래프팅 로직을 좀 만들고 싶었다. 다만. 그전에 어제 작업한 Scriptable Object를 활용해서 아이템을 관리하고, 델리게이트를 활용하여 버튼을 할당한 내용을 가시적으로 보고팠기도 했고, 오류 부분이나 수정할 만한 내용을 좀 확인했고, 지난번 강의 때 제작했던 파일에 이번에 작업한 스크립트를 넣어 확인을 해보려고했지만, 이게 계속 selecteditem이 null이 되었다. 아무래도 내가 이번에 작업하면서 누락된 부분이나, 혹은잘못 작성한 부분이 있는지 낮시간동안 계속 디버깅을 했는데, 본 프로젝트 파일에 플레이어 상호..

TIL 2025.03.13

25.03.11 TIL

1. 오늘 학습 키워드 개인 과제 및 직렬화2. 오늘 학습 한 내용을 나만의 언어로 정리하기 우선 개인 과제에서는 무빙 패드? 플레이어가 밟을 시에, 해당 랠리 포인트까지 움직이는 그런 패드를 제작 했고, 버섯을 먹을시에 이동속도 증가는 되었지만, 감소가 되지 않았는데, 코루틴에서 딜레이를 매개 변수로 받아,아래의 코드처럼 작성하였는데, 인 게임에서 시간을 설정을 안해서 그런지, 아이템 효과가 무한으로 지속 되었다. 그래서 WaitForSecondsRealtime()을 활용해서 현실 시간에 딜레이를 걸어주었다.private IEnumerator SpeedBoost(float amount, float duration){ currentSpeed += amount; yield return new W..

TIL 2025.03.11

25.03.10 TIL

1. 오늘 학습 키워드 개인 프로젝트 / 오류 수정 및 점프패널, 이속 아이템, 스태미너 사용2. 오늘 학습 한 내용을 나만의 언어로 정리하기 아이템 슬롯을 제작했는데, 이를 하나의 슬롯을 UI로 관리하도록 만들었다. 토대는 모두 제작을 하였으나, 지속적인 NullExceptionError가 떴다. 처음에 나는 이 문제가 Inventory에 슬롯의 수 만큼 ItemSlot[] 배열을 제작하여, 해당 인덱스값에 맞춰서슬롯이 알아서 할당이 되도록 코드를 작성하였으나, 슬롯에 할당이 되지 않는 것을 확인했다. 그로 인해, Icon 즉 image가 null이 되었고, 이 이미지를 참조를 하려해서, 에러가 떴다. 라고 나는 생각을 하였다. 그래서 이를 고치기 위해 인벤토리의 배열에 슬롯이 계속 넣기위해 계속 시도..

TIL 2025.03.10

25.03.06 TIL

부트캠프 30일차 1. 오늘 학습 키워드 Unity 숙련 강의?2. 오늘 학습 한 내용을 나만의 언어로 정리하기 이번 과제는 3D를 사용해서, 기능을 학습하는 강의가 들어있었다. 그 중에서 일단 배경 및 환경을 에셋을 통하여 넣고, 플레이어 제작 및 스크립트를 작성하는 시간을 가졌다. 그리고 캠프파이어를 통해, 접근시에 IsTriggerEnter를 통해 체력이 감소하고, 피격시에 UI Image를 통해피격 모션을 제작했다. 마지막으로 조명을 통해 낮과 밤, 해와 달을 제작했다.3. 학습하며 겪었던 문제점 & 에러 처음에 카메라가 바닥에 박혀있었다.. 그래서 시점이 낮길래 카메라 시점을 높였고,점프가 안되는 이슈가 있었는데 이는 Condition에 해당 값을 할당을 안해서 Null이 되어서 그랬다.4. 내..

TIL 2025.03.06

25.03.04 TIL

부트캠프 28일차 1. 오늘 학습 키워드새로운 과제 및 강의 시작, Generic2. 오늘 학습 한 내용을 나만의 언어로 정리하기 오늘 특강의 핵심은 자료구조와 제너릭이였는데, 그 중에서도 제너릭이 메인이였다. 미니 프로젝트를 진행하며, 제너릭이라는 문법이 있고, 그걸 설명해주셨던 적이 있었지만 특강을 다 듣고 내가 실용할 만 한 내용은 제너릭 싱글톤 밖에 없었다. 현재 싱글톤을 활용하기 위해 과거에 코드를 긁어오자면class GameManager{ private static GameManager gameManager; public static GameManager Instance() { if(gameManager == null) { gameM..

TIL 2025.03.04

25.02.28 TIL

부트캠프 27일차 1. 오늘 학습 키워드 델리게이트 , 액션 , 인풋 2. 오늘 학습 한 내용을 나만의 언어로 정리하기 오늘 두 번의 특강을 통해 델리게이트, 액션 및 인풋에 대한 강의를 들었다. 생각해보면 이 문법들을 써볼 생각을 딱히 안했던 것 같다. 이로 나는 하드 코딩을 하고 있었다고 생각이 든 강의 였고, 이에 대한 정리는 추후에 내가 정리가 다 되면 그때 업로드를 할 것이고오늘은 간단히 정리만 하고 넘어가려고한다. 우선 델리게이트는 C에서 포인터라고 말씀을 해주셨다 x = 5이고, 예를 들어 x += 10; 과 *x +=10; 차이는 둘다 15를 출력하지만 하나는 x가 5인 상태지만 10이라는 숫자가 더해져 15가 된거라면, 후자는 x의 값 자체를 15로 변경한 것이기에, x+=10;을 한번더..

TIL 2025.02.28