모든 Stingray 프로젝트에는 부팅 스크립트가 하나 있는데, 이 스크립트는 게임 엔진이 메모리로 로드하여 시작 시 즉시 실행하는 Lua 파일입니다. 부팅 스크립트는 시작, 업데이트 및 종료 프로세스의 사전에 지정된 지점에서 게임 엔진이 호출하는 함수 세트에 대한 정의를 제공하는 역할을 합니다. 자체 부팅 스크립트(또는 부팅 스크립트가 로드하는 기타 스크립트 파일)에서 이러한 기능을 구현하여 게임 엔진이 패키지 및 수준을 로드 및 언로드하고, 게임 표준을 렌더링하고 변화하는 게임 플레이 조건 및 사용자 상호작용에 반응하는 방식을 제어할 수 있습니다.
게임 settings.ini 파일 내에서 boot_script 특성의 값을 보면 부팅 스크립트 파일을 파악할 수 있습니다. 예:
boot_script = "scripts/game/boot/boot"
다른 Stingray 리소스와 마찬가지로 이 경로 역시 /를 디렉토리 구분자로 사용하고 Lua 스크립트 파일의 확장자는 생략되어 있습니다.
settings.ini 파일에 대한 자세한 내용은 Stingray 엔진 settings.ini 파일 참조를 참조하십시오.
Stingray 게임 엔진은 게임 내에서 사용자 정의할 수 있는 다음 전역 Lua 함수를 호출합니다.
이 함수는 부팅 스크립트가 로드되어 실행된 후 한 번만 호출됩니다.
일반적으로 즉시 필요한 리소스 패키지 로드 프로세스를 시작하고 간단한 시작 화면 또는 로드 화면을 표시할 수 있습니다.
이 함수는 기본 게임 루프의 모든 프레임마다 호출됩니다. 게임의 시간 단계를 나타내는 인수 하나를 전달합니다.
이 함수는 각 프레임에서 수행해야 하는 모든 증분 업데이트를 수행하고 update()에 대한 이전 호출 이후 발생했을 수 있는 이벤트에 응답하기에 좋은 위치입니다.
계산의 일부 지점에서 이 함수는 일반적으로 현재 게임 표준의 World.update() 함수를 호출합니다. 호출된 이 함수는 지정된 시간 단계에 따라 표준을 진행합니다. 그 다음 해당 게임 표준에서 수행 중인 모든 애니메이션 및 물리적 시뮬레이션을 업데이트합니다.
이 함수는 update() 함수 완료 후 기본 게임 루프의 각 프레임마다 한 번씩 호출됩니다.
현재 프레임에서 어떤 렌더링 작업을 수행해야 할지 게임 엔진에 알립니다. 일반적으로, 이 함수는 플레이어를 위해 현재 게임 표준을 렌더링하기 위해 Application.render_world() 함수를 호출합니다. 또한 카메라, 뷰포트 및 음영처리 환경과 같이 렌더링 관련 오브젝트를 설정할 수도 있습니다.
이 함수는 게임 엔진 종료 시 한 번 호출됩니다.
이 함수는 뷰포트, 음영처리 환경 및 표준과 같이 현재 사용 중인 모든 오브젝트를 삭제 또는 릴리스하고 여전히 메모리에 남아 있는 모든 리소스 패키지를 언로드 및 릴리스합니다.