유니티 빗물 받는 르탄이 만들기 #2 캐릭터 움직이기
작성자 정보
- 마스터 작성
- 작성일
컨텐츠 정보
- 314 조회
-
목록
본문
빗물 받는 르탄이 만들기 과정
목차
1.유니티 씬 설정하기
2.캐릭터 움직이기
3.비 내리기 (오브젝트 관리)
4.충돌 구현
5.UI 구성
6.게임오버 구현
1.Hieracrchy 패널에서 바닥 생성
1-1 하이라키 패널에서 마우스 오른쪽 클릭 > 2D object > Sprites > Square 선택
1-2 생성 후 오브젝트의 이름을 ground로 변경
1-3 오른쪽 Inspector 탭의 Transform의 오른쪽 ...을 눌러 Reset 해주기
1-4 Position X : 0 Y : -4.3 Z : 0
ㄴ Position - 오브젝트의 위치를 설정해주는 기능
1-5 Scale X : 6 Y : 1.5 Z : 1
ㄴ Scale - 오브젝트의 비율을 설정하는 기능
1-6 Sprite Renderer의 Color를 RGB 50, 50, 50, 255 로 설정합니다. (검정 계열)
ㄴ 색상의 경우 원하는 다른 색으로 설정해도 무관함
2.Hieracrchy 패널에서 플레이어 생성
2-1 하이라키 패널에서 마우스 오른쪽 클릭 > 2D object > Sprites > Square 선택
2-2 생성 후 오브젝트의 이름을 rtan로 변경
2-3 오른쪽 Inspector 탭의 Transform의 오른쪽 ...을 눌러 Reset 해주기
2-4 Position X : 0 Y : -2.9 Z : 0
2-5 Scale X : 1 Y : 1 Z : 1
2-6 Sprite Renderer의 Sprite에 르탄이1 이미지를 넣기
ㄴ 르탄이의 이미지는 첨부파일을 참고
3.Project패널에서 첨부파일 이미지 추가 하기
3-1 Assets폴더에 img폴더 만들기
3-2 첨부파일의 압축을 풀어 나온 이미지들을 img폴더에 넣기
4.Project패널에서 르탄이 애니메이션 생성하기
4-1 Assets폴더에 animation 폴더 생성
4-2 폴더 내부에서 오른쪽클릭 > Create > Animation 선택
4-3 애니메이션 생성 후 이름을 rtan_run으로 변경
4-4 rtan_run 애니메이션 선택 후 inspector창에서 Loop Time을 선택
4-5 Hierarchy탭에 있는 rtan 캐릭터에 rtan_run 애니메이션 드래그 드랍하기
ㄴ Inspector 창에 Animator 메뉴가 추가로 생김
4-6 rtan_run 애니메이션을 더블 클릭 하여 Animation 탭을 열기
4-7 Animation에 rtan 캐릭터 클릭후 르탄이1,2 파일을 적당한 시간간격을 두고 배치하기
5.Project패널에서 rtan.cs 스크립트 생성하기
5-1 Assets폴더에 script 폴더 생성
5-2 폴더 내부에서 오른쪽클릭 > Create > C# Script선택
5-3 캐릭터를 이동하는데 필요한 사전지식
transform.position (오브젝트의 위치를 변경하는 역할)
transform.localScale (오브젝트의 비율을 변경하는 역할)
new Vector3(-1, 1, 1); (X,Y,Z의 좌표를 가지고 있는 역할)
Input.GetMouseButtonDown(0) (마우스 클릭을 감지하는 역할) 0 = 왼쪽클릭
6.rtan.cs
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class rtanMove : MonoBehaviour
{
//르탄이 속도
public float direction = 0.05f;
//화면 전환 구분 bool
public bool is_left = true;
// Start is called before the first frame update
void Start()
{
}
// Update is called once per frame
void Update()
{
if (Input.GetMouseButtonDown(0)){
if (is_left){
is_left = false;
direction = -0.03f;
transform.localScale = new Vector3(-1, 1, 1);
}
else{
is_left = true;
direction = 0.03f;
transform.localScale = new Vector3(1, 1, 1);
}
}
if (transform.position.x > 2.32f){
is_left = false;
direction = -0.03f;
transform.localScale = new Vector3(-1, 1, 1);
}
if (transform.position.x < -2.29f){
is_left = true;
direction = 0.03f;
transform.localScale = new Vector3(1, 1, 1);
}
transform.position += new Vector3(direction, 0, 0);
}
}
6-1 풀이
//르탄이의 이동속도 public을 선언하여 유니티에서도 제어하게끔 설정
public float direction = 0.05f;
//르탄이의 진행방향 구분하는 bool
public bool is_left = true
//마우스 클릭시에 따라 화면과 르탄이의 진행방향을 바꿔주는 코드
if (Input.GetMouseButtonDown(0)){
if (is_left){
is_left = false;
direction = -0.03f;
transform.localScale = new Vector3(-1, 1, 1);
}
else{
is_left = true;
direction = 0.03f;
transform.localScale = new Vector3(1, 1, 1);
}
}
//르탄이가 화면에 닫으면 방향 바꾸게 하는 코드
if (transform.position.x > 2.32f){
is_left = false;
direction = -0.03f;
transform.localScale = new Vector3(-1, 1, 1);
}
if (transform.position.x < -2.29f){
is_left = true;
direction = 0.03f;
transform.localScale = new Vector3(1, 1, 1);
}
// 르탄이가 매초 마다 자동으로 이동하게 설정 direction이라는 변수를 통해 이동값을 제어함
transform.position += new Vector3(direction, 0, 0);
7.rtan.cs를 르탄이에게 추가하기
7-1 생성한 rtan.cs를 Hierarchy탭에 있는 rtan이에게 넣기
7-2 유니티 상단에 있는 Play버튼을 눌러서 르탄이가 잘 움직이는 지 확인
관련자료
-
첨부등록일 2023.12.04 16:11
-
이전
-
다음