Maniphest T72101

texture coordinate "from instancer" option does not work for verts
Closed, Archived

Assigned To
Sergey Sharybin (sergey)
Authored By
aombk (aombk)
Dec 1 2019, 11:35 PM
Tags
  • BF Blender
  • Render & Cycles
Subscribers
aombk (aombk)
Philipp Oeser (lichtwerk)
Sergey Sharybin (sergey)

Description

System Information
Operating system: Windows-10-10.0.18362 64 Bits
Graphics card: GeForce RTX 2070/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 441.20

Blender Versions
Broken: version: 2.82 (sub 3), branch: master, commit date: 2019-11-30 17:33, hash: rBf1ac64921b49
Broken: version: 2.81 (sub 16), branch: master, commit date: 2019-11-20 14:27, hash: rB26bd5ebd42e3
and probably more...

Short description of error
texture coordinate "from instancer" option does not work when instancer is set to verts. it works when set to faces
here is a simple blend file:
http://pasteall.org/blend/index.php?id=52640

Event Timeline

aombk (aombk) created this task.Dec 1 2019, 11:35 PM
Philipp Oeser (lichtwerk) lowered the priority of this task from 90 to 80.Dec 2 2019, 3:50 PM
Philipp Oeser (lichtwerk) added a project: Render & Cycles.
Philipp Oeser (lichtwerk) added subscribers: Sergey Sharybin (sergey), Philipp Oeser (lichtwerk).

Not sure I am reading this wrong:
https://docs.blender.org/manual/en/dev/render/shader_nodes/input/texture_coordinate.html

From Instancer only works with the UV output when the object is instanced, either from particles or from faces.

Cannot really get it to work with Generated coords either though...

Might be a limitation, this is only working for faces?

Note: we had this for faces in viewport rendering T60646: Texture Coordinate node, From Instancer option do not work as expected in 2.8 which was fixed.

Maybe @Sergey Sharybin (sergey) can put the nail in the coffin?

aombk (aombk) added a comment.Dec 2 2019, 7:59 PM

yes it only works with faces.
it works for particles that are emitted from faces as well, but not when they are emitted from verts.

Sergey Sharybin (sergey) changed the task status from Unknown Status to Unknown Status.Dec 6 2019, 8:33 AM
Sergey Sharybin (sergey) claimed this task.

Quite sure it is the same as in all previous versions of Blender.

The reason why this is happening is because texture coordinate is stored per-face-corner (called loop in Blender) and a vertex can be adjacent to a multiple face-corners with different texture coordinates.

There might be a way to find an artist predictable mapping, but it's something what hasn't been done yet.

So thanks for the report, but it's just a known limitation.

aombk (aombk) added a comment.EditedDec 6 2019, 6:40 PM

this makes perfect sense, thanks sergey
i think a better solution than the current one (returning no vertex coordinate information at all) would be to just return the coordinates of a random adjacent face-corner when from instancer is cheked.
in the meantime i will continue looking for a way to fake it