Unity 게임 개발 입문 : 미니 던전 만들기
1. character에 collision을 입혔으나, 물체와 충돌 시 회전하는 현상 발생
= Freeze rotation 의 z축을 체크하면 된다.
2. text mesh pro 에 font 추가하기
Atlas Resolution : 4096
CharacterSet : CustomRange
Character Sequence : 32-126,44032-55203,12593-12643,8200-9900
3. MainCamera 가 Player 따라가게 만들기
CameraManager.cs 생성, Player가 가진 x,y 값을 이용해 LateUpdate 에 transform.position으로 코드 작성.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class CameraManager : MonoBehaviour
{
public Transform target;
public float speed;
void LateUpdate()
{
transform.position = Vector3.Lerp(transform.position, target.position, Time.deltaTime * speed);
transform.position = new Vector3(transform.position.x, transform.position.y, -10f);
}
}
< 필수 구현 목록 >
1. 캐릭터 만들기 (완)
2. 캐릭터 WASD로 이동시키기 (완)
3. 방 만들기 (완)
4. 카메라 따라가기 (완)
<선택 구현 목록>
1. 애니메이션 추가 (완)
2. 현재 시간 UI로 띄우기 (진행 중)
3. NPC 추가
Object의 생명주기(Life Cycle)
1. Awake : 게임 오브젝트 생성 시 최초로 실행되는 함수
2. OnEnable : 게임 오브젝트를 활성화 시킨다. ex)로그인
3. Start : 업데이트 시작 전 한 번만 실행된다.
4. Fixed Update : 물리 연산 업데이트, 고정된 실행 주기를 가지므로 CPU를 많이 사용한다.
게임 도중 계속 업데이트 된다. (1초에 50회 정도)
5. Update : 게임 로직 업데이트, 컴퓨터 환경에 따라 실행주기가 달라진다.
6. Late Update : 모든 업데이트가 끝난 후에 실행된다.
ex. 카메라, 로직의 후처리, 경험치 획득 등
7. OnDisable : 게임 오브젝트를 비활성화 시킨다.
8. OnDestroy : 게임 오브젝트 삭제 시점의 명령을 담당한다.
오늘의 회고
애니메이션 만들 때 파일을 여러번 삭제하고 수정했다.
UI로 시계를 만들다가, text 부분 cs에 오류를 발견하는 순간.. 빨간 느낌표와 함께 유니티가 꺼졌다.
이렇게 이번 개인 과제에서도 데이터가 날아가는 경험을 하는구나...!!
이전에 카드게임 개인과제 때는 그냥 text 를 사용했는데,
text mesh pro를 사용하려고 하니 폰트 하나 넣는 것도 복잡하다..
추가구현 개념으로, 캐릭터 애니메이션을 자연스럽게 연출하고 싶었다.
좌우 이동 시 애니메이션은 있는데, 상하 이동이 어색해서 바꾸려고 했다.
하지만 WASD input을 이미 사용하고 있어서 그런지, 제대로 작동하지 않았고
정확히 어디를 고쳐야할지 몰라서 일단 보류했다.
내일 잘 완성해서 제출합시다..!
'게임 개발 일지 > 내일배움캠프 TIL' 카테고리의 다른 글
게임 개발에 자주 쓰이는 7가지 패턴 (0) | 2023.11.30 |
---|---|
Math.sqrt / 벡터 이해하기 (1) | 2023.11.29 |
객체지향 프로그래밍의 특징 (0) | 2023.11.27 |
Material / Collider / WorldPosition (1) | 2023.11.24 |
TextRPG - 밸런스 패치 / 팀 프로젝트 발표회 피드백 (0) | 2023.11.23 |
댓글