LightType 列挙型
LightType 列挙型
使用例
- 振り子のように揺れるディレクショナル ライトを設定する
ライトの種類を定義する。
定義
Visual Basic | Public Enum LightType |
C# | public enum LightType |
Managed C++ | __value public enum LightType |
JScript | public enum LightType |
定数
定数名 | 説明 |
---|---|
Directional | ライトは TermDirectional 光源である。これは無限大の距離でポイント ライトを用いることに等しい。 |
Spot | ライトは TermSpotlight 光源である。このライトは、照射がコーン内に制限される点を除くと、ポイント ライトに似ている。このライト タイプには、方向とコーンの形状を決めるその他のパラメータがいくつかある。これらのパラメータについては、「D3dlight9Otherstructure」を参照すること。 |
Point | ライトはポイント光源である。ライトは空間内に配置され、全方向に光を照射する。 |
使用例
振り子のように揺れるディレクショナル ライトを設定する
この例では、Microsoft® Direct3D® オブジェクトを照らす、振り子のように揺れる色付きのディレクショナル ライトを設定する方法を示す。
ここでは、private の 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));
}
列挙の情報
名前空間 | Microsoft.DirectX.Direct3D |
アセンブリ | Microsoft.DirectX.Direct3D (microsoft.directx.direct3d.dll) |
厳密名 | Microsoft.DirectX.Direct3D, Version=0293, Culture=neutral, PublicKeyToken=d3231b57b74a1492 |
© 2002 Microsoft Corporation. All rights reserved. Terms of use.