Real-Time Paint Simulation via Lattice Boltzmann Method

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current digital image editing software struggles with simulating realistic paint behavior, particularly in real-time and high-resolution scenarios, due to the inefficiencies of sparse solvers for fluid simulations on parallel hardware like GPUs, and the need for expensive implicit solvers for viscous fluids.

Innovation Solution

The implementation of the lattice Boltzmann method (LBM) with shallow water wave equations and the incorporation of viscoelasticity and surface tension, allowing for the simultaneous simulation of different paint types like watercolor and oil paint on the same canvas, using a GPU for real-time performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If sparse solvers are used for fluid simulation on parallel hardware like GPUs, then parallelization efficiency is improved, but simulation accuracy for viscous fluids deteriorates

Engineering Contradiction:
Improveparallelization efficiencyVSAvoidsimulation accuracy
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The fluid simulation is divided into multiple independent cells arranged in a grid structure. Each cell independently solves the Navier-Stokes equations for its local region, eliminating the need for global sparse solver iterations while maintaining overall fluid simulation accuracy through cell-to-cell boundary conditions.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The traditional iterative sparse linear solver system is replaced with a direct cell-based computation approach that uses local physics calculations and boundary condition enforcement, substituting a global numerical solution method with localized physical modeling that is naturally parallelizable on GPUs.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Reliability

If implicit solvers are used for stable simulation of viscous fluids, then simulation stability is improved, but computational cost deteriorates

Engineering Contradiction:
Improvesimulation stabilityVSAvoidcomputational cost
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The computational domain is segmented into discrete cells that independently handle viscous fluid calculations. Each cell performs local viscosity computations and momentum exchanges with neighboring cells, achieving stable viscous fluid simulation without requiring expensive global implicit solver iterations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The simulation uses explicit time integration with carefully controlled time step parameters and numerical diffusion terms to achieve stable viscous fluid behavior, replacing the need for implicit solvers by adjusting computational parameters to ensure stability in the explicit framework.

Inventive Principle:
Principle #35Parameter changes

3Manufacturing precision

If high resolution simulation is implemented, then visual quality is improved, but real-time performance deteriorates

Engineering Contradiction:
Improvevisual qualityVSAvoidreal-time performance
Core Design Contradiction:
Manufacturing precisionVSProductivity

Solution Approach 1:

The high-resolution fluid domain is divided into many small cells that can be processed in parallel. Each cell requires minimal computation, allowing the entire high-resolution grid to be simulated in real-time through massive parallelism on GPU hardware, where thousands of cells are updated simultaneously in each frame.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The simulation uses a simplified cell-based physics model that computes only the essential fluid dynamics properties needed for visual realism, omitting finer physical details that would require excessive computation. This partial physics approach maintains visual quality at high resolution while achieving real-time performance.

Inventive Principle:
Principle #16Partial or excessive action

Applied Scientific Principles

This section explains which scientific principles are used to turn an abstract innovation direction into a practical engineering solution.

Function Achieved in This Case

This approach enables realistic and interactive simulation of a wide range of natural paint media, including watercolors and oil paints, at high resolution, supporting both surface and media flow, and providing real-time performance on screen-resolution grids.

Implementation Method 1

a lattice Boltzmann-based fluid simulator

Methodology Applied
Scientific EffectLattice Boltzmann method:

Implementation Method 2

incorporation of viscoelasticity and surface tension

Methodology Applied
Scientific EffectSurface tension: Surface Tension

Implementation Method 3

incorporation of viscoelasticity and surface tension

Methodology Applied
Scientific EffectViscoelasticity: Viscoelasticity

Data Source

PatentUS8335675B1Realistic real-time simulation of natural media paints
Publication Date: 2012.12.18 ADOBE INC
  • US8335675B1 patent drawing
  • US8335675B1 patent drawing
  • US8335675B1 patent drawing

AI summary

A method, system, and computer-readable storage medium are disclosed for simulating paint behavior. In one embodiment, input representing a deposition of a first type of paint and a second type of paint on a canvas may be received. The first type of paint has a first set of fluid properties, and the second type of paint has a second set of fluid properties differing from the first set. In one embodiment, a motion of the first type of paint and the second type of paint on the canvas may be simulated dependent on the respective sets of fluid properties. The simulated motion of the second type of paint differs from the simulated motion of the first type of paint. An effect of the deposition of the paint may be determined dependent on the simulation. An image representing the effect of the deposition of the paint may be displayed.