Applying attribute noise on specifically colored points.

   4704   2   0
User Avatar
Member
2 posts
Joined: Jan. 2020
Offline
Greetings Houdini users,

This is my first post, and I'm very new and unused to something like Houdini.

I'm trying to apply attribute noise on the position of a terrain's points based on the color of the point. I'd like for the white ones to have more noise and the black ones to have none.

Initially, I wanted to use the points' Y normals attribute to define its effect from the noise but was unsure how to clamp between certain values so that the transition is sharper (basically I only want the cliffs of the terrain to have noise).

I may share screenshots, but not the hip file.

Thank you.

Attachments:
houdini_colornoise.png (1.4 MB)

User Avatar
Member
32 posts
Joined: Aug. 2011
Offline
In your group, you can add an expression in there eg:

@Cd.x>0.5

This will create a temporary group on that node to only apply the noise to points that evaluates to true too.
User Avatar
Member
8173 posts
Joined: Sept. 2011
Offline
If you want the noise be blended smoothly with a grayscale mask, use an attribute vop/wrangle/expression node to multiply the displacement vector by the masking attribute, or with 18.5 or later use an attribute adjust vector node.

On the attribute noise, instead of applying the noise to 'P', use a temporary attribute to store the displacement, e.g. 'disp'.

Then in the attribute adjust vector node, enter 'disp' in the attribute name, and for the value adjustment set to length only, multiply with attribute. Enter the name of the masking attribute, e.g. 'Cd' for the attribute name.

Finally to apply the displacement to the points, use a transformbyattrib node to apply 'disp'. This node will recompute normals if needed.
  • Quick Links