본문 바로가기
Project/[Unity] 지진 시뮬레이션

[Unity] 지진 시뮬레이션 - 5 (추가 플레이어 이동, 디자인)

by ruki 2024. 3. 22.

1. 디자인

친숙하고 단순한 형태의 디자인을 생각하였다.

 

원기둥과 원을 잘 배치하여 몸을 만들었다.

 

그리고 얼굴을 추가함으로써 디자인을 완성하였다.

2. 플레이어 이동

저번에 만든 코드는 사람이 조작하기는 편리하였으나 기계학습을 시키기에는 부적절하여 조금 더 입력값을 단순히 할 수 있는 방법을 사용하였다.

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class playerMove : MonoBehaviour
{
    public float playerSpeed;

    int r = 0;
    
    void Update()
    {
        int Move = 0;

        if(Input.GetKey(KeyCode.A) 
        || Input.GetKey(KeyCode.D) 
        || Input.GetKey(KeyCode.W) 
        || Input.GetKey(KeyCode.S)) Move = 1;

        if      (Input.GetKey(KeyCode.A)) r = 3;
        else if (Input.GetKey(KeyCode.D)) r = 1;
        else if (Input.GetKey(KeyCode.W)) r = 0;
        else if (Input.GetKey(KeyCode.S)) r = 2;

        transform.Translate(Move * Vector3.right * playerSpeed * Time.deltaTime);
        
        transform.eulerAngles = Vector3.up * r * 90;
    }
}

 

r 값에 따라 플레이어가 회전하며, Move 값이 활성화되면 방향에 따라 이동한다.