old school

old school

About Me

Connect

LOCATION
Not Specified
WEBSITE

Houdini Skills

Availability

Not Specified

Recent Forum Posts

Character tools May 14, 2003, 9:31 p.m.

There aren't any purpose-built musle tools right now in Houdini. Are there plans? We haven't seriously approached this part of character rigging yet.

That being said, there have been some fantastic muscle rigs built in the past in both Prisms and Houdini. The tools are there but it is currently up to you to implement your own system. As a brief start, you can parent metaballs to bones then scale with boneangle() using bulge or magnet SOPs. It can get much more complicated and predictable depending on your approach.

I would imagine the biggest advantage to a product like ACT is that they have musle rigs pre-built for you already. This is where the time is spent: Placing muscles inside your character and fine-tuining their effect on the skin.

Now for some history. :wink:

There was Digital Domain and their “HARD” project driven in part by Caleb Howard and Academy Award Winner Kevin Mack way back in 1994 using PRISMS!
David Oliver also pioneered a muscle system with help from some R&D for the Disney Dinosaur project. From what I understand, David was able to acomplish with Prisms what took quite some time of hard development with what would become maya and they still didn't capture all of what was in the original Prisms solution.
Most recently, Primal Pictures developed their own muscle system tools for Houdini that are probably more accurate than those in ACT. Very clever those Primal guys. Many more muscle projects inbetween of varying complexity.

The bulge SOP actually came out of C.O.R.E.'s custom tool for doing muscle simulations.

Randomizing points randomly using POintSOP May 13, 2003, 6:33 a.m.

Ed's multiply is fine but I have always used random offsets like:


$TX + (rand($F + 1.01)*1000)
$TZ + (rand($F + 10.01)*1000)


Since rand goes from 0 to 1, you will certainly see a skew to the upper right looking down the z axis.

To fix that, use the fit function as follows:


$TX + fit(rand($F + 1.01), 0, 1, -1, 1)*1000
$TZ + fit(rand($F + 10.01), 0, 1, -1, 1)*1000


The fit works like this:

fit (float num, float oldmin, float oldmax, float newmin, float newmax)
Return a number between newmin and newmax that is relative
to num in the range between oldmin and oldmax. If the value is
outside the old range, it will be clamped to the new range.

eg. fit(3,1,4,5,20)=15

see also: fit01 fit11 fit10

light rays May 13, 2003, 6:25 a.m.

Put an Atmosphere (Fog) Object in your scene.

In SHOPs, place a Lit Fog SHOP. Assign the Lit Fog to your Atmosphere Object.

In the SHOPs parameters, first set the Fog Density to a value of 0.2 to 0.4 to see the effect. The default value of 0.05 is a bit subtle for a first test.
Set the Max Steps to 100 to test out the effect when rendering. When you get the right look, up the steps until you get what you want. 100 or less may do and renders much faster. A bit of blur in the compositor hides a lot.

The Step Size can be left at default. This is a ray marching shader in that the ray marches along at discrete steps sampling all the lights every time, summing up the light values as it marches along. Decreasing the Step Size will slow down your render whereas increasing the Step makes the render go faster.

All your lights will now render as volumetric lights. If you set your lights to cast shadows, say fastShadow in the Shadow Shader field, then you will get the nice streaks in the lightbeams.