Page 1 of 2

Scatter rotation (Clarisse PC) with Alembic custom property?

Unread postPosted: Sun Mar 08, 2020 3:12 pm
by atnreg
Hi!

I know how to use Alembic property to rotate scattered objects when the Scatterer's Geometry Support comes from Alembic pointcloud (i.e. extract_property to Scatter Rotation) .

But how can I utilize Clarisse PointCloud and still rotate scattered objects using Alembic property attached to underlying geometry (points or primitives) instead of geometry normals?

I am scattering needles on a conifer tree and if I do the pointcloud in Houdini, it nearly chokes and also then I don't have full control of the needle distribution in Clarisse.

Any ideas? :)

Thank you!

Re: Scatter rotation (Clarisse PC) with Alembic custom prope

Unread postPosted: Mon Mar 09, 2020 9:56 am
by dboude
Hi,

It works the same way as the alembic point cloud. You store the data in your underlying geometry. Then you extract the property, plug it in a support color node and then in an instance color before going in the scatterer rotation input.

The difference with point cloud is that you have to add a support color node in your network.

Cheers

Re: Scatter rotation (Clarisse PC) with Alembic custom prope

Unread postPosted: Mon Mar 09, 2020 11:32 am
by atnreg
Of course! I knew there was some cool solution to this but somehow the Support Color node STILL is not clear to me, though NOW I think I really understand the meaning by this case. I mean I of course now when it is needed in Clarisse but because I didn't REALLY understand it, I did not even think about it in this case. But now I THINK I got it :mrgreen:

And even though the Scatterer Use Support Normals refers to 'support' by name, in this case that must be 0% so the Use Support Normals setting actually sets how much ORIGINAL underlying geometry normals are used. That is nice because with that I can adjust the amount so I will make the needle normals attribute almost along the surface so it has as big as possible adjustment range in Clarisse. Excellent!

Thank you once again for clear and fast answer!

Re: Scatter rotation (Clarisse PC) with Alembic custom prope

Unread postPosted: Mon Mar 09, 2020 11:38 am
by dboude
You're welcome Antti ;)

Re: Scatter rotation (Clarisse PC) with Alembic custom prope

Unread postPosted: Mon Mar 09, 2020 1:44 pm
by atnreg
Another question: is it better to make the rotation attribute in Houdini for points or primitives? I mean It seems to work on both but there also seems to be some difference so I would like to use the optimal type. And can you give tips when to use which if it matters? :)

Also I noticed that this works with only the Support Color, without the Instance Color and there is no difference so now I'm again a bit confused :mrgreen:

Re: Scatter rotation (Clarisse PC) with Alembic custom prope

Unread postPosted: Mon Mar 09, 2020 3:01 pm
by dboude
I guess the data are stored and read from the points even if you stored them in prim.

Re: Scatter rotation (Clarisse PC) with Alembic custom prope

Unread postPosted: Mon Mar 09, 2020 3:21 pm
by atnreg
Hmm...but then why the result is slightly different? :)

And why the Instance Color does not have any effect in this case?

Re: Scatter rotation (Clarisse PC) with Alembic custom prope

Unread postPosted: Mon Mar 09, 2020 3:57 pm
by dboude
Two prims share some points. The average may give the difference. I guess...

Re: Scatter rotation (Clarisse PC) with Alembic custom prope

Unread postPosted: Mon Mar 09, 2020 4:23 pm
by atnreg
oh yes of course :)

Re: Scatter rotation (Clarisse PC) with Alembic custom prope

Unread postPosted: Thu Mar 12, 2020 4:59 pm
by atnreg
NOTE: The project was wrong version, now I replaced the demo project with correct version

I have managed to do scatter rotation from Houdini to Clarisse scatterer with vectors but now I would like to use quaternion to have more control and accuracy.

So I have Alembic file with geometry that has @orient as Float32 size 4 so I think it is correct.

I have read several posts about rotation from Houdini to Clarisse but there are some variation in attribute values and my case is a bit different as I don't use pointclouds from Clarisse, I only want to drive the Scatterer rotation by 'orient' property that is in the underlying geometry.

I (think ;) I ) know how to use the extract_property with Quaternion to Euler to Scatter Rotation but no matter what I try with Rotation Order and factors for Scatter Rotation (360,360,360 or -360,-360,-360 or even combinations) and Input Remap (default or dabc), I won't get the same rotation as in Houdini :o

Please see the attached demo project, if you adjust the 'Use Support Normals', the trunk gets rotation nice but the bough is weird.
I got help in Houdini forum for the @orient calculation so I'm pretty sure it is correct (though slightly different setup) but how to get it show up correctly in Clarisse?

Can someone familiar with Houdini help me? :)

Thank you!