Ray Tracing in Julia: Photorealistic Scientific Visualization with Makie & RayMakie

0 comments

Julia’s Makie Gains Photorealistic Rendering with RayMakie and Hikari

Researchers and developers using Julia now have a powerful new tool for visualizing complex 3D data: a physically-based GPU ray tracing pipeline integrated directly into the Makie visualization library. Announced on February 16, 2026, RayMakie and Hikari eliminate the need to export data to separate rendering tools, streamlining the workflow from data exploration to photorealistic image creation.

Bridging the Gap Between Research and Rendering

Traditionally, transforming complex 3D data from scientific simulations into compelling visuals has been a cumbersome process. It often requires exporting meshes, learning new software and losing the interactive benefits of the original data environment. RayMakie and Hikari address this challenge by enabling photorealistic rendering directly within the Makie ecosystem. Users can switch backends to achieve global illumination, volumetric media, spectral rendering, and physically-based materials—all powered by the GPU.

Key Features and Performance

  • Physically-Based Rendering: Hikari is a Julia port of pbrt-v4, a reference implementation for physically-based rendering.
  • GPU Acceleration: The pipeline is designed to run efficiently on GPUs, delivering performance competitive with C++ ray tracers.
  • Cross-Vendor Support: Thanks to KernelAbstractions.jl, the codebase supports AMD, NVIDIA, and CPUs. Metal and OpenCL support are planned for future releases.
  • Seamless Integration: RayMakie integrates with the existing Makie API, allowing users to leverage familiar functions like mesh!, surface!, and volume!.

Real-World Applications

The developers highlight several immediate applications for this technology:

  • Climate Science: Rendering volumetric cloud simulations generated by Oceananigans.jl, allowing for intuitive understanding of cloud structures.
  • Agriculture: Creating photorealistic models of plants using PlantGeom.jl, simulating leaf properties like wax cuticle layers and internal light transmission.
  • Molecular Visualization: Rendering MD trajectories for structural biology applications.
  • Fluid Dynamics: Simulating refractive water surfaces with TrixiParticles.jl.
  • Particle Physics: Visualizing the geometry of the CERN CMS detector with physically-based materials.

Community Response and Future Development

The announcement has generated excitement within the Julia community, particularly regarding the cross-vendor GPU support. Discussions on the Julia Discourse forum have focused on the potential of KernelAbstractions.jl to abstract vendor-specific differences and the scalability of the material system. Whereas some users noted a perceived slowdown in Julia’s overall momentum compared to Python, the project demonstrates Julia’s unique strengths in GPU compilation and high-performance scientific visualization.

Availability

RayMakie, Hikari, and Raycore are currently available for testing via the RayDemo repository. Official releases are planned in the coming weeks.

Related Posts

Leave a Comment