Skip Navigation

Looking for basic, naive implementations of Computer-Generated Holography

In order to learn programming holograms I'd like to gather some sources in this post.

The linked paper describes already optimised way of rendering holograms. I'd like to find a naive implementation of a hologram i.e. in ShaderToy using interferometric processing of stored inteference patterns like it works in a physical hologram(I guess). I also want this to be a resource to learn how laser holograms work in real life.

To create an introduction project to holographic rendering these steps will be required.

  1. Store a sphere or a cube interference patterns in a texture. This should be a model of our physically correct hologram. Note: If this step requires saving thousands of textures we should limit the available viewing angles(if that's what helps)
  2. Load the rendered patterns as a texture or an array of textures into a WebGL program
  3. Create a shader that will do the interferometric magic to render the sphere/cube from the hologram model

The performance of the solution is irrelevant. Even if takes and hour to generate the data and a minute to render one frame in low resolution that's fine.

Note: The goal is not about creating anything that visually looks like a cool hologram or rendering 3D objects with a volume like with SDFs or volume rendering. It's all about creating a basic physical simulation of viewing a real hologram.

Update 1: Book: Introduction to Computer Holography: Creating Computer-Generated Holograms as the Ultimate 3D Image https://play.google.com/store/books/details?id=kKHYDwAAQBAJ&rdid=book-kKHYDwAAQBAJ

A list of sources: https://github.com/bchao1/awesome-holography

This is something that could be the beginning of step 1 https://www.shadertoy.com/view/clyyzd based on https://www.shadertoy.com/view/DtKSDW

0
0 comments