Home Technical Talk

ratGPU : OpenCL raytracing renderer

1
polycounter lvl 17
Offline / Send Message
jogshy polycounter lvl 17
Hi,

I've just uploaded ratGPU here
http://www.ratgpu.com

( yep, you'll be redirected by now to an xNormal's subdomain... I'm just lazy )

ratGPU is a free progressive OpenCL ray tracing renderer for 3dsmax. It currently works on Vista/7 and NVIDIA cards only.
I've also tested it with ATI cards, but for some reason I cannot understand well, ATI does not include the OpenCL.dll in their drivers... so, in theory ratGPU should work with ATI cards... but, in practise, not.

.. and, nope, it's NOT at all optimised, before you ask :poly122:

I'll support WinXP soon, I need to solve some problems with the f%%&&##g XP's watchdog.

I also plan to port it to Maya, once all is more or less stable.

You can currently render normals, material colors and ambient occlusion by now.
I'll implement path tracing soon...

A friend recorded a video showing how to use it ( and , pls, excuse the english! )
http://vimeo.com/12413621?hd=1

Thx!

Replies

  • commander_keen
    Options
    Offline / Send Message
    commander_keen polycounter lvl 18
    oooohhhh very cool.
  • renderhjs
    Options
    Offline / Send Message
    renderhjs sublime tool
    very nice, this whole openCL stuff seems to be the future for this kind of stuff.
  • Nysuatro
    Options
    Offline / Send Message
    Never heared about OpenCL, hmmm
    This sounds very interesting

    EDIT: hehe woeps, wrong type from me
  • jogshy
    Options
    Offline / Send Message
    jogshy polycounter lvl 17
    Nysuatro wrote: »
    Never heared about OpenGL, hmmm
    This sounds very interesting
    OpenCL, not OpenGL :poly124:
    OpenGL is a graphics API like Direct3D.
    OpenCL is a GPGPU API like CUDA ( but multivendor, so it will work on ATIs too ).

    ps: Hah! The 0.0.1 will be 20x times faster... lol, what a bug I had :poly136:
  • Nysuatro
    Options
    Offline / Send Message
    lol, that is a big difference :D What was the bug if I may ask?
  • jogshy
    Options
    Offline / Send Message
    jogshy polycounter lvl 17
    Nysuatro wrote: »
    What was the bug if I may ask?
    I was updating 20 consecutive times the 3dsmax's preview... so I wasted a 90% of the time painting already-painted pixels :poly136:
  • elte
    Options
    Offline / Send Message
    elte polycounter lvl 18
    This is awesome Santy, but will there be version 4.0 of xNormal or u're already bored with it? :P
  • MattLichy
    Options
    Offline / Send Message
    Oh damn.... I need to try this out.

    THANKS!
  • jogshy
    Options
    Offline / Send Message
    jogshy polycounter lvl 17
    elte wrote: »
    This is awesome Santy, but will there be version 4.0 of xNormal or u're already bored with it? :P
    ratGPU is really a residue of the xn4's tech :poly124:
    I had to make a stop to learn OpenCL for xn4 so that's ratGPU, just a temporary stop. xn4 is pretty alive :)
  • MattLichy
    Options
    Offline / Send Message
    I tested it out quick,

    I'm running on Max 2010 64bit, Intel Core 2 Quad 2.67GHZ, Win 7, Nvidia GTX260 Overclocked, 8GB of DDR2 1066mhz ram, but even doing a 256x256 render is going extremely slow..

    Maybe I am doing something wrong? It looked like in your video yours was going quite fast.
  • jogshy
    Options
    Offline / Send Message
    jogshy polycounter lvl 17
    MattLichy wrote: »
    I tested it out quick,

    I'm running on Max 2010 64bit, Intel Core 2 Quad 2.67GHZ, Win 7, Nvidia GTX260 Overclocked, 8GB of DDR2 1066mhz ram, but even doing a 256x256 render is going extremely slow..

    Maybe I am doing something wrong? It looked like in your video yours was going quite fast.
    It's bugged. Actually is like 20x slower than it should be hehe. Well... you can execute it, that's what matters by now :poly124:

    I'll try to post the v0.1.0 the next Monday.
  • oXYnary
    Options
    Offline / Send Message
    oXYnary polycounter lvl 18
    Did you ever know your my Hero?

    Are the ATI drivers in their Stream SDK?

    http://developer.amd.com/gpu/atistreamsdk/pages/default.aspx
  • jogshy
    Options
    Offline / Send Message
    jogshy polycounter lvl 17
    oXYnary wrote: »
    Are the ATI drivers in their Stream SDK?
    The current problem of ATI and OpenCL is that their Catalyst drivers don't include the OpenCL DLL. I'm forced to statically-link it to my .exe, and that sux because ,then, the .exe won't work with NVIDIA cards. I really hope ATI could fix that soon.
    I've tested ratGPU with their SDK and works... I'm just waiting for them to solve that little big problem.
  • renderhjs
    Options
    Offline / Send Message
    renderhjs sublime tool
    well ATI seems to be the sucker anyway when it comes to drivers, I am not surprised that they are last or 2nd with openCL, they really need to address their driver issues.
  • MattLichy
    Options
    Offline / Send Message
    Sounds good jogshy, thanks :D
  • jogshy
    Options
    Offline / Send Message
    jogshy polycounter lvl 17
    I've just uploaded the v0.1.2, which should be a lot faster than the original one.
    Also solved a problem rendering a frame of time.

    next: vertex normals with smoothing groups and irradiance.
    thx
  • MattLichy
    Options
    Offline / Send Message
    Sweet, will try it out when I go back to WA. Am back home visiting for a bit... don't have my desktop of course.. xD
  • Junkie_XL
    Options
    Offline / Send Message
    Junkie_XL polycounter lvl 14
    This is pretty cool jogshy. I'd love if you could get this working working with max render to texture.
  • jogshy
    Options
    Offline / Send Message
    jogshy polycounter lvl 17
    Some progress on pathtracing:

    cornellg.jpg
  • jogshy
    Options
    Offline / Send Message
    jogshy polycounter lvl 17
    I've just uploaded the v0.2.1 with path tracing support ( diffuse, reflective, refractive, fresnel, mesh lights ) and other enhacements.

    ballsp.jpg


    Btw, the new FW 257.21 seems to be broken. Better stay with the 197.XX.

    thx.
  • pior
    Options
    Offline / Send Message
    pior grand marshal polycounter
    I have the feeling this is about to blow Hypershot, Mental Ray and Vray out of the water, for simple beauty shots!

    I suppose you will support HDR cubemaps ?

    Loving unbiased renderers ... cant wait to play with this.
  • Thegodzero
    Options
    Offline / Send Message
    Thegodzero polycounter lvl 18
    looking very sexy!
  • ZacD
    Options
    Online / Send Message
    ZacD ngon master
    You should post some render times with those pics.
  • jogshy
    Options
    Offline / Send Message
    jogshy polycounter lvl 17
    pior wrote: »
    I suppose you will support HDR cubemaps ?
    Yep, the skymaps is on the high-priority todo list together with anti-aliasing and textures.
    ZacD wrote: »
    You should post some render times with those pics.
    Nah, ratGPU is still not optimized. I hope to reach 10X speed soon.
    I'm concentrating first in developing the key features, then I'll optimize it.

    Btw, I'm thinking about writting a progressive mode instead of a tile preview, but it's complicated due to the 3dsmax's architecture. I should just open my own window and do the computations there, yep.
  • jogshy
    Options
    Offline / Send Message
    jogshy polycounter lvl 17
    I'm preparing the 0.3.0 with some optimizations but I'm waiting for OpenCL 1.1 to come.
    OpenCL 1.0 has some problems, the drivers are not yet very mature and the current ATI's implementation is a bit scary.
  • designamyte
    Options
    Offline / Send Message
    Hi, nice work and a great integration into the 3d apps. Would like to know, if there are any plans to get it availible for other 3d progs like cinema 4d? cheers de.
  • bugo
    Options
    Offline / Send Message
    bugo polycounter lvl 17
    Santiago you never stop amazing me. Great job my friend. Do you have plans and is it easy implementing this in Maya somehow?

    Another question is. Do you have plans of creating this RT pathtracing into a GI function and perhaps a baking tool later?
  • jogshy
    Options
    Offline / Send Message
    jogshy polycounter lvl 17
    any plans to get it availible for other 3d progs like cinema 4d?
    Do you have plans and is it easy implementing this in Maya somehow?
    Yep, I plan to port it to Maya once the basic things are implemented in 3dsmax and it's more or less optimized.
    About Cinema4D I'm afraid I have no idea how to write a plugin. I've never used its SDK.
    Another question is. Do you have plans of creating this RT pathtracing into a GI function and perhaps a baking tool later?
    Yep, maybe. I'm considering to allow the user to bake the lighting for xn4 too.
  • planaria
    Options
    Offline / Send Message
    it looks cool , but i wont be able to try it out since i use blender.

    If you did feel like supporting blender i would love to try it out though ;)
  • SHEPEIRO
    Options
    Offline / Send Message
    SHEPEIRO polycounter lvl 17
  • kio
    Options
    Offline / Send Message
    kio polycounter lvl 16
    very interessting :D
  • designamyte
    Options
    Offline / Send Message
    Ah, ok. This is a pity. But i can understand it, a lil bit.
    Can only say: Don´t be afraid :) ...and i am curious
    about further developments of ratGPU and Xn4...


    greets
    de.
  • jogshy
    Options
    Offline / Send Message
    jogshy polycounter lvl 17
    Uploaded ratGPU 0.3.0 with ATI support and some speed improvements.
    Some important notes ( as I mention in the web page ):

    1. The Forceware 25X broke ratGPU. Use the FW 197 instead while they fix the drivers.

    2. If you want to execute in an ATI card you need to download the huge ATI OpenCL SDK v2.2 ( I know, a pain ).

    3. The speed on ATI is not good ( probably because the algorithms I'm using don't like large GPU SIMD processors ).

    4. The speed of GeForce 8/9 cards are not even comparable to a GT200(GTX260/280) or Fermi card(GTX 460,465,470,480).

    5. You need an Internet connection because I'm developing an update system and I want to test it.
  • jogshy
    Options
    Offline / Send Message
    jogshy polycounter lvl 17
    I've just uploaded the 0.3.1 with some bugs corrected and a new example scene ( yep, programmer's art, I know ):

    ratgpucrystals.jpg
  • bugo
    Options
    Offline / Send Message
    bugo polycounter lvl 17
    that is awesome!
  • pior
    Options
    Offline / Send Message
    pior grand marshal polycounter
    Wow!! That looks promising.

    Programmers art or not, Ive always loved that kind of curly shapes in threedee. Would you mind explaining how you crafted them ? I am really, really interested in this process. ("Parametric 3d")
  • renderhjs
    Options
    Offline / Send Message
    renderhjs sublime tool
    programming can be art, and that looks very nice. I would be interested in some video demos showing the performance with the right hardware.
  • jogshy
    Options
    Offline / Send Message
    jogshy polycounter lvl 17
    I would be interested in some video demos showing the performance with the right hardware.
    Mwhaha! I just doubled the speed for ATIs today hacking their compiler with a super-dirty trick ( but it's still a lot slower than NVIDIA...). Incomming 0.4.0 soon with hybrid-CPU support also ( you'll be able to use the CPU + GPU, the current version uses only the GPU ).

    Currently only the NVIDIA's true GT200 series(GT240/260/270/280/285/295, not the rebranded G80s) and probably Fermi(I don't own one) render at good speed.
    I included an .ODF document with some benchmarks results with the 0.3.1b but I still need to improve a lot the performance. The drivers/SDKs are very immature too ( ATI's SDK is a pain and the NVIDIA's Forceware 25X broke my implementation ... )

    I'm impatient to get a Fermi card to see how it can perform... In theory, will be 2-3x faster than their GT200 equivalents.

    Well, currently I'm touching 1000 things a day so any tutorials/docs I could write gonna be deprecated fast. I'll make a video explaining all after I'm more or less happy with the speed and the things are a bit more stable ( probably after the 0.4.0 )
    Would you mind explaining how you crafted them ? I am really, really interested in this process. ("Parametric 3d")
    You can use this program:

    http://www.eecs.berkeley.edu/~sequin/SCULPTS/scherk.html

    it's very easy to use: just play with the parameters and export the result as .STL ( a format that 3dsmax and Maya can read ).
  • jogshy
    Options
    Offline / Send Message
    jogshy polycounter lvl 17
    I've just uploaded the 0.4.0:

    - Doubled the speed with ATI cards ( still very behind NVIDIA )

    - Added WinXP support ( remember to disable the primary GPU or the watchdog will pop... or use the CPU only )

    - Enabled hybrid rendering ( you can use both GPU + CPU simultaneously to render... although if the CPU is much slower than the GPU can slow a lot the rendering... )

    - Fixed some bugs
  • DerDude
    Options
    Offline / Send Message
    DerDude polycounter lvl 10
    too bad it´s max-only right now :)
    Are animations possible to render in Max?
  • jogshy
    Options
    Offline / Send Message
    jogshy polycounter lvl 17
    DerDude wrote: »
    too bad it´s max-only right now
    Yep, I plan to release a Maya version... but I'm still not very happy with the speed.
    Are animations possible to render in Max?
    Yep
  • DerDude
    Options
    Offline / Send Message
    DerDude polycounter lvl 10
    thanks for the answer Jogshy :)
    is there something like a schedule when maya could start? :) this year?
  • commador
    Options
    Offline / Send Message
    commador polycounter lvl 14
    jogshy wrote: »
    Yep, I plan to release a Maya version...

    it's a longshot but, maybe XSI? (Softimage if you prefer the Autodesk nomenclature) I know you can't support everyone's favorite app, but it never hurt to ask? :)
  • jogshy
    Options
    Offline / Send Message
    jogshy polycounter lvl 17
    commador wrote: »
    it's a longshot but, maybe XSI? (Softimage if you prefer the Autodesk nomenclature) I know you can't support everyone's favorite app, but it never hurt to ask? :)
    The more platforms I port the better... but first I must develop a solid core... and currently I'm not happy with the speed. All is under heavy R&D.

    I'll port it to other programs once I'm happy with the results and the core is stable enough.
  • DerDude
    Options
    Offline / Send Message
    DerDude polycounter lvl 10
    jogshy you´re awesome, our crew use x-normal heavily in production.
  • ZacD
    Options
    Online / Send Message
    ZacD ngon master
    Is it ever going to be released as a stand alone app like xnormal?

    Is the render engine going to be implemented into xnormal?

    Is it possible to use it for baking light maps?
  • jogshy
    Options
    Offline / Send Message
    jogshy polycounter lvl 17
    ZacD wrote: »
    Is it ever going to be released as a stand alone app like xnormal?
    Yep. The idea is to integrate it into 3dsmax, Maya and XSI but I also will make an stand-alone app + batch mode and SDK.
    Is the render engine going to be implemented into xnormal?
    I developed ratGPU basically to improve my OpenCL skills but also because I wanted a renderer to perform beauty shots in xNormal 4, so yep, definitely.
    Is it possible to use it for baking light maps?
    Not currently, but I could adapt it very easily to render to texture just changing a few lines of code.

    However, I still need to do a lot of R&D before all that. All is very experimental yet.
  • ZacD
    Options
    Online / Send Message
    ZacD ngon master
    Really awesome news, sounds like your first priority is speed.

    I could see animation/vfx/visualization studios being interested if you can beat V-Ray RT to the punch.

    With 3point shader and quality normals becoming popular here (and hopefully in other big studios and engines) is there a possibility of rendering out 3ds max style normal maps with gpu acceleration that would with quality normals?
  • jogshy
    Options
    Offline / Send Message
    jogshy polycounter lvl 17
    ZacD wrote: »
    With 3point shader and quality normals becoming popular here (and hopefully in other big studios and engines) is there a possibility of rendering out 3ds max style normal maps with gpu acceleration that would with quality normals?
    I've found a little problem integrating all this into 3dsmax: the background viewports are slowing the GPU rendering a bit and the memory used is a lot because the meshes need to be stored in system-RAM, DirectX-VRAM and OpenCL-VRAM.... so I really think is much better to use an standalone app to increase the speed and the polycount.

    Btw, I've just uploaded the 0.4.1 with improved speed for ATI cards ( around 30% ), but still far from NVIDIA.
  • jogshy
    Options
    Offline / Send Message
    jogshy polycounter lvl 17
    I've just uploaded the 0.4.2 with several improvements and a stand alone renderer/benchmark.
1
Sign In or Register to comment.