Skip to content

cadubentzen/raytracing

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

56 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Raytracing in WebGL

Build Status

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.

Browser requirements:

  • Chrome >= 50
  • Edge >= 13
  • Firefox >= 45
  • Opera >= 37
  • Safari >= 10

Repository Structure

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.

Getting Started

Opening page locally:

Simply clone this repo and open index.html in your browser.

Requirements for developing:

  • NodeJS >= 6 and NPM

To get started, once you clone this repository, run npm install.

Coding style

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.

Wiki

This repository contains a wiki, which contains useful information about WebGL and links to tutorials about Ray tracing.

Future plans

Upon successful implementation in WebGL, we plan on implementing the algorithm in C++ and porting to run on the browser using WebAssembly.