-
내일배움캠프 52일차 TIL - 최종 프로젝트 기초 개발 1TIL/Unity 2024. 7. 1. 21:05
[한 줄 요약]
최종 프로젝트 기초 기획을 마무리하고 기초 개발을 시작하여 고양이 오브젝트 작업을 진행했다.
[학습 내용]
최종 프로젝트 기초 개발
고양이 데이터 작업
고양이 데이터 클래스
우선 CatData 클래스를 작성하였다. 헤더를 사용하여 멤버 변수들의 역할을 명시해주었다.
using System; using UnityEngine; [Serializable] public class CatData { [Header("info")] public string Name; public int Rank; [Header("growth")] public int Level; public int Exp; [Header("stat")] public float Hp; public float Attack; public float AttackDelay; public float CritProb; public float CritCoeff; }
고양이 초기 데이터
ScriptableObject를 상속하는 CatInitData 클래스를 작성하여 고양이의 초기 데이터를 담고자 하였다.
using UnityEngine; [CreateAssetMenu(fileName = "CatInitData", menuName = "SO/CatInitData")] public class CatInitData : ScriptableObject { [Header("info")] public string Name; public int Rank; [Header("stat")] public float InitHp; public float InitAttack; public float InitAttackDelay; public float InitCritProb; public float InitCritCoeff; }
이를 통해 SO 파일을 하나 만들었다.
그리고 CatDataHandler 클래스를 작성하여, 만든 SO 파일로 CatData를 초기화해주었다.
고양이 이동 구현
고양이 컨트롤러 구현
고양이 오브젝트에 PlayerInput 컴포넌트를 넣고 InputAction을 할당해주었다. Behavior는 Send Messages 방식을 사용하였다.
이후 Controller 클래스를 상속한 CatController 클래스를 작성하고, OnMove 메서드를 구현해주었다.
실제 움직임 적용
CatMove 클래스를 작성하여, 키 입력 시 방향을 갱신해줄 Move 메서드를 작성해주었다. 그리고 갱신된 방향대로 움직여줄 ApplyMovement 메서드를 작성하였다.
[결과물]
[회고]
기획이 어느 정도 끝나고 프로젝트가 시작되었다. 일정 안에 끝낼 수 있도록 부지런히 진도를 나가야 한다.
내일 진행할 사항은 고양이 관련 애니메이션과, 공격 기능을 구현한 후 상황을 지켜봐야겠다.
'TIL > Unity' 카테고리의 다른 글
내일배움캠프 54일차 TIL - 최종 프로젝트 기초 개발 3 (0) 2024.07.03 내일배움캠프 53일차 TIL - 최종 프로젝트 기초 개발 2 (0) 2024.07.02 내일배움캠프 51일차 TIL - 최종 프로젝트 기획 2 (0) 2024.06.28 내일배움캠프 50일차 TIL - 최종 프로젝트 기획 1 (0) 2024.06.27 내일배움캠프 49일차 TIL - 유니티 심화 주차 팀 프로젝트 6 (0) 2024.06.26