Manuals
Manuals




This translation is community contributed and may not be up to date. We only maintain the English version of the documentation. Read this manual in English

コードの記述

Defold では、タイルマップ(tilemap)やパーティクルエフェクト(particle effect)のエディターなどのビジュアルツールを使って、ゲームコンテンツの多くを作成できますが、ゲームロジックはコードエディターで記述します。ゲームロジックは Lua プログラミング言語で記述し、エンジン自体の拡張は対象プラットフォームのネイティブ言語で記述します。

Lua コードの記述

Defold は、対象プラットフォームに応じて Lua 5.1 と LuaJIT を使用します。ゲームロジックを記述する際は、これらの特定バージョンの Lua の言語仕様に従う必要があります。Defold で Lua を扱う方法の詳細については、Defold での Lua のマニュアルを参照してください。

Lua にトランスパイルするほかの言語の使用

Defold は、Lua コードを出力するトランスパイラーの使用をサポートしています。トランスパイラー拡張(transpiler extension)をインストールすると、Teal などの別の言語を使って、静的チェックを受ける Lua コードを記述できます。これは制約のあるプレビュー機能です。現在のトランスパイラーのサポートでは、Defold の Lua ランタイムで定義されているモジュールや関数の情報は公開されません。そのため、go.animate などの Defold API を使用するには、外部定義を自分で記述する必要があります。

ネイティブコードの記述

Defold では、ネイティブコードでゲームエンジンを拡張し、エンジン自体では提供されていないプラットフォーム固有の機能にアクセスできます。また、Lua のパフォーマンスでは不十分な場合(リソースを大量に消費する計算、画像処理など)にもネイティブコードを使用できます。詳細については、ネイティブ拡張(Native Extensions)のマニュアルを参照してください。

組み込みのコードエディターの使用

Defold にはコードエディターが組み込まれています。Lua ファイル(.lua)、Defold のスクリプト(script)ファイル(.script、.gui_script、.render_script)に加え、エディターが標準で扱わない拡張子のファイルも開いて編集できます。また、Lua ファイルとスクリプトファイルのシンタックスハイライトに対応しています。

コード補完

組み込みのコードエディターは、コードの記述中に関数の補完候補を表示します。

CTRL + Space を押すと、関数、引数、戻り値に関する追加情報が表示されます。

シンボルへの移動

組み込みのコードエディターでは、現在のコードファイル内の関数、オブジェクト、変数などのシンボルを、検索可能な一覧で表示できます。View ▸ Jump to Symbol… を選択するか、Windows と Linux では Ctrl + Shift + O、macOS では ⌘ Cmd + Shift + O を押します。

入力を始めるとシンボルをあいまい検索できます。矢印キーで検索結果を移動すると、エディターでそれぞれの位置をプレビューできます。Enter を押すと、選択したシンボルに移動します。Esc を押すとダイアログを閉じ、元のカーソル位置とスクロール位置に戻ります。

リントの設定

組み込みのコードエディターは、LuacheckLua language server を使用してコードのリントを行います。Luacheck を設定するには、プロジェクトのルートに .luacheckrc ファイルを作成します。利用できるオプションの一覧は、Luacheck の設定ページで確認できます。Defold では、Luacheck の設定に次の既定値を使用します。

unused_args = false      -- don't warn on unused arguments (common for .script files)
max_line_length = false  -- don't warn on long lines
ignore = {
    "611",               -- line contains only whitespace
    "612",               -- line contains trailing whitespace
    "614"                -- trailing whitespace in a comment
},

外部コードエディターの使用

Defold のコードエディターには、コードの記述に必要な基本機能が備わっていますが、より高度な用途や、お気に入りのコードエディターを持つ上級ユーザー向けに、外部エディターでファイルを開くよう Defold を設定することもできます。Preferences ウィンドウの Code タブで、コードの編集に使用する外部エディターを指定できます。

Visual Studio Code - Defold Kit

Defold Kit は、次の機能を備えた Visual Studio Code のプラグインです。

  • 推奨拡張機能のインストール
  • Lua のハイライト、自動補完、リント
  • 関連する設定のワークスペースへの適用
  • Defold API 用の Lua アノテーション
  • 依存関係用の Lua アノテーション
  • ビルドと起動
  • ブレークポイントを使用したデバッグ
  • すべてのプラットフォーム向けのバンドル作成
  • 接続されたモバイルデバイスへのデプロイ

詳細の確認と Defold Kit のインストールは、Visual Studio Marketplaceから行えます。

ドキュメント閲覧ソフトウェア

コミュニティが作成した Dash と Zeal 用の API リファレンスパッケージを利用できます。