• Godot Help3D
  • Double sided mesh with cull mode and only lights one side.

I changed the material for no cull mode to show both sides of the mesh, but it only puts light on the side with the normals. Will I need to edit the mesh and create two sides?

The other side does have normals, they are just the normals for the front face. So this is working as expected.

I used an omni light for testing it to be certain, and it only giving me light on one side of it. It's not working for directional light either. I don't know what could be wrong with it.

Hmm.. maybe I was mistaken. Seems to work fine for me.

For some reason my mesh is only getting light on one side. Can you try smooth shading your mesh and see if it gives error? I don't know what could be wrong with it, except maybe the material.

It looks to be fine on one of the sails. I'd open that model up in blender and see if there's perhaps duplicate vertices or faces. That can also cause such issues.

Right, there is shading, so it's not completely broken. I've found that you sometimes have to reset the normals.

In Blender you can do recalculate outside (usually works for solid meshes). Or you can do set to face and then click smooth shading.

    cybereality In Blender you can do recalculate outside (usually works for solid meshes).

    If my hunch about duplicate geometry is correct then recalculating normals would fail. Worth a try tho.

    Well it's definitely something with the normals. Could also be non unit length normals. Like if the mesh was scaled or modified without applying the transform and modifier before exporting.

    I checked it for duplicates, they I could not find any. I recalculated the normals but the problem is still there. I checked the scale to make sure it was all applied and they are. The sails, the part I am having trouble with is attached to a rig if that might have something to do with the problem. If not, then my guess is the linux drivers. I am using an nvidia. Also, the project is gles 2.0

    I temporally changed the project into gles 3.0 and the double sided sail now works as expected. So the problem seems to be with gles 2.0 driver. I wanted to use gles 2.0 because of supported more low end machines. But I might have to switch into gles 3.0 just to make it work.

    Should I just be using gles 3.0 anyways? My target is desktop machines. But I want the old machines included with the new machines.