AR Software for Fluid Simulations
By: Aarav Kumar (2025)
WebGL
Can render interactive 3D graphics directly in the browser
Existing example of interactive water-visualization: WebGL Water
Could be extended into AR, but functionality is limited
Uses Three.js shaders for water effect
Allows real-time interaction and animation
Can integrate with WebXR — a web API for immersive AR experiences — or with AR.js (below)
Concerns:
No built-in support for AR passthrough or spatial tracking
Requires shader programming experience for realistic water effects
Performance may be constrained by browser-based rendering
AR.js
Lightweight library for Augmented Reality on the Web
Allows users to place 3D models on markers in camera images (marker and image-based tracking)
Has shaders that can be used to create animated effects
Provides an easy-to-use declarative HTML API to create 3D AR scenes
Runs in the browser with no app installation required
Can be integrated with Three.js for extended 3D rendering capabilities
Examples: AR Examples
Water Effect in AR: YouTube Video
Concerns:
Limited support for real-time physics and fluid simulations
Web-based performance limitations compared to native AR applications
Not sure if water effect is very dynamic or extensible for real-time visualization (especially for time-series data that will mean changing water levels)
Examples found look very limited in terms of realness and immersion (water doesn't really look like water)
Niantic Studio (Beta) - https://www.8thwall.com/products/niantic-studio
Could use Niantic VPS (visual positioning system, which provides real-world occlusion and environmental awareness) to make a simulation where water fills up the room
Supports real-time physics, world tracking, animation, and particle systems (particulalry useful for water)
Designed for geolocation-based AR experiences
Works with Niantic's Visual Positioning System (VPS) for persistent AR content
Examples:
Water Simulation: TikTok Video
Shaders Example: YouTube Short
Concerns:
A very new platform + still in beta phase, so may not have extensive documentation and may be difficult to find tutorials online
Limited support for standalone Meta Quest applications
Focuses more on mobile AR rather than headset-based AR
Blender + Unity
Reliable tool for modeling water and creating fluid animations with lots of tutorials online
Can export realistic water meshes and animations for Unity integration
Example of water animation in Blender: YouTube Video
Blender's Mantaflow system allows high-quality fluid simulations
Works well for pre-rendered water effects and textures
Concerns:
Blender alone cannot handle real-time AR simulations
Fluid simulations in Blender are pre-baked and not real-time
Requires Unity for AR integration
Large baked animations can be performance-intensive
NVIDIA Flex + Unity
Provides GPU-accelerated real-time fluid simulation
Can be used in Unity for dynamic water effects
Supports real-time interaction with fluid physics
Works well for high-quality simulations in controlled AR environments
Tutorial on water simulation with NVIDIA Flex in TouchDesigner: YouTube Video
Concerns:
Requires a powerful GPU for real-time simulations
More complex to implement than simpler shader-based solutions
Flex is more suited for local desktop applications rather than AR passthrough
Unreal Engine with Meta XR Plugin
Native support for Meta Quest AR
Supports Niagara particle system for real-time fluid simulation
Can handle high-quality real-time rendering with Lumen (lighting) and Nanite (geometry)
Industry-grade AR engine with strong graphics capabilities
Better physics-based water simulation than Unity’s default tools
Supports high-end shaders and advanced material systems
Concerns:
Higher learning curve than Unity
Requires more processing power
May be overkill for simpler AR water visualizations
Unity with VFX Graph + Meta XR SDK
Supports real-time water simulation using VFX Graph and Shader Graph
Integration of real-world passthrough with Meta XR SDK
Easier to learn compared to Unreal Engine
Strong documentation and community support
Can read water level data dynamically from a file or database – dynamic updates to water level based on external data (e.g., CSV, JSON)
Concerns:
Requires shader programming for realistic water effects
Performance depends on GPU capabilities
VFX Graph may have limitations for complex fluid dynamics
Software Comparison Table:
Evaluation Criteria
Particle System Support – Does the software support particle-based fluid simulation, allowing for realistic fluid dynamics?
Physics Support – Can the software handle real-time physics-based fluid simulation, including buoyancy, turbulence, and surface tension?
Real-time Visualization Support – Does it allow dynamic updates to fluid height and flow based on incoming time-series data?
Versatility of Use – Is it adaptable across multiple platforms (e.g., web, mobile, AR/VR headsets, desktop applications)?
Ease of Use & Learning Curve – How beginner-friendly is it? Does it have intuitive tools, documentation, and community support?
Integration with External Data Sources – Can it read CSV, JSON, APIs, or databases to update fluid levels dynamically?
Each scored on a scale of 1 (poor/very limited) to 5 (strong/extensive)
Criteria and Usability Targets for AR Water Visualization:
A non-exhaustive list of potential criteria to evalaute the effectiveness of a fluid visualization:
Accuracy to Real-Life Volumetric Data (e.g. 1m3 actually appears as what 1m3 would look like)
Realism of Water (appearance and texture)
Comparative Ability (ability to compare data provided by the visualization)
Resemblance to Real Fluid (movement and dynamics)
Feasibility of Visualization in Terms of Scale
Ease of Navigation
Relatability (ability to relate to the information/data in the way that it is visualized)
Retention of Information (i.e. ability to recall the data)
Interactivity & User Engagement