OgreRT2 - Realtime Ray tracing in Ogre

A place to show off your latest screenshots and for people to comment on them. Only start a new thread here if you have some nice images to show off!
the_beige
Halfling
Posts: 49
Joined: Thu Apr 27, 2006 3:14 pm

OgreRT2 - Realtime Ray tracing in Ogre

Post by the_beige »

Hi everyone!

I Just finished my diploma-thesis. I developed a GPU based Raytracer and integrated it into OGRE (Englisch abstract available upon request).

Feel free to check the Demovideo on YouTube:

http://www.youtube.com/watch?v=3L7yamaKKNM

I May publisch the code after the advisors of the thesis are done :-)

Comments appreciated.

Bxx

Here are some screenshots:

Image
Image
Image
Last edited by the_beige on Sun Nov 19, 2006 6:42 pm, edited 1 time in total.
User avatar
BRAINLESS
Goblin
Posts: 282
Joined: Tue Jan 04, 2005 6:56 pm
Location: The Netherlands

Post by BRAINLESS »

Nice! If you're unsure if you should release the code, please do! :D
Proud member of the OpenFRAG Game Development community
User avatar
jomunoz
Goblin
Posts: 228
Joined: Wed Apr 13, 2005 5:07 pm
Location: Medellin - Colombia

Post by jomunoz »

Wow did you did that with shaders?
the_beige
Halfling
Posts: 49
Joined: Thu Apr 27, 2006 3:14 pm

..

Post by the_beige »

Yes!

I implemented a Custom SceneManager in C++ and the Ray tracer it Self using GPGPU Cg :-)
User avatar
jacmoe
OGRE Retired Moderator
OGRE Retired Moderator
Posts: 20570
Joined: Thu Jan 22, 2004 10:13 am
Location: Denmark
x 179

Post by jacmoe »

Put a screenshot or two inline in your first post, and I'll move this to ShowCase! :)
/* Less noise. More signal. */
Ogitor Scenebuilder - powered by Ogre, presented by Qt, fueled by Passion.
OgreAddons - the Ogre code suppository.
Nudel
Halfling
Posts: 79
Joined: Thu Mar 23, 2006 4:14 pm
Location: Vienna

Post by Nudel »

Looks cool, id realy like to take a look at the source code! :D
User avatar
bibiteinfo
Gremlin
Posts: 197
Joined: Wed Apr 12, 2006 2:48 pm
Location: Montreal, Canada

Post by bibiteinfo »

Wow, pretty good!
User avatar
jacmoe
OGRE Retired Moderator
OGRE Retired Moderator
Posts: 20570
Joined: Thu Jan 22, 2004 10:13 am
Location: Denmark
x 179

Post by jacmoe »

I just watched the video, and ... :shock:

This is seriously great! :D
/* Less noise. More signal. */
Ogitor Scenebuilder - powered by Ogre, presented by Qt, fueled by Passion.
OgreAddons - the Ogre code suppository.
big_o
Goblin
Posts: 279
Joined: Sun Feb 19, 2006 1:08 am

Post by big_o »

Wow!

It looks like you are getting frames per second and not seconds per frame based on the video and I can't imagine that was very easy to accomplish. Very cool!
User avatar
Frenetic
Bugbear
Posts: 806
Joined: Fri Feb 03, 2006 7:08 am

Post by Frenetic »

TEAPOTS! YAY! :D


Amazing work!

I too would also be interested in seeing the source.
Shadow007
Gremlin
Posts: 185
Joined: Sat May 07, 2005 3:27 pm

I'm jealous ...

Post by Shadow007 »

I'm so jealous !!

Good Work !!!
User avatar
Robomaniac
Hobgoblin
Posts: 508
Joined: Tue Feb 03, 2004 6:39 am

Post by Robomaniac »

I'm glad to see a teapotahedron finally integrated into ogre :)

Looks very good for realtime raytracing, very nice frame rate :)
phear hingo

My Webpage
User avatar
Praetor
OGRE Retired Team Member
OGRE Retired Team Member
Posts: 3335
Joined: Tue Jun 21, 2005 8:26 pm
Location: Rochester, New York, US
x 3

Post by Praetor »

Is this the deal where raytracing is interactive, but not yet real-time? What I mean by that is the raytracing information may not update at real-time framerates, but the simulation stays interactive the whole time. The Ogre updates and the raytracing updates are disconnected. It's a fascinating process and an awesome project.

I really think raytracing is the ultimate, and we will eventually be using it for all realtime sims. Great work.
the_beige
Halfling
Posts: 49
Joined: Thu Apr 27, 2006 3:14 pm

..

Post by the_beige »

Hi all!

I will release the whole thesis and the source when the advisors are doen checking the thesis. Unfortunately this will take up to six weeks :-(

Cheers

Björn
User avatar
sinbad
OGRE Retired Team Member
OGRE Retired Team Member
Posts: 19269
Joined: Sun Oct 06, 2002 11:19 pm
Location: Guernsey, Channel Islands
x 66

Post by sinbad »

Nice work!
User avatar
Scrat
Halfling
Posts: 81
Joined: Fri Jul 22, 2005 5:46 pm
Location: Montreal, Canada

Post by Scrat »

Looks good.

But I don't understand why you did integrate it into Ogre. I mean, if this all rendered using shaders, it would have been faster (in term of FPS) to integrate it directly using OpenGL or Direct3D.
User avatar
SunSailor
Gnoll
Posts: 699
Joined: Sun Jan 02, 2005 5:45 pm
Location: Velbert, Germany
x 2

Post by SunSailor »

Really amazing, I believe, this will be the next big step in realtime graphics.
@Scrat: No, this definitly was a wise decision. He hasn't been doing this project for fun (At least not at all) and shurely had a very close schedule to finish his work. So, Ogre gave him everything he needs. An asset pipe line (For a own engine, you need to write the mesh loader and exporter yourself), a frame work (Even this takes a long time), an infrastructure for managing shaders at all, easy to use animation functions etc. etc.
Even if it *may* been fast in FPS, this doesn't seem to be the aim. It's an academic work and focuses on its main goal: The techniqual implementation. So, this definitly was the right decision. You can't implement everything yourself if you want to achieve something.
User avatar
Scrat
Halfling
Posts: 81
Joined: Fri Jul 22, 2005 5:46 pm
Location: Montreal, Canada

Post by Scrat »

I'm not sure that integrating a GPU raytracer into Ogre is easier than Direct3D. I've done a GPU Raytracer myself.

The thing is, when you make a GPU raytracer, you basically create a pixel shader that will cast a ray for each pixel. And binding a shader into DirectX or OpenGL is really straightforward and fast (and you don't need scene management, animations properties, shadow stuffs etc as everything is computed directly into the shader)

Anyway, I'm sure he must had good reasons to integrate it into Ogre.
User avatar
jacmoe
OGRE Retired Moderator
OGRE Retired Moderator
Posts: 20570
Joined: Thu Jan 22, 2004 10:13 am
Location: Denmark
x 179

Post by jacmoe »

Probably the real-time bit?
He wrote that he's written his own SceneManager, so ... :)
/* Less noise. More signal. */
Ogitor Scenebuilder - powered by Ogre, presented by Qt, fueled by Passion.
OgreAddons - the Ogre code suppository.
Estrich
Halfling
Posts: 79
Joined: Fri Mar 31, 2006 7:51 pm
Location: Linz, Austria

Post by Estrich »

Wow, that's very impressiv!
I would be very interested in reading your thesis.
Stach
Gnoblar
Posts: 5
Joined: Thu Jun 09, 2005 12:17 am
Location: Belfort (France)

Post by Stach »

Wow, I didn't know that ray tracing became available realtime. Quite impressive!
Is there any attempt to make radiosity real time too?
Nudel
Halfling
Posts: 79
Joined: Thu Mar 23, 2006 4:14 pm
Location: Vienna

Post by Nudel »

Stach wrote:Wow, I didn't know that ray tracing became available realtime. Quite impressive!
Is there any attempt to make radiosity real time too?
http://www.ogre3d.org/phpBB2/viewtopic. ... y+realtime
the_beige
Halfling
Posts: 49
Joined: Thu Apr 27, 2006 3:14 pm

..

Post by the_beige »

The Sourcecode is now available for download at http://www.iz-media.de/diplom_bjoern/

Comments appreciated!!!
User avatar
Praetor
OGRE Retired Team Member
OGRE Retired Team Member
Posts: 3335
Joined: Tue Jun 21, 2005 8:26 pm
Location: Rochester, New York, US
x 3

Post by Praetor »

This is awesome. A great gift for the community. It would be great to use this for selected items to get really good effects. For instance, only use this technique for translucent or reflecting objects, and use other materials that might not need raytracing.
User avatar
Assaf Raman
OGRE Team Member
OGRE Team Member
Posts: 3092
Joined: Tue Apr 11, 2006 3:58 pm
Location: TLV, Israel
x 76

Post by Assaf Raman »

Thanks for the code!
Watch out for my OGRE related tweets here.