Skip to content
Global Illumination renderer
C++ C Other
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
COPYING updated configure, to output binaries at separate directory Apr 16, 2016


XTracer 2

Copyright 2010 - 2016 (c)
Papadopoulos Nikos <>

XTracer is a raytracer written in c and c++.

v0.7 served as my thesis project for the BSc of computer science at the
University of Piraeus. It was developed under the supervision of Prof. T.
Panayiotopoulos as part of the research work of the Knowledge Engineering Lab.

v1.1 was developed as part of my dissertation for the MSc of computer graphics 
programming at the University of Hull.

v1.2 is the current version. All external dependencies have been integrated.

The source code is distributed under the LGPL license version 3 or later.

Version history
0.7 : 2866bf99ca04d84a85ab13b755ded7d42014bee7
1.x : HEAD

* Primitives    : Plane, Triangle, Sphere, Mesh
* Materials     : Lambert, Phong, Blinn-Phong
* Lights        : Point, Sphere, Box, Triangle
* Cameras       : Pinhole, Thin lense
* Shading       : Reflection (glossy & perfect mirror), Refraction, Depth
	              of field, Soft shadows, Texture mapping, Fresnel
* Acceleration  : Threads, Octrees, KD-trees
* Anti-aliasing : Supersampling
* Rendering     : HDR, Whitted/Distributed raytracing, Photon mapping
                  (diffuse term)

Compilation / Installation
The source code is distributed along with a makefile configuration script for
unix based systems with a GNU toolchain installed. To view all the available
configuration options type: ./configure --help. Once the configuration is done,
you can build the binary by typing: make. To install the binary in your system
type: make install. To uninstall type: make uninstall

For windows users, a visual studio 2010 solution is available in the ide

How to use
You can find sample scenes in the scene directory. Note that some of the 
scenes require textures or meshes that are not included in the repository.

Version:  0.x -
* openmp	Must be provided by your compiler.
* libnmath
* libnmesh
* linimg
* libncf

NOTE: You might need older versions of the libraries.

* openmp	Must be provided by your compiler.

Supported platforms
xtracer should be able to compile and run on any system equipped with openmp
compatible c and c++ compilers. It has been tested without any problems under
the following platforms:

* Linux
* FreeBSD
* MacOSX
* MS Windows XP, 7

I would like to thank the following people for their help and support.

version 0.x
 Prof. T. Panayiotopoulos : Supervising professor at University of Piraeus.
 Tsiombikas John          : Technical advisory.
 Stea Maria Elenh         : Technical advisory.
 Hardalias Apostolhs      : Windows testing, cpu time donation.
 Kokkalis Nikos           : FreeBSD testing.
 Ntzoufras Kwstas         : MacOSX testing, cpu time donation.
 Potamianos Grhgorhs      : cpu time donation.
 Costas Droggos           : cpu time donation.
 Kouzouphs Antwnhs        : cpu time donation.

version 1.x
 Dr Qingde Li             : Supervising professor at University of Hull
 Tsiombikas John          : Technical advisory.
Something went wrong with that request. Please try again.