On this page |
The DOP Network Object contains a DOP simulation. Simulations can consist of any number of simulation objects (which do not correspond to Objects that appear in /obj). These simulation objects are built and controlled by the DOP nodes contained in this node.
Simulation-wide controls are provided on this node, such as caching options and time step controls. The entire simulation can also be transformed using the Transform parameters of this node. Transforming a simulation at this level does not affect the simulation at all. The Transform is applied after the simulation occurs.
Tip
To improve the playback of cached fluids, increase the Cache Memory on the Simulation tab.
Parameters
Playback Simulation
Turns the DOP network into a player for simulation files. Enabling playback mode will cause the result of the DOP network to be given by the simulation files selected. The internal nodes of the network will be ignored. One way to create simulation files to play using this option is the Output Node inside the DOP network.
Simulation
Reset Simulation
Полностью очищает кэш симуляции. В момент просмотра сети DOP над вьюпортом с правой стороны будет активирована кнопка. Нажатие этой кнопки выполняет те же действия, что и нажатие кнопки Reset Simulation.
Display
Whether the simulation is displayed in the viewport.
Initial State
The name of a file that is used as the initial state of the simulation. This file must be a simulation state file created by either a File DOP or a Dynamics Output Driver. If this parameter is set, then the DOP nodes inside this network are not processed on the first simulation timestep.
Timestep
Controls the length of a simulation timestep. Usually this value will be some multiple of a frame time, but it is not required. By specifying a larger timestep the simulation will run faster but will be less accurate and less stable. Smaller timesteps give better result but calculate more slowly.
Substeps
The default timestep expression will use this parameter to control how many substeps the dop simulation should perform every frame. This can be easier to adjust than working with the 1/$FPS parameter in timestep.
Offset Time
Specifies an offset in seconds between the simulation time
for this simulation and the global time displayed on the
playbar. If this parameter is set to 1, then this simulation
will not start cooking until frame 25. At that global time
of 1 second, the simulation time will be 0. Several
expression functions such as doptime
exist for converting
from global times to simulation times and vice versa.
Start Frame
Выражение по смещению времени ссылается на этот параметр. Это позволяет установить время начала симуляции в кадрах, а не в секундах, что в некоторых случаях может быть более удобным. Если для начального кадра установлено значение 24, симуляция не начнется до 24 кадра. Обратите внимание, что если вы используете этот параметр, то переменные $SF и $F больше не будут ссылаться на то же время внутри симуляции.
Scale Time
Указывает множитель, который соотносит глобальное время с временем внутри симуляции для данной сети DOP. Значение больше единицы означает, что время симуляции протекает быстрее, чем глобальное время. Значение меньше единицы приводит к тому, что симуляция происходит в замедленном движении относительно глобального времени. Существуют несколько выражений функций, таких как doptime
, для преобразования глобального времени в время внутри симуляции и обратно.
Max Feedback Loops
When simulation objects using different solvers are made to be mutual affectors (such as a cloth object and an RBD object), this parameter controls the maximum number of iterations to perform while attempting to resolve the two solvers. Increasing this number in situations where different solvers are mutual affectors increases the ability of the simulation to reach a satisfactory result, but can increase the simulation calculation time.
In the case of fluid simulations, since the fluid cannot adapt to the feedback forces that are applied, a value of 2 should be used rather than higher values. Higher values will just make the fluid artificially stronger and take considerable time.
Enable Automatic Resimulation
When any parameter inside a DOP simulation is changed, or when any referenced external node is changed, the cache of the simulation is marked as invalid. If this parameter is turned on, the next time the playbar is moved to reach a simulation time of 0, the cache will be cleared and the first simulation timestep will be recalculated. If the cache is invalidated while at a simulation time of 0, the initial state is recalculated immediately. If the current time is beyond time 0, then the most recent timestep will be recooked, and the cache beyond the current time will be cleared. But all prior timesteps will be left untouched other than to be marked invalid. If this parameter is off, the cache is marked as invalid in exactly the same way, but the cache is never cleared automatically. To recook a simulation in this mode, the Recook Simulation button on this parameter dialog or above the viewport must be used.
Provide Data Hints
Rules governing allowed simulation data relationships are stored in a files called dophints.cmd in the scripts directory. If this option is turned on, at the end of each timestep the simulation state is compared against the rules in that file. If any rules are broken, warnings are added to the appropriate DOP nodes. This can be very useful when learning to use DOPs or when debugging problems with a simulation. Turning this option off will improve the performance of your simulation by skipping this validation step at the end of each timestep.
Interpolate Display Data
If the global time is set to a value that does not line up with a simulation timestep boundary, this parameter controls how the simulation should be displayed. If this parameter is turned off, the closest simulation timestep contents are displayed. If this parameter is turned on, the contents of the previous and next simulation timesteps are interpolated to create an approximation of the simulation as it would have actually been at the current time. This option allows the simulation to appear smooth in the viewport even if the simulation timesteps do not line up with the global frame times.
Cache
Cache Simulation
Активирует кэш симуляции. Если эта опция не включена, многие солверы не будут работать должным образом. Однако для очень больших симуляций выключение этой опции - лучший способ гарантировать наименьший возможный объем памяти для симуляции.
Compress .sim Files
Determines if .sim files written to disk for caching will be compressed. Compression can reduce the size of the disk cache significantly, but can also increase the time to cache significantly. If loading or writing to cache seems slow, try using blosc compressed .sim files or uncompressed .sim files, especially with fluid sims.
Allow Caching To Disk
If the maximum size of the cache in memory is reached, the DOP Network can either delete old cache entries to make room for new entries, or old entries can be saved to disk. If this option is on, the old cache entries are saved to disk and will be reloaded from disk if needed. This mode will be slower than simply throwing away the old cache entries, but it ensures that the entire simulation history is always available regardless of the in-memory cache size.
Cache to Disk in Non Interactive Sessions
In non-interactive sessions, such as hscript or hython, one may often not want the entire simulation history to be available. Their default behavior is to ignore the Allow Caching to Disk and not cache to disk. This behavior can be overridden with this toggle. Saving old simulation states to disk can often become very expensive and, since one will not be scrubbing the playbar on the result, a waste of disk space.
Cache Substep Data
Some solvers perform their own internal subsampling of time to get better results. This option controls whether or not the substep data created during this internal subsampling should be kept as part of the cache, or discarded as soon as the simulation timestep has finished computing. Having this option on can be useful for debugging purposes, or if accurate display of sub-timestep data is desired. Using the actual substep data will give more accurate results that displaying interpolated data.
Cache Memory (MB)
Specifies how much memory in megabytes can be consumed by the cache for this simulation. Once this limit is exceeded, old cache entries are either deleted or saved to disk to make more room, depending on the value of the Allow Caching To Disk parameter value above.
Timeless (No History)
Each frame the simulation is started fresh as if it were the first frame. This means $SF is always 1. It also means, however, if the network consists of a File DOP with a $F based .sim file, only the current frame will have to be loaded, allowing for fast random access of baked simulations. Note that when in this mode only one frame is kept in the cache.
Save Checkpoints
Normally when the Allow Caching to Disk is enabled and the simulation hits the memory limit, the simulation is saved to files in the temp directory. While these are valid .sim files, they can be hard to manage. When this options is on, each frame is immediately cached to the specified directory. It is still kept in memory until the Cache Memory is hit, but at that point it is not saved to disk (since it’s already on disk). The advantage of checkpointing is that if a cache frame already exists DOPs will not cook that frame, even if the simulation has been reset. Instead it will load that frame. Further, it only needs to cook the frames after the last valid checkpoint frame before the requested frame. So if you have cache_50.sim and try to cook frame 100, cooking can start at frame 50.
Using save checkpoints is similar to using a File DOP in Automatic Mode. However, when you try to jump to frame 50 with a File DOP it must load the first 50 frames. With checkpoints it can skip this step.
Checkpoint Files
The file sequence to save the checkpoints to. These are .sim files, loadable with the File DOP or File SOP. The variable $SF must be used to specify the frame number - $F cannot be used because this is working in simulation space. $SF4 is also supported.
Checkpoint Trail Length
How much of a history to keep before the checkpoint files are deleted. A value of 0 will never delete cache files. Otherwise, frames older than this value will be erased from disk.
Note that only checkpoint files created by this session of Houdini will be deleted. If you restart Houdini with an existent cache files, they will not be deleted. This is done because you were likely restarting from a crashed location and will want to guarantee you can once again restart there if it crashes again.
Checkpoint Interval
The frame interval between checkpoints. Setting this to a value of 1 will save a checkpoint every frame. Setting this to higher values will save a checkpoint after every number of frames specified. For example setting this to 5 will save a checkpoint every 5 frames.
This can be done to save disk space if you are running a large simulation.
Transform
Transform Order
The left menu chooses the order in which transforms are applied (for example, scale, then rotate, then translate). This can change the position and orientation of the object, in the same way that going a block and turning east takes you to a different place than turning east and then going a block.
The right menu chooses the order in which to rotate around the X, Y, and Z axes. Certain orders can make character joint transforms easier to use, depending on the character.
Translate
Translation along XYZ axes.
Rotate
Degrees rotation about XYZ axes.
Scale
Non-uniform scaling about XYZ axes.
Pivot
Local origin of the object. See also setting the pivot point .
Uniform Scale
Scale the object uniformly along all three axes.
Modify Pre-Transform
This menu contains options for manipulating the pre-transform values. The pre-transform is an internal transform that is applied prior to the regular transform parameters. This allows you to change the frame of reference for the translate, rotate, scale parameter values below without changing the overall transform.
Clean Transform
This reverts the translate, rotate, scale parameters to their default values while maintaining the same overall transform.
Clean Translates
This sets the translate parameter to (0, 0, 0) while maintaining the same overall transform.
Clean Rotates
This sets the rotate parameter to (0, 0, 0) while maintaining the same overall transform.
Clean Scales
This sets the scale parameter to (1, 1, 1) while maintaining the same overall transform.
Extract Pre-transform
This removes the pre-transform by setting the translate, rotate, and scale parameters in order to maintain the same overall transform. Note that if there were shears in the pre-transform, it can not be completely removed.
Reset Pre-transform
This completely removes the pre-transform without changing any parameters. This will change the overall transform of the object if there are any non-default values in the translate, rotate, and scale parameters.
Keep Position When Parenting
When the object is re-parented, maintain its current world position by changing the object’s transform parameters.
Child Compensation
When the object is being transformed, maintain the current world transforms of its children by changing their transform parameters.
Enable Constraints
Enable Constraints Network on the object.
Constraints
Path to a CHOP Constraints Network. See also creating constraints.
Tip
You can you use the Constraints drop down button to activate one of the Constraints Shelf Tool. If you do so, the first pick session is filled automatically by nodes selected in the parameter panel.
Note
Lookat and Follow Path parameters on object nodes are deprecated in favor of Look At and Follow Path constraints. The parameters are only hidden for now and you can set their visibitily if you do edit the node’s parameter interface.
Examples
The following examples include this node.
CountImpacts Example for Count channel node
DynamicLights Example for Dynamics channel node
DynamicPops Example for Dynamics channel node
ExtractTransforms Example for Dynamics channel node
AnimatedActiveState Example for Active Value dynamics node
AutoFreezeRBD Example for Active Value dynamics node
SimpleAffector Example for Affector dynamics node
LookAt Example for Anchor: Align Axis dynamics node
ApplyRelationship Example for Apply Relationship dynamics node
BridgeCollapse Example for Apply Relationship dynamics node
ConstrainedTeapots Example for Apply Relationship dynamics node
MutualConstraints Example for Apply Relationship dynamics node
SimpleBlend Example for Blend Solver dynamics node
BuoyancyForce Example for Buoyancy Force dynamics node
AnimatedClothPatch Example for Cloth Object dynamics node
BendCloth Example for Cloth Object dynamics node
BendDamping Example for Cloth Object dynamics node
BlanketBall Example for Cloth Object dynamics node
ClothAttachedDynamic Example for Cloth Object dynamics node
ClothFriction Example for Cloth Object dynamics node
ClothUv Example for Cloth Object dynamics node
DragCloth Example for Cloth Object dynamics node
MultipleSphereClothCollisions Example for Cloth Object dynamics node
PanelledClothPrism Example for Cloth Object dynamics node
PanelledClothRuffles Example for Cloth Object dynamics node
AnchorPins Example for Constraint Network dynamics node
AngularMotorDenting Example for Constraint Network dynamics node
BreakingSprings Example for Constraint Network dynamics node
Chains Example for Constraint Network dynamics node
ControlledGlueBreaking Example for Constraint Network dynamics node
GlueConstraintNetwork Example for Constraint Network dynamics node
Hinges Example for Constraint Network dynamics node
PointAnchors Example for Constraint Network dynamics node
SpringToGlue Example for Constraint Network dynamics node
AutoFracturing Example for Copy Objects dynamics node
SimpleCopy Example for Copy Objects dynamics node
CrowdHeightField Example for Crowd Solver dynamics node
FollowTerrain Example for Crowd Solver dynamics node
FootLocking Example for Crowd Solver dynamics node
Formation Crowd Example Example for Crowd Solver dynamics node
Stadium Crowd Example Example for Crowd Solver dynamics node
Street Crowd Example Example for Crowd Solver dynamics node
ClipTransitionGraph Example for Crowd Transition dynamics node
TypesOfDrag Example for Drag Force dynamics node
FieldForceSmoke Example for Field Force dynamics node
FromRBD Example for Field Force dynamics node
SimpleField Example for Field Force dynamics node
fieldforce Example for Field Force dynamics node
CacheToDisk Example for File dynamics node
FEMSpheres Example for finiteelementsolver dynamics node
DensityViscosity Example for FLIP Solver dynamics node
FlipColorMix Example for FLIP Solver dynamics node
FlipColumn Example for FLIP Solver dynamics node
FlipFluidWire Example for FLIP Solver dynamics node
SpinningFlipCollision Example for FLIP Solver dynamics node
VariableViscosity Example for FLIP Solver dynamics node
FluidWireInteraction Example for Fluid Force dynamics node
BallInTank Example for Fluid Object dynamics node
FillGlass Example for Fluid Object dynamics node
FluidFeedback Example for Fluid Object dynamics node
PaintedGrog Example for Fluid Object dynamics node
RestartFluid Example for Fluid Object dynamics node
RiverBed Example for Fluid Object dynamics node
VariableDrag Example for Fluid Object dynamics node
HotBox Example for Gas Calculate dynamics node
DiffuseSmoke Example for Gas Diffuse dynamics node
CombinedSmoke Example for Gas Embed Fluid dynamics node
EqualizeFlip Example for Gas Equalize Volume dynamics node
EqualizeLiquid Example for Gas Equalize Volume dynamics node
dopexample_gasnetfetchdata Example for Gas Net Fetch Data dynamics node
TeapotUnderTension Example for Gas Surface Tension dynamics node
UpresRetime Example for Gas Up Res dynamics node
GuidedWrinkling Example for Hybrid Object dynamics node
MagnetMetaballs Example for Magnet Force dynamics node
SimpleMagnets Example for Magnet Force dynamics node
MaskedField Example for Mask Field dynamics node
SimpleMultiple Example for Multiple Solver dynamics node
VolumeSource Example for Particle Fluid Emitter dynamics node
FluidGlass Example for Particle Fluid Solver dynamics node
PopFlow Example for Particle Fluid Solver dynamics node
PressureExample Example for Particle Fluid Solver dynamics node
ViscoelasticExample Example for Particle Fluid Solver dynamics node
ViscousFlow Example for Particle Fluid Solver dynamics node
WorkflowExample Example for Particle Fluid Solver dynamics node
AdvectByFilaments Example for POP Advect by Filaments dynamics node
AdvectByVolume Example for POP Advect by Volumes dynamics node
ParticlesAttract Example for POP Attract dynamics node
ParticlesIntercept Example for POP Attract dynamics node
PointAttraction Example for POP Attract dynamics node
SphereAxisForce Example for POP Axis Force dynamics node
TorusAxisForce Example for POP Axis Force dynamics node
ParticleCollisions Example for POP Collision Detect dynamics node
CurveForce Example for POP Curve Force dynamics node
FlockInPops Example for POP Flock dynamics node
BaconDrop Example for POP Grains dynamics node
KeyframedGrains Example for POP Grains dynamics node
TargetSand Example for POP Grains dynamics node
VaryingGrainSize Example for POP Grains dynamics node
SwarmBall Example for POP Interact dynamics node
LookatTarget Example for POP Lookat dynamics node
DragCenter Example for POP Property dynamics node
ProximateParticles Example for POP Proximity dynamics node
CrossTheStreams Example for POP Stream dynamics node
BillowyTurbine Example for Pyro Solver dynamics node
DampedHinge Example for RBD Angular Spring Constraint dynamics node
SimpleRotationalConstraint Example for RBD Angular Spring Constraint dynamics node
Stack Example for RBD Auto Freeze dynamics node
RagdollExample Example for Cone Twist Constraint dynamics node
ShatterDebris Example for RBD Fractured Object dynamics node
StackedBricks Example for RBD Fractured Object dynamics node
Pendulum Example for RBD Hinge Constraint dynamics node
SimpleKeyActive Example for RBD Keyframe Active dynamics node
DeformingRBD Example for RBD Object dynamics node
FrictionBalls Example for RBD Object dynamics node
RBDInitialState Example for RBD Object dynamics node
SimpleRBD Example for RBD Object dynamics node
ActivateObjects Example for RBD Packed Object dynamics node
AnimatedObjects Example for RBD Packed Object dynamics node
DeleteObjects Example for RBD Packed Object dynamics node
EmittingObjects Example for RBD Packed Object dynamics node
SpeedLimit Example for RBD Packed Object dynamics node
Chain Example for RBD Pin Constraint dynamics node
Chainlinks Example for RBD Pin Constraint dynamics node
Pendulum Example for RBD Pin Constraint dynamics node
popswithrbdcollision Example for RBD Point Object dynamics node
GravitySlideExample Example for Slider Constraint dynamics node
DegreesOfFreedom Example for RBD Solver dynamics node
PaddleWheel Example for RBD Solver dynamics node
Weights Example for RBD Spring Constraint dynamics node
InheritVelocity Example for RBD State dynamics node
Simple Example for RBD Visualization dynamics node
ReferenceFrameForce Example for Reference Frame Force dynamics node
RippleGrid Example for Ripple Solver dynamics node
Freeze Example for Script Solver dynamics node
ScalePieces Example for Script Solver dynamics node
SumImpacts Example for Script Solver dynamics node
2dfluid Example for Smoke Object dynamics node
DelayedSmokeHandoff Example for Smoke Object dynamics node
Open CL smoke Example for Smoke Object dynamics node
RBDtoSmokeHandoff Example for Smoke Object dynamics node
SourceVorticlesAndCollision Example for Smoke Object dynamics node
rbdsmokesource Example for Smoke Object dynamics node
VolumePreservingSolid Example for Solid Object dynamics node
DentingWithPops Example for SOP Solver dynamics node
VisualizeImpacts Example for SOP Solver dynamics node
StaticBalls Example for Static Object dynamics node
FractureExamples Example for Voronoi Fracture Solver dynamics node
SimpleVortex Example for Vortex Force dynamics node
TurbulentSmoke Example for Wind Force dynamics node
AnimatedSkin Example for Wire Glue Constraint dynamics node
CompressedSpring Example for Wire Object dynamics node
BeadCurtain Example for Wire Solver dynamics node
BendingTree Example for Wire Solver dynamics node
BreakWire Example for Wire Solver dynamics node
CurveAdvection Example for Wire Solver dynamics node
Pendulum Example for Wire Solver dynamics node
PackedFragments Example for Assemble geometry node
FadedTorus Example for Attribute Fade geometry node
CaptureDeform Example for Cloth Deform geometry node
LowHigh Example for Dop Import geometry node
ProxyGeometry Example for Dop Import geometry node
dopimportrecordsexample Example for DOP Import Records geometry node
ColourAdvect Example for Fluid Source geometry node
CoolLava Example for Fluid Source geometry node
glueclusterexample Example for Glue Cluster geometry node
PartitionBall Example for Partition geometry node
AlphaOmega Example for Points from Volume geometry node
PlateBreak Example for TimeShift geometry node
TransformFracturedPieces Example for Transform Pieces geometry node
Fuzzy Logic Obstacle Avoidance Example Example for Fuzzy Defuzz VOP node
Fuzzy Logic State Transition Example Example for Fuzzy Defuzz VOP node
RampParameter Example for Parameter VOP node