kunkunwoo@blog:~$ 거누권의 생각깜지

2. 유니티 _ 델타 타임 (deltaTime)

· 배운 것 · 2분 읽기

deltaTime이 왜 필요한가?

만약에 친구랑 카트라이더 게임을 하기로 했다.
친구의 컴퓨터 fps : 60, 내 컴퓨터 fps : 10 && 친구의 차 기종 == 내 차 기종 && 그외 모든조건동일


왜 속도 차이가 날까?

필요성 멀티플레이 할때 좋은 컴퓨터와 안 좋은 컴퓨터의 프레임차이 때문에 update함수의 도는 속도가 다르게 작용해서 위와 같은 치명적인 오류가 있을 수 있다.


그렇다면 deltaTime이란?

위의 문제를 해결하기 위한것.
같은 프레임이 적으면 큰 값이고, 프레임이 많으면 작은 값이다. 이를 이용한다면 30fps도 60fps의 컴퓨터도 모두 공평하게 게임을 이용할수 있다.


Time.deltaTime 사용법

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

public class Move : MonoBehaviour
{
    public void Start()
    {
        
    }
    // Update is called once per frame
    public void Update()
    {
        //키받아서 일정한 속도로 움직이기
        Vector3 vec = new Vector3(
            Input.GetAxisRaw("Horizontal") * Time.deltaTime,
            Input.GetAxisRaw("Vertical") * Time.deltaTime, 0);
        transform.Translate(vec);
    }
}

참고

https://www.youtube.com/user/GoldmetalYT

골드메탈