Houdini is a
3D animation
Animation is a method by which still figures are manipulated to appear as moving images. In traditional animation, images are drawn or painted by hand on transparent celluloid sheets to be photographed and exhibited on film. Today, most anima ...
software
Software is a set of computer programs and associated documentation and data. This is in contrast to hardware, from which the system is built and which actually performs the work.
At the lowest programming level, executable code consists ...
application developed by
Toronto
Toronto ( ; or ) is the capital city of the Canadian province of Ontario. With a recorded population of 2,794,356 in 2021, it is the most populous city in Canada and the fourth most populous city in North America. The city is the ancho ...
-based SideFX, who adapted it from the PRISMS suite of
procedural generation
In computing, procedural generation is a method of creating data algorithmically as opposed to manually, typically through a combination of human-generated assets and algorithms coupled with computer-generated randomness and processing power. In ...
software tools. The procedural tools are used to produce different effects such as complex reflections, animations and particles system.
Some of its procedural features have been in existence since 1987.
Houdini is most commonly used for the creation of visual effects in film and television. It is used by major VFX companies such as
Walt Disney Animation Studios
Walt Disney Animation Studios (WDAS), sometimes shortened to Disney Animation, is an American animation studio that creates animated features and short films for The Walt Disney Company. The studio's current production logo features a scene fro ...
,
Pixar
Pixar Animation Studios (commonly known as Pixar () and stylized as P I X A R) is an American computer animation studio known for its critically and commercially successful computer animated feature films. It is based in Emeryville, Californi ...
,
DreamWorks Animation
DreamWorks Animation LLC (DWA, also known as DreamWorks Animation Studios and simply known as DreamWorks) is an American animation studio that produces animated films and television programs and is a subsidiary of Universal Pictures, a division ...
,
Double Negative
A double negative is a construction occurring when two forms of grammatical negation are used in the same sentence. Multiple negation is the more general term referring to the occurrence of more than one negative in a clause. In some languages, ...
,
ILM Ilm or ILM may refer to:
Acronyms
* Identity Lifecycle Manager, a Microsoft Server Product
* ''I Love Money,'' a TV show on VH1
* Independent Loading Mechanism, a mounting system for CPU sockets
* Industrial Light & Magic, an American motion pic ...
,
MPC,
Framestore
Framestore is a British animation, visual effects company and creative studio based on Chancery Lane in London. Formed in 1986, it acquired (and subsequently merged with) the Computer Film Company in 1997. It works on feature films and tele ...
,
Sony Pictures Imageworks
Sony Pictures Imageworks Inc. is a Canadian visual effects and computer animation studio headquartered in Vancouver, British Columbia, with an additional office on the Sony Pictures Studios lot in Culver City, California. SPI is a unit of Sony Pi ...
,
Scanline VFX
Scanline VFX is a global visual effects and animation company founded 1989 in Munich. The studio is led by VFX Supervisor Stephan Trojansky. The company has 7 locations including Munich, Stuttgart, Los Angeles, Vancouver, Montreal, London, and Se ...
,
Method Studios
Method Studios is a visual effects company launched in 1999 in Los Angeles, California with facilities in New York, Atlanta, Vancouver, San Francisco, Melbourne, Montreal, and Pune. The company provides production and post-production services in ...
and
The Mill.
It has been used in many feature animation productions, including
Disney's
The Walt Disney Company, commonly known as Disney (), is an American multinational mass media and entertainment conglomerate headquartered at the Walt Disney Studios complex in Burbank, California. Disney was originally founded on October ...
feature films ''
Fantasia 2000
''Fantasia 2000'' is a 1999 American animated musical anthology film produced by Walt Disney Feature Animation and released by Walt Disney Pictures. Produced by Roy E. Disney and Donald W. Ernst, it is the 38th Disney animated feature film and ...
'', ''
Frozen'', ''
Zootopia
''Zootopia'' (titled ''Zootropolis'' in various regions) is a 2016 American computer-animated buddy cop action comedy film produced by Walt Disney Animation Studios and released by Walt Disney Pictures. The 55th Disney animated feature film, ...
''
and ''
Raya and the Last Dragon
''Raya and the Last Dragon'' ( ) is a 2021 American computer-animated fantasy action-adventure film produced by Walt Disney Animation Studios and distributed by Walt Disney Studios Motion Pictures. The 59th film produced by the studio, it wa ...
''; the
Blue Sky Studios
Blue Sky Studios, Inc. was an American computer animation studio based in Greenwich, Connecticut. It was founded on February 22, 1987 by Chris Wedge, Michael Ferraro, Carl Ludwig, Alison Brown, David Brown, and Eugene Troubetzkoy after their e ...
film ''
Rio
Rio or Río is the Portuguese, Spanish, Italian, and Maltese word for "river". When spoken on its own, the word often means Rio de Janeiro, a major city in Brazil.
Rio or Río may also refer to:
Geography Brazil
* Rio de Janeiro
* Rio do Sul, a ...
'', and DNA Productions' ''
Ant Bully''.
SideFX also publishes Houdini Apprentice, a limited version of the software that is free of charge for non-commercial use.
Release history
Features
Houdini covers all the major areas of 3D production, including these:
* Modeling – All standard geometry entities including Polygons, (Hierarchical)
NURBS
Non-uniform rational basis spline (NURBS) is a mathematical model using basis splines (B-splines) that is commonly used in computer graphics for representing curves and surfaces. It offers great flexibility and precision for handling both analyt ...
/
Bézier Curve
A Bézier curve ( ) is a parametric curve used in computer graphics and related fields. A set of discrete "control points" defines a smooth, continuous curve by means of a formula. Usually the curve is intended to approximate a real-world shape t ...
s/Patches & Trims,
Metaballs
In computer graphics, metaballs are organic-looking ''n''-dimensional isosurfaces, characterised by their ability to meld together when in close proximity to create single, contiguous objects.
In solid modelling, polygon meshes are commonly ...
* Animation – Keyframed animation and raw channel manipulation (CHOPs),
motion capture
Motion capture (sometimes referred as mo-cap or mocap, for short) is the process of recording the movement of objects or people. It is used in military, entertainment, sports, medical applications, and for validation of computer vision and robo ...
support
* Particles
* Dynamics –
Rigid Body Dynamics
In the physical science of dynamics, rigid-body dynamics studies the movement of systems of interconnected bodies under the action of external forces. The assumption that the bodies are ''rigid'' (i.e. they do not deform under the action of a ...
,
Fluid Dynamics
In physics and engineering, fluid dynamics is a subdiscipline of fluid mechanics that describes the flow of fluids— liquids and gases. It has several subdisciplines, including ''aerodynamics'' (the study of air and other gases in motion) an ...
, Wire Dynamics,
Cloth Simulation
Textile is an umbrella term that includes various fiber-based materials, including fibers, yarns, filaments, threads, different fabric types, etc. At first, the word "textiles" only referred to woven fabrics. However, weaving is not the ...
,
Crowd simulation
Crowd simulation is the process of simulating the movement (or ) of a large number of entities or characters. It is commonly used to create virtual scenes for visual media like films and video games, and is also used in crisis training, architec ...
.
* Lighting – node-based shader authoring, lighting and re-lighting in an IPR viewer
* Rendering – Houdini ships with SideFX's rendering engines Mantra and Karma; Houdini Indie licence and up support 3rd party rendering engines, such as
Renderman The name RenderMan can cause confusion because it has been used to refer to different things developed by Pixar Animation Studios:
* RenderMan Interface Specification (RISpec), an open API (technical specification) developed by Pixar for a standard ...
, Octane, Arnold, Redshift,
V-ray
V-Ray is a biased computer-generated imagery rendering software application developed by Bulgarian software company Chaos . V-Ray is a commercial plug-in for third-party 3D computer graphics software applications and is used for visualizatio ...
, Maxwell(soon).
* Volumetrics – With its native CloudFx and PyroFx toolsets, Houdini can create clouds, smoke and fire simulations.
* Compositing – full compositor of floating-point deep (layered) images.
* Plugin Development – development libraries for user extensibility.
Houdini is an open environment and supports a variety of scripting APIs.
Python
Python may refer to:
Snakes
* Pythonidae, a family of nonvenomous snakes found in Africa, Asia, and Australia
** ''Python'' (genus), a genus of Pythonidae found in Africa and Asia
* Python (mythology), a mythical serpent
Computing
* Python (pro ...
is increasingly the scripting language of choice for the package, and is intended to substitute its original C Shell-like scripting language,
HScript. However, any major scripting languages which support socket communication can interface with Houdini.
Tools
Operators
Houdini's procedural nature is found in its operators. Digital assets are generally constructed by connecting sequences of operators (or OPs). This proceduralism has several advantages: it allows users to construct highly detailed geometric or organic objects in comparatively very few steps; it enables and encourages non-linear development; and new operators can be created in terms of existing operators, a flexible alternative to non-procedural scripting often relied on in other packages for customisation. Houdini uses this procedural generation in production of
textures,
shader
In computer graphics, a shader is a computer program that calculates the appropriate levels of light, darkness, and color during the rendering of a 3D scene - a process known as ''shading''. Shaders have evolved to perform a variety of spec ...
s,
particles
In the physical sciences, a particle (or corpuscule in older texts) is a small localized object which can be described by several physical or chemical properties, such as volume, density, or mass.
They vary greatly in size or quantity, from su ...
, "channel data" (data used to drive animation),
rendering and
compositing
Compositing is the process or technique of combining visual elements from separate sources into single images, often to create the illusion that all those elements are parts of the same scene. Live-action shooting for compositing is variously ca ...
.
Houdini's operator-based structure is divided into several main groups:
*OBJs – nodes that pass transform information (Traditionally these contain SOPs.)
*SOPs – Surface Operators – for procedural modelling.
*POPs – Particle Operators – used to manipulate
particles systems.
*CHOPs – Channel Operators – for procedural animation and audio manipulation.
*COPs – Composite Operators – used to perform compositing on footages.
*DOPs – Dynamic Operators – for dynamic simulations for fluids, cloth, rigid body interaction etc.
*SHOPs – Shading Operator – for representing a dozen or more different shading types for several different renderers.
*ROPs –
render operators – for building networks to represent different render passes and render dependencies.
*VOPs – VEX operators – for building nodes of any of the above types using a highly optimized SIMD architecture.
*TOPs - Task Operators
*LOPs - Lighting Operators - for generating USD describing characters, props, lighting, and rendering.
Operators are connected together in networks. Data flows through, manipulated by each operator in turn. This data could represent 3D
geometry
Geometry (; ) is, with arithmetic, one of the oldest branches of mathematics. It is concerned with properties of space such as the distance, shape, size, and relative position of figures. A mathematician who works in the field of geometry is c ...
,
bitmap
In computing, a bitmap is a mapping from some domain (for example, a range of integers) to bits. It is also called a bit array
A bit array (also known as bitmask, bit map, bit set, bit string, or bit vector) is an array data structure that c ...
images, particles,
dynamics,
shader
In computer graphics, a shader is a computer program that calculates the appropriate levels of light, darkness, and color during the rendering of a 3D scene - a process known as ''shading''. Shaders have evolved to perform a variety of spec ...
algorithm
In mathematics and computer science, an algorithm () is a finite sequence of rigorous instructions, typically used to solve a class of specific Computational problem, problems or to perform a computation. Algorithms are used as specificat ...
s,
animation
Animation is a method by which image, still figures are manipulated to appear as Motion picture, moving images. In traditional animation, images are drawn or painted by hand on transparent cel, celluloid sheets to be photographed and exhibited ...
,
audio
Audio most commonly refers to sound, as it is transmitted in signal form. It may also refer to:
Sound
*Audio signal, an electrical representation of sound
*Audio frequency, a frequency in the audio spectrum
*Digital audio, representation of sound ...
, or a combination of these. This
node graph architecture
Node graph architecture is a software design structured around the notion of a node graph. Both the source code as well as the user interface is designed around the editing and composition (or linking) of atomic functional units.
The source code ...
is similar to that employed in node-based
compositors such as
Shake or
Nuke.
Complex networks can be grouped into a single
meta-operator
In theoretical physics, the word meta-operator is sometimes used to refer to a specific operation over a combination of operators, as in the example of path-ordering. A meta-operator is generally neither an operator (a linear transform on the vect ...
node which behaves like a class definition, and can be instantiated in other networks like any compiled node. In this way users can create their own sophisticated tools without the need for programming. In this way Houdini can be regarded as a highly interactive visual programming toolkit which makes programming more accessible to artists.
Houdini's set of tools are mostly implemented as operators. This has led to a higher learning curve than other comparable tools. It is one thing to know what all the nodes do – but the key to success with Houdini is understanding how to represent a desired creative outcome as a network of nodes. Successful users are generally familiar with a large repertoire of networks (algorithms) which achieve standard creative outcomes. The overhead involved in acquiring this repertoire of algorithms is offset by the artistic and algorithmic flexibility afforded by access to lower level building blocks with which to configure shot element creation routines. In large productions, the development of a procedural network to solve a specific element creation challenge makes automation trivial. Many studios that use Houdini on large feature effects, and feature animation projects develop libraries of procedures that can be used to automate generation of many of the elements for that film with almost no artist interaction.
Also unique to Houdini is the range of
I/O OPs available to animators, including
MIDI
MIDI (; Musical Instrument Digital Interface) is a technical standard that describes a communications protocol, digital interface, and electrical connectors that connect a wide variety of electronic musical instruments, computers, and re ...
devices, raw files or
TCP connections, audio devices (including built-in
phoneme
In phonology and linguistics, a phoneme () is a unit of sound that can distinguish one word from another in a particular language.
For example, in most dialects of English, with the notable exception of the West Midlands and the north-west o ...
and
pitch detection),
mouse
A mouse ( : mice) is a small rodent. Characteristically, mice are known to have a pointed snout, small rounded ears, a body-length scaly tail, and a high breeding rate. The best known mouse species is the common house mouse (''Mus musculus' ...
cursor
Cursor may refer to:
* Cursor (user interface), an indicator used to show the current position for user interaction on a computer monitor or other display device
* Cursor (databases), a control structure that enables traversal over the records in ...
position, and so on. Of particular note is Houdini's ability to work with audio, including sound and music synthesis and spatial 3D sound processing tools. These operators exist in the context called "CHOPs" for which Side Effects won a Technical Achievement Academy Award in 2002.
VEX (Vector Expression) is one of Houdini's internal languages. It is similar to the
Renderman Shading Language Renderman Shading Language (abbreviated RSL) is a component of the RenderMan Interface Specification, and is used to define shaders. The language syntax is C-like.
A shader written in RSL can be used without changes on any RenderMan-compliant rend ...
. Using VEX a user can develop custom SOPs, POPs, shaders, etc. The current implementation of VEX utilizes
SIMD
Single instruction, multiple data (SIMD) is a type of parallel processing in Flynn's taxonomy. SIMD can be internal (part of the hardware design) and it can be directly accessible through an instruction set architecture (ISA), but it should ...
-style processing.
Rendering
Houdini is bundled with a production-class renderer, Mantra, which had many similarities to
RenderMan The name RenderMan can cause confusion because it has been used to refer to different things developed by Pixar Animation Studios:
* RenderMan Interface Specification (RISpec), an open API (technical specification) developed by Pixar for a standard ...
in its scope and application in its initial incarnation. Micropolygon rendering is supported, allowing high-quality displacement operations as well as traditional scan-line and raytracing modes. Shaders are scriptable and composed in their VEX language, or by using VOPs; their node-based interface to programming VEX. Mantra (as does Houdini itself) also supports point-clouds, which can be similar in application as brickmaps in Renderman. This allows more complicated light interactions, such as sub-surface scattering and ambient occlusion, to be produced with lower computational overhead. Mantra can perform extremely fast
volume rendering
In scientific visualization and computer graphics, volume rendering is a set of techniques used to display a 2D projection of a 3D discretely sampled data set, typically a 3D scalar field.
A typical 3D data set is a group of 2D slice images ...
, and also physically based
path-tracing – a technique which attempts to more accurately model the physical interactions of light and materials.
TouchDesigner
''Derivative Inc.'' is a spin-off of Side Effects Software that markets a derivative of Houdini called
TouchDesigner
TouchDesigner is a node based visual programming language for real time interactive multimedia content, developed by the Toronto-based company Derivative. It's been used by artists, programmers, creative coders, software designers, and performe ...
. Tailored toward real-time
OpenGL
OpenGL (Open Graphics Library) is a cross-language, cross-platform application programming interface (API) for rendering 2D and 3D vector graphics. The API is typically used to interact with a graphics processing unit (GPU), to achieve hardwa ...
-generated animation, it was used on rock group
Rush
Rush(es) may refer to:
Places
United States
* Rush, Colorado
* Rush, Kentucky
* Rush, New York
* Rush City, Minnesota
* Rush Creek (Kishwaukee River tributary), Illinois
* Rush Creek (Marin County, California), a stream
* Rush Creek (Mono Cou ...
's 30th-anniversary tour to produce dynamic graphics driven directly by the musicians.
TouchDesigner
TouchDesigner is a node based visual programming language for real time interactive multimedia content, developed by the Toronto-based company Derivative. It's been used by artists, programmers, creative coders, software designers, and performe ...
was also used by Xite Labs (formerly V Squared Labs) to create live visuals for
Amon Tobin
Amon Adonai Santos de Araújo Tobin (born February 7, 1972), known as Amon Tobin (), is a Brazilian electronic musician, composer and producer. He is noted for his unusual methodology in sound design and music production. He has released eight ...
's
ISAM
ISAM (an acronym for indexed sequential access method) is a method for creating, maintaining, and manipulating computer files of data so that records can be retrieved sequentially or randomly by one or more keys. Indexes of key fields are mainta ...
installation tour.
Production
The notable works in which Houdini was used include the 1997 ''
Contact
Contact may refer to:
Interaction Physical interaction
* Contact (geology), a common geological feature
* Contact lens or contact, a lens placed on the eye
* Contact sport, a sport in which players make contact with other players or objects
* ...
'' movie and more recent 2016 ''
Zootopia
''Zootopia'' (titled ''Zootropolis'' in various regions) is a 2016 American computer-animated buddy cop action comedy film produced by Walt Disney Animation Studios and released by Walt Disney Pictures. The 55th Disney animated feature film, ...
.
''
See also
References
External links
SideFX Software Makers of Houdini
{{DEFAULTSORT:Houdini (Software)
3D graphics software
IRIX software
1996 software
3D animation software
3D computer graphics software for Linux
Proprietary commercial software for Linux
Motion graphics software for Linux