注: このオブジェクトとその API は、エンティティに基づいたワークフローを考慮して廃止予定とされています。
Stingray のヘルプで「シェーディング環境とポスト エフェクト」を参照してください。
シェーディング環境では、ゲーム ワールドをレンダリングする際のライティングとポスト処理に使用される変数のセットを指定します。通常、これには太陽の方向、太陽の色、シャドウ設定などのデータが含まれます。
シェーディング環境のコンテンツは .shading_environment_template 拡張子を使用してデータ ファイルから定義され、プロジェクトごとに設定されます。シェーディング環境の作成にはライティング エディタ ツールを使用できます。
次の例は、このインタフェースの使用方法を示しています。
function render() stingray.ShadingEnvironment.blend(self.shading_environment, {"default", 1.0, "dense_fog", 0.5}) stingray.ShadingEnvironment.set_vector3(self.shading_environment, "sun_direction", stingray.Vector3(0,0,-1)) stingray.ShadingEnvironment.apply(self.shading_environment) stingray.Application.render_world(self.world, self.camera, self.viewport, self.shading_environment) end
コンストラクタとアクセサ
関連サンプル コード
その他の関連リファレンス項目
![]() | stingray.Application.render_world() stingray.World.create_shading_environment() stingray.World.destroy_shading_environment() stingray.World.set_shading_environment() |
![]() | Core |
![]() |
apply ( self )![]() .shading_environment_template データ ファイルで指定されたマテリアルのグローバル シェーダ変数にブレンド結果を書き込みます。
|
self : | この関数を機能させるオブジェクト インスタンスを指定します。 この関数を呼び出す場合は、常にこの self パラメータを指定する必要があります。ドット . 呼び出し構文(オブジェクト指向のコロン : 呼び出し構文ではなく)を使用する必要があります。詳細については、この Stingray ヘルプ トピック、または Lua ドキュメントのこのページを参照してください。 |
この関数は値を返しません。 |
その他の関連リファレンス項目
![]() |
array_elements ( self, variable ) : integer![]() シェーディング環境内の指定された配列変数の要素数を返します。
|
self : | この関数を機能させるオブジェクト インスタンスを指定します。 この関数を呼び出す場合は、常にこの self パラメータを指定する必要があります。ドット . 呼び出し構文(オブジェクト指向のコロン : 呼び出し構文ではなく)を使用する必要があります。詳細については、この Stingray ヘルプ トピック、または Lua ドキュメントのこのページを参照してください。 | |
variable : | string | 値を取得する配列変数の名前を指定します。 |
integer |
配列内の要素の数を返します。 |
![]() |
array_scalar ( self, variable, n ) : number![]() シェーディング環境内で指定された配列変数の指定されたインデックスに格納されているスカラー値を返します。
|
self : | この関数を機能させるオブジェクト インスタンスを指定します。 この関数を呼び出す場合は、常にこの self パラメータを指定する必要があります。ドット . 呼び出し構文(オブジェクト指向のコロン : 呼び出し構文ではなく)を使用する必要があります。詳細については、この Stingray ヘルプ トピック、または Lua ドキュメントのこのページを参照してください。 | |
variable : | string | 値を取得する配列の名前を指定します。 |
n : | integer | 配列から取得する値のインデックスを指定します。 |
number |
配列の指定されたインデックスに格納されている値を返します。 |
![]() |
array_vector2 ( self, variable, n ) : stingray.Vector3![]() シェーディング環境内の指定された配列変数の指定されたインデックスに格納されている 2 次元ベクトル値を返します。
|
self : | この関数を機能させるオブジェクト インスタンスを指定します。 この関数を呼び出す場合は、常にこの self パラメータを指定する必要があります。ドット . 呼び出し構文(オブジェクト指向のコロン : 呼び出し構文ではなく)を使用する必要があります。詳細については、この Stingray ヘルプ トピック、または Lua ドキュメントのこのページを参照してください。 | |
variable : | string | 値を取得する配列の名前を指定します。 |
n : | integer | 配列から取得する値のインデックスを指定します。 |
配列の指定されたインデックスに格納されている値を返します。Z 軸コンポーネントは 0 になります。 |
![]() |
array_vector3 ( self, variable, n ) : stingray.Vector3![]() シェーディング環境内の指定された配列変数の指定されたインデックスに格納されている 3 次元ベクトル値を返します。
|
self : | この関数を機能させるオブジェクト インスタンスを指定します。 この関数を呼び出す場合は、常にこの self パラメータを指定する必要があります。ドット . 呼び出し構文(オブジェクト指向のコロン : 呼び出し構文ではなく)を使用する必要があります。詳細については、この Stingray ヘルプ トピック、または Lua ドキュメントのこのページを参照してください。 | |
variable : | string | 値を取得する配列の名前を指定します。 |
n : | integer | 配列から取得する値のインデックスを指定します。 |
配列の指定されたインデックスに格納されている値を返します。 |
![]() |
blend ( self, settings )![]() ライティング エディタで作成されたシェーディング環境設定間のブレンドを実行します。
|
self : | この関数を機能させるオブジェクト インスタンスを指定します。 この関数を呼び出す場合は、常にこの self パラメータを指定する必要があります。ドット . 呼び出し構文(オブジェクト指向のコロン : 呼び出し構文ではなく)を使用する必要があります。詳細については、この Stingray ヘルプ トピック、または Lua ドキュメントのこのページを参照してください。 | |
settings : | any(string, number)+ | 設定する項目の名前を指定し、各設定項目名の後に、その設定に割り当てる重みの数値も指定します。 + 表記は、指定されたタイプのインスタンスが 1 つまたは複数存在することを示しています。 any(...) 表記は、この項目が括弧内に示されている任意のタイプのインスタンスであることを示しています。 |
この関数は値を返しません。 |
設定と重み付けの宣言順に従ってブレンドが実行されます(Photoshop のレイヤ ブレンドと同様です)。シェーディング環境を有効にするには、少なくとも 1 つの設定を指定する必要があります。
たとえば、次のようになります。
stingray.ShadingEnvironment.blend(self.shading_environment, {"default", 1.0, "dense_fog", 0.5})
![]() |
material ( self, material_name ) : stingray.Material![]() シェーディング環境に関連付けられた、指定されたマテリアルを返します。
|
self : | この関数を機能させるオブジェクト インスタンスを指定します。 この関数を呼び出す場合は、常にこの self パラメータを指定する必要があります。ドット . 呼び出し構文(オブジェクト指向のコロン : 呼び出し構文ではなく)を使用する必要があります。詳細については、この Stingray ヘルプ トピック、または Lua ドキュメントのこのページを参照してください。 | |
material_name : | 取得するマテリアルの名前を指定します。 |
指定された名前を持つマテリアルを返します。 |
![]() |
scalar ( self, variable ) : number![]() シェーディング環境内の指定されたスカラー変数の値を返します。
|
self : | この関数を機能させるオブジェクト インスタンスを指定します。 この関数を呼び出す場合は、常にこの self パラメータを指定する必要があります。ドット . 呼び出し構文(オブジェクト指向のコロン : 呼び出し構文ではなく)を使用する必要があります。詳細については、この Stingray ヘルプ トピック、または Lua ドキュメントのこのページを参照してください。 | |
variable : | string | 値を取得するスカラー変数の名前を指定します。 |
number |
変数に格納されている値を返します。 |
![]() |
set_array_scalar ( self, variable, n, value )![]() シェーディング環境内の指定された配列内の指定されたインデックスの値を、指定されたスカラー値に設定します。
|
self : | この関数を機能させるオブジェクト インスタンスを指定します。 この関数を呼び出す場合は、常にこの self パラメータを指定する必要があります。ドット . 呼び出し構文(オブジェクト指向のコロン : 呼び出し構文ではなく)を使用する必要があります。詳細については、この Stingray ヘルプ トピック、または Lua ドキュメントのこのページを参照してください。 | |
variable : | string | 値を設定する配列変数の名前を指定します。 |
n : | integer | 値を格納する配列内のインデックスを指定します。 |
value : | number | 変数に設定する値です。 |
この関数は値を返しません。 |
![]() |
set_array_vector2 ( self, variable, n, vector2 )![]() シェーディング環境内の指定された配列内の指定されたインデックスの値を、指定された 2 次元ベクトル値に設定します。
|
self : | この関数を機能させるオブジェクト インスタンスを指定します。 この関数を呼び出す場合は、常にこの self パラメータを指定する必要があります。ドット . 呼び出し構文(オブジェクト指向のコロン : 呼び出し構文ではなく)を使用する必要があります。詳細については、この Stingray ヘルプ トピック、または Lua ドキュメントのこのページを参照してください。 | |
variable : | string | 値を設定する配列変数の名前を指定します。 |
n : | integer | 値を格納する配列内のインデックスを指定します。 |
vector2 : | 変数に設定する値です。X および Y コンポーネントのみが使用されます。 |
この関数は値を返しません。 |
![]() |
set_array_vector3 ( self, variable, n, vector3 )![]() シェーディング環境内の指定された配列内の指定されたインデックスの値を、指定された 3 次元ベクトル値に設定します。
|
self : | この関数を機能させるオブジェクト インスタンスを指定します。 この関数を呼び出す場合は、常にこの self パラメータを指定する必要があります。ドット . 呼び出し構文(オブジェクト指向のコロン : 呼び出し構文ではなく)を使用する必要があります。詳細については、この Stingray ヘルプ トピック、または Lua ドキュメントのこのページを参照してください。 | |
variable : | string | 値を設定する配列変数の名前を指定します。 |
n : | integer | 値を格納する配列内のインデックスを指定します。 |
vector3 : | 変数に設定する値です。 |
この関数は値を返しません。 |
![]() |
set_scalar ( self, variable, scalar )![]() シェーディング環境のスカラー変数を指定された値に設定します。
|
self : | この関数を機能させるオブジェクト インスタンスを指定します。 この関数を呼び出す場合は、常にこの self パラメータを指定する必要があります。ドット . 呼び出し構文(オブジェクト指向のコロン : 呼び出し構文ではなく)を使用する必要があります。詳細については、この Stingray ヘルプ トピック、または Lua ドキュメントのこのページを参照してください。 | |
variable : | string | 設定する値を持つスカラー変数の名前です。 |
scalar : | number | 変数に格納する新しい値を指定します。 |
この関数は値を返しません。 |
![]() |
set_vector2 ( self, variable, vector2 )![]() シェーディング環境の 2 次元ベクトル変数を指定された値に設定します。
|
self : | この関数を機能させるオブジェクト インスタンスを指定します。 この関数を呼び出す場合は、常にこの self パラメータを指定する必要があります。ドット . 呼び出し構文(オブジェクト指向のコロン : 呼び出し構文ではなく)を使用する必要があります。詳細については、この Stingray ヘルプ トピック、または Lua ドキュメントのこのページを参照してください。 | |
variable : | string | 設定する値を持つベクトル変数の名前です。 |
vector2 : | 変数に格納する新しい値を指定します。 |
この関数は値を返しません。 |
![]() |
set_vector3 ( self, variable, vector3 )![]() シェーディング環境の 3 次元ベクトル変数を指定された値に設定します。
|
self : | この関数を機能させるオブジェクト インスタンスを指定します。 この関数を呼び出す場合は、常にこの self パラメータを指定する必要があります。ドット . 呼び出し構文(オブジェクト指向のコロン : 呼び出し構文ではなく)を使用する必要があります。詳細については、この Stingray ヘルプ トピック、または Lua ドキュメントのこのページを参照してください。 | |
variable : | string | 設定する値を持つベクトル変数の名前です。 |
vector3 : | 変数に格納する新しい値を指定します。 |
この関数は値を返しません。 |
![]() |
vector2 ( self, variable ) : stingray.Vector3![]() シェーディング環境内の指定された 2 次元変数の値を返します。
|
self : | この関数を機能させるオブジェクト インスタンスを指定します。 この関数を呼び出す場合は、常にこの self パラメータを指定する必要があります。ドット . 呼び出し構文(オブジェクト指向のコロン : 呼び出し構文ではなく)を使用する必要があります。詳細については、この Stingray ヘルプ トピック、または Lua ドキュメントのこのページを参照してください。 | |
variable : | string | 値を取得するベクトル変数の名前を指定します。 |
変数に格納されている値を返します。Z 軸コンポーネントは 0 になります。 |
![]() |
vector3 ( self, variable ) : stingray.Vector3![]() シェーディング環境内の指定された 3 次元変数の値を返します。
|
self : | この関数を機能させるオブジェクト インスタンスを指定します。 この関数を呼び出す場合は、常にこの self パラメータを指定する必要があります。ドット . 呼び出し構文(オブジェクト指向のコロン : 呼び出し構文ではなく)を使用する必要があります。詳細については、この Stingray ヘルプ トピック、または Lua ドキュメントのこのページを参照してください。 | |
variable : | string | 値を取得するベクトル変数の名前を指定します。 |
変数に格納されている値を返します。 |