[개발일지] 9. 풀 매니저 & 점토 데이터 저장&불러오기
·
유니티 프로젝트/점토게임
0. 들어가기 전에이번엔 게임 오브젝트로 생성된 점토를 관리하고, 이를 저장하는 기능을 만들었다. 게임을 종료하고 다시 돌아왔을 때 이전 상태 그대로 반영되어야 하기 때문에 저장&불러오기 기능이 필요하다.    1. 게임 오브젝트풀 매니저 오브젝트와 데이터 매니저 오브젝트를 새로 만들었다. 풀 매니저 매니저는 PoolManager 스크립트를, 데이터 매니저는 DataManager 스크립트를 컴포넌트로 갖는다.    2. 스크립트이번엔 PoolManager, DataManager, Datas, ClayDatas 스크립트를 새로 만들었다. 그리고 기존에 만들었던 Clay 스크립트에 기능을 추가했다. 2.1 PoolManager 스크립트using System;using System.Collections;usi..
[개발일지] 8. 점토 드래그 기능
·
유니티 프로젝트/점토게임
0. 들어가기 전에왼쪽 마우스로 점토를 꾹 누르면 점토 드래그 기능이 수행되도록 만들었다. 나중에 다 자란 점토를 가져다 팔기 위해서 꼭 필요한 기능이다. 주머니에 다 자란 점토를 드래그&드롭 하면 팔리도록 할 것이다.    1. 게임 오브젝트점토를 바닥에 내려놓는 장소가 불가능 구역이라면 드래그 하기 전 위치로 돌아갈 수 있도록 하려고 했다. 이를 위해서는 불가능 구역을 지정해야 하는데 나는 빈 게임 오브젝트를 두 개 만들어서 x, y 좌표를 가지고 불가능 구역을 판단했다. 즉, 왼쪽 상단의 노란색 게임 오브젝트의 x 축보다 작거나 y 축보다 크거나, 오른쪽 상단의 노란색 게임 오브젝트의 x 축보다 크거나 y 축보다 작거나를 기준으로 불가능 구역을 판단했다.    2. 스크립트이번에 새로 만든 스크립트..
[개발일지] 7. 점토 클릭 시 애정 얻기 & 점토 스프라이트 변경
·
유니티 프로젝트/점토게임
0. 들어가기 전에점토를 클릭할 때 레벨에 맞는 애정을 획득할 수 있도록 했다. 점토를 클릭하다 보면 레벨업을 하는데 최고 레벨에 도달하면 점토의 모습이 동물로 변하도록 했다. 레벨업을 할 때마다 점토의 크기가 커지도록 하기 위해서 각 레벨에 맞게 애니메이터를 할당해주었다. 점토가 다 자라서 동물이 되면 스프라이트 이미지 상 움직이는 방향에 맞게 이미지를 좌우반전시켰다.    1. 스크립트이번에 만든 스크립트는 ClayController 이고, ClayMove 스크립트에 변동사항이 생겼다. 1.1 ClayController 스크립트using System.Collections;using System.Collections.Generic;using UnityEngine;public class ClayContr..
[개발일지] 6. 재화, 점토 판매 UI
·
유니티 프로젝트/점토게임
0. 들어가기 전에재화, 점토 판매 UI 를 추가했다. 점토 판매 기능은 아직 UI 만 만들고 기능은 추가하지 않았다. 재화 UI 는 돈이나 애정을 얻었을 때, 그냥 text 로 바로 반영되는 것이 아니라 숫자가 서서히 올라가는 것처럼 보이도록 하는 효과를 주었다.    1. UI 제작일단 재화와 점토 판매 UI 를 제작했다. 1.1 점토 판매 UI다 자란 점토를 점토 판매 UI 로 드래그 한 후 내려 놓으면 팔리도록 하는 기능을 만들려고 한다. 이를 위해서 점토 판매 UI 를 만들어주었다. 주머니가 버튼으로 되어있는데, 나중에 Event Trigger 를 이용해서 마우스가 진입했는지 아닌지의 여부로 판매 여부를 판단할 것이다. 1.2 재화 UI수치를 확인할 수 있도록 하는 UI 를 제작했다. 수치에 변..
[개발일지] 5. 점토 구매, 집 업그레이드, 야생 UI 버튼 & 애니메이션
·
유니티 프로젝트/점토게임
0. 들어가기 전에이번에는 점토 구매, 집 업그레이드, 야생 UI 버튼을 만들고 애니메이션을 적용했다. 버튼을 눌렀을 때 구매창, 업그레이드 창이 뜨도록 하는 기능과 야생 씬으로 전환되는 기능은 다음에 구현할 것이다. 이번엔 그냥 버튼만 만들었다.    1. UI 버튼 제작본격적으로 캔버스에 이미지와 버튼을 추가한다. 1.1 UI 버튼 생성 왼쪽 하단을 보면 버튼 3개가 있는 모습을 볼 수 있다. 먼저 캔버스에 판넬 이미지를 하나 게임 오브젝트로 만들어 준 후, 그 판넬의 자식 오브젝트로 3개의 버튼을 만들어주었다. 세 개의 버튼은 왼쪽부터 차례로 점토 구매 버튼, 집 업그레이드 버튼, 야생 버튼이다. 1.2 UI 버튼 스프라이트 Swap Button 의 Transition 을 Sprite Swap 으로..
[개발 일지] 3. 점토 애니메이션 기능
·
유니티 프로젝트/점토게임
0. 들어가기 전에점토가 게임 화면을 돌아다니는 모습에 생동감을 주기 위해 애니메이션 기능을 추가했다. 젤리 키우기 에셋 목록에서 직접 만든 애니메이션이 있길래 그걸 토대로 각 레벨마다 애니메이션과 애니메이터를 만들었다. 일단 점토가 돌아다니는 기능만 구현되어 있기에 만들어놓은 애니메이션 중 Walk 애니메이션만 사용했다. Touch 애니메이션은 마우스로 점토를 클릭했을 때 실행되도록 할 것이다.더보기구현한 기능- 점토 애니메이션 기능    1. 점토 애니메이션 기능우선 점토에 애니메이션을 적용하기 위해서 Walk, Idle, Touch 애니메이션을 만들어주었다. 1.1 애니메이션 & 애니메이터 제작점토의 레벨을 1~5 레벨로 설정했다. 레벨이 올라갈수록 점토의 크기가 커지는데 이를 애니메이션에도 적용을..
[개발일지] 2. 점토가 돌아다니도록 하기
·
유니티 프로젝트/점토게임
0. 들어가기 전에점토가 게임 화면을 알아서 돌아다닐 수 있도록 하는 기능을 구현했다.  이번에는 미루고 미루던 코루틴을 드디어 공부하고 실제로 코드에 적용해보는 시간을 가졌다. 직접 사용해보기 전에는 막연한 두려움이 있어서 공부하기가 싫었는데 막상 해보니까 엄청 어렵지는 않았다. 확실히 코루틴을 이용하니까 내가 원했던 기능을 쉽게 구현할 수 있었다. 내가 원했던 기능은 점토가 벽에 부딪혔을 때 방향을 바꿔서 돌아다니는 로직을 잠시 멈추고 게임 화면의 중앙으로 돌아오도록 하는 것이었다. 코루틴을 배우기 전에는 이걸 어떻게 구현해야할지 몰라서 그냥 넘어갔었다. 이번에 구현하게 되어서 정말 기분이 좋다. 사실 구현이랄 것도 크게 없긴 하지만 그래도 좋다 ^~^더보기구현한 기능 목록- 점토 돌아다니기    1..
[개발일지] 1. 게임 기초 장면 만들기
·
유니티 프로젝트/점토게임
0. 프로젝트 개요작년 겨울방학에 만들었던 프로젝트를 복습할 겸 새로 만들어보고자 한다. 이 프로젝트는 골드메탈 유튜브의 젤리 키우기 게임을 토대로 했다. 하지만 영상에서는 볼트를 사용하기에 나는 이를 사용하지 않고 직접 C# 스크립트를 통해 만들었었다. 즉, 게임 돌아가는 것만 보고 로직들은 직접 생각하면서 스스로 작성했다. 그리고 너무 똑같이 만들면 재미 없기 때문에 점토 키우기라고 아예 이름도 바꾸고, 이에 맞는 에셋도 직접 새로 찍어서 만들었다. 점토 키우기 게임이기 때문에 기존 골드메탈님께서 제공해주시는 젤리 스프라이트 대신내가 직접 찍은 점토 스프라이트로 대체했다. 그리고 영상과는 다르게 추가적인 콘텐츠도 만들었다.더보기1. 집 안 장식들과 점토가 상호작용하는 기능2. 도감 기능3. 모험 기능..