我创建并渲染了一个包含 20SpotLight
个点的列表,Helix
ViewPort
其中包含特定位置。有了计时器,我总是改变SpotLight
. 灯光ViewPort
设置为:
<helix:DirectionalHeadLight Position="2,3,0" Brightness="0.30"></helix:DirectionalHeadLight>
比我还创建一个列表并呈现 20 个球体的列表SphereVisual3D
。SpotLight
s 和s的SphereVisual3D
位置相似。比我为 spehres 设置材料(在本例中为靛蓝)。见图片:
图1:SphereVisual3D
职位
图2:SpotLight
位置(每个颜色不同SpotLight
)
我想保持球体Material
相同,而不light
从SpotLights
. 我尝试了所有 3 种类型Material
:
1:sphere.Material = new DiffuseMaterial(new SolidColorBrush(Colors.Indigo));
DiffuseMaterial
图 1.1:带有和的 SpehresSpotLights
2:sphere.Material = new SpecularMaterial(new SolidColorBrush(Colors.Indigo),1);
SpecularMaterial
图 2.1:带有和的 SpehresSpotLights
3:sphere.Material = new EmissiveMaterial(new SolidColorBrush(Colors.Indigo));
SpecularMaterial
图 3.1:带有和的 SpehresSpotLights
是否可以设置Material
不反射光线并保持其颜色的a?有没有可能设置纯色?