Direct3DRMLight

Aアプリケーションは、照明と互いにやり取りするためにDirect3DRMLightインターフェイスのメソッドを使用する。

Direct3DRMLightインターフェイスのメソッドは、以下のグループにまとめることができる。

減衰 GetConstantAttenuation
GetLinearAttenuation
GetQuadraticAttenuation
SetConstantAttenuation
SetLinearAttenuation
SetQuadraticAttenuation
GetColor
SetColor
SetColorRGB
有効フレーム GetEnableFrame
SetEnableFrame
照明タイプ GetType
SetType
範囲 GetRange
SetRange
スポット照明オプション GetPenumbra
GetUmbra
SetPenumbra
SetUmbra

Direct3DRMLightインターフェイスは、Direct3DRMObjectインターフェイスから次のメソッドを継承する。

Direct3DRMLightオブジェクトは、Direct3DRM3.CreateLightまたはDirect3DRM3.CreateLightRGBメソッドの呼び出しによって取得される。

Direct3DRMLight.GetColor

Direct3DRMLight

現在のDirect3DRMLightオブジェクトの色を取得する。

構文

object.GetColor( ) As Long

要素

object
Direct3DRMLightオブジェクトを表すオブジェクト式。

戻り値

色を返す。

エラー値

エラーのリストについては、「Direct3D保持モードのエラー値」を参照すること。

参照

Direct3DRMLight.SetColor

Direct3DRMLight.GetConstantAttenuation

Direct3DRMLight

Direct3DRMLightオブジェクトの減衰定数を取得する。

構文

object.GetConstantAttenuation( ) As Single

要素

object
Direct3DRMLightオブジェクトを表すオブジェクト式。

戻り値

減衰定数を返す。

エラー値

エラーのリストについては、「Direct3D保持モードのエラー値」を参照すること。

注意

位置を持つ(無限に遠くない)照明には減衰定数があり、光源からの距離に基づいて照明の減衰を計算できる。

全減衰係数の公式は次のとおりである。

1 / [constant_attenuation_factor + distance * linear_attenuation_factor + (distance**2) * quadratic_attenuation_factor]

全減衰係数は1より大きくならない。減衰係数が指定されないと、デフォルト値は、減衰定数に対しては1.0、1次減衰係数に対しては0.0、2次減衰係数に対しては0.0である。

参照

Direct3DRMLight.SetConstantAttenuation

Direct3DRMLight.GetEnableFrame

Direct3DRMLight

照明の有効フレームを取得する。

構文

object.GetEnableFrame( ) As Direct3DRMFrame3

要素

object
Direct3DRMLightオブジェクトを表すオブジェクト式。

戻り値

成功すればDirect3DRMFrame3オブジェクトを、失敗すればエラーを返す。エラーのリストについては、「Direct3D保持モードのエラー値」を参照すること。

参照

Direct3DRMLight.SetEnableFrame

Direct3DRMLight.GetLinearAttenuation

Direct3DRMLight

照明の1次減衰係数を取得する。

構文

object.GetLinearAttenuation( ) As Single

要素

object
Direct3DRMLightオブジェクトを表すオブジェクト式。

戻り値

1次減衰係数を返す。

エラー値

エラーのリストについては、「Direct3D保持モードのエラー値」を参照すること。

注意

位置を持つ(無限に遠くない)照明には減衰定数があり、光源からの距離に基づいて照明の減衰を計算できる。

T全減衰係数の公式は次のとおりである。

1 / [constant_attenuation_factor + distance * linear_attenuation_factor + (distance**2) * quadratic_attenuation_factor]

全減衰係数は1より大きくならない。減衰係数が指定されないと、デフォルト値は、減衰定数に対しては1.0、1次減衰係数に対しては0.0、2次減衰係数に対しては0.0である。

参照

Direct3DRMLight.SetLinearAttenuation

Direct3DRMLight.GetPenumbra

Direct3DRMLight

スポットライト暗影部の角度を取得する。

構文

object.GetPenumbra( ) As Single

要素

object
Direct3DRMLightオブジェクトを表すオブジェクト式。

戻り値

ラジアン単位の暗影部の値を返す。

エラー値

エラーのリストについては、「Direct3D保持モードのエラー値」を参照すること。

参照

Direct3DRMLight.SetPenumbra

Direct3DRMLight.GetQuadraticAttenuation

Direct3DRMLight

照明の2次減衰係数を取得する。

構文

object.GetQuadraticAttenuation( ) As Single

要素

object
Direct3DRMLightオブジェクトを表すオブジェクト式。

戻り値

2次減衰係数を返す。

エラー値

エラーのリストについては、「Direct3D保持モードのエラー値」を参照すること。

注意

位置を持つ(無限に遠くない)照明には減衰定数があり、照明からの距離に基づいて照明の減衰を計算できる。

全減衰係数の公式は次の通りである。

1 / [constant_attenuation_factor + distance * linear_attenuation_factor + (distance**2) * quadratic_attenuation_factor]

全減衰係数は1より大きくならない。減衰係数が指定されないと、デフォルト値は、減衰定数に対しては1.0、1次減衰係数に対しては0.0、2次減衰係数に対しては0.0である。

参照

Direct3DRMLight.SetQuadraticAttenuation

Direct3DRMLight.GetRange

Direct3DRMLight

現在のDirect3DRMLightオブジェクトの範囲を取得する。

構文

object.GetRange( ) As Single

要素

object
Direct3DRMLightオブジェクトを表すオブジェクト式。

戻り値

範囲を示す値を返す。

エラー値

エラーのリストについては、「Direct3D保持モードのエラー値」を参照すること。

参照

Direct3DRMLight.SetRange

Direct3DRMLight.GetType

Direct3DRMLight

指定された照明のタイプを取得する。

構文

object.GetType( ) As CONST_D3DRMLIGHTTYPE

要素

object
Direct3DRMLightオブジェクトを表すオブジェクト式。

戻り値

CONST_D3DRMLIGHTTYPE列挙型のメンバの1つを返す。

エラー値

エラーのリストについては、「Direct3D保持モードのエラー値」を参照すること。

参照

Direct3DRMLight.SetType

Direct3DRMLight.GetUmbra

Direct3DRMLight

Direct3DRMLightオブジェクトの明部の角度を取得する。デフォルトは、0.4ラジアンである。

構文

object.GetUmbra( ) As Single

要素

object
Direct3DRMLightオブジェクトを表すオブジェクト式。

戻り値

ラジアン単位の明部の角度を返す。

エラー値

エラーのリストについては、「Direct3D保持モードのエラー値」を参照すること。

参照

Direct3DRMLight.SetUmbra

Direct3DRMLight.SetColor

Direct3DRMLight

指定された照明の色を設定する。

構文

object.SetColor(c As Long)

要素

object
Direct3DRMLightオブジェクトを表すオブジェクト式。
c
照明の新しい色。赤、緑、青の色要素だけでなく、アルファ要素も必ずセットする。そうしないと、オブジェクトが可視にならないことがある。色は4バイトのLongで表される。高バイトはアルファ要素であり、後続のバイトが赤、緑、青を定義する。より簡単に色を構築するにはDirectX7オブジェクトのCreateColorRGBAを使い、フルアルファを希望しているだけの場合はSetColorRGBを使う。

エラー値

エラーのリストについては、「Direct3D保持モードのエラー値」を参照すること。

注意

このメソッドは、Direct3DRMLightInterpolatorオブジェクトにカラーキーを追加するためにも使用する。

参照

Direct3DRMLight.GetColor

Direct3DRMLight.SetColorRGB

Direct3DRMLight

指定された照明の色をR、B、Gそれぞれの値で設定する。

構文

object.SetColorRGB(r As Single,
  g As Single,
  b As Single)

要素

object
Direct3DRMLightオブジェクトを表すオブジェクト式。
r, g, b
照明の新しい色。

エラー値

エラーのリストについては、「Direct3D保持モードのエラー値」を参照すること。

注意

このメソッドは、Direct3DRMLightInterpolatorオブジェクトにRGBカラーキーを追加するためにも使用する。

Direct3DRMLight.SetConstantAttenuation

Direct3DRMLight

照明の減衰係数を設定する。

構文

object.SetConstantAttenuation(atn As Single)

要素

object
Direct3DRMLightオブジェクトを表すオブジェクト式。
atn
新しい減衰定数。

エラー値

エラーのリストについては、「Direct3D保持モードのエラー値」を参照すること。

注意

位置を持つ(無限に遠くない)照明には減衰定数があり、照明からの距離に基づいて照明の減衰を計算できる。

全減衰係数の公式は次のとおりである。

1 / [constant_attenuation_factor + distance * linear_attenuation_factor + (distance**2) * quadratic_attenuation_factor]

全減衰係数は1より大きくならない。減衰係数が指定されないと、デフォルト値は、減衰定数に対しては1.0、1次減衰係数に対しては0.0、2次減衰係数に対しては0.0である。

このメソッドは、Direct3DRMLightInterpolatorオブジェクトに減衰定数キーを追加するためにも使用する。

参照

Direct3DRMLight.GetConstantAttenuation

Direct3DRMLight.SetEnableFrame

Direct3DRMLight

照明の有効フレームを設定する。

構文

object.SetEnableFrame(f As Direct3DRMFrame3)

要素

object
Direct3DRMLightオブジェクトを表すオブジェクト式。
f
Direct3DRMLightオブジェクトのDirect3DRMFrame3インターフェイス。このフレームの子フレームも、この照明が有効になる。

エラー値

エラーのリストについては、「Direct3D保持モードのエラー値」を参照すること。

参照

Direct3DRMLight.GetEnableFrame

Direct3DRMLight.SetLinearAttenuation

Direct3DRMLight

照明の1次減衰係数を設定する。

構文

object.SetLinearAttenuation(atn As Single)

要素

object
Direct3DRMLightオブジェクトを表すオブジェクト式。
atn
新しい1次減衰係数。

エラー値

エラーのリストについては、「Direct3D保持モードのエラー値」を参照すること。

注意

位置を持つ(無限に遠くない)照明には減衰定数があり、照明からの距離に基づいて照明の減衰を計算できる。

全減衰係数の公式は次のとおりである。

1 / [constant_attenuation_factor + distance * linear_attenuation_factor + (distance**2) * quadratic_attenuation_factor]

全減衰係数は1より大きくならない。減衰係数が指定されないと、デフォルト値は、減衰定数に対しては1.0、1次減衰係数に対しては0.0、2次減衰係数に対しては0.0である。

このメソッドは、Direct3DRMLightInterpolatorオブジェクトに1次減衰定数キーを追加するためにも使用する。

参照

Direct3DRMLight.GetLinearAttenuation

Direct3DRMLight.SetPenumbra

Direct3DRMLight

円錐の暗影部の角度を設定する。

構文

object.SetPenumbra(p As Single)

要素

object
Direct3DRMLightオブジェクトを表すオブジェクト式。
p
ラジアン単位の新しい暗影部の角度。この角度は暗部の角度より大きいか、等しくなくてはいけない。暗影部の角度を明部の角度よりも小さく設定した場合、暗影部は明部と同じ角度になる。デフォルト値は0.5ラジアンである。

エラー値

エラーのリストについては、「Direct3D保持モードのエラー値」を参照すること。

注意

このメソッドは、Direct3DRMLightInterpolatorオブジェクトに影角度キーを追加するためにも使用する。

参照

Direct3DRMLight.GetPenumbra

Direct3DRMLight.SetQuadraticAttenuation

Direct3DRMLight

照明の2次減衰係数を設定する。

構文

object.SetQuadraticAttenuation(atn As Single)

要素

object
Direct3DRMLightオブジェクトを表すオブジェクト式。
atn
新しい2次減衰係数。

エラー値

エラーのリストについては、「Direct3D保持モードのエラー値」を参照すること。

注意

位置を持つ(無限に遠くない)照明には減衰定数があり、照明からの距離に基づいて照明の減衰を計算できる。

全減衰係数の公式は次のとおりである。

1 / [constant_attenuation_factor + distance * linear_attenuation_factor + (distance**2) * quadratic_attenuation_factor]

全減衰係数は1より大きくならない。減衰係数が指定されないと、デフォルト値は、減衰定数に対しては1.0、1次減衰係数に対しては0.0、2次減衰係数に対しては0.0である。

このメソッドは、Direct3DRMLightInterpolatorオブジェクトに2次減衰キーを追加するためにも使用する。

参照

Direct3DRMLight.GetQuadraticAttenuation

Direct3DRMLight.SetRange

Direct3DRMLight

スポットライトの範囲を設定する。この照明は、範囲内にあるオブジェクトに限り影響する。

構文

object.SetRange(mg As Single)

要素

object
Direct3DRMLightオブジェクトを表すオブジェクト式。
mg
新しい範囲。デフォルト値は、256モデル空間単位である。

エラー値

エラーのリストについては、「Direct3D保持モードのエラー値」を参照すること。

注意

範囲プロパティは、スポットライトだけのものである。このメソッドは、Direct3DRMLightInterpolatorオブジェクトに範囲キーを追加するためにも使用する。

参照

Direct3DRMLight.GetRange

Direct3DRMLight.SetType

Direct3DRMLight

照明のタイプを変更する。

構文

object.SetType(t As CONST_D3DRMLIGHTTYPE)

要素

object
Direct3DRMLightオブジェクトを表すオブジェクト式。
t
新しい照明タイプをCONST_D3DRMLIGHTTYPE列挙型のメンバの1つで指定する。

エラー値

エラーのリストについては、「Direct3D保持モードのエラー値」を参照すること。

参照

Direct3DRMLight.GetType

Direct3DRMLight.SetUmbra

Direct3DRMLight

円錐の明部の角度を設定する。

構文

object.SetUmbra(u As Single)

要素

object
Direct3DRMLightオブジェクトを表すオブジェクト式。
u
ラジアン単位の新しい明部の角度。この角度は、暗影部の角度よりも小さいか、等しくなくてはいけない。明部の角度を暗影部の角度より大きく設定した場合、明部は暗影部と同じ角度となる。デフォルト値は0.4ラジアンである。

エラー値

エラーのリストについては、「Direct3D保持モードのエラー値」を参照すること。

注意

このメソッドは、Direct3DRMLightInterpolatorオブジェクトに影角度キーを追加するためにも使用する。

参照

Direct3DRMLight.GetUmbra


トップに戻る トップに戻る
© 1999 Microsoft and/or its suppliers. All rights reserved. Terms of Use.