Sfera: a game with real-time path tracing rendering

Discussion in 'GPGPU Technology & Programming' started by Dade, Dec 13, 2011.

  1. Dade

    Newcomer

    Joined:
    Dec 20, 2009
    Messages:
    206
    Likes Received:
    20
    Sfera is a game, mostly written using OpenCL, with real-time path tracing (i.e. ray tracing) rendering. It includes a Bullet Physics based engine. The source code and some pre-compiled binary is available at http://code.google.com/p/sfera

    A demo video is available at http://www.youtube.com/watch?v=Dh9uWYaiP3s and should explain how Sfera works.

    [​IMG]

    Sfera includes few un-conventional technical choose like a BVH with sphere bounding box (to reduce GPU threads divergence), brute force path tracing (i.e. no direct light sampling), the capability to store many data on constant GPU memory, etc. As result it can achieve some impressive number in term of raw samples/sec (i.e. over 1 Giga-samples/sec).
     
  2. fellix

    fellix Hey, You!
    Veteran

    Joined:
    Dec 4, 2004
    Messages:
    3,486
    Likes Received:
    397
    Location:
    Varna, Bulgaria
    [​IMG]

    GeForce GTX 570 -- 825/4100MHz
     
  3. Lightman

    Veteran Subscriber

    Joined:
    Jun 9, 2008
    Messages:
    1,802
    Likes Received:
    473
    Location:
    Torquay, UK
    Nice Fellix!

    My HD6970 910/1425 gets 10.94M.
     
  4. Dade

    Newcomer

    Joined:
    Dec 20, 2009
    Messages:
    206
    Likes Received:
    20
    For reference, I get (on linux 64bit):

    - 9.25M s/s on a single HD5870 (constant memory disabled, default config.);

    - 10.73M s/s on a single HD5870 (constant memory enabled);

    - 29.26M s/s on 2xHD5870+1xHD5850 (constant memory enabled);

    [​IMG]
    You can enable the usage of constant memory by editing a line in gamedata/cfgs/default.cfg file:

    opencl.memtype=__constant

    If your GPU has enough constant memory, it will run everything a bit faster (otherwise may produce a black/empty output).

    According Fellix's result and some other I have seen posted in other forums, Fermi GPUs seem to excel in running Sfera. It isn't really a surprise, they were designed for this kind of task.
     
  5. fellix

    fellix Hey, You!
    Veteran

    Joined:
    Dec 4, 2004
    Messages:
    3,486
    Likes Received:
    397
    Location:
    Varna, Bulgaria
    Enabling constant memory on Fermi drops the sample rate to 8M. No visual artefacts.
     
  6. ToTTenTranz

    Legend Veteran Subscriber

    Joined:
    Jul 7, 2008
    Messages:
    9,844
    Likes Received:
    4,458
    Is everything supposed to look so.. grainy?
     
  7. hoho

    Veteran

    Joined:
    Aug 21, 2007
    Messages:
    1,218
    Likes Received:
    0
    Location:
    Estonia
    Getting rid of grainyness would need throwing a ton of extra samples to the scene meaning lower performance. There are a few other tricks but they generally have quite high overhead as well.
     
  8. Lightman

    Veteran Subscriber

    Joined:
    Jun 9, 2008
    Messages:
    1,802
    Likes Received:
    473
    Location:
    Torquay, UK
    Thanks Dade!

    With constant memory 11.5M. Same confing as above.
     
Loading...

Share This Page

  • About Us

    Beyond3D has been around for over a decade and prides itself on being the best place on the web for in-depth, technically-driven discussion and analysis of 3D graphics hardware. If you love pixels and transistors, you've come to the right place!

    Beyond3D is proudly published by GPU Tools Ltd.
Loading...