Different proxy and render point sets for Instancer LOP

   387   1   2
User Avatar
Member
21 posts
Joined: 10月 2018
オフライン
Hi,

I am looking for a way to use different point sets for viewport preview and final rendering with a standard Point Instancer in Solaris.

For example, I may have:

100 points for the viewport;
1,000,000 detailed points for the final render.

Both point sets are prepared in SOPs and may contain important custom attributes such as orient, scale, protoindex, IDs, masks, and other data. I would like the standard Instancer LOP to use the lightweight point set in the viewport and automatically switch to the full point set during rendering.

Ideally, the workflow would look something like this:

proxy points → 100 points
render points → 1,000,000 points

Standard Point Instancer

The same prototypes and instancer settings would be shared between both representations. The switch should happen automatically based on viewport/render purpose, without manually changing node parameters before rendering.

I know that Houdini 22 introduced the new Scatter Instances LOP with deferred execution. However, I am specifically interested in using the standard Point Instancer and point sets that have already been generated in SOPs. In many cases, the final points are not a simple procedural scatter that can be recreated by Scatter Instances LOP — their exact positions and attributes must be preserved.

At the moment, it seems that the available solution is to create two separate PointInstancer prims:

one with purpose = proxy;
another with purpose = render.

This works, but duplicates the instancer setup and makes asset management more complicated.

Is there a native Houdini 22 solution that allows one standard Point Instancer to reference separate proxy and render point sources and switch between them automatically?

If this is currently not possible, could something like this be considered as a feature request? For large vegetation and environment scatters, loading the complete render point array into the viewport can be extremely expensive, even when the prototypes themselves are lightweight.

Thank you!
User Avatar
スタッフ
4335 posts
Joined: 9月 2007
オンライン
There isn't really a way to do this in Houdini, two PointInstancer prims for the two purposes is the way to go if you need different point counts/distributions. But having more ways to control how HoudiniVK displays complex instancers is certainly something we'd like to improve. Please log RFEs around this, so we can collect the interest/use-cases.

Some other ideas that are currently possible:

  • When you create two PointInstancers, their prototypes can point at a shared location. This is a bit easier to setup in H22 with the PointInstancer LOPs. And having multiple PointInstancers share their prototypes (i.e. instead of having them under a child "Prototypes" scope) can improve performance in complex scenes.
  • Configure the Draw Mode on the prototype models, to something like Origin Axes or Bounding Box

Hope this helps generate some approaches in the meantime.
I'm o.d.d.
  • Quick Links