clray

annotate README.rst @ 61:0f174fd60f19

added readme file and license
author John Tsiombikas <nuclear@member.fsf.org>
date Mon, 28 Dec 2015 10:27:23 +0200
parents
children d9520da6b801
rev   line source
nuclear@61 1 Realtime GPU (OpenCL) polygon mesh raytracer
nuclear@61 2 ============================================
nuclear@61 3
nuclear@61 4 About
nuclear@61 5 -----
nuclear@61 6 Clray is an experimental realtime GPU raytracer with OpenCL. It renders polygon
nuclear@61 7 mesh scenes loaded from obj files (with minor extensions to the material
nuclear@61 8 description format), using a kd-tree constructed with the surface area heuristic
nuclear@61 9 (SAH) for ray-test acceleration.
nuclear@61 10
nuclear@61 11 If you want to try clray, a few test scenes can be found at:
nuclear@61 12 http://nuclear.mutantstargoat.com/sw/clray/clray_test_scenes.tar.gz
nuclear@61 13
nuclear@61 14 License
nuclear@61 15 -------
nuclear@61 16 Copyright (C) John Tsiombikas <nuclear@member.fsf.org>
nuclear@61 17
nuclear@61 18 Clray is free software; feel free to use, modify, and/or redistribute it, under
nuclear@61 19 the terms of the GNU General Public License version 3, or (at your option) any
nuclear@61 20 more recent version published by the Free Software Foundation. See COPYING for
nuclear@61 21 details.
nuclear@61 22
nuclear@61 23 Material file format extensions
nuclear@61 24 -------------------------------
nuclear@61 25 Clray will happily read obj/mtl files as exported by most programs. However, the
nuclear@61 26 obj material file format does not specify a reflectivity factor. For this reason
nuclear@61 27 I've added a custom mtl command named "Nr" to specify reflectivity. Just add it
nuclear@61 28 manually to any material you want to make reflective, followed by a number in
nuclear@61 29 the range ``[0, 1]``. For instance a reflective red material with white specular
nuclear@61 30 highlights could be defined as follows::
nuclear@61 31
nuclear@61 32 newmtl mat_red_shiny
nuclear@61 33 Ka 1 0 0
nuclear@61 34 Kd 1 0 0
nuclear@61 35 Ks 0.8 0.8 0.8
nuclear@61 36 Ns 80
nuclear@61 37 Nr 0.75