Page MenuHome

Principled Volume Shader doesn't interact properly with Instancing settings
Closed, ResolvedPublic

Description

System Information
Operating system: Windows 7 SP1 x64 (ES locale)
Graphics card: Nvidia GT 1030

Blender Version
Broken: 2.80, cad1016c20b5, 2019-01-28 16:46
Worked: New?

Short description of error
Using the instancing settings on a volumetric shaded object that has been parented to a controlling mesh doesn't work as expected and instead only produces 1 voxel volumetric instead of multiple.

Exact steps for others to reproduce the error

  1. Create a cube, add a new shader to it, delete the "Principled BSDF" node and connect a new "Principled Volume" node to the volume output node.
  1. Turn on the volumetric setting in the render tab with Eevee as render engine.
  1. Parent the volumetric cube to some other primitive, (in my example I'm using a slightly scaled up icosphere but anything works here)
  1. Go to your secondary primitive (parent) and under the object tab in the properties panel set the "Instancing" setting to Verts or Faces, you can also untick "display instancer" for visibility.
  1. Finally, turn the shading to Lookdev or Rendered (eevee), both will show the cube only instanced ONCE instead of for every vertice or face.

This bug makes it very hard to work with voxelized shapes for volumetric effects, greatly reducing te usefulness of this shader on Eevee.

Event Timeline

Jacques Lucke (JacquesLucke) triaged this task as Confirmed, Medium priority.Jan 29 2019, 12:12 PM

There is definitely something strange going on here. When I open this file, the whole viewport is red.

M (JukePlz) added a comment.EditedJan 29 2019, 12:55 PM

That's wildly different from my result, but the example I provided also has non default values on the volume node I used to test with.

I reset blender to factory defaults and remade the example blend file with the default values on the volume node.

This is (still) my result: