Generated Texture Coordinates and Porcedural workflows

I noticed something changed in the way the Generated Texture Coordinates work, I don’t know if it’s a consequence of the new depsgraph, or something else. But I think the way it used to work in 2.79 was preferable for Procedural workflows ( Ahem!, everything nodes, anyone ?).

What I noticed is that before (2.79), the generated coordinates seemed to have been calculated on the undeformed mesh (before any modifiers were applied).

optimized

In newer versions (2.80) it seems like the calculation of the generated coordinates happens on the already deformed mesh.

optimize

Now, I’m not saying one of the ways of doing it is better as such than the other, but for procedural workflows, In my opinion the old way of calculating the coordinates generates more predictable (and useful results).

The thing is I have absolutely no idea of how this works under the hood, and if this is an unavoidable behavior in the new depsgraph. But I think It’d be more useful to have it calculated before deformation. Or on a fantasy world scenario be able to choose, either as an option.

proposal_1

or to make it even more flexible and procedural friendly, calculate them based on the position of a “Generate Texture Coordinates” modifier ( or in the future, maybe node ) in the stack.

proposal_2a

What do you guys think ?

Anybody has thoughts on this.

Jorge.

2 Likes

I could be wrong here, but isn’t this because you don’t have ‘Auto Texture Space’ enabled? I think it’s on by default in 2.79?

It’s a bug:
https://developer.blender.org/T55142

2 Likes

No, I purposefully disabled it so it didn’t stretch to the bounding box of the resulting geometry.
I think it’s still default on 2.80.