복습: 불릿 타임
Coddy Unity 여정의 실제 게임 만들기 섹션에 포함된 레슨. 56개 중 36번째.
챌린지
중급집중력 게이지를 사용해 게임에 불릿 타임을 구현하세요. Game 오브젝트에 BulletTime.cs를 작성하세요. Inspector에서 slowScale(0.2), maxFocus(2), recharge(0.5)와 화면 상단의 채워지는 Image인 focusBar를 설정하세요. 게이지 값은 float인 focus에 저장하세요.
focus는maxFocus값으로 가득 찬 상태에서 시작합니다.- Space를 누르고 있고
focus가 0보다 크면 게임은slowScale속도로 실행되며, 물리 스텝은 0.02에서 같은 비율로 줄어듭니다. 또한focus는 실제 시간 1초마다 1씩 줄어들고, 0보다 낮아지지 않습니다. - 그 외에는 게임이 정상 속도로 실행되며 물리 스텝은 0.02입니다. 게이지가 비면 Space를 계속 누르고 있어도 불릿 타임이 끝납니다.
- Space를 누르고 있지 않을 때는
focus가 실제 시간 1초마다recharge만큼 회복되며,maxFocus를 넘지 않습니다. - 매 프레임마다 막대의
fillAmount는focus를maxFocus로 나눈 값입니다.
Play를 누르고 Space를 길게 눌러 비를 지켜본 다음 Check를 누르세요.
직접 해보기
using UnityEngine;
using UnityEngine.UI;
public class BulletTime : MonoBehaviour
{
public float slowScale = 0.2f;
public float maxFocus = 2f;
public float recharge = 0.5f;
public Image focusBar;
float focus;
void Update()
{
}
}