Git Product home page Git Product logo

3d_fluid_simu's Introduction

3d_fluid_simu

ATTENTION CE PROJET N'EST PAS ENCORE FINI !

Ce projet s'inscrit dans mon cursus de licence 3 Informatique à Paris 8 "Projet tutoré" et est encadré par M. Farès Belhadj.

Les bibliothèques OpenGL, glfw, glm et glew sont utilisées.

L'objectif de ce projet est de réalisé une simulation de fluide 3d en OpenGL, ceci en se basant sur l'article "Real-Time Fluid Dynamics for Games" de Jos Stam. Ce dernier décrit comment implémenter une simulation de fluide qui approxime les équations de Navier-Stokes et permet donc un résultat convaincant en temps-réel. Le rendu volumétrique est effectué en dessinant des coupes de cubes qui piochent leurs couleurs dans une texture 3d, l'alpha-blending permettant d'obtenir l'effet de transparence propre à la fumée.

Des améliorations sont en cours. En premier lieu les coupes du cubes ne sont pour l'instant pas orthogonal au regard, ce qui fausse le visuel selon d'où on regarde le cube (cf la vidéo ci-dessous). Aussi, une gestion de la lumière (au moins basique) est prévu pour renforcer l'aspect 3d, ainsi que certaines optimisations pour améliorer les fps. Une version 2d de ce projet est disponible ici : https://github.com/inepsie/fluid_simu.

Une soutenance de ce projet est prévue le 7 juin 2023.

Vidéos de démo du programme :

3d_color_fluid_simulation.mp4
3d_white_fluid_simulation.mp4

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.