Minos Park

writing | projects | photos | drawings | code | lists | cs184 | ocf


Proposal for Ray Tracing Sunset Simulator

August 2020

An image of sunset

It is sometimes said that scientists are unromantic, that their passion to figure out robs the world of beauty and mystery. But is it not stirring to understand how the world actually works — that white light is made of colors, that color is the way we perceive the wavelengths of light, that transparent air reflects light, that in so doing it discriminates among the waves, and that the sky is blue for the same reason that the sunset is red? It does no harm to the romance of the sunset to know a little bit about it.

― Carl Sagan, Pale Blue Dot: A Vision of the Human Future in Space

Overview

For over many thousands of years, every single day, us humans get to see the nature’s finest artwork drawn on the vast canvas that we call sky. As Carl Sagan said, even though we may know how the sunset works, that does not decrease the appreciation for the beauty of it.

From the course website:

This course provides a broad introduction to the fundamentals of computer graphics. […] [with] an emphasis on mathematical and geometric aspects of graphics, and the ability to write complete 3D graphics programs.

In both Carl Sagan and this course’s final project spirit, I wanted to understand and learn the mechanics of the sunset and write a graphics program that demonstrates it.

Description of the challenge

This project will attempt to implement some of the mechanics of the sunset, accelerate the rendering with ray tracing, and (hopefully) present the simulator live on a webpage using WebGL.

The main challenge would be to do a particle based sunset simulation, where the rays from the sun interacts with the atmosphere and change their wavelength composition.

Main mechanics of a sunset

This website (link) has a good article that describes why the color of the sun changes throughout the day.

Goals and Deliverables

The goals directly related to the concepts we learned in class and expansion of it is noted with *

At this point, I hope to have recreated the changes in the color of the sun, as well as the “green flash". It would be a good mesaure of the performance of the simulation!

From this point the below goals are the “stretch” goals that would be amazing if also implemented. These are the goals that I would continue to pursue even after the conclusion of the project for this class.

Resources

Tags: cs184 cal