Thanks for your reply David.

 

My results seem unaffected by whether I use an ivec4 or the float
version of vec4.  I used ivec4 because the author of renderwriterhdr.cpp
left commented shader code for the conversion from RGBE to float with
the ivec4.  Check out readerwriterhdr.cpp line 80 to see what I'm
talking about.

 

I am in fact using RGBA8 textures.  At first I suspected that no
filtering was being applied so I tried using osg::Texture::NEAREST with
the RGB8 LDR texture for comparison.  Although it became more blocky
looking as expected, it still look reasonable.  This is in sharp
contrast to the RAW texture which shows dramatic artifacts.

 

For quick reference:

RGB8: http://img162.imageshack.us/img162/8467/hdrrgb8rn7.jpg

RAW: http://img206.imageshack.us/img206/8574/hdrrawza9.jpg

 

Any insight is appreciated,

Michael Guerrero ( Delta3D )

 

________________________________

From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of David
Spilling
Sent: Tuesday, November 06, 2007 1:59 AM
To: OpenSceneGraph Users
Subject: Re: [osg-users] HDR - RGB8 vs RAW

 

Michael

         

         

        -       With the option "RGB8"  ( osgDB::ReaderWriter::Options(
"RGB8" )  )

        o      The image is converted to LDR before being stored in a
texture.

         Doesn't that defy the whole point of being HDR to begin with?


Yes,  although it allows you to at least read in RGBE / Radiance format
files, so that you can use HDR assets in LDR pipelines. That's one thing
we fall back to - we generate and ship all our assets in HDR, but
depending on the eventual hardware, it may fallback to an LDR load if
the card can't handle it. 

         

         

        The problem is that my rendering results are different.


Firstly, why "ivec4" in the textureRGBE code? If you try just "vec4"
does it get better? I would have thought you wanted floats here... 

Secondly, could this be an interpolation issue? Is the texture format
RGBA8 or 32F (I would have thought that you would be using RGBA8, but
you never know). Most of the hardware we support doesn't support LINEAR
interpolation on float textures, so we have to do it by hand, as it
were. 

Hope that helps,

David



 

_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to