为什么 DirectionalLight 不投射阴影?

why DirectionalLight is not casting shadow?

代码:

Color color = new Color(1f,1f,1f,0.9f);
DirectionalLight directionalLight = new DirectionalLight(rayHandler,200,color,-90f);
directionalLight.setSoftnessLength(0);

结果:

当光线直接从上方照射时,为什么它不会从盒子投射阴影?

这可能是由几件事造成的。要检查的一些事项:

  1. 检查您的 RayHandler 是否设置为模糊。用小物体模糊可以隐藏阴影。
  2. 检查光线处理程序中是否启用了阴影。
  3. 检查环境光是否关闭或低于定向光。如果环境光太强,它可能会隐藏阴影。
  4. 检查你的物体是否大于 0.1f,因为这是 box2dlights 可以使用的最小距离
  5. 检查光线是否设置为 X 射线
  6. 检查柔软长度。柔和度高的灯光会透过小物体渗出光线。