Light.Direction
Direction プロパティ
使用例
- 振り子のように揺れるディレクショナル ライトを設定する
ワールド空間で光が指す方向。Vector3 構造体で指定される。このメンバは、ディレクショナル ライトおよびスポット ライトの場合にのみ意味を持つ。このベクトルは正規化する必要はないが、ゼロでない長さを持たなければならない。
定義
Visual Basic | Public Property Direction As Vector3 |
C# | public Vector3 Direction { get; set; } |
Managed C++ | public: __property Vector3 get_Direction(); public: __property void set_Direction(Vector3); |
JScript | public function get Direction() : Vector3 public function set Direction(Vector3); |
プロパティ値
Microsoft.DirectX.Vector3.
これは読み取り/書き込み可能プロパティである。
使用例
振り子のように揺れるディレクショナル ライトを設定する
この例では、Microsoft® Direct3D® オブジェクトを照らす、振り子のように揺れる色付きのディレクショナル ライトを設定する方法を示す。
ここでは、プライベート メソッドの SetUpLights で Light オブジェクトをインスタンス化している。このオブジェクトの Type プロパティは、LightType 列挙の Directional 定数に設定する。Light.Diffuse プロパティは、システム定義の暗い青緑色に設定する。
Light.Direction プロパティは、光源の方向を指定する Vector3 構造体を受け取る。この構造体には (x,y,z) フィールド (y は 1.0 の定数、x および z は時間によって変わる値が設定される) が含まれる。
using Microsoft.DirectX.Direct3D;
Device device = null; // Create rendering device
private void SetupLights() // Method to set up lighting of the object
{
device.RenderState.Lighting = true; // Make sure lighting is enabled
// Set up a dark turquoise-colored directional light, with an oscillating
// direction. Note that many lights may be active at a time (but each one
// slows downthe rendering of the scene). However, here just use one.
Light light = new Light(); // Void constructor
light.Type = LightType.Directional;
light.Diffuse = System.Drawing.Color.DarkTurquoise;
light.Direction = new DirectX.Vector3(
(float)System.Math.Cos(System.Environment.TickCount / 250.0f),
1.0f,
(float)System.Math.Sin(Environment.TickCount / 250.0f));
}
対象
© 2002 Microsoft Corporation. All rights reserved. Terms of use.