유니티_unity
(유니티) Input.GetKey(): 키보드로 오브젝트 상하좌우 움직이기
코딩ABC
2024. 3. 25. 19:01
반응형
유니티에서 키보드 상하좌우 화살표 키를 이용해서 오브젝트를 상하좌우로 이동하는 코드입니다.
using UnityEngine;
public class RocketController : MonoBehaviour
{
public float speed = 1.0f;
// Update is called once per frame
void Update()
{
float x = 0f;
float y = 0f;
if(Input.GetKey("right"))
x = 1f;
else if (Input.GetKey("left"))
x = -1f;
else if (Input.GetKey("up"))
y = 1f;
else if (Input.GetKey("down"))
y = -1f;
Vector3 dir = new Vector3(x, y, 0);
transform.position += dir * speed * Time.deltaTime;
}
}
위 코드는 아래와 같이 작성해도 비슷하게 움직입니다.
Time.deltaTime을 이용하지 않고 Application.targetFrameRate를 이용했습니다.
using System.Collections;
using System.Collections.Generic;
using UnityEditor;
using UnityEngine;
public class RocketController : MonoBehaviour
{
public float speed = 1.0f;
// Start is called before the first frame update
void Start()
{
Application.targetFrameRate = 60;
}
// Update is called once per frame
void Update()
{
float x = 0f;
float y = 0f;
if(Input.GetKey("right"))
x = 1f;
else if (Input.GetKey("left"))
x = -1f;
else if (Input.GetKey("up"))
y = 1f;
else if (Input.GetKey("down"))
y = -1f;
Vector3 dir = new Vector3(x/60, y/60, 0);
//transform.position += dir * speed * Time.deltaTime;
transform.position += dir * speed;
}
}
Input.GetAxisRaw("Horizontal")를 이용한 키보드 다루기는 아래 링크에 있습니다.
반응형