C# 유니티 transform.position = new Vector3

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