I'm encountering a strange issue when using an OmniLight3D near a planar surface (e.g., the ceiling and floor of the interior of a room) where the light abruptly ends in a line.

  • It occurs with a Diffuse Mode of Burley and Lambert
  • It occurs with and without textures applied
  • It occurs on the ceiling and floor
  • It does not occur with a Diffuse Mode of Lambert Wrap and Toon
  • It does not occur on the walls

I've tried configuring every setting I can think of without any luck, aside from changing the Diffuse Mode of the material which doesn't seem right.

Perhaps a bug? I didn't find anything in the list of Github issues, but it's hard to be certain with how many issues are filed.

Burley

Lambert

Lambert Wrap

Toon

Burley on a wall

  • Tomcat replied to this.
  • Good news, everyone! I figured it out.

    I had been exporting my meshes from Blender without tangents and I had disabled "Ensure Tangents" in Godot's import settings. I didn't think I needed tangents because I'm not doing any fancy normal mapping, but it seems they're required after all.

    vertexmachina I'm encountering a strange issue when using an OmniLight3D near a planar surface (e.g., the ceiling and floor of the interior of a room) where the light abruptly ends in a line.

    I vaguely recall a similar problem, but I don't remember the solution anymore.

    Can you share a problematic scene?

      Tomcat

      Someone else posted about the same issue here and you responded there, but there wasn't really a solution. It went away with using a different normal map but I'm using nothing but a simple albedo texture, and it occurs even without a texture (as you noted in your post).

      When testing with a Godot-native BoxMesh there is no issue. It's only when using an imported mesh that it occurs. It seems like a bug to me.

      I've attached a scene. Thanks for the help.

      godot-testing.zip
      3kB

        vertexmachina Someone else posted about the same issue here and you responded there

        That means you're better at searching than I am. 😃

        How did you make the cube and can you post the source?

        vertexmachina It went away with using a different normal map but I'm using nothing but a simple albedo texture, and it occurs even without a texture (as you noted in your post).

        Try using a perfectly flat normalmap, doesn't have to be big in resolution. Could be just 32x32 px. See if that makes a difference. If it does, open an issue on the tracker.

        Good news, everyone! I figured it out.

        I had been exporting my meshes from Blender without tangents and I had disabled "Ensure Tangents" in Godot's import settings. I didn't think I needed tangents because I'm not doing any fancy normal mapping, but it seems they're required after all.