【发布时间】:2010-02-11 23:36:03
【问题描述】:
我正在尝试让自定义 Shape3D 在 java 3D 中受到 DirectedLight 的影响,但我所做的一切似乎都不起作用。
Shape 的几何图形为 IndexedQuadArray,设置并应用了 NORMAL 标志,确保将法线向量应用于正确的顶点 - 使用索引向量
我已为外观指定了材质(具有指定的颜色和光泽度,以及没有)
我也将灯放在与 Shape 相同的 BranchGroup 上,但它仍然不起作用。
事实上,当我在形状中添加法线时,对象似乎消失了 - 没有它们,它是平面阴影,因此所有面都是相同的阴影。
我只能认为我忘记包含一些简单得可笑的东西,或者做错了什么。
实际上,为了测试灯光,我在 Shape 旁边放了一个Sphere,球体受到影响并正确点亮,但形状仍然没有。两者都在同一个BranchGroup
[也有点奇怪——如果我平移球体,如果我将它向任何方向移动大于 31,它就会消失...... [我的视图设置为大约 700,因为我正在处理大小不超过 600 英寸的物体宽度]
编辑:在可能相关的官方教程中找到了这个
在实时场景图中正确指定用于着色的视觉对象(即具有 Material 对象的对象)但在所有光源对象的影响范围之外会呈现黑色。
【问题讨论】: