Light — Aspose.3D FOSS for .NET
Spațiu de nume: Aspose.ThreeD.Entities
Methods
Methods Light clasa reprezintă o sursă de lumină atașată unui nod de scenă. Extinde Entity și suportă patru tipuri de lumină: direcțională, punctuală, spot și ambientală. O lumină este plasată în scenă prin crearea unui nod copil și atașarea Light entității la acesta.
using Aspose.ThreeD;
using Aspose.ThreeD.Entities;
using Aspose.ThreeD.Utilities;
var scene = new Scene();
// Add a point light to the scene
var light = new Light(LightType.POINT, "SunLight");
light.Color = new Vector3(1.0f, 0.95f, 0.8f);
light.Intensity = 2.0f;
light.Range = 10.0f;
scene.RootNode.CreateChildNode("sun", light);Methods
| Methods | Methods |
|---|---|
Light() | Creează o lumină punctuală cu nume implicit "Light", culoare albă, intensitate 1.0, rază 1.0 |
Light(LightType type) | Creează o lumină de tipul specificat cu nume implicit "Light" |
Light(LightType type, string name) | Creează o lumină numită de tipul specificat |
Methods
| Methods | Methods | Methods | Methods |
|---|---|---|---|
Type | LightType | obține | Tipul luminii (POINT, SPOT, DIRECTIONAL sau AMBIENT). Setat la construcție; doar citire ulterior. |
Color | Vector3 | get/set | Culoarea RGB a luminii. Implicit: Vector3.One (alb) |
Intensity | float | get/set | Multiplicator de luminozitate. Implicit: 1.0 |
Range | float | get/set | Distanța maximă de influență pentru lumini punctiforme și spot. Implicit: 1.0 |
Methods
| Methods | Tip de returnare | Methods |
|---|---|---|
GetBoundingBox() | BoundingBox | Returnează o cutie de delimitare goală (lumini nu au extensie geometrică) |
LightType
LightType este o clasă de tip valoare cu patru instanțe publice statice:
| Methods | Methods |
|---|---|
LightType.POINT | Emite lumină în mod egal în toate direcțiile dintr-un punct în spațiu |
LightType.SPOT | Emite un con de lumină în direcția în care este orientat nodul |
LightType.DIRECTIONAL | Emite raze de lumină paralele ca și cum ar proveni dintr-o sursă infinit departe |
LightType.AMBIENT | Adaugă iluminare ambientală uniformă; raza și direcția nu sunt utilizate |
LightType are o proprietate:
| Methods | Methods | Methods | Methods |
|---|---|---|---|
Name | string | get | Numele afișat al tipului de lumină ("Point", "Spot", "Directional", "Ambient") |
Methods
Adaugă o lumină direcțională și una punctuală într-o scenă și salvează în FBX:
using Aspose.ThreeD;
using Aspose.ThreeD.Entities;
using Aspose.ThreeD.Utilities;
var scene = new Scene();
// Directional light — positioned and oriented via the node Transform
var dirLight = new Light(LightType.DIRECTIONAL, "Sun");
dirLight.Color = new Vector3(1.0f, 1.0f, 0.9f);
dirLight.Intensity = 1.5f;
scene.RootNode.CreateChildNode("dirLight", dirLight);
// Point light with limited range
var pointLight = new Light(LightType.POINT, "Lamp");
pointLight.Color = new Vector3(1.0f, 0.6f, 0.3f);
pointLight.Intensity = 3.0f;
pointLight.Range = 5.0f;
scene.RootNode.CreateChildNode("lamp", pointLight);
scene.Save("lit_scene.fbx");