https://github.com/jtdaugherty/t2
An interactive ray tracer powered by OpenCL
https://github.com/jtdaugherty/t2
c opencl raytracer
Last synced: over 1 year ago
JSON representation
An interactive ray tracer powered by OpenCL
- Host: GitHub
- URL: https://github.com/jtdaugherty/t2
- Owner: jtdaugherty
- Created: 2016-01-28T04:21:17.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2016-09-07T18:48:12.000Z (almost 10 years ago)
- Last Synced: 2025-01-22T10:12:38.083Z (over 1 year ago)
- Topics: c, opencl, raytracer
- Language: C
- Homepage:
- Size: 203 KB
- Stars: 3
- Watchers: 4
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
t2
--
`t2` is an interactive ray tracer. It is written in C and OpenCL C and
runs on OpenCL-compatible devices.
Features:
* Progressive rendering with keyboard and mouse input for camera
navigation
* Thin lens camera with depth of field (see lens radius setting)
* Monte Carlo rendering (see sample root setting)
Building
--------
Right now `t2` only builds on OS X. To install dependencies and build:
```
$ brew install homebrew/versions/glfw3
$ brew install glew
$ brew install freetype
$ make
```
Running
-------
Run with defaults:
```
$ ./t2
```
or get help to learn about settings to change:
```
$ ./t2 -h
```
Keyboard Controls
-----------------
* `Esc`, `q` - Quit
* `a` - Move left (strafe)
* `d` - Move right (strafe)
* `w` - Move forward
* `s` - Move backward
* `-`/`+` - Decrease/increase trace depth
* `r`/`R` - Decrease/increase lens radius
* `o` - Toggle overlay display
* `t`/`T` - Decrease/increase sample root
* `Space` - Pause/resume progressive sampling (useful when batch sizes
result in jerky movement)
Mouse Controls
--------------
* Hold left mouse button and move: change camera viewing direction
(left-right only)