If not, we should convert Volumes to VDB.Ī - Vector merge any 3-float volume primitive components together. The following actions make sure we have the lightest VDB cache possible, assuming we're working with VDB volumes. Thankfully there are a few ways to drastically improve the size they take. However, they can get quite heavy once written to disk. Whether you’re looking at a Pyro Simulation or a Procedural cloud setup their uses are quite versatile. Use VDB volumes to store Volume Information In scale, in all fields: 1/max(max($SIZEX,$SIZEY), $SIZEZ)ī - Using attribwrangle: float max size = max( getbboxsize(0) ) *= 1.0 / max_size ġ3. handles for the transform SOP don't show up anymore (when selected but not having the display flag).Ī - Using the transform SOP, input the following: To disable that, you can Right-Click on the Geometry Select Mode icon on the left and then select Show Display Operator. If you're working with a heavy scene and need/want to make changes to a node further up the node tree (further up from where your display flag is), it can be quite annoying that Houdini wants to compute the tree again up until the node that you selected to make changes to. Use the Geometry Select Mode to disable Houdini from computing your node tree to that point If the simulation has motion that is feeling a little lifeless, initially try adding interesting velocities to the collision volume, this can take a lot of work out of having to add other velocity fields to the simulation and will lead to more natural organic motion.ġ1. The two most important areas for simulations, especially for pyro and flip, are source and collision – spend time on both and the simulation will yield interesting results. It's often easy to jump in to building complex velocity and or control fields but in practice they can often lead to simulations that both look and feel overworked. Simplicity is a good starting point for simulations This is easier to follow for an artist picking up the scene and much of the functionality once written in wrangles is now available in SOPs - It will save time and allow the early answering of the important questions to do with beats, timing and framing of the effect.ġ0. Never underestimate the power of simplicityīefore delving into wrangles, python SOPs or custom microsolvers try using existing SOPs to build out your initial network. Work in Houdini scale such as using mocap biped1 as scale reference.ĩ. Test render with image backgrounds to get more accurate look when composited. Use point deform to move the proxy collision. Simplify the collision geometries using polyreduce or convert to VDBs then convert back to geometries. Adjust the attribute display type (colour, marker etc) by pressing D and going to the Visualize tab. You can visualise any geometry attribute by clicking on the "i" while hovering over a node and clicking on the attribute name. For example, this can be useful if you need to have a pattern wrapped around the 3D surface: Transform the geometry to its UVs, create your pattern and use poly extrude and Boolean to have it be the same outline as the original UV island and wrap it back onto the 3D geometry using xyzdist() in VEX. It is often much easier to transform your model's geometry to its UVs in world space and work on it as a flat surface than on a curving polygonal shape in 3D space. Utilise a model's UVs to do complex surface operations This will save you a lot of headaches down the line where an upstream change might not work well with your dependencies.ģ. Set up a sim with source and timings that makes it look like it is. Make your setups as independent and modular as possibleĭon't cross-reference data from one stream into another and try to avoid having one sim dependent on another. In ROPs you can use this to render a limited subset of objects like myObject.Ģ. You can use ranges in your groups and ROPs to dynamically insert conditionals for group and object names.įor example: will grab all geometry with the "name" attribute containing both "piece" and "Piece" with everything that comes behind the underscore. Dynamically insert conditionals for group and object names
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |