런타임 피드백을 얻는 방법

Stingray에서는 여러 방법으로 게임에서 발생하는 사항에 대한 피드백을 얻을 수 있습니다. 개발 도중 여러 시점에 이러한 방법 모두는 아니더라도 피드백을 필요가 있다는 것을 여러 번 알게 될 것입니다. 어떤 방법으로 게임플레이를 쓰는지, 엔진의 어떤 하위 시스템에 대해 피드백을 받아야 하는지, 어떤 종류의 정보를 얻고자 하는지에 따라 각각의 방법 중 더 편리한 방법이 있을 것입니다.

Log Console

Log Console은 Stingray 엔진에 연결된 모든 인스턴스가 Stingray 로그에 쓴 모든 오류, 경고 및 정보 메시지를 보여줍니다. 로그를 살펴보며 엔진 활동에 계속 지켜보는 습관을 갖는 것이 좋습니다. 문제가 발생하는 경우 이 로그가 힌트를 얻기 위해 가장 먼저 살펴봐야 할 곳입니다.

Log Console을 참조하십시오.

게임 내 HUD

Stingray 엔진에는 실행 중인 게임의 뷰포터에 진단 메시지를 표시하고 디버그 정보를 렌더링하는 몇 가지 내장 시스템이 있습니다. 이러한 시스템을 사용하여 성능 통계를 인쇄하거나, 성능을 그래프로 시각화하거나, 물리적 요소 및 입자와 같은 하위 시스템을 디버깅할 수 있습니다.

이러한 진단 시스템의 표시를 토글하려면 Stingray Editor의 상태 막대에서 또는 External Console 응용프로그램(Window > External Console)에서 게임으로 콘솔 명령을 보냅니다.

자세한 내용은 상태 막대에서 명령 보내기를 참조하십시오.

모든 콘솔 명령의 목록은 콘솔 명령을 참조하십시오. 특히 유용한 perfhud, graphphysics 명령을 살펴보십시오.

Stingray Editor의 HUD

Stingray Editor에서 작업하는 동안 편집기 뷰포트에서 HUD를 켤 수 있습니다. 이는 뷰포트 디스플레이를 이용해 편집기에서 내부적으로 실행하는 게임 엔진의 인스턴스 성능을 보여줍니다.

뷰포트의 시각화 설정에서 보View > Performance Hud를 클릭하고 관심 있는 HUD를 선택합니다.

배포된 패키지의 성능 통계를 디버그하거나 보려면 External Console 응용프로그램을 사용하여 기본 IP 주소 대신 localhost에 연결합니다.

Appkit을 사용하는 경우 Debug > Print To Screen 흐름 노드에 액세스할 수 있습니다. 이 노드가 평가되면 이는 게임 화면에 지정한 텍스트를 인쇄합니다. 흐름 시스템에는 현재 런타임 디버거가 없지만 이 노드를 사용하여 변수의 현재 상태를 찾고 그래프 평가에서 따라야 할 경로를 탐지할 수 있습니다.

흐름 또는 Lua에서 Stingray 로그에 자체 디버그 메시지를 인쇄할 수 있습니다. 엔진에서 가져오는 다른 모든 메시지 유형과 마찬가지로 Log Console에서 이 메시지를 볼 수 있습니다.

Lua 디버거 사용

디버거를 프로젝트에 연결하여 프로젝트의 Lua 스크립트가 수행하는 작업에 대한 많은 정보를 얻을 수 있습니다. 중단점을 설정하여 코드의 특정 위치에서 게임을 자동으로 일시 중지하고, 코드를 한 줄씩 또는 함수별로 실행하고, 변수 값을 확인하고, 수정하는 등의 작업을 수행할 수 있습니다. 코드를 처음 디버깅하는 경우 몇 가지 배경 정보에 대해 Lua 디버깅을 참조하십시오.

당사는 무료 오픈 소스 코드 편집기에서 이러한 모든 작업을 가능하도록 Visual Studio Code의 확장을 개발했습니다. Visual Studio Code 확장을 사용하는 자세한 방법은 여기서 해당 설명서를 참조하십시오.