Skip to content

owoMarciN/3D_FluidSimulation

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

100 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

3D Fluid Simulation

Na razie w początkowej fazie próba zbudowania symulacji cieczy szczególnie kładąc nacisk na zjawisko kawitacji. Jak na razie udało mi się stworzyć podstawowy program symulacji mogący załadować plik modelu 3D o rozszerzeniu .obj i wyrenderowanie go za pomocą OpenGL. Instrukcja instalacji podana jest w INSTALL.md.

W projekcie zostały użyte następujace biblioteki:

  • Glad (Nagłówki OpenGL)
  • GLM (Matematyka OpenGL)
  • SDL3 (Zarządzanie wejściem/wyjściem oraz tworzenie okna)
  • tiny_object_loader (Załadowanie plików modeli 3D o rozszerzeniu .obj)

RoadMap

Faza 0: Rozpoczecie pracy

  • Tworzenie okna za pomocą biblioteki SDL3
  • Klasa Simulation
  • Klasa Timer
  • Załadowanie obiektu 3D z Blendera za pomocą tiny_object_loader
  • Wyrenderowanie załadowanego obiektu 3D
  • Odczytywnie shaderów z plików .glsl
  • Kompilacja shaderów
  • Ruch kamery w oknie symulacji
  • Obrót obiektu wokół osi
  • Wskaźnik FPS

Faza 1: Stworzenie rozwiązania dla symulacji (

Implementcja prostej symulacji Fluid Simulation For Dummies

  • Stworzenie klasy FluidCube
  • Renderowanie siatki komórek
  • Renderowanie gęstości barwnika
  • Renderowanie pól wektoryowych prędkości
  • Zaznaczanie komórek siatki wokół obiektu
  • Symulacja przepływu w rurze
  • Interakcja ciecz-model_3D, ciecz-grawitacja

Faza 2: Kawitacja

  • Implementacja pola ciśnienia
  • Dodanie ułamka pary alpha
  • Obliczenie lokalnych minimów ciśnienia
  • Identyfikacja stref niskiego ciśnienia
  • Renderowanie stref w wyróżniających się kolorach

Faza 3: Rayleigh–Plesset i Bąbelki

  • Implementacja klasy Bubbles
  • Integracja równania RP metodą Eulera
  • Interpolacja ciśnienia z siatki do cząstek
  • Test rozrostu bąbelków w strefie niskiego ciśnienia

Faza 4: Babęlki oddziałujące na przepływ

Ciąg dalszy nastąpi...

About

3D fluid simulation using SDL3 + OpenGL libraries

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages