https://www.blogger.com/blog/post/edit/4269806382658593631/6192122025302748439
에서 가져와서 Canvas아래에 넣은 floating Joystick 이 움직이는대로 케릭터가 움직이게 해보자.
움직이고자 하는 케릭터의 controller.cs 에 아래와같이 선언해준다.
public FloatingJoystick floatingjoystick;
여기서 중요한 점이 이렇게 선언한 floatingjoystick에 주인공 Object에 연결된 controller Inspector 창으로 이동한다.
그러면 public이기에 Floatingjoystick none 이라고 적혀 있을 것이다. 여기에 Floating Joystick prefab을 넣어주면 연동이 된다.
이 후 사용하려면 움직이는 값에 넣어주면 된다.
아래와 같이
float horizontalValue = floatingjoystick.Horizontal;
float verticalValue = floatingjoystick.Vertical;
이렇게 하면 floatingjoystick에 prefab이 연동되었으니 그 조이스틱이 움직이는 Horizontal, Vertical 값을 가져오게 된다.
그리고 속도 조절을 위해 아래와 같이 조치한다.
Vector2 pos2 = new Vector2(horizontalValue, verticalValue);
pos2 = pos2 * 0.1f * Time.fixedDeltaTime;
여기서 fixedDeltaTime은 프레임이 변해도 동일한 속도를 가지기 위해 넣어준다.
this.rigid2D.MovePosition(this.rigid2D.position + pos2);
this.transform.localScale = new Vector3(scaleX, 0.5f, 1);
이렇게 하면 원하는 데로 동작하는 것을 볼 수 있다.
댓글 없음:
댓글 쓰기