728x90
새로운 vector3 값으로 transform.position하는 스크립트문을 작성했다.
먼저 float 형식으로 delta = -0.1f 값을 선언했는데 이는 매 프레임마다 z 값의 변화량을 의미한다.
현재 오브젝트는 (0, 1, 7)의 위치값을 갖는데 현 위치값에서 x 델타값만 연산되는 변수 newXposition를 새로 생성했다. transform.position = new Vector을 선언해서 위치값을 움직이는데
Update()가 실행되는 동안 델타값이 적용된 x값을 갖게 되었다.
그리고 if조건문을 활용하여
x좌표가 -6보다 작아지는 경우, 델타값을 -0.1f에서 0.1f로 바꿔주어 반대로 움직이게 하였고,
마찬가지로 6보다 커지는 경우, 다시 -0.1f로 바꿔 -6과 6사이의 x값만 갖도록 설정하였다.
유니티에 적용해보면
다음과 같은 오브젝트가 제한된 범위 내에서 좌우로 반복이동을 통해 장애물 역할을 수행할 수 있다.
728x90
'게임 프로그래밍 > C#' 카테고리의 다른 글
C# 유니티 Camera 설정 (0) | 2021.08.06 |
---|---|
C# 유니티 함수 GetComponent (0) | 2021.08.06 |
C# 함수 Bool (0) | 2021.08.06 |
C# 유니티 Transform Position (0) | 2021.08.06 |
C# Switch statements Switch문 (0) | 2021.08.04 |