Page MenuHome

Eevee nodes (e.g., Checker Texture) has different coordinates than Cycles when no UV
Closed, ResolvedPublic

Description

Short description of error
Eevee nodes with vector input have a different default coordinate than what is used by Cycles. In blender 2.78, material draw mode, this worked fine.

Exact steps for others to reproduce the error
Open:

Then alternate between Cycles and Eevee. The scale of the brick texture is entirely different.
If you connect the Texture Coordinate node in the checker texture it works the same for Cycles and Eevee.

Event Timeline

Dalai Felinto (dfelinto) claimed this task.
Dalai Felinto (dfelinto) triaged this task as Confirmed, Medium priority.

When nothing is connect the coordinated used is the generated (aka orco). The glsl code used to calculate the coordinates is:

var0 = OrcoTexCoFactors[0] + position * OrcoTexCoFactors[1];

@Sergey Sharybin (sergey) is this the multiplication you were referring to? Or we actually need something else?

@Dalai Felinto (dfelinto), think so but would double-check tomorrow.

A related issue, which I believe is the exactly same problem.
If you take this Eevee file:

And apply the object scale, the resulting orco (aka generated) texture coordinates are different. I believe the orco attributes passed to the GLSL shader in 2.8 (eevee) is wrong. The shader itself seems to be fine since rB0e29a97813d2.