Protoplanetary Cloud

Data Visualizer

Vulkan C++ GLSL

— DATE

June, 2025


— TOOLS

Vulkan, C++


— LINKS

-> GitLab

-> Internship Report

A 3D data visualizer for protoplanetary cloud* simulations. Done in 6 weeks in the context of an internship at the Côte d’Azur Observatory.


The tool lets you import and slice 3D data, visualize velocities, and even includes a ray marched cloud view for realistic real-time rendering.

Tutorial video

Simple slice

Velocity clouds

Ray marched view

Ray-marching

Ray-marching is a rendering technique which simulates light bouncing in a volume. Here, it means physically accurate renderings of otherwise hard to observe astronomical objects, which was very exciting.


It's a technique I had previously implemented in OpenGL, so I only had to copy the shaders over.

Having written a render-graph for this project, integrating new rendering pipelines became straight-forward.

The full implementation only took a day.

CONTEXT

I was part of a smaller team working on protoplanetary clouds*. The team developed a tool called fargOCA that allows them to run simulations on various supercomputers. Researchers then analyze and explore the 3D data in Python by slicing it using various plotting libraries. This process tedious and can miss key information.


My tool addresses the issue by letting researchers slice the data directly in 3D, in real time, however they see fit. Information and errors (or breakthroughs) become harder to miss as you suddenly see the whole picture.


*Protoplanetary clouds are the rotating disks of dust and gas that surround young stars. Over millions of years, this material coalesces into planets and other bodies.


These systems raise key questions: why do some planets settle into stable orbits? Why do some systems form gas giants while others don't?