This is the final project of the Computer Graphics discipline at UFRN.
It consists of a Ray Tracing implementation in WebGL. Click here to see our demo.
- Chrome >= 50
- Edge >= 13
- Firefox >= 45
- Opera >= 37
- Safari >= 10
The repository branches are configured as follows:
-
master: stable code. This branch is blocked for direct commits, so all commits must be reviewed through pull requests. Develop your code in a feature branch and make a pull request here for code review. To see more about that, check this tutorial about code review
-
gh-pages: this is where the demo is hosted. GitHub pages is configured to get the demo from there. To update the demo, merge stable code from master into gh-pages branch.
Simply clone this repo and open index.html
in your browser.
- NodeJS >= 6 and NPM
To get started, once you clone this repository, run npm install
.
As all modern browsers nowadays support ES6, we will be using its features such as:
We use Airbnb coding style for Javascript. There is a Travis CI bot checking code style, so if your code does not pass style checking, you will have to fix it.
To do so, or even before comitting, run npm run lint
and check the output for the points where you need to change. This will ensure your code will pass Travis CI testing.
This repository contains a wiki, which contains useful information about WebGL and links to tutorials about Ray tracing.
Upon successful implementation in WebGL, we plan on implementing the algorithm in C++ and porting to run on the browser using WebAssembly.