This document is about: QUANTUM 2
SWITCH TO

유니티 통합

골프 템플릿은 또한 유니티에서 원활한 게임 플레이 상호 작용과 보기를 지원하는 스크립트를 제공합니다.

CameraController

CameraController는 메인 카메라 이동을 처리합니다. 이 컨트롤러는 실제 카메라가 지향하는 위치와 회전 값을 나타내는 _dummy Transform를 가지고 있습니다. 뒤에 나오는 _target은 카메라가 현재 보고 있는 EntityPrefabRoot 컴포넌트를 가진 게임 오브젝트입니다. 이 게임 오브젝트 참조는 글로벌 CurrentTurnActive 엔티티가 업데이트되면 자동으로 업데이트됩니다.

golf header

컨트롤러는 플레이어 입력을 판독하여 카메라를 이동, 기울임 및 확대/축소합니다.

  • 상대 위치: 대상 실체에 상대적인 카메라의 위치.
  • 상대 회전: 카메라가 상대 위치에 위치하여 대상 물체를 바라본 후 추가된 회전량
  • 다음 타겟: 카메라가 대상 물체를 따라 움직일지 여부 결정.
  • 러프 가속도: 실제 카메라를 더미 변환 쪽으로 돌릴 때 사용하는 단계 팩터.
  • 줌 민감도: 대상 엔티티를 확대 및 축소할 때 사용
  • 가장 가까운 거리: 대상 엔티티를 확대할 때 허용되는 가장 가까운 거리
  • 가장 먼 거리: 대상 엔티티를 축소할 때 허용되는 가장 먼 거리
  • 회전 민감도: 플레이어가 카메라를 상하좌우 이동하거나 기울일 때 사용되는 스케일 팩터
  • 회전 반전: 마우스 드래그 값은 카메라를 상하좌우 이동하거나 기울이기 전에 반전됨
  • 타겟 클릭 가능한 영역 반지름: 클릭하는 것으로 간주되는 대상 엔티티 주위의 원 반지름

TurnClock

UITurnClock 스크립트는 CurrentTurn이 타이머를 사용하고 중앙 시계 패널에 표시되는 시간을 업데이트할 때 시뮬레이션에서 글로벌 CurrentTurn의 남은 턴 시간을 폴링 하는 역할을 합니다.

golf header

FairTimer

FairTimer 스크립트는 보다 현실적인 타이머보다 더 공정한 타이머를 현지 플레이어에게 표시하는 패턴을 제시합니다. 클라이언트의 RTT 및/또는 입력 오프셋을 고려합니다.

주의: 이 경우 시뮬레이션 측면의 어떤 것도 간섭하지 않습니다. 현재 턴 타이머는 모든 클라이언트에서 동기화되며, 플레이어의 지연에 비례하여 플레이어에게 표시되는 값만 표시됩니다. 이 기능은 구성 가능한 옵션 기능으로, 원하는 동작에 도달하도록 조정해야 합니다.

골프 템플릿에 제시된 FairTimer 솔루션은 게임 플레이에 구애받지 않으며 사소한 변경만으로 모든 타이머 기반 턴 기반 게임에 사용할 수 있습니다.

StartCountdown

UIStartCountdown 스크립트는 첫 번째 턴이 시작되기 전에 화면 중앙에서 시각적 타이머 카운트다운 표시를 처리합니다.

golf header

PlayerView

UIPlayerView는 주어진 플레이어의 TurnData 정보를 폴링하고 그에 따라 시각적 요소를 활성화/비활성화/업데이트하는 역할을 담당합니다. 여기에는 다음이 포함됩니다.

  • 플레이어 차례가 끝났을 때 턴 Number를 늘립니다.
  • 플레이어의 상태가 변경될 때 상태 텍스트를 변경합니다.
  • 차례가 비활성 상태이거나 플레이어가 로컬이 아닐 때 건너뛰기 버튼을 사용할 수 없게 합니다.
  • 플레이어의 채울 수 있는 링 타이머를 업데이트합니다.
golf header

스코어

UIScore 스크립트는 시뮬레이션을 통해 게임 플레이 엔드 이벤트가 발생했을 때 플레이어들의 스코어 정보를 담은 스코어 패널을 활성화하는 역할을 합니다.

golf header
Back to top