v2.0
ファイルからパラメータの DataSource であるオブジェクトを作成し、パラメータに接続します。このメソッドは、シェーダプリセットのファイル名に基づいてShaderをパラメータに接続するために使用できます。
注: このメソッドでは output arguments が使用されます。C# および一部のスクリプト言語(JScript、PerlScript、Python など)は、リファレンスによって渡される引数をサポートしていません。通常、スクリプトの場合は ISIVTCollection を使用して出力引数を取得しますが、このメソッドはすでに値を戻してします(C#では ISIVTCollection にアクセスする手段がないため、この回避策は使用できません)。
この場合の唯一の回避策は、出力引数と戻り値の両方を 1 つの配列で戻す VBScript のカスタム コマンドを作成することです。詳細については、「What Happens when the Function Already Returns a Value?」を参照してください。
DataSource Parameter.ConnectFromFile( String in_FileName, Object& out_pvPrevDataSource ); |
oReturn = Parameter.ConnectFromFile( FileName, [PrevDataSource] ); |
使用される定義に基づくタイプの新しく作成されたオブジェクトです。たとえば、Shader(DataSourceを参照)。
| パラメータ | タイプ | 説明 |
|---|---|---|
| FileName | String | データソース定義を含むファイル(プリセットファイルなど。Shader Presets のリストを参照)の名前 |
| PrevDataSource | DataSource | 以前に接続されていた DataSource(存在する場合)。以前に接続されていた DataSource がない場合は、Nothing が戻されます。 |
'
' This example illustrates how to connect a shader from a shader preset file.
'
NewScene , false
set grid = Application.ActiveSceneRoot.AddGeometry( "Cube", "MeshSurface" )
set mat = grid.AddMaterial
set surface = mat.Parameters("Surface")
set phong = surface.ConnectFromFile( "$SI_HOME\Data\DSPresets\Shaders\Material\Phong.Preset" )
set shadow = mat.Parameters("Shadow")
call shadow.Connect( phong )
set photon = mat.Parameters("Photon")
call photon.Connect( phong ) |