Я решил, что было бы интересно запрограммировать базовую 2D симуляцию жидкости / жидкости при столкновении. Есть множество подходов, и я не уверен, с чего начать. Я хотел бы охватить только 2D, однако я хотел бы иметь гравитацию и столкновение таким образом, чтобы другие объекты взаимодействовали с жидкостью.
Нечто подобное приходит на ум:
https://raw.githubusercontent.com/kbladin/Fluid_Simulation/master/images/big.gif
Какие алгоритмы обычно используются для такого сценария?
Есть ли хорошие статьи, которые объясняют это несложно?
С чего мне начать?
Если возможно, я бы хотел избегать любых фреймворков / библиотек, которые содержат все необходимые функции, так как я хотел бы написать их сам, чтобы лучше понять предмет.
Я рассматриваю использование C # и визуализирую это, рисуя точки на холсте. Я предполагаю, что силы каждой частицы могут быть представлены в некотором многомерном массиве, однако я все еще не знаю, с чего начать. Любые рекомендации?