Part of the Khronos Group
OpenGL.org

The Industry's Foundation for High Performance Graphics

from games to virtual reality, mobile phones to supercomputers

Page 1 of 2 12 LastLast
Results 1 to 10 of 14

Thread: Enabling Blend when rendering to a pbuffer

  1. #1
    Junior Member Newbie
    Join Date
    Jan 2003
    Location
    vancouver,bc,canada
    Posts
    8

    Enabling Blend when rendering to a pbuffer

    Hi out there!

    I've been coding with opengl for a long time, but this is my first dabble with pbuffers. My code freezes whenever I try to enable blending when rendering to a pbuffer using my radeon 9700. Does anybody know why? Is blending not supported with a pbuffer? Do I need to request "accumulator" bits when choosing the pixel format maybe?

    thanks for the help!!!!
    Andrew

  2. #2
    Senior Member OpenGL Guru
    Join Date
    Mar 2001
    Posts
    2,704

    Re: Enabling Blend when rendering to a pbuffer

    It should work. If you can make it happen with a small program that you can e-mail, devrel@ati.com may be able to forward the problem to their developers. I've had good luck with that.
    "If you can't afford to do something right,
    you'd better make sure you can afford to do it wrong!"

  3. #3
    Member Regular Contributor
    Join Date
    May 2001
    Posts
    255

    Re: Enabling Blend when rendering to a pbuffer

    Is it a floating point pbuffer or just a regular pbuffer ?

  4. #4
    Junior Member Regular Contributor
    Join Date
    Sep 2001
    Location
    Wake Forest, NC, USA
    Posts
    176

    Re: Enabling Blend when rendering to a pbuffer

    Blending should work with a normal (fixed-point) pbuffer.

    Floating-point color buffers under the NV_float_buffer extension do not support blending. ATI has recently published a draft of a similar similar extension (ATI_pixel_format_float), which apparently does support blending, though it might not be supported in hardware in their current generation of hardware. I don't know.

    One other thing that might be going on: since your pbuffer may have a different pixel format, you might be required to create a separate context for the pbuffer. If you enable blending in your "window" context, it has no effect on your "pbuffer" context. And vice versa. Several developers that I've worked with ran into issues that turned out to be due to exactly that kind of problem.

  5. #5
    Junior Member Newbie
    Join Date
    Jan 2003
    Location
    vancouver,bc,canada
    Posts
    8

    Re: Enabling Blend when rendering to a pbuffer

    I am using a standard 8 bit buffer. When I am in the buffer context, and i try to enable blending, this is when it freezes. I enable blending for the screen context, but when I render to the pbuffer, no blending is done. Then, while IN the pbuffer context, I try to enable blending, and the code hangs. I though it was some type of acculator problem, like the pbuffer pixel format didn't have any accumulator bits defined. Any further suggestions?

  6. #6
    Senior Member OpenGL Guru Humus's Avatar
    Join Date
    Mar 2000
    Location
    Stockholm, Sweden
    Posts
    2,444

    Re: Enabling Blend when rendering to a pbuffer

    Sounds like either a driver bug or that it falls back into software mode which due to it's slowness might appear as it hanged.
    Either way, send an email to devrel@ati.com about it and I'm sure they can help you.

  7. #7
    Advanced Member Frequent Contributor
    Join Date
    May 2001
    Location
    Beloit, Wisconsin
    Posts
    562

    Re: Enabling Blend when rendering to a pbuffer

    Originally posted by Humus:
    Sounds like either a driver bug or that it falls back into software mode which due to it's slowness might appear as it hanged.
    Either way, send an email to devrel@ati.com about it and I'm sure they can help you.
    Yeah, the current drivers have some pretty bad problems with pbuffers (just the buffers them self, and sharing object lists across them). I emailed them the problems about pbuffers, but I haven't heard anything back about it yet.

  8. #8
    Senior Member OpenGL Guru Humus's Avatar
    Join Date
    Mar 2000
    Location
    Stockholm, Sweden
    Posts
    2,444

    Re: Enabling Blend when rendering to a pbuffer

    Sharing objects works fine with the 6275 driver.

  9. #9
    Junior Member Newbie
    Join Date
    Jan 2003
    Location
    vancouver,bc,canada
    Posts
    8

    Re: Enabling Blend when rendering to a pbuffer

    OK, so you guys are right, I got my versions mixed up. I can indeed blend to the 8-bit fixed point pbuffer. It is the floating point version that hangs. I still think that there's something weird going on with the floating point buffer. If I use say 3.123409, it will come back as 3.123383 when I glreadpixels the pbuffer, argh. Thanks to everybody who's helped thus far!

  10. #10
    Junior Member Newbie
    Join Date
    Jan 2003
    Location
    vancouver,bc,canada
    Posts
    8

    Re: Enabling Blend when rendering to a pbuffer

    So, if I use a floating point value of 3.123409 or any value with a decimal place in it, it will come back as some thing slightly different, like 3.123383. However, if I specify 2.0 or -3.0. Then I get back exactly 2.0 or 3.0 when I glreadpixels the pbuffer.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •