【发布时间】:2016-09-20 06:00:40
【问题描述】:
我创建并呈现一个列表,其中包含 Helix ViewPort 中具有特定位置的 20 个 SpotLight 点。我总是用计时器改变SpotLight 的颜色。 ViewPort 灯设置为:
<helix:DirectionalHeadLight Position="2,3,0" Brightness="0.30"></helix:DirectionalHeadLight>
我还创建了一个列表并渲染了一个包含 20 个球体的列表SphereVisual3D。 SpotLights 和SphereVisual3Ds 有相似的位置。比我为 spehres 设置材料(在本例中为靛蓝)。见图片:
图 1:SphereVisual3D 位置
图 2:SpotLight 位置(每个SpotLight 有不同的颜色)
我想保持球体Material 不变,而不从SpotLights 反射light。
我尝试了所有 3 种类型的 Material:
1:sphere.Material = new DiffuseMaterial(new SolidColorBrush(Colors.Indigo));
图 1.1:带有 DiffuseMaterial 和 SpotLights 的 Spehres
2:sphere.Material = new SpecularMaterial(new SolidColorBrush(Colors.Indigo),1);
图 2.1:带有 SpecularMaterial 和 SpotLights 的 Spehres
3:sphere.Material = new EmissiveMaterial(new SolidColorBrush(Colors.Indigo));
图 3.1:带有 SpecularMaterial 和 SpotLights 的 Spehres
是否可以设置一个不反射光线并保持其颜色的Material?有没有可能设置纯色?
【问题讨论】:
标签: wpf 3d spotlight helix-3d-toolkit