13.07.2015 Views

Controlling Fluid Simulations with Custom Fields in Houdini Master ...

Controlling Fluid Simulations with Custom Fields in Houdini Master ...

Controlling Fluid Simulations with Custom Fields in Houdini Master ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

• The nal option is <strong>with</strong> a Gas Field Vop which provides all the functionalityfrom vops so you can reference <strong>in</strong> any object from a dierent context,or from a le on disk.In SOPS however this attribute transfer from po<strong>in</strong>ts to volumes does not existand is a welcome addition as it does not have the requirement to simulate all theprevious frames to dene the eld. Also the result<strong>in</strong>g custom volume elds caneasily be used to advect particles <strong>in</strong>side of a pop network by us<strong>in</strong>g an Advect ByVolumes pop <strong>with</strong>out even go<strong>in</strong>g near DOPS. The reason that this just works isbecause the tool follows the standards used by Houd<strong>in</strong>i to dene volume eldsas described <strong>in</strong> (4.2).5.2.1 A po<strong>in</strong>tcloud based approachThe rst approach to transferr<strong>in</strong>g po<strong>in</strong>t attributes from a number of po<strong>in</strong>tsmakes use of po<strong>in</strong>tcloud functionality <strong>in</strong>side of a volumevop <strong>in</strong> sops. The underly<strong>in</strong>gtechnicalities are hidden away beh<strong>in</strong>d an easy to use <strong>in</strong>terface. I deliberatelykept this digital asset compact as it needed to perform only a s<strong>in</strong>glefunction. The rst <strong>in</strong>put requires an empty volume, the second <strong>in</strong>put requires atits lowest level a number of po<strong>in</strong>ts. The volume eld name can be specied, aswell as the attribute to transfer and the attribute type. The attribute type willalso dene the type of volume that is created (either a scalar or vector eld).The distance threshold denes how big the <strong>in</strong>uence radius of each po<strong>in</strong>t is. Inthe pcloud tab a maximum search radius is provided to prevent voxels look<strong>in</strong>gup values from po<strong>in</strong>ts outside this radius. Also the maximum number of po<strong>in</strong>tsto use when perform<strong>in</strong>g the lter<strong>in</strong>g operation can be set here. Generally thedefault values work for most scenarios.Internally the asset creates a box that matches the position and divisions ofthe voxel grid. Then an attribute transfer sop is used to transfer the attribute tothe grid of po<strong>in</strong>ts. The grid is used <strong>in</strong>stead of us<strong>in</strong>g the po<strong>in</strong>ts directly becausethe attribute transfer sop uses a metaball kernel <strong>in</strong>side to dene the fallo ofthe attributes and give softer results around the edges of a shape. These po<strong>in</strong>tsare then referenced by a volume vop which will read them as if they were apo<strong>in</strong>tcloud from disk. For each voxel it will then lter the attribute value andassign it to the output density. The output density is just a name <strong>in</strong>side thevolume vop, it could just as well be the x component of a velocity eld. The realnam<strong>in</strong>g of the volume occurs before or after the volume vop assigns the valuesto the eld. In case of a vector eld and a vector attribute each <strong>in</strong>dividualcomponent is handled at a time and then the result<strong>in</strong>g scalar elds are mergedtogether to form the result<strong>in</strong>g vector eld.This gives quite accurate results, but can get slow for high resolution volumes,as the attribute transfer sop can take a while to cook. Bypass<strong>in</strong>g theattribute transfer and us<strong>in</strong>g the po<strong>in</strong>ts directly will denitely speed it up, butdoes not give as nice results, this bypass is triggered by turn<strong>in</strong>g on the Use RawPo<strong>in</strong>ts checkbox on the digital asset <strong>in</strong>terface <strong>in</strong> the pcloud tab. Also this approachdoes not allow a way to dene a transfer radius per po<strong>in</strong>t, only a globalradius can be used.21

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!