59 lines
2.1 KiB
Plaintext
59 lines
2.1 KiB
Plaintext
SmallptCPU vs. SmallptGPU
|
|
=========================
|
|
|
|
SmallptGPU is a small and simple demo written in OpenCL in order to test the
|
|
performance of this new standard. It is based on Kevin Beason's Smallpt available
|
|
at http://www.kevinbeason.com/smallpt/
|
|
SmallptGPU has been written using the ATI OpenCL SDK 2.0 on Linux but it
|
|
should work on any platform/implementation.
|
|
|
|
glut32.dll has been downloaded from Nate Robins's http://www.xmission.com/~nate/glut.html
|
|
|
|
|
|
How to compile
|
|
==============
|
|
|
|
Just edit the Makefile and use an appropriate value for ATISTREAMSDKROOT.
|
|
|
|
|
|
Key bindings
|
|
============
|
|
|
|
'p' - save image.ppm
|
|
ESC - exit
|
|
Arrow keys - rotate camera left/right/up/down
|
|
'a' and 'd' - move camera left and right
|
|
'w' and 's' - move camera forward and backward
|
|
'r' and 'f' - move camera up and down
|
|
PageUp and PageDown - move camera target up and down
|
|
' ' - refresh the window
|
|
'+' and '-' - to select next/previous object
|
|
'2', '3', '4', '5', '6', '8', '9' - to move selected object
|
|
|
|
History
|
|
=======
|
|
|
|
V1.6 - Thanks to Jens and all the discussion at http://www.luxrender.net/forum/viewtopic.php?f=21&t=2947&start=240#p29397
|
|
now SmallptGPU works fine with MacOS and NVIDIA cards. A bug in the Apple's OpenCL
|
|
compiler has been found (http://www.khronos.org/message_boards/viewtopic.php?f=37&t=2148)
|
|
and a workaround has been applied to SmallptGPU. Added a new kernel with
|
|
direct lighting surface integrator (very fast indeed).
|
|
|
|
V1.5 - Thanks to discussion at http://forum.beyond3d.com/showthread.php?t=55913
|
|
the perfomances on NVIDA GPUs have been improved. They are not yet where they should
|
|
be but are lot better now.
|
|
|
|
V1.4 - Updated for ATI SDK 2.0, fixed a problem in object selection
|
|
|
|
V1.3 - Jens's patch for MacOS, added on-screen help, fixed performance
|
|
estimation, removed movie recording, added on-screen help, added Windows binaries
|
|
|
|
V1.2 - Indirect diffuse path can be now disabled/enabled (available only
|
|
on CPU version because a bug of ATI's compiler), optimized buffers
|
|
reallocation, added keys to select/move objects
|
|
|
|
V1.1 - Fixed few portability problems, added support to save movie, fixed a
|
|
problem in window resize code
|
|
|
|
V1.0 - First release
|