Created attachment 177228 [details] 90deg rotated 3D scene with extruded object Open attached document. It contains a scene with an extruded circle. The scene is rotated by 90deg so that you look onto the extruded facets and do not see front or back face. The light direction is centered and same as you view direction. Open the '3D Effects' dialog page 'Shading'. Change Shading to 'Flat' (don't forget to click on Assign). Notice the specular rendering of the center facets. Change Shading to 'Phong'. You see the light as specular spot light. Change to 'Gouraud'. No specular light. Expected: The facets are specular as in mode 'Flat', only that the transition between neighbored facets is not sharp but smooth. The facets of a rotation object are specular in mode 'Gouraud', similar to mode 'Flat'. It seems, that 'Gouraud' uses for extruded shapes the normal of the front face instead of the facets. I come across this problem, because Word exports extruded custom shapes with shade mode 'Gouraud' to odt. And because extruded custom shapes use the same 3D engine than regular 3D shapes, the specular light is missing for those shapes too.
On pc Debian x86-64 with master sources updated today, I could reproduce this.
ShadeMode just influences how the normals of the facets are used to determine lighting, together with the light definition. All follows pretty straightforward the basic definitions for 3D graphics rendering as in the literature. Light: We only have ambient light (all places, always, 'surrounding' light) and eight lamps with a direction, *no* position. ShadeMode Flat: For each triangle, a single normal facing away from the plane defined by the surface is used to calculate a single color for the triangle/plane. ShadeMode Gouraud: For each triangle, in all edges a normal is calculated, maybe combined with the normals of neighboring planes (as in the example). Thus, three colors are calculated and interpolated linearly while drawing the pixels. ShadeMode Phong: The same normals as for Gouraud are calculated, but during paint the *normal* is interpolated, thus allowing light calculation at each point of the surface, thus creating the specular spot light being 'realistic' in being at the center of a defined triangle - *if* the normals bend 'outwards'. These modes get more expensive from top to bottom in this order. When making triangles smaller by splitting geometry, Gouraud will get closer and closer to Phong. With each triangle representing just a pixel, it will be the same (both will then calculate one lighting per pixel). Thus, for Gouraud, no spot light is intended in general. That's why phong is there. As described, Gouraud *can* get close to Phong depending on how close the normals are to the light's direction & how small the triangles are. All works as defined. You may also just g**gle for 'Gouraud' and 'Phong' in literature to get more precise definitions. All works as defined, so no error. Note: More modern 3D engines use more modern lighting models, but that's not what we have.