Attention: Here be dragons
This is the latest
(unstable) version of this documentation, which may document features
not available in or compatible with released stable versions of Godot.
Checking the stable version of the documentation...
HTML5 쉘 클래스 참조
웹용으로 내보낸 프로젝트는 Engine() 클래스를 JavaScript 환경에 노출하므로 엔진 시작 프로세스를 세밀하게 제어할 수 있습니다.
이 API는 비동기 방식으로 구축되었으며 `Promises <https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Using_promises>`__에 대한 기본적인 이해가 필요합니다.
엔진
Engine 클래스는 웹에서 내보낸 프로젝트를 로드하고 시작하는 방법을 제공합니다. 기본 내보내기 설정의 경우 이는 이미 내보낸 HTML 페이지의 일부입니다. Engine 클래스의 실제 사용을 이해하려면 :ref:`웹 내보내기용 사용자 정의 HTML 페이지 <doc_customizing_html5_shell>`을 참조하세요.
정적 메서드
약속 |
|
무효 |
|
bool |
|
씬 인스턴스하기
약속 |
|
약속 |
|
약속 |
|
약속 |
|
무효 |
|
무효 |
|
- class Engine(initConfig)
주어진 구성으로 새 엔진 인스턴스를 만듭니다.
- 인수:
initConfig (
EngineConfig()) -- 이 인스턴스에 대한 초기 구성입니다.
정적 메서드
- Engine.load(basePath)
지정된 기본 경로에서 엔진을 불러옵니다.
- 인수:
basePath (
string()) -- 불러올 엔진의 기본 경로입니다.
- 반환:
엔진이 불러오면 해결되는 약속입니다.
- 반환 형식:
약속
- Engine.unload()
엔진을 언로드하여 메모리를 확보합니다.
이 메서드는 구성에 따라 자동으로 호출됩니다.
unloadAfterInit를 참조하세요.
- Engine.isWebGLAvailable([majorVersion=1])
WebGL을 사용할 수 있는지 확인하세요. 선택적으로 확인할 WebGL의 특정 버전을 지정합니다.
- 인수:
majorVersion (
number()) -- 확인할 주요 WebGL 버전입니다.
- 반환:
해당 WebGL의 주요 버전을 사용할 수 있는 경우.
- 반환 형식:
bool
씬 인스턴스하기
- Engine.prototype.init([basePath])
엔진 인스턴스를 초기화합니다. 선택적으로 아직 로드되지 않은 경우 기본 경로를 엔진에 전달하여 로드합니다. :js:meth:`Engine.load`를 참조하세요.
- 인수:
basePath (
string()) -- 불러올 엔진의 기본 경로입니다.
- 반환:
엔진이 로드되고 초기화되면 확인되는 ``Promise``입니다.
- 반환 형식:
약속
- Engine.prototype.preloadFile(file[, path])
파일이 실행되면 인스턴스의 파일 시스템에서 사용할 수 있도록 파일을 로드합니다. 인스턴스를 시작하기 전에 호출해야 합니다.
제공되지 않은 경우 ``path``는 로드된 파일의 URL에서 파생됩니다.
- 인수:
file (
string|ArrayBuffer()) -- 미리 로드할 파일입니다.string``인 경우 파일은 해당 경로에서 로드됩니다. ``ArrayBuffer또는 하나의 뷰인 경우 버퍼가 파일의 내용으로 사용됩니다.path (
string()) -- 파일에 액세스할 수 있는 경로입니다. ``file``가 문자열이 아닌 경우 필수입니다.
- 반환:
파일이 로드되면 해결되는 Promise입니다.
- 반환 형식:
약속
- Engine.prototype.start(override)
지정된 재정의 구성(있는 경우)을 사용하여 엔진 인스턴스를 시작합니다. 대신 일반적인 경우에는 :js:meth:`startGame <Engine.prototype.startGame>`를 사용할 수 있습니다.
초기화되지 않은 경우 인스턴스가 초기화됩니다. 수동 초기화에 대해서는 :js:meth:`init <Engine.prototype.init>`를 참조하세요. 엔진을 미리 로드해야 합니다.
페이지에서 캔버스를 찾을 수 없거나 구성에 지정되지 않은 경우 실패합니다.
- 인수:
override (
EngineConfig()) -- 선택적 구성 재정의.
- 반환:
엔진이 시동되면 해결된다는 약속입니다.
- 반환 형식:
약속
- Engine.prototype.startGame(override)
주어진 구성 재정의(있는 경우)를 사용하여 게임 인스턴스를 시작합니다.
초기화되지 않은 경우 인스턴스가 초기화됩니다. 수동 초기화에 대해서는 :js:meth:`init <Engine.prototype.init>`를 참조하세요.
엔진이 로드되지 않은 경우 엔진을 로드하고 메인 PC를 사전 로드합니다.
이 방법에서는 초기 구성(또는 재정의)에
executable및mainPack속성이 모두 설정되어 있을 것으로 예상합니다(일반적으로 내보내는 동안 편집기에서 수행됨).- 인수:
override (
EngineConfig()) -- 선택적 구성 재정의.
- 반환:
게임이 시작되면 해결된다는 약속입니다.
- 반환 형식:
약속
- Engine.prototype.copyToFS(path, buffer)
만들기 인스턴스의 파일 시스템에서 ``buffer``로 전달된 지정된 ``path``에 있는 파일입니다.
- 인수:
path (
string()) -- 숨겨진 동작은 활성화되지 않지만, 내보내집니다.buffer (
ArrayBuffer()) -- 파일의 내용입니다.
- Engine.prototype.requestQuit()
현재 클래스 인스턴스를 참조합니다.
이는 사용자가 창 관리자에서 닫기 버튼을 누르는 것과 유사하며, 엔진이 충돌하거나 루프에 갇히면 아무런 효과가 없습니다.
엔진 구성
Godot 내보내기 옵션을 기반으로 엔진 인스턴스를 구성하고 필요한 경우 사용자 정의 HTML 템플릿의 옵션을 재정의하는 데 사용되는 개체입니다.
속성
유형 |
이름 |
bool |
|
HTML캔버스요소 |
|
문자열 |
|
문자열 |
|
문자열 |
|
멤버 |
|
문자열 |
|
함수 |
|
함수 |
|
함수 |
|
함수 |
|
함수 |
- EngineConfig
엔진 구성 개체입니다. 이것은 단지 typedef이므로 일반 객체처럼 생성합니다. 예:
const MyConfig = { executable: 'godot', unloadAfterInit: false }설명
- unloadAfterInit
인스턴스 초기화 후 엔진을 자동으로 언로드할지 여부입니다.
- 유형:
bool
- 값:
'값'
- canvas
사용할 HTML DOM Canvas 개체입니다.
기본적으로 문서의 첫 번째 캔버스 요소가 사용되며 아무것도 지정되지 않습니다.
- 유형:
HTML캔버스요소
- 값:
null
- executable
확장자가 없는 WASM 파일의 이름입니다. (Godot 편집기 내보내기 프로세스에 의해 설정됨).
- 유형:
문자열
- 값:
""
- mainPack
로드할 게임 팩의 대체 이름입니다. 그렇지 않으면 실행 파일 이름이 사용됩니다.
- 유형:
문자열
- 값:
null
- locale
게임에 적합한 현지화를 선택하려면 언어 코드를 지정하세요.
아무것도 지정하지 않으면 브라우저 로캘이 사용됩니다. :ref:`지원 로캘 <doc_locales>`의 전체 목록을 참조하세요.
- 유형:
문자열
- 값:
null
- canvasResizePolicy
캔버스 크기 조정 정책은 Godot가 캔버스 크기를 조정하는 방법을 결정합니다.
``0``는 Godot가 크기 조정을 하지 않는다는 뜻입니다. 이는 템플릿의 자바스크립트 코드에서 캔버스 크기를 제어하려는 경우에 유용합니다.
``1``는 Godot가 시작 시 캔버스 크기를 조정하고 엔진 기능을 통해 창 크기를 변경할 때를 의미합니다.
``2``는 Godot가 전체 브라우저 창에 맞게 캔버스 크기를 조정한다는 것을 의미합니다.
- 유형:
멤버
- 값:
2
- args
명령줄 인수.
:ref:`명령줄 튜토리얼 <doc_command_line_tutorial>`을 참조하세요.
참고:
startGame <Engine.prototype.startGame>`는 항상 `()--main-pack`` 인수를 추가합니다.- 유형:
문자열
- 값:
int[]
- onExecute(path, args)
Godot의
OS.execute호출을 처리하기 위한 콜백 함수입니다.예를 들어 웹 편집기 템플릿에서 프로젝트 관리자와 편집기 사이를 전환하고 게임을 실행하는 데 사용됩니다.
- 인수:
path (
string()) -- Godot가 원하는 길은 실행되었습니다.args (
Array.) -- 실행할 "명령"의 인수입니다.
- onExit(status_code)
Godot 인스턴스가 종료될 때 알림을 받기 위한 콜백 함수입니다.
참고: 엔진이 충돌하거나 응답하지 않는 경우 이 함수는 호출되지 않습니다.
- 인수:
status_code (
number()) -- 종료 시 Godot가 반환한 상태 코드입니다.
- onProgress(current, total)
다운로드 진행 상황을 표시하기 위한 콜백 함수입니다.
파일을 다운로드하는 동안 프레임당 한 번씩 함수가 호출되므로 ``requestAnimationFrame()``를 사용할 필요가 없습니다.
콜백 함수가 전체 바이트 양을 0으로 수신하면 계산이 불가능하다는 의미입니다. 가능한 이유는 다음과 같습니다:
파일은 서버측 청크 압축으로 전달됩니다.
파일은 Chromium에서 서버 측 압축으로 제공됩니다.
아직 모든 파일 다운로드가 시작되지 않았습니다(일반적으로 멀티스레딩이 없는 서버에서).
- 인수:
current (
number()) -- 현재까지 다운로드된 바이트의 양입니다.total (
number()) -- 다운로드할 총 바이트 양입니다.