
Brandon Moner
psionicsin
About Me
UX Product Designer looking to bridge the gap with Houdini :D
専門知識
Hobbyist
業界:
Advertising / Motion Graphics
Connect
LOCATION
Seattle,
United States
ウェブサイト
Houdini Engine
BEGINNER
Hair & Fur | Cloth | Pyro FX | Fluids | 説明
Availability
I am currently a student at Seattle, WA
Recent Forum Posts
Mandelbox Building Animations in Houdini… 2025年8月13日15:16
Hey everyone,
I’m still learning Houdini, but I’ve been really drawn to a lot of COPs videos and tutorials. That got me thinking about the opening sequence of the original Doctor Strange. Could COPs be used to create the Mandelbox effect on the buildings? Is it even possible to animate COPs like that?
I tried searching for tutorials, but unfortunately, I couldn’t find anything. So, I asked ChatGPT-5, and here’s what it suggested:
Here’s a clean, art-directable Houdini build to get a Doctor Strange–style mirror-dimension rig working with a Mandelbox (via Copernicus) as the “special sauce.”
High-level stack
1. Base city choreography (clean transforms you can direct)
2. Fractal field overlay (Mandelbox SDF/mesh from Copernicus)
3. Kaleidoscope/mirroring (instancing + reflections)
4. Masks & timing (where/when the chaos happens)
5. Shading & comp-friendly AOVs (sell the depth and scale)
⸻
0) Project hygiene
• /geo/city_in, /geo/city_anim, /geo/fractal_field, /geo/deform_pass, /geo/kaleido_pass, /out/rop_*
• Cache each stage to disk: $JOB/cache/city_anim.$F4.bgeo.sc, etc.
⸻
1) Base city choreography (art-directable)
/geo/city_anim
• File → import kitbash or your buildings.
• Clean (Facet, Normal) → consistent normals.
• Group buildings into zones (by bbox): zone_A, zone_B…
• For each zone, a Subnet with these SOPs you can keyframe:
• Bend / Twist / Lattice (soft deforms for “folding streets”)
• Transform with animated pivots (stack a few for drifting blocks)
• Merge zones → ROP Geometry cache: city_anim.$F4.bgeo.sc
Goal: you control rhythm and readability before fractal noise enters.
⸻
2) Fractal field (Copernicus) — animated & cacheable
/geo/fractal_field
• Copernicus node → Mandelbox (or Mandelbulb) with:
• Animate Scale, Iterations, Rotation over time (slow, musical curves).
• Keep a copy as SDF/VDB (prefer SDF for clean deformation sampling).
• Convert:
• If Copernicus outputs polys: VDB From Polygons → SDF.
• If it can output SDF directly, great—skip conversion.
• Optional detail: VDB Resample (two versions: high for hero shots, low for lookdev).
• Cache both: fractal_sdf.$F4.vdb and/or fractal_vis.$F4.bgeo.sc
Parameter animation hints
• Iterations: 8–14 range, ease in/out (not linear).
• Scale: 0.8 → 1.2 subtle breathing.
• Fold parameters: small sinusoidal offsets to avoid static “mathy” look.
⸻
3) Deform pass — project fractal onto the city
/geo/deform_pass
• File → city_anim.$F4.bgeo.sc
• Attribute Paint (or Volume Rasterize Attr from custom boxes) → create @fractalmask per zone (0–1).
• Volume Sample the SDF to drive displacement. Two common ways:
Option A: VOP (Point VOP) approach
• Inputs: animated city → fractal SDF (second input).
• Sample SDF (Volume Sample), compute gradient (Volume Gradient).
• Move P along gradient scaled by mask & remapped distance.
Option B: VEX wrangle (fast, clear)
Drop an Attribute Wrangle (Run Over: Points) with the fractal SDF wired into second input:
:
// second input: fractal_sdf vdb
float d = volumesample(1, 0, @P);
vector grad = normalize(volumegradient(1, 0, @P));
// Falloff: only affect near the surface band
float band = smooth(0.5, 0.0, abs(d)); // 0 near iso-surface, 1 far
float mask = clamp(@fractalmask, 0.0, 1.0);
// Artistic tuners
float amp = chf("amplitude"); // 0.0–1.0
float push = chf("push_along"); // -1 to +1 (in/out)
float noise = fit01(rand(@primnum+@ptnum), 0.7, 1.3);
vector offset = grad * push * amp * band * mask * noise;
@P += offset;
Expose amplitude, push_along as UI sliders.
• Add a Peak or secondary Noise SOP afterward (very subtle) to break uniformity.
• Cache: city_deformed.$F4.bgeo.sc
⸻
4) Kaleidoscope / mirror rig (modular)
/geo/kaleido_pass
• File → city_deformed.$F4.bgeo.sc
• Mirror SOP (one or multiple axes). Drive the mirror plane rotation/translation over time.
• Copy to Points workflow:
• Create a handful of transform reference points (a simple grid or curve).
• Attribute Randomize rotations/scale slightly.
• Copy/Transform or Copy to Points the whole deformed city onto those refs for a “tessellated” cityscape.
• Switch nodes to toggle variants: only mirrors, only copies, both.
• Group/mask again so not every clone/mirror activates at once.
• Cache: city_kaleido.$F4.bgeo.sc
Pro tip: Keep one “hero” layer with minimal kaleidoscope for continuity, and layer the crazier versions behind it for parallax.
⸻
5) Timing & control (make it musical, not mush)
/obj/controls (HDA or CHOPs)
• Create a simple CHOPs network or Keyframe CHOP to produce clean envelopes:
• beat_fractal, beat_mirror, beat_fold channels (0–1).
• Export those channels to:
• Deform amplitude
• Mask thresholds
• Mirror plane rotation
• Copy count
• This keeps everything in sync and makes retiming painless.
⸻
6) Camera & scale cheats
• Camera: 21–28mm equivalents sell scale; animate with a Path and Look At constraint.
• Slight barrel distortion in comp helps the “reality bending” feel.
• Add foreground “anchoring” geo (streetlights, buses) that deform last to preserve audience orientation.
⸻
7) Shading & look (sell depth without overcooking)
• Keep materials recognizable: concrete/brick read first, fractal reads second.
• In a Material Builder:
• Triplanar projections so textures survive heavy transforms.
• World-space noise mixed by @fractalmask for kaleido regions.
• AOVs (very important for comp):
• Position (PWS), Normal, Curvature, Cryptomatte (by zone/clone), Mask_Fractal, Mask_Kaleido.
• Lighting: one key sun + skylight. Avoid too many colored lights; comp will do the heavy lifting.
⸻
8) Rendering & comp
• Render beauty + AOVs with Karma XPU or Mantra (your call).
• In comp (Nuke/Fusion):
• Use Position/Normal for relighting tweaks.
• Grade by Mask_Fractal to push contrast/saturation only where the math goes wild.
• Add very light chromatic aberration and a directional blur during beat spikes.
⸻
9) PDG/automation (optional but nice)
• TOPs: wedges for fractal iteration count, amplitude, and copy count.
• Auto-compare via flipbook contact sheets so you can pick the most cinematic run.
⸻
10) Quick “ready-to-animate” defaults
• Deform amplitude: 0 → 0.35 over 40 frames, hold, then 0.35 → 0.05 to “land.”
• Mirror plane rotation: 0 → 120° over 60 frames, looping slowly.
• Copy count: 1 → 5 at the peak moment, then back to 2.
• Fractalmask: paint in strips along the chase path so the world “responds” to the camera.
⸻
11) Troubleshooting
• Geo exploding: clamp displacement by SDF band; keep gradients normalized; limit amplitude.
• Smearing textures: lean on triplanar and world-space noise; avoid UV-dependent projections.
• Too busy / unreadable: reduce copy count, increase scale of kaleido transforms, fade masks per zone.
So, my question is, how accurate is this? It also offers to create an HDA of this with TEST geometry and all.
I’m still learning Houdini, but I’ve been really drawn to a lot of COPs videos and tutorials. That got me thinking about the opening sequence of the original Doctor Strange. Could COPs be used to create the Mandelbox effect on the buildings? Is it even possible to animate COPs like that?
I tried searching for tutorials, but unfortunately, I couldn’t find anything. So, I asked ChatGPT-5, and here’s what it suggested:
Here’s a clean, art-directable Houdini build to get a Doctor Strange–style mirror-dimension rig working with a Mandelbox (via Copernicus) as the “special sauce.”
High-level stack
1. Base city choreography (clean transforms you can direct)
2. Fractal field overlay (Mandelbox SDF/mesh from Copernicus)
3. Kaleidoscope/mirroring (instancing + reflections)
4. Masks & timing (where/when the chaos happens)
5. Shading & comp-friendly AOVs (sell the depth and scale)
⸻
0) Project hygiene
• /geo/city_in, /geo/city_anim, /geo/fractal_field, /geo/deform_pass, /geo/kaleido_pass, /out/rop_*
• Cache each stage to disk: $JOB/cache/city_anim.$F4.bgeo.sc, etc.
⸻
1) Base city choreography (art-directable)
/geo/city_anim
• File → import kitbash or your buildings.
• Clean (Facet, Normal) → consistent normals.
• Group buildings into zones (by bbox): zone_A, zone_B…
• For each zone, a Subnet with these SOPs you can keyframe:
• Bend / Twist / Lattice (soft deforms for “folding streets”)
• Transform with animated pivots (stack a few for drifting blocks)
• Merge zones → ROP Geometry cache: city_anim.$F4.bgeo.sc
Goal: you control rhythm and readability before fractal noise enters.
⸻
2) Fractal field (Copernicus) — animated & cacheable
/geo/fractal_field
• Copernicus node → Mandelbox (or Mandelbulb) with:
• Animate Scale, Iterations, Rotation over time (slow, musical curves).
• Keep a copy as SDF/VDB (prefer SDF for clean deformation sampling).
• Convert:
• If Copernicus outputs polys: VDB From Polygons → SDF.
• If it can output SDF directly, great—skip conversion.
• Optional detail: VDB Resample (two versions: high for hero shots, low for lookdev).
• Cache both: fractal_sdf.$F4.vdb and/or fractal_vis.$F4.bgeo.sc
Parameter animation hints
• Iterations: 8–14 range, ease in/out (not linear).
• Scale: 0.8 → 1.2 subtle breathing.
• Fold parameters: small sinusoidal offsets to avoid static “mathy” look.
⸻
3) Deform pass — project fractal onto the city
/geo/deform_pass
• File → city_anim.$F4.bgeo.sc
• Attribute Paint (or Volume Rasterize Attr from custom boxes) → create @fractalmask per zone (0–1).
• Volume Sample the SDF to drive displacement. Two common ways:
Option A: VOP (Point VOP) approach
• Inputs: animated city → fractal SDF (second input).
• Sample SDF (Volume Sample), compute gradient (Volume Gradient).
• Move P along gradient scaled by mask & remapped distance.
Option B: VEX wrangle (fast, clear)
Drop an Attribute Wrangle (Run Over: Points) with the fractal SDF wired into second input:
:
// second input: fractal_sdf vdb
float d = volumesample(1, 0, @P);
vector grad = normalize(volumegradient(1, 0, @P));
// Falloff: only affect near the surface band
float band = smooth(0.5, 0.0, abs(d)); // 0 near iso-surface, 1 far
float mask = clamp(@fractalmask, 0.0, 1.0);
// Artistic tuners
float amp = chf("amplitude"); // 0.0–1.0
float push = chf("push_along"); // -1 to +1 (in/out)
float noise = fit01(rand(@primnum+@ptnum), 0.7, 1.3);
vector offset = grad * push * amp * band * mask * noise;
@P += offset;
Expose amplitude, push_along as UI sliders.
• Add a Peak or secondary Noise SOP afterward (very subtle) to break uniformity.
• Cache: city_deformed.$F4.bgeo.sc
⸻
4) Kaleidoscope / mirror rig (modular)
/geo/kaleido_pass
• File → city_deformed.$F4.bgeo.sc
• Mirror SOP (one or multiple axes). Drive the mirror plane rotation/translation over time.
• Copy to Points workflow:
• Create a handful of transform reference points (a simple grid or curve).
• Attribute Randomize rotations/scale slightly.
• Copy/Transform or Copy to Points the whole deformed city onto those refs for a “tessellated” cityscape.
• Switch nodes to toggle variants: only mirrors, only copies, both.
• Group/mask again so not every clone/mirror activates at once.
• Cache: city_kaleido.$F4.bgeo.sc
Pro tip: Keep one “hero” layer with minimal kaleidoscope for continuity, and layer the crazier versions behind it for parallax.
⸻
5) Timing & control (make it musical, not mush)
/obj/controls (HDA or CHOPs)
• Create a simple CHOPs network or Keyframe CHOP to produce clean envelopes:
• beat_fractal, beat_mirror, beat_fold channels (0–1).
• Export those channels to:
• Deform amplitude
• Mask thresholds
• Mirror plane rotation
• Copy count
• This keeps everything in sync and makes retiming painless.
⸻
6) Camera & scale cheats
• Camera: 21–28mm equivalents sell scale; animate with a Path and Look At constraint.
• Slight barrel distortion in comp helps the “reality bending” feel.
• Add foreground “anchoring” geo (streetlights, buses) that deform last to preserve audience orientation.
⸻
7) Shading & look (sell depth without overcooking)
• Keep materials recognizable: concrete/brick read first, fractal reads second.
• In a Material Builder:
• Triplanar projections so textures survive heavy transforms.
• World-space noise mixed by @fractalmask for kaleido regions.
• AOVs (very important for comp):
• Position (PWS), Normal, Curvature, Cryptomatte (by zone/clone), Mask_Fractal, Mask_Kaleido.
• Lighting: one key sun + skylight. Avoid too many colored lights; comp will do the heavy lifting.
⸻
8) Rendering & comp
• Render beauty + AOVs with Karma XPU or Mantra (your call).
• In comp (Nuke/Fusion):
• Use Position/Normal for relighting tweaks.
• Grade by Mask_Fractal to push contrast/saturation only where the math goes wild.
• Add very light chromatic aberration and a directional blur during beat spikes.
⸻
9) PDG/automation (optional but nice)
• TOPs: wedges for fractal iteration count, amplitude, and copy count.
• Auto-compare via flipbook contact sheets so you can pick the most cinematic run.
⸻
10) Quick “ready-to-animate” defaults
• Deform amplitude: 0 → 0.35 over 40 frames, hold, then 0.35 → 0.05 to “land.”
• Mirror plane rotation: 0 → 120° over 60 frames, looping slowly.
• Copy count: 1 → 5 at the peak moment, then back to 2.
• Fractalmask: paint in strips along the chase path so the world “responds” to the camera.
⸻
11) Troubleshooting
• Geo exploding: clamp displacement by SDF band; keep gradients normalized; limit amplitude.
• Smearing textures: lean on triplanar and world-space noise; avoid UV-dependent projections.
• Too busy / unreadable: reduce copy count, increase scale of kaleido transforms, fade masks per zone.
So, my question is, how accurate is this? It also offers to create an HDA of this with TEST geometry and all.
What’s the best holistic Houdini tutorial series out there? 2024年5月16日10:33
Thanks so much for the knowledge and recommendations guys. I’ll be sure to research every suggestion you guys gave me.
I’m doing this not only because truly want to learn this package, but I also have a direct connection to a VFX studio. I could potentially do side projects for them. So this would make me a value I believe.
I’m doing this not only because truly want to learn this package, but I also have a direct connection to a VFX studio. I could potentially do side projects for them. So this would make me a value I believe.
What’s the best holistic Houdini tutorial series out there? 2024年5月14日12:17
Hello all!
I’m a UX Product Designer that’s decided to learn Houdini for the first time. My goal is to hopefully be able to find that intersection between UX Product Design and how Houdini can help with that for future concepts.
My question is: What would be the most all inclusive tutorial series out there that would be both friendly (semi-new here), holistic and give an idea for future growth and experimentation?
FYI. I’ve watched many tutorials through the years, so I understand how Houdini works. What I don’t have is the experience to align this knowledge and make it stick via repetition.
I’m a UX Product Designer that’s decided to learn Houdini for the first time. My goal is to hopefully be able to find that intersection between UX Product Design and how Houdini can help with that for future concepts.
My question is: What would be the most all inclusive tutorial series out there that would be both friendly (semi-new here), holistic and give an idea for future growth and experimentation?
FYI. I’ve watched many tutorials through the years, so I understand how Houdini works. What I don’t have is the experience to align this knowledge and make it stick via repetition.