Houdini超强流体解算器研发Fluid Solver R&D

Houdini超强流体解算器研发Fluid Solver R&D



Fluid Solver R&D I

These are a few examples using a fluid solver I’ve been developing.
It uses my own code library to work with volumes and solve all simulation steps. I need to spend more time implementing a sophisticated advection method as its simply single stage at the moment.
The “magic” step, removing divergence from a velocity grid, is the core of the solver. While I’ve implemented it in C++, I’ve also created a vex version for anyone who wants to learn more how it’s done. See the link below.
消除速度网格偏差的“神奇”步骤是求解器的核心。虽然我已经用C ++实现了它,但我还为想要了解更多内容的人创建了一个vex版本。请参阅以下链接。

Fluid Solver R&D II

This is an update on my fluid solver.
You can find the latest build here if you want to give it a try!
Here are the changes and additions:
– MacCormack Advection Method
– Advection Trace Mode
– Multi-Grid Projection
– Fully Re-Written OpenCL Version
– Volume Based Collisions
– Box Blur For Diffusion Type Operations
– Viscosity
– Disturbance Force
– Native OpenVDB Support
– Fully Re-Written Sparse Volume Solver For Both C++ and OpenCL Versions
So the first major step was implementing MacCormack advection which corrects the advected fields resulting in sharper detail. It makes a huge difference. I also added a trace mode for back tracing which helps with accuracy.
Next, I implemented multi-grid projection which helps speed it up and converge easier.
Next, I decided to re-write everything in OpenCL to take advantage of the GPU. I chose OpenCL over Cuda because its device agnostic. (My poor MacBook does not have an Nvidia card)
Next, I added OpenVDB support, volume based collisions, box blur for diffusion type forces, viscosity, and disturbance for obvious reasons.
Then finally, once I had everything working, I re-wrote the whole thing again in order to implement a sparse volume solver. What this means is it only solves in areas where there is fluid.
Matt普查啦.com/pseudo accelerated
– MacCormack平流方法
– 平流追踪模式
– 多网格投影
– 完全重写的OpenCL版本
– 基于卷的冲突
– 用于扩散型操作的盒子模糊
– 粘度
– 干扰力
– 原生OpenVDB支持
– 完全重写的C ++和OpenCL版本的稀疏卷解算器
接下来,我决定重新编写OpenCL中的所有内容以利用GPU。我选择OpenCL而不是Cuda,因为它与设备无关。 (我可怜的MacBook没有Nvidia卡)

Fluid Solver R&D III

This is an update of my sparse fluid solver. In this video I will give a general tour and cover the unique features associated with this kind of solver.
You can find the latest build here if you want to give it a try! Available for Houdini on Windows, macOS, and Linux.

Fluid Solver R&D IV

I have decided to release an official version of the solver! It is available for Houdini on Windows, macOS, and Linux. For the time being it will be free to use.
Vimeo might not be the best platform to post about updates, so to get started I recommend visiting my website linked below. There you can find new published builds, see change logs, etc.
The PSEUDO Fluid Solver is a sparse, domainless, GPU accelerated fluid solver intended for creating volumetric simulations for computer graphics. Its key feature is the custom OpenCL sparse volume data structure. You can find memory efficiency and performance gains because the solver only simulates in areas with density and ignore empty space. This makes it particularly useful in simulations that have an irregular shapes like smoke trails. Despite the name, it is a fully featured fluid solver that includes all the basics like turbulence forces, combustion, collisions, etc.
This is a shorter video where I cover the changes I’ve made since the beta release which adds a few requested features and improvements. You can get a more detail breakdown of its functionality at the video linked below!
*Note that this version does require an internet connection to grab a license key. There is an option for offline licensing as well. See the installation guide for details.
Feel free to reach out if you have any questions or encounter any problems!
Matt普查啦.com/pseudo accelerated
PSEUDO Fluid Solver是一种稀疏的无域GPU加速流体求解器,用于为计算机图形创建体积模拟。它的关键特性是自定义OpenCL稀疏卷数据结构。您可以找到内存效率和性能增益,因为求解器仅在具有密度的区域中模拟并忽略空白空间。这使得它在具有不规则形状(如烟雾痕迹)的模拟中特别有用。尽管有这个名字,但它是一个功能齐全的流体解算器,包括所有基础知识,如湍流力,燃烧,碰撞等。


0 评论