개발일지/스파르타 코딩클럽 유니티 강의
-
[TIL] 15주차 1일 오류 개선 사항개발일지/스파르타 코딩클럽 유니티 강의 2024. 7. 22. 21:16
트러블슈팅달리다가 메인메뉴를 켰다가 끄면 첫 번째 인풋이 먹히는 문제 원래는 많은 부분에서 UI를 키면 IdleState로 돌려주는 등의 강제로 State변환을 했었는데그런 방식이 버그를 많이 발생 시키는 거 같아서public void ToggleUI(ref T ui, float uiOnTimeScale = 1f, float uiOffTimeScale = 1f, bool isESC = false, bool isCheckpoint = false, int mainMenuIndex = 0) where T : UIBase{ if (ui == null) { //onUI = true; SetOnUI(true); player.Input.PlayerActi..
-
14일차 카드 배치하기 ( for 반복문 )개발일지/스파르타 코딩클럽 유니티 강의 2024. 4. 8. 15:42
오늘은 반복문 for문을 배웠다.이미 여러번 써봤지만 배울때마다 볼때마다 어려운 것 같다.. 오늘 배운 내용카드 배치 전략 세우기자동으로 카드 생성하기for문 사용법카드 위치 잡아주기르탄이 이미지 집어넣기랜덤으로 섞기리스트를 랜덤으로 섞기르탄이 붙여주기기본 애니메이션 만들기뒤집기 애니메이션 만들기애니메이션 조건 만들기 새롭게 알게 된 내용 반복으로 생성한 오브젝트 폴더 안에 넣기public GameObject card;void Start(){ for (int i = 0; i 새롭게 생성된 카드를 newCard로 지칭하고newCard의 부모를 cards 폴더를 Find 해서 바꿔준다 카드 위치 잡아주기void Start(){ for (int i = 0; i 오랫동안 수학과 친하게 지내지 않던 내..
-
13일차 르탄이 카드 뒤집기 게임개발일지/스파르타 코딩클럽 유니티 강의 2024. 4. 5. 16:05
오늘부로 4일차 시작 오늘 배운 내용 기본 세팅하기 타이머 만들어두기 르탄이 이미지 받고 적용하기 카드 한 장만 만들어두기 시간 가게 하기 새롭게 알게 된 내용 오늘 발생한 문제 중요하게 생각하는 부분 이번 시간에는 거의 매 주 하던 기본 세팅만 했기 때문에 새롭게 알게 되거나 중요한 부분은 많지만 다 이전 개발일지에도 작성했던 부분들이었다. 시간 흐르게 하기( 텍스트로 표시까지 ) using UnityEngine.UI; public Text timeTxt; float time; void Update() { time += Time.deltaTime; timeTxt.text = time.ToString("N2"); } 먼저 UnityEngine.UI를 가져온 후 timeTxt 오브젝트도 가져온다 time을..
-
12일차 레벨 구성하기개발일지/스파르타 코딩클럽 유니티 강의 2024. 4. 3. 15:27
오늘 배운 내용 레벨 UI 만들기 5마리 당 레벨 1씩 올리기 레벨업 표기해주기 더 많은 고양이 출현시키기 fatCat 출현시키기 게임 즐겨보고 버그잡기 해적 고양이 만들기 새롭게 알게 된 내용 5마리 당 레벨 1씩 올리기 int level = 0; int cat = 0; public void addCat() { cat += 1; level = cat / 5; } 기본적인 수학을 이용해서 구현했다 그냥 addCat만 넣으면 점수가 계속 올라가니까 조정해주기 bool isFull = false; if (isFull == false) { gameManager.I.addCat(); gameObject.transform.Find("hungry").gameObject.SetActive(false); gameObj..
-
11일차 고양이 나타내기개발일지/스파르타 코딩클럽 유니티 강의 2024. 4. 2. 15:59
오늘 배운 내용 고양이 만들기 고양이에 애니메이션 붙이기 뚱뚱한 고양이 만들기 프리팹화 하기 고양이 내려오게 하기 고양이와 밥 충돌하게 하기 충돌하면 에너지 채워주기 에너지가 차면 퇴장하게 하기 특정 y좌표 밑으로 내려가면 게임 종료 새로 알게 된 내용 HP바 를 만들때 다른 색의 바 두개를 겹쳐서 만들기 캔버스로 back과 front 바 두개를 만들어서 구현했다 이는 예상했던 방법이지만 실제로 해본 것은 처음이다 Canvas에서 RenderMode를 World Space로 변경 해주기 원래 기본값은 ScreenSpace인데 World Space로 변경해주면 쉽게 말하면 캔버스 전용 화면에서 게임 화면으로 온거라고 보면 된다 rigidbody의 Body Type을 Kinematic으로 할 때는 isTri..
-
10일차 고양이 밥주기 게임개발일지/스파르타 코딩클럽 유니티 강의 2024. 4. 1. 16:17
드디어 3주차를 시작했다. 4월 15일 본 캠프 시작 전까지 끝내려면 조금 더 속도를 내야할 것 같다 오늘 배운 내용 기본 세팅하기 & 배경 만들기 이미지 에셋에 넣기 오브젝트 배치하기 시작씬 구성하기 씬 넘어가기 밥 만들어두기 밥 복사해서 쏘기 밥 없어지게 하기 강아지 마우스 위치로 움직이게 하기 새롭게 알게 된 내용 오늘 발생한 문제 강아지가 계속 움직인다 void Update() { Vector3 mousePos = Camera.main.ScreenToWorldPoint(Input.mousePosition); float x = mousePos.x; if (x > 8.5f) { x = 8.5f; } if (x < -8.5f) { x = -8.5f; } transform.position = new Ve..
-
9일차 풍선 애니메이션 전환하기 ( Invoke , Has Exit Time )개발일지/스파르타 코딩클럽 유니티 강의 2024. 3. 29. 15:44
오늘 배운 내용풍선이 터지면서 끝나게 하기풍선 터지는 애니메이션 만들기애니메이션 전환하기끝나는 시간 미루기숙제 - 떨어지는 네모 없애기새로 배운 내용 Invoke로 끝나는 시간 미루기 네모가 풍선에 닿는 동시에 게임이 끝나고 timeScale이 0이 되어버려서애니메이션이 나올 틈이 없었다. 그래서gameOver 함수에Invoke("timeStop", 0.5f);void timeStop(){ Time.timeScale = 0.0f;}인보크 함수를 추가해주고timeStop 함수를 따로 만들어서풍선에 네모가 닿고 0.5초 후에 게임이 끝나도록 만들었다. 오늘 발생한 문제 중요하게 생각하는 부분 has exit time 체크 해제하기애니메이션 전환할 때 Has Exit Time을 체크해제 하지 않으면 전환..
-
8일차 최고점수 보여주기개발일지/스파르타 코딩클럽 유니티 강의 2024. 3. 28. 16:39
오늘은 새로 알게된 것들이 많아서 아주 유용한 시간이었다고 생각한다. 오늘 배운 내용 데이터를 보관하는 방법 데이터 저장하기 데이터 불러오기 데이터를 저장했었는지 확인하기 데이터를 모두 지우기 최고점수 보여주는 로직 생각하기 로직 구현하기 최고점수 띄워주기 새로 알게 된 내용 데이터를 보관하는 방법 PlayerPrefs 함수를 사용하면 앱이 꺼져도 데이터가 저장이 된다. 데이터 저장하기 PlayerPrefs.SetFloat("bestScore", 어떤숫자값); PlayerPrefs.SetString("bestScore", 어떤문자열); 예를 들어서 PlayerPrefs.SetInt("age", 26); 이라고 하면 나이라는 키에 26이라는 값을 저장하는 것이다. 데이터 불러오기 어떤숫자값 = Player..