Maniphest T86779

Displacement not using correct information for instanced object that uses Object Info Random
Closed, ArchivedBUG

Assigned To
None
Authored By
Rodrigo Neira (paiorlolo)
Mar 21 2021, 3:19 AM
Tags
  • BF Blender
  • Render & Cycles
Subscribers
Anthony Pilon (thepathtracer)
Brecht Van Lommel (brecht)
Germano Cavalcante (mano-wii)
Kostik Poloskin (welldoneconan)
Rodrigo Neira (paiorlolo)
Rowan Ibbeken (Rowquino)
Tokens
"Like" token, awarded by welldoneconan."Like" token, awarded by jonimercado.

Description

System Information
Operating system: Linux-5.8.0-7642-generic-x86_64-with-glibc2.32 64 Bits
Graphics card: GeForce GTX 1060 6GB/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 460.56

Blender Version
Broken: version: 2.93.0 Alpha, branch: master, commit date: 2021-03-20 21:00, hash: rB9ca67c47a152

NOTE: Also, the same happens in Blender 2.92.0

Short description of error
In a scene with multiple instance objects (instanced from a collection), the Object Info --> Random attribute is working for the Bump node, but not for the Displacement node. Better explained with images:

  • Here, you can see that the information that the information input of the Height of both Bump and Displacement is the same. A mask showing a number, and that random number selected through a ColorRamp will be the input for both at the same time, ensuring the bump node has the same information as the displacement node.

  • Still, the bump works fine, as expected:

  • But the displacement only displaces the information assigned to the original piece inside the collection:

Exact steps for others to reproduce the error

  1. Open the attached scene
  2. Check the shader editor, and material of ficha.005 --> material ficha_numero
  3. If Bump only is selected for Surface displacement options, and the Bump node connected to the PBR Node --> Normal it works as expected.
  4. If Displacement only is selected for Surface displacement options, and the Displacement node is connected to the Displacement of the Material Output, the displacement only shows the original displacement of the object inside the collection.

---> Expected behaviour: Displacement should be using the same number mask/shape as when the bump is used.

NOTE: The same happens if you select Bump & Displacement in Surface displacement options of the material options. I think this might be a bug - couldn't find if it's a limitation of the displacement already known. Thanks in advance!!

Event Timeline

Rodrigo Neira (paiorlolo) created this task.Mar 21 2021, 3:19 AM
Germano Cavalcante (mano-wii) changed the task status from Needs Triage to Confirmed.Mar 24 2021, 8:54 PM
Germano Cavalcante (mano-wii) changed the subtype of this task from "Report" to "Bug".
Germano Cavalcante (mano-wii) added a project: Render & Cycles.
Germano Cavalcante (mano-wii) added a subscriber: Germano Cavalcante (mano-wii).
Jonatan Mercado (jonimercado) awarded a token.Mar 24 2021, 9:30 PM
Anthony Pilon (thepathtracer) added a subscriber: Anthony Pilon (thepathtracer).May 14 2021, 10:58 PM
Kostik Poloskin (welldoneconan) awarded a token.May 24 2021, 2:52 AM
Kostik Poloskin (welldoneconan) added a subscriber: Kostik Poloskin (welldoneconan).
Germano Cavalcante (mano-wii) added a subscriber: Rowan Ibbeken (Rowquino).
Brecht Van Lommel (brecht) closed this task as Archived.Dec 15 2021, 8:49 PM
Brecht Van Lommel (brecht) added a subscriber: Brecht Van Lommel (brecht).

This is a known limitation. If we give every instance a different displacement, that means it's no longer instanced and uses more memory. We may add an option to uninstance objects for this purpose, but for now it's not considered a bug.