Application - stingray.Application ネームスペースリファレンス - Stingray Lua API リファレンス

説明

グローバル アプリケーション機能にアクセスするためのインタフェースです。

アプリケーションはシングルトン(1 つのアプリケーションのみが存在する)ですが、Application 関数に Application オブジェクトを渡す必要はありません。すべての関数は、アプリケーション シングルトンに対して動作します。

関数

パラメータ
この関数はパラメータを受け入れません。
戻り値

string*

各コマンド ライン引数は個別の文字列として返されます。

* の注記は、指定されたタイプのゼロ以上のインスタンスがある場合があることを示します。
パラメータ

window :

stingray.Window?

(オプション) PC 上の複数のスワップ チェーンへのレンダリング時にのみ使用されます。

? 表記は、このタイプが省略可能であることを示しています。ゼロ個または 1 個のインスタンスが存在します。
戻り値

number

バック バッファの解像度の幅です(ピクセル単位)。

number

バック バッファの解像度の高さです(ピクセル単位)。

これに相当する「resolution」という名前の廃止予定のバージョンは呼び出さないでください。

パラメータ
この関数はパラメータを受け入れません。
戻り値

integer

自動ロードされたリソースをロード解除するオフセットです。

パラメータ
この関数はパラメータを受け入れません。
戻り値

string

debugdev、または release のいずれかの文字列です。

パラメータ
この関数はパラメータを受け入れません。
戻り値

string

エンジンのビルド バージョン番号を識別する文字列です。

例: 2437 branch:release2

独自にエンジンを再ビルドする場合、エンジンの実行可能ファイルをビルドした後の後処理でこのビルド識別子を設定できます。ビルドした実行可能ファイルには、文字列 a4e915264ceaa4424b3ed6d3d2fe5e1a とそれに続く 128 個のゼロ文字が含まれています。これらのゼロ文字を、この build_identifier()関数で返す任意の文字列に置き換えることができます。

パラメータ

type :

string

検索するリソースの種類です。

name :

string

検索するリソースの名前です。

戻り値

boolean

指定されたリソースを使用できる場合は true、それ以外の場合は false です。

パラメータ

type :

string

オーバーライドされるリソースの種類です。

name :

string

オーバーライドされるリソースの名前です。

戻り値
この関数は値を返しません。
パラメータ

name :

string

除去するフラグです。

戻り値
この関数は値を返しません。
パラメータ

command :

string

コンソールに送信するコマンドです。

parameters :

string*

このコマンドで渡すゼロ個以上の追加のコマンド ライン パラメータです。

* の注記は、指定されたタイプのゼロ以上のインスタンスがある場合があることを示します。
戻り値
この関数は値を返しません。
パラメータ
この関数はパラメータを受け入れません。
戻り値

integer

コンソールのポート番号です。

パラメータ

command :

console_commands

文字列をキーとするテーブルで表される、コンソールに送信する情報です。

data :

string?

送信するバイナリ データへのオプションのポインタ。これを指定した場合、長さも指定する必要があります。

? 表記は、このタイプが省略可能であることを示しています。ゼロ個または 1 個のインスタンスが存在します。

length :

number?

バイナリ データの長さです(存在する場合)。

? 表記は、このタイプが省略可能であることを示しています。ゼロ個または 1 個のインスタンスが存在します。
戻り値
この関数は値を返しません。

この関数を使用して、メッセージ、警告、エラーをコンソールに出力する、またはエンジンのコンソール サーバのその他のクライアントに任意のメッセージを送信することができます。

パラメータ

world :

stingray.World

新しいビューポートでレンダリングされるワールドです。

viewport_template :

string

ビューポートの特性を決定するビューポート テンプレートの名前です。

戻り値

stingray.Viewport

新しく作成された Viewport です。

このビューポートでの作業が終了したら、destroy_viewport()を呼び出して破壊する必要があります。

パラメータ

world :

stingray.World

破壊するビューポートにレンダリングされているワールドです。

viewport :

stingray.Viewport

破壊するビューポートです。

戻り値
この関数は値を返しません。
パラメータ

offset :

integer

自動ロードされたリソースをロード解除するオフセットです。

戻り値
この関数は値を返しません。
パラメータ
この関数はパラメータを受け入れません。
戻り値

stingray.Entity

実行中のフロー ノードを所有している Entity です。

パラメータ
この関数はパラメータを受け入れません。
戻り値

stingray.Level

実行中のフロー ノードを所有している Level です。

パラメータ
この関数はパラメータを受け入れません。
戻り値

stingray.Unit

実行中のフロー ノードを所有している Unit です。

パラメータ
この関数はパラメータを受け入れません。
戻り値

stingray.World

実行中のフロー ノードを所有している World です。

パラメータ

indices :

any(integer, string)+

整数または文字列のデータの 1 つまたは複数のインデックスです。

+ 表記は、指定されたタイプのインスタンスが 1 つまたは複数存在することを示しています。
any(...) 表記は、この項目が括弧内に示されている任意のタイプのインスタンスであることを示しています。
戻り値

any

指定されたインデックスのシーケンスに格納されているデータ値です(ある場合)。

パラメータ

indices :

any(integer, string)+

整数または文字列のデータの 1 つまたは複数のインデックスです。

+ 表記は、指定されたタイプのインスタンスが 1 つまたは複数存在することを示しています。
any(...) 表記は、この項目が括弧内に示されている任意のタイプのインスタンスであることを示しています。
戻り値
この関数は値を返しません。
パラメータ
この関数はパラメータを受け入れません。
戻り値

stingray.World

最も重要であると判断された World です。

これは通常、パーティクル エフェクトやサウンドなどをテストする作業が発生しているワールドです。

「最も重要な」ワールドは、最も多くのユニットが含まれる最後のフレームでレンダリングされたワールドとして定義されます。

パラメータ

values :

any+

ハッシュを作成するときに使用する値です。このリストには、少なくとも 1 つの値が含まれている必要があります。数値、nil、文字列、および文字列として表された 16 進数を受け入れます。

+ 表記は、指定されたタイプのインスタンスが 1 つまたは複数存在することを示しています。
戻り値

string

64 ビットの 16 進数ハッシュです。

パラメータ

flags :

integer*

新しいワールドのプロパティを設定する任意の数の新しいワールド フラグです。

* の注記は、指定されたタイプのゼロ以上のインスタンスがある場合があることを示します。
戻り値

stingray.World

新しく作成された World です。

ゲーム ワールドは、必要な数だけ作成することができます。複数のゲーム ワールドがあると、画面のロードやインベントリ ルームなどに役立つことがあります。

: 作業が終了したら、必ず release_world()を呼び出して、作成したすべてのワールドを解放してください。

パラメータ

url :

string

開く URL です。

戻り値
この関数は値を返しません。
パラメータ
この関数はパラメータを受け入れません。
戻り値

string

Application オブジェクトのプラットフォーム定数の 1 つ(WIN32ANDROID など)。

パラメータ

exit_code :

integer?

指定した場合、アプリケーションの終了コードを指定します。

? 表記は、このタイプが省略可能であることを示しています。ゼロ個または 1 個のインスタンスが存在します。
戻り値
この関数は値を返しません。

この関数は PlayStation 3 には存在しません。SDK からの終了要求がないと終了できないためです。

パラメータ

package :

stingray.ResourcePackage

破壊するパッケージです。

戻り値
この関数は値を返しません。
パラメータ

world :

stingray.World

破壊する World です。

戻り値
この関数は値を返しません。

特定のワールドでの作業が完了したら、これを呼び出す必要があります。

パラメータ

caps :

string+

ステータスを取得する 1 つまたは複数のレンダー キャップです。

+ 表記は、指定されたタイプのインスタンスが 1 つまたは複数存在することを示しています。
戻り値

boolean+

各引数の個別のブール値です。

+ 表記は、指定されたタイプのインスタンスが 1 つまたは複数存在することを示しています。
パラメータ

world :

stingray.World

レンダリングする World です。

camera :

stingray.Camera

レンダリングの視点を定義する Camera です。

viewport :

stingray.Viewport

レンダリングが含まれる Viewport です。

shading_environment :

stingray.ShadingEnvironment

レンダリングの特性を決定する ShadingEnvironment です。注: ワールドにロードされているいずれかのレベルにシェーディング環境エンティティが存在する場合、このパラメータは使用されません。代わりに、この設定はそのエンティティから読み取られます。

window :

stingray.Window?

(オプション) PC 上の複数のスワップ チェーンへのレンダリング時にのみ使用されます。

? 表記は、このタイプが省略可能であることを示しています。ゼロ個または 1 個のインスタンスが存在します。
戻り値
この関数は値を返しません。
パラメータ

name :

string

新しいリソース パッケージを作成するときに使用する .package ファイルのファイル名です。

戻り値

stingray.ResourcePackage

新しいリソース パッケージ。

: 作業が終了したら、必ず release_resource_package()を呼び出して、作成したすべてのリソース パッケージを解放してください。

パラメータ

name :

string

新しいリソース パッケージを作成するときに使用するバンドル ファイルの URL です。

戻り値

stingray.ResourcePackage

新しいリソース パッケージ。

: 作業が終了したら、必ず release_resource_package()を呼び出して、作成したすべてのリソース パッケージを解放してください。

パラメータ

local_filename :

string?

オプション。指定されている場合は、新しいログはこのパスを使用します。指定されていない場合は、最後のログが上書きされます。

? 表記は、このタイプが省略可能であることを示しています。ゼロ個または 1 個のインスタンスが存在します。

remote_filename :

string?

オプション。指定されている場合は、新しいリモート ログはこのパスを使用します。指定されていない場合は、最後のリモート ログが上書きされます。

? 表記は、このタイプが省略可能であることを示しています。ゼロ個または 1 個のインスタンスが存在します。
戻り値
この関数は値を返しません。

この関数に渡すパスとファイル名には、自動的に展開される以下の変数を含めることができます。

  • %%APPDATA%%: ユーザ データを格納するプラットフォーム固有のフォルダです。たとえば、Windows では C:¥Users¥<username>¥AppData、Mac OS では ~/Library/Application Support となります。
  • %%HOSTNAME%%: コンピュータのホスト名です。
  • %%DATE%%: YYYY-MM-DD という形式の現在の日付です。
  • %%TIME%%: HH.MM.SS という形式の現在の時刻です。
  • %%RANDOM%%: 8 桁のランダムな文字です。
  • %%OBBPATH%%: Android で、OBB ファイル ディレクトリへのパスです。
パラメータ
この関数はパラメータを受け入れません。
戻り値
この関数は値を返しません。

パスとファイル名は、settings.ini ファイル内のキー win32.user_settings または macosx.user_settings で決定されます。ファイル名内の文字列 %%APPDATA%% は、ユーザの AppData または Application Support フォルダに展開されます。たとえば、次のようになります。

win32 = {
user_settings = "%%APPDATA%%\\CompanyName\\GameTitle\\user_settings.config"
}

macosx = {
user_settings = "%%APPDATA%%/CompanyName/GameTitle/user_settings.config"
}
パラメータ
この関数はパラメータを受け入れません。
戻り値

table

settings.ini ファイルの script_data 設定から読み込まれたデータが含まれているテーブルです。

パラメータ

isEnabled :

boolean

自動ロードを有効にする場合は true、それ以外の場合は false

戻り値
この関数は値を返しません。

有効にするとパッケージ システムは無効になり、すべてのリソースはアクセス時に自動的にロードされます。

パラメータ

indices :

any(integer, string)

整数または文字列のデータの 1 つまたは複数のインデックスです。

any(...) 表記は、この項目が括弧内に示されている任意のタイプのインスタンスであることを示しています。

value :

any

格納する値です。

戻り値
この関数は値を返しません。

get_data()の呼び出しで同じインデックスを渡すことにより、後でそのデータを取得できます。

パラメータ

type :

string

オーバーライドするリソースの種類です。

name :

string

オーバーライドするリソースの名前です。

override :

string

置き換えるリソースです。

戻り値
この関数は値を返しません。

つまり、いずれかのエンジン システムがリソース name を要求した場合はいつでも、リソース override が代わりに返されます。オーバーライドを除去するには、clear_resource_override() を使用します。

パラメータ

flag :

string

優先順位を設定するフラグです。

priority :

integer

フラグの優先順位です。

戻り値
この関数は値を返しません。

ランタイム フラグを指定してリソース オーバーライドがコンパイルされている場合は、これらの値が使用されます。リソースが要求されると、優先順位が最高のフラグに対応するオーバーライドが使用されます。基本リソース(フラグなし)は優先順位が 0 であるとみなされます。オーバーライド フラグを除去するには、clear_resource_override_flag() を使用します。

パラメータ

properties :

number

定義済みの Pen Service Properties 値の任意の組み合わせを使用できます。(たとえば、stingray.Input.TabletPenServiceProperty.DISABLE_PRESSANDHOLD + Input.TabletPenServiceProperty.DISABLE_SMOOTHSCROLLING)。

戻り値
この関数は値を返しません。
パラメータ

params :

any+

環境設定パラメータとその値のリストです。

+ 表記は、指定されたタイプのインスタンスが 1 つまたは複数存在することを示しています。
戻り値
この関数は値を返しません。

この関数は、次のパラメータを受け入れます。

  • "variable": 可変時間ステップを使用するようにエンジンを設定します。これは、既定の時間ステップ設定です。
  • "fixed", fps: 指定されたフレーム レートの固定時間ステップで実行するようにエンジンを設定します。つまり、使用される時間ステップは常に 1/fps の倍数になります。エンジンが指定されたフレーム レートより速く実行される場合、長さゼロの時間ステップを使用して補正します。
  • "throttle", fps: エンジンを指定されたフレーム レートに調整します。エンジンの速度は、要求されたレートまで低下します。これは、フレーム レートが低い場合にのみ現れる問題をデバッグするために使用されます。
  • "no_throttle": 調整を無効にします。これは既定の設定です。
  • "variable": 調整を無効にします。これは既定値です。
  • "smoothing", frames, outliers, lerp: 時間ステップのスムージングを使用するようにエンジンを設定します。可変時間ステップを使用する場合、複数のフレームにわたって時間ステップをスムージングすると、ゲームがあまりぎくしゃくしないようにすることができます。frames 値は、平均化されるフレームの数を指定します。outliers 値は、除去する極値の数を指定します。たとえば、値 2 を指定すると、平均を計算する前に、最も高い値 2 つと最も低い値 2 つが除去されます。lerp 値は、計算された平均から値が変動できる速さを指定します。値を小さくするとよりスムージングが向上し、値を大きくするとスムージングが低下します。既定値は 11, 2, 0.1 です。
  • "no_smoothing": 時間ステップのスムージングを無効にします。
  • "debt_payback", frames: ゼロ以外の値に設定すると、タイマーは時間上の借り(つまり、スムージングなどが原因でゲームの時間が外部ワールド クロックからどの程度ずれているか)を追跡しようとします。さらに、フレームに時間を追加することにより、指定された数のフレームにわたって借りを返そうとします。これは、ゲームと外部クロックを同期させる必要がある場合(ネットワークなど)に役立ちます。同期させないと、ゲームが時間に「遅れる」可能性があるためです。既定値は 0 です。
  • "external_step_range", min, max: システムに取り込む前に外部ワールド時間を指定された範囲に固定する必要があることを指定します。これは、デバッガでブレークするときにシステムが非常に大きなステップを取得するのを防ぐために役立ちます。既定値は 0, 0.2 です。
  • "external_multiplier", multiplier: デバッグを目的として時間を加速または減速するために使用できる乗数を設定します。既定値は 1 です。
  • "system_step_range", min, max: ゲームが取得できる最小ステップ数と最大ステップ数を指定します。既定値は 0, 0.2 です。
  • "clear_history": 累積した時間上の借りの履歴、スムージング履歴などをクリアします。
  • "jump", time: 次のフレームで指定された秒数だけタイマーを前方にジャンプさせます。長いアニメーションをプレビューするのに役立ちます。
パラメータ
この関数はパラメータを受け入れません。
戻り値

string

ゲームが実行されるハードウェアについて説明する文字列です。

これは通常、エラーが発生したハードウェアに関する詳細を付加するためにエラー メッセージで使用され、その情報がエラーの診断と修正に役立つようにします。

パラメータ
この関数はパラメータを受け入れません。
戻り値

number

秒単位の経過時間です。

パラメータ
この関数はパラメータを受け入れません。
戻り値

boolean

ユーザ設定ファイルが存在するがロードできなかった場合は true、それ以外の場合は false です。

この関数が true を返す場合、ファイルが破損している可能性があります。この場合、既定の文字列が使用されます。データ ファイルが見つからなかった場合はロード エラーとはみなされないことに注意してください。

パラメータ
この関数はパラメータを受け入れません。
戻り値

stingray.World[]

World オブジェクトのテーブルです。

[]表記は、この型が配列(メンバーのキーは連番、各要素の値は示されている型のインスタンス)であることを示します。

開発のみ

このグループの要素は、開発ビルドでのみ使用可能です。

最終的なビルドでは使用しないでください。

パラメータ

name :

string

ロードされるパッケージです。

戻り値
この関数は値を返しません。

set_autoload_enabled()も参照してください。

パラメータ
この関数はパラメータを受け入れません。
戻り値

string

新しいグローバル一意識別子です。

Windows プラットフォームの開発ビルドまたは Xbox One でのみ使用できます。

パラメータ

milliseconds :

number

スリープする時間です(ミリ秒単位)。

戻り値
この関数は値を返しません。
パラメータ

enabled :

boolean

開発に関する警告のみを有効にする場合は、true です。

戻り値
この関数は値を返しません。

新しいワールド フラグ

このグループにリストされている定数は、Application.new_world()の呼び出しで引数として渡すことができます。

このフラグを Application.new_world()に渡す場合、リソース バジェットに必要な値を示す追加の引数も渡す必要があります。

ワールドで Apex Cloth シミュレーションを無効にします。

DISABLE_PHYSICS : integer

ワールドを物理的に無効にします。
ワールドでのレンダリングを無効にします。

DISABLE_SOUND : integer

ワールドでのサウンド再生を無効にします。

開発ビルドでのみ使用可能です。

プラットフォーム ID

IOS = "ios" : string

iOS プラットフォームを表現するために内部的に使用される文字列。

LINUX = "linux" : string

Linux プラットフォームを表現するために内部的に使用される文字列です。

MACOSX = "macosx" : string

Mac OS プラットフォームを表現するために内部的に使用される文字列です。

UWP = "uwp" : string

UWP プラットフォームを表現するために内部的に使用される文字列です。

WEB = "web" : string

Web プラットフォームを表現するために内部的に使用される文字列です。

Windows と Mac OS X

このグループ内の関数は、Windows および Mac OS X プラットフォームでのみ使用できます。

パラメータ
この関数はパラメータを受け入れません。
戻り値
この関数は値を返しません。
パラメータ
この関数はパラメータを受け入れません。
戻り値

table

それぞれが 1 つの表示モードを説明する Vector3 オブジェクトのテーブルです。各 Vector3 は、(width, height, screen_index)のように情報を格納します。

注: この関数は廃止予定であり、下位互換性を保つためにのみ存在しています。すべての新規開発では、代わりに DisplayAdapter インタフェースを使用してください。

パラメータ
この関数はパラメータを受け入れません。
戻り値

integer

プロセス ID です。

パラメータ
この関数はパラメータを受け入れません。
戻り値
この関数は値を返しません。

PC に接続されている新しい PS4 コントローラは、起動後に自動的には検出されません。接続されているコントローラを検出して設定し、接続解除されているコントローラへの参照を除去するには、この関数を使用します。

この関数を呼び出すとコントローラの順序が変わり、さまざまな PS4Pad1 インタフェースがさまざまな物理デバイスを表す場合があります。

この関数を呼び出した後で、最初に見つかった PS4 コントローラが PS4Pad1 として使用可能になり、2 番目は PS4Pad2、以下同様です。この関数を複数回呼び出す場合、コントローラの順序が保持されるという保証はありません。つまり、以前に PS4Pad3 として検出されていたコントローラが現在は PS4Pad1 である可能性があります。

この関数は Windows にのみ存在します。

パラメータ

frames :

number

フレームの最大数、またはフレームのスタックを無効にする場合は -1。

戻り値
この関数は値を返しません。

これは、ラウンドロビン方式でフレームごとに 1 回 D3D11_QUERY_EVENT を発行することにより実装され、各フレームはキュー内の最も古いイベントを待機します。

この機能は、遅いマシンでの「マウス ラグ」を削減するためのものです。Windows プラットフォームのみで使用できます。

: どうしても必要な場合を除き、この関数を使用しないことを強くお勧めします。これは、最後の手段とみなされます。

パラメータ

indices :

any(integer, string)

整数または文字列のデータの 1 つまたは複数のインデックスです。

any(...) 表記は、この項目が括弧内に示されている任意のタイプのインスタンスであることを示しています。

value :

any

格納する値です。

戻り値
この関数は値を返しません。

user_setting()の呼び出しで同じインデックスを渡すことにより、後でデータを取得できます。変更内容をディスクに保存する場合は、save_user_settings()も参照してください。

パラメータ

indices :

any(integer, string)+

整数または文字列のデータの 1 つまたは複数のインデックスです。

+ 表記は、指定されたタイプのインスタンスが 1 つまたは複数存在することを示しています。
any(...) 表記は、この項目が括弧内に示されている任意のタイプのインスタンスであることを示しています。
戻り値
この関数は値を返しません。