Technical Art Demo Collections (Solo)10-07-2024 Sketch Book
Water System
Water System
Water System
Statue Destruction Effect
Bird Flock System
Interactive Bottled Liquid Material
Glass Bottle Material
Interactive Butterfly Effect
Procedural Ice Cream Cone
A collection of technical art demos showcasing expertise in procedural techniques, materials, shaders, particle systems, and real-time interactions across Unreal, Unity, and Houdini. Each demo highlights creative problem-solving, technical execution, and artistic refinement in diverse scenarios.

  • Water System: A comprehensive water system in UE, covering surface behavior, underwater effects, and interactions with the environment and characters.

  • Statue Destruction Effect: A directional statue destruction effect created using procedural fracturing in Houdini and vertex animation as well as cinematic lighting in UE, to achieve breakage without physical simulations.

  • Bird Flock System: A procedurally bird flock system using Niagara. The birds are animated using vertex animation textures, with behavior and individual spacing controlled with various forces and the Neighbor Grid 3D module.  

  • Interactive Bottled Liquid Material: An interactive, deceptive bottled liquid shader created in Unity URP. The liquid dynamically responds to the bottle motion, simulating wobbling and waves, and features refraction and reflection.  

  • Glass Bottle Material: A realistic glass bottle material with refraction, reflection, surface details and translucent shadow in Unity's URP.  

  • Interactive Butterfly Effect: An interactive butterfly effect created in Unity, where butterflies gracefully flutter around and will be drawn to the approaching player. Upon contact, butterflies emit an ethereal sound, dissolve into soft glimmer and gradually disappear.

  • Procedural Ice Cream Cone: A procedural ice cream cone created in Houdini, placing a varying number of ice cream scoops on the cone in a visually appealing and logical manner.


Softwares: Unreal, Unity, Houdini, Blender, Photoshop




Water System (UE)    More Details
A water system compassing realistic water surface dynamics, immersive underwater effects, and interactive features.

Water Surface
  • Dynamic Waves
    • Large-scale wave motion is achieved using noise-based displacement applied via Virtual Heightfield Mesh.
    • Fine surface ripples are layered using normal maps blended with adjustable UV scales and speeds for added realism.
  • Reflections
    • Custom Screen-Space Reflections (SSR) are implemented via HLSL for more precise control over fading and edge handling.
    • HDR-based reflections are overlaid to account for areas outside screen-space, ensuring seamless environmental reflection.
  • Refractions: Refraction effects are created by distorting screen-space UV coordinates with noise, controlled by depth.
  • Depth Fade: Two methods are used — an absolute depth fade to calculate shading variations based on water depth and a scene depth fade to create smooth transitions near the waterline.
  • Fresnel Effect: A Fresnel term enhances edge realism, simulating how light varies based on the viewing angle.
  • Specular Highlights: Specular lighting is manually calculated, simulating realistic water surface highlights without the overhead of the default lit material.
Underwater Effects
  • Vignetting: An elliptical vignetting mask darkens the screen edges, enhancing immersion and guiding focus toward the center.
  • Distortion and Blur: Screen-space distortion mimics the visual shift caused by water movement, while Gaussian blur softens underwater visuals for a natural effect.
  • Depth Fog: Depth fog is calculated based on scene depth, gradually obscuring distant objects to simulate underwater light attenuation.
  • Waterline Transition: A dynamic stencil-based mask separates above-water and underwater views, creating a smooth transition zone that adapts to camera movement.
  • Underwater View of Water Surface: A custom-rendered surface mimics the water view from below, with dynamically adjusted normals and displacement matching the above-water material.
Water Interactions
  • Environmental Interactions
    • Caustics: Decal-based caustics are projected with noise-distorted sampling and offer handling for steep surfaces; RGB offset adds a dispersion effect, simulating light splitting into colors.
    • Foam: Foam appears in shallow areas, driven by depth calculations, adding detail to shorelines and obstacles.
    • Wetting Effects: Decal-based wetting simulates damp surfaces for nearby and submerged objects, blending smoothly with adjustable opacity and falloff.
  • Character Interactions
    • Wave Simulation: Render targets capture character movement to dynamically update water surface height and normals, generating realistic ripples and splashes.
    • Camera Water Droplets: Procedurally generated droplets appear on the lens when emerging from water. The droplets slowly evaporate, with dynamic shapes and trailing effects created using noise-based algorithms.
Statue Destruction Effect (Houdini, UE)   More Details
A directional statue destruction effect created using procedural fracturing in Houdini and vertex animation as well as cinematic lighting, to achieve breakage without physical simulations.

Model Processing, Fracturing and Data Storage
  • The original statue was reduced to a half-body bust. UV mapping was adjusted, and the model was remeshed using VDB conversion to ensure watertight geometry and improve topology for fracturing.
  • Non-uniform fracturing was performed based on proximity to an explosion point, with smaller, denser fragments near the center.
  • A PyroSource node was used to scatter points within the explosion sphere. Points outside the statue were removed, and the remaining points guided the RBD Material Fracture process.
  • Centroid coordinates and distances from the explosion center were stored in UV channels: UV1 — X and Y centroid coordinates; UV2 — Z centroid coordinate and distance to the explosion center.
Vertex Animation
  • Data Unpacking: Centroid coordinates and distances were unpacked from the UV channels in UE, with corrections for coordinate differences between Houdini and Unreal.
  • Displacement: Fragments were animated with two types of displacement:
    • Axial Displacement: Movement along the explosion axis, scaled by destruction progress and shaped with noise and sine waves to simulate gravity.
    • Radial Displacement: Outward scattering from the explosion axis, scaled by noise and destruction progress.
  • Rotation: Fragments rotated around their centroids, with random rotation axes and speeds tied to destruction progress. Smaller fragments rotated faster for a dynamic effect.
  • Destruction Progress: A scalar parameter controlled the sequence, determining each fragment's position and rotation based on its distance from the explosion center.
Lighting and Color Grading
  • Volumetric fog and lighting were carefully adjusted to added depth and atmosphere, with several cubes placed to block directional light and create the desired god ray shape. Two rect lights were positioned to subtly highlight the statue from specific angles. 
  • Color grading was adjusted in post-processing to fine-tune the overall tone and mood.
Animation and Rendering
  • Sequencer: Destruction progress was keyframed in Unreal’s Sequencer using a Material Parameter Collection to synchronize animation timing.
  • Rendering: The final animation was rendered with the Movie Render Queue for high-quality output.
Bird Flock System (UE)   More Details
A procedurally bird flock system using Niagara. The birds are animated using vertex animation textures, with behavior and individual spacing controlled with various forces and the Neighbor Grid 3D module.  

Vertex Animation for Static Mesh
  • Conversion Process: Skeletal animations were converted to vertex animation textures (VAT) using Unreal’s AnimToTexture plugin; Animation data was stored in textures and applied to static meshes through a custom material. By using VAT, the system reduced draw calls and leveraged instancing for performance efficiency.
  • Wing Flapping Randomization: A dynamic material parameter, AnimationTimeOffset, assigned a random starting frame to each particle, preventing synchronized animations and creating a more natural look.
Niagara System
  • Flock Behavior Simulation
    • Vortex Force: Added swirling movement to simulate dynamic flock patterns.
    • Drag Force: Applied to mimic air resistance and keep motion controlled.
    • Repulsion and Attraction: Forces ensured the birds maintained formation while avoiding collisions.
    • Curl Noise: Introduced random, chaotic motion for a more natural effect.
  • Maintaining Particle Spacing:  Added Neighbor Grid 3D module to track the proximity of each bird to its neighbors and maintain proper spacing between.
    • Grid Setup:  A grid was established with a limit of max neighbors per cell.
      • Fill Grid — Populated grid cells with particles.
      • Query Grid — Calculated distances and adjusted velocities for realistic separation.
    • Debugging: Visualized the grid and neighbor counts using cube meshes and text sprites, aiding in fine-tuning flock behavior.


    Interactive Bottled Liquid Material (Unity)   More Details
    An interactive, deceptive bottled liquid shader created in Unity URP. The liquid dynamically responds to the bottle motion, simulating wobbling and waves, and features refraction and reflection.

    Wobble, Waves, and Clipping
    • Wobble: Vertices rotated around the x and z axes relative to the liquid’s origin. Adjusted direction vectors simulate the liquid’s tilt and wobble dynamically.
    • Waves: Intersecting wave patterns were created using sine functions applied to the wobble-adjusted direction vectors.
    • Clipping: A step node compared the y component of the unit direction vector against a fill level parameter, which was remapped from 0~1 to -1~1, for alpha clipping to create the desired liquid level.
    Side Surface
    • Refraction: Screen-space sampling with offsets based on view direction and normal vectors, combined with Gaussian blur, created realistic refraction.
    • Parallax Effect: Simulated floating particles inside the liquid by calculating virtual refraction directions for UV offsets, creating a realistic depth effect.
    • Fresnel: Fresnel reflection was blended with liquid color for edge effect.
    Top Surface (Main Challenge)
    • Projected Surface: Backface vertices were projected onto the liquid surface based on wobbling and fill level.
    • Normal Disturbance: Wave-induced normal variations were calculated to add surface dynamics.
    • Floating Particles: Simulated particles rising and falling with the liquid surface by  sampling with perturbed UVs .
    • Reflection: Captured dynamic reflection effects using a reflection probe, based on normal changes; adjusted probe position in real time via script to synchronize with the liquid's displacement.
    Output Switching
    • Side and top surface effects were conditionally output based on face direction using Switch by Face, with alpha clipping applied for surface level.
    Glass Bottle Material (Unity)   More Details
    A realistic glass bottle material with refraction, reflection, surface details and translucent shadow in Unity's URP.

    Model Preparation
    • The glass bottle model was prepared in Blender, with inner and outer walls separated for better control over material properties and to resolve transparency sorting issues.
    Shader Graph
    • Thickness and Refraction: Simulated thickness calculated from normals and view direction, creating realistic edge darkening. Screen-space refraction achieved through offset sampling, enhanced by alpha adjustments for realistic light bending.
    • Reflection and Specular Highlights: Built-in reflections from Unity's lit shader with "Preserve Specular Lighting" enabled provided efficient performance and visual fidelity.
    • Surface Details: Roughness maps simulated smudges, while normal maps added fine scratches for enhanced realism.
    HLSL Shader
    • Translucent Shadows: Customized Unity’s shadow-casting behavior using a dither method for semi-transparent shadows, blending alpha clipping with shadow casting.
    Rendering Order
    • Solved transparency sorting by rendering in this order: inner wall (2998), liquid (2999), outer wall (3000).
    Post-Processing
    • Used post-processing effects to correct the overexposure of the HDR skybox, and applied a bloom effect to enhance the glow of the glass and other light-reflective surfaces.
    Interactive Butterfly Effect (Unity, Photoshop, Blender)   More Details
    An interactive butterfly effect created in Unity, where butterflies gracefully flutter around and will be drawn to the approaching player. Upon contact, butterflies emit an ethereal sound, dissolve into soft glimmer and gradually disappear.

    Particle System
    • Particle Setup
      • Configured particle size, lifetime, and a sphere-shaped emission area.
      • Created a particle system simulating butterflies with natural movement using Noise, Limit Velocity over Lifetime, and Lights modules.
    • Custom Textures and Animations
      • Designed trail textures and a butterfly sprite sheet in Photoshop. Applied these with Stretched Billboard render mode.
      • Discarded an initial wing-flapping method using mesh rotation due to collision issues, favoring Texture Sheet Animation.
    • External Forces and Collisions
      • Added spherical wind zones to mimic natural movement and player attraction.
      • Enabled Collision with lifetime loss upon impact and used Sub Emitters to spawn glowing particles that shrink and disappear.
    Interaction Mechanics
    • Player Attraction: Added a collider and wind zone on the player to attract butterflies within a range.
    • Sound Effects: Scripts triggered randomized pitch and volume wind chime sounds on butterfly collisions, creating a dynamic audio experience.

    Procedural Ice Cream Cone (Houdini)   More Details
    A procedural ice cream cone created in Houdini, placing a varying number of ice cream scoops on the cone in a visually appealing and logical manner.

    Waffle Cone
    • Base Shape: Created using polyextrude to form the basic waffle structure.
    • Damaging Particles: Scattered points and added bumpy surfaces using pointwrangle and copytopoints.
    • Waffle Pattern: Combined a grid with particles via VDB, added noise, and applied color variations using pointvop.
    • Cone Shaping: Finalized the cone shape using bend and lineartaper.
    Ice Cream Scoops
    • Base Shape: Used an uneven sphere with mountain and color.
    • Variations:
      • Chocolate Drizzle: Added noise, scattered points, and refined shapes using VDB.
      • Sugar Sprinkles: Scattered points and copied sprinkle models with varied scale and orientation.
      • Fruit Pieces with Bite: Created a bitten effect using boolean, filled with scattered fruit models, and merged them with the scoop.
    Decorative Biscuit Stick
    • Modeled with a tube, created stripes via VEX scripting.
    Scoop Positioning (Main Challenge)
    • Region Definition: Used a sphere and isooffset to define the scoop placement volume.
    • VEX Adjustments: Applied VEX to distribute scoop positions in a spiraling upward pattern.
    • Placement: Assigned geometry indices and used copytopoints to arrange scoops logically on the cone.
    ©Shijia Liu
    Technical  Art
    Fantasyland