Operating system: macOS 10.14.4 Beta (18E205e)
Graphics card: AMD Radeon R9 M295X 4GB
- 2.80 master (2d8aa2e6ad351859796da8406a0c8f3cc2b45bbf)
Short description of error
When rendering using the Material (2.79b) or LookDev (2.80) viewport shading mode, binormal vectors read by shaders are flipped for mirrored objects (i.e., objects having negative scale values for one or three axes).
Exact steps for others to reproduce the error
See the attached .blend file and screenshots.
The scene shows three shapes. The original shape is shown on the right side. The other ones are a mirrored version of the shape, each using a different method of mirroring: the middle one was produced by the Mirror modifier and the left one was created by copying the object and scaling by -1.0 on the X direction.
Their binormal vectors (presumably world-space) are visualized by mapping their XYZ coordinates to color values through the use of the Normal Map node.
The mirrored objects use the same transformation in regard to the original object. Therefore, it's expected that they have the same binormal vector. A Cycles render in Blender 2.79b shows an expected behavior:
However, when rendered using the Material (2.79b) or LookDev (2.80) viewport mode, the binormal vector of the left one (the one mirred by object scale) is flipped:
The following image shows a shading error possibly caused by this: