Strange attractor explorer demo. Or in other words, glowy stuff :-)

Started by
63 comments, last by DeafManNoEars 15 years, 2 months ago
Quote:glCheckFramebufferStatusEXT could 'generate error' only when the parameter is not GL_FRAMEBUFFER_EXT (or when between begin and end, which cant be the case.)
Otherwise, it MUST return framebuffer status, which isnt zero even if framebuffer is incomplete.


yes according to the man page glCheckFramebufferStatus above
but the thing is youre *NOT* using glCheckFramebufferStatus but glCheckFramebufferStatusEXT

+ there if it returns 0 then its an error (according to the spec)

yes it looks like theyve changed the behaviour of the glCheckFramebufferStatusEXT when it became part of the opengl core (usually theres not many if at all changes when extensions are promoted into the core, but it looks like in this case they did change)

edit -
actually I just download the opengl3.0 spec
'If CheckFramebufferStatus
is called within a Begin/End pair, an INVALID OPERATION error is generated.
If CheckFramebufferStatus generates an error, zero is returned.'

thus the same behaviour as ...EXT (so ignore what I said previously)
the page
http://www.khronos.org/opengles/sdk/docs/man/glCheckFramebufferStatus.xml
looks to be wrong
Advertisement
Quote:Original post by zedz
+ there if it returns 0 then its an error (according to the spec)

You're understanding spec wrong.
It returns 0 when it itself generates an error (gettable with glGetError()), NOT when framebuffer is incomplete (which is not error until you try to bind and draw on it).

When framebuffer is incomplete, it should return one of those named constant values that I check in case statement. None of which is zero.

edit: ahh, seen your edit.
So, that looks like driver bug. It returns zero but does not 'generate error' (which in opengl spec wording means setting error thats gettable with next glGetError() ).

I'm going to later add check that lists all extensions, maybe its unsupported entirely, or GLee fails somehow. Though that should crash.
Quote:Original post by Dmytry
Quote:Original post by benryves
ATi Radeon X1300 Pro, 32-bit Vista Business, latest (December 2008) drivers; the graphics window shows up but hangs (clicking the window makes it grey out, "(Not Responding)" appears in the title bar and a while later Windows prompts to kill the app or wait for it to do something).

Thanks for report.
I don't know ATI numbers, is X1300 Pro something old which might be not supporting the extensions or FBOs etc. ?
(Also, log would be helpful... could see when it freezes)

Sorry about that... (AttractorViewer-2009-01-14-2_w32.zip)
Calling init.StyleManager::StyleManagerglGenTextures: successglBindTexture: successcreating half-float texture: successglGenFramebuffersEXT: successglBindFramebufferEXT: successglFramebufferTexture2DEXT: error invalid operationglCheckFramebufferStatusEXT: successframebuffer not complete, status:GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENTcreating framebuffer: successevaluateevaluateGLMTexture::LoadFromFile(test_button_texture.png)Loading truetype font DejaVuSans.ttfcreating textureresizing to 128x16resizing to 128x32resizing to 128x64Unicode cache slots: 1660GLMTexture::LoadFromFile(test_button_texture_down.png)Resizing framebuffer texture: successRe-binding texture to framebuffer: successunbinding: successShader 'test_v.glsl' compiled successfullyShader 'test_f.glsl' compiled successfullyProgram linked successfully.glGenTextures: successglBindTexture: successglTexImage2D: successglTexParameteri: successcreating half-float texture: successglGenFramebuffersEXT: successglBindFramebufferEXT: successglFramebufferTexture2DEXT: successglCheckFramebufferStatusEXT: successcreating framebuffer: successglGenTextures: successglBindTexture: successglTexImage2D: successglTexParameteri: successcreating half-float texture: successglGenFramebuffersEXT: successglBindFramebufferEXT: successglFramebufferTexture2DEXT: successglCheckFramebufferStatusEXT: successcreating framebuffer: successglGenTextures: successglBindTexture: successglTexImage2D: successglTexParameteri: successcreating half-float texture: successglGenFramebuffersEXT: successglBindFramebufferEXT: successglFramebufferTexture2DEXT: successglCheckFramebufferStatusEXT: successcreating framebuffer: successglGenTextures: successglBindTexture: successglTexImage2D: successglTexParameteri: successcreating half-float texture: successglGenFramebuffersEXT: successglBindFramebufferEXT: successglFramebufferTexture2DEXT: successglCheckFramebufferStatusEXT: successcreating framebuffer: successglGenTextures: successglBindTexture: successglTexImage2D: successglTexParameteri: successcreating half-float texture: successglGenFramebuffersEXT: successglBindFramebufferEXT: successglFramebufferTexture2DEXT: successglCheckFramebufferStatusEXT: successcreating framebuffer: successglGenTextures: successglBindTexture: successglTexImage2D: successglTexParameteri: successcreating half-float texture: successglGenFramebuffersEXT: successglBindFramebufferEXT: successglFramebufferTexture2DEXT: successglCheckFramebufferStatusEXT: successcreating framebuffer: successglGenTextures: successglBindTexture: successglTexImage2D: successglTexParameteri: successcreating half-float texture: successglGenFramebuffersEXT: successglBindFramebufferEXT: successglFramebufferTexture2DEXT: successglCheckFramebufferStatusEXT: successcreating framebuffer: success


[Website] [+++ Divide By Cucumber Error. Please Reinstall Universe And Reboot +++]

Thanks for report.
Strange. The only errors in report are about it creating framebuffer object on startup without knowing size, so it creates incomplete framebuffer by design (but never binds it incomplete, it sets size on first draw and when setting size makes it complete).
Can you try this build ?
I reordered calls a little and added more logging.
Very nice. Although I found controls to be a little confusing - especially the fact that once you start moving it keeps on going and it is easy to get lost "in space" if you can't see the fractal.

The last build (2009-01-15_1) works for me on ATI Mobility Radeon HD 3470 on Vista 32 bit. It has definitely been improved since all previous builds failed on this computer.

I also tried to run previous builds on the desktop in 32 bit WinXP SP3 and in 64 bit Win7. On XP it always creashed with access violations, on Win7 it just displayed white rectangle on the sccreen. I have Radeon HD 4850 in the desktop and the errors were exactly the same as other posters with ATI hardware reported. I will try the latest build in the evening and report back...
Quote:Original post by Dmytry
Can you try this build ?
I reordered calls a little and added more logging.

I'm sorry for sending you on a wild goose chase - I just tried the new build and it "works", I think - it just takes about a minute to render each frame, during which the application is unresponsive resulting in Windows thinking it has hung.

I suppose I better set up a donation fund for a new video card. [wink]

[Website] [+++ Divide By Cucumber Error. Please Reinstall Universe And Reboot +++]

radeon x1950 card, ran the 01-15-1_w32 build with the latest drivers (just updated). It goes to creating framebuffer:success and hangs for a minute.

Then loads the font,
creates the texture
resizes 4 times ending with 128x128
then it hangs infinitely on Unicode cache slots: 1992

The screen is black, then if I click it changes to white and then it goes into "not responding" mode.

I can run COD4 on the highest settings with 60fps so my power shouldn't be a problem.
Quote:Original post by b2b3
I have Radeon HD 4850 in the desktop and the errors were exactly the same as other posters with ATI hardware reported. I will try the latest build in the evening and report back...

Get latest drivers as well. It worked on Radeon HD 4850 with latest drivers for someone else, and it seems it does not work with even slightly outdated drivers (seems that amd is more serious about supporting opengl than ati used to be, and there was massive improvement in opengl support).

I did some testing in other community as well. It looks like no ATI card older than Radeon 4xxx series work; it appears that older cards, or rather, drivers to older cards, do not actually support rendering to float16 render targets, which makes it impossible to do HDRI. There is no sensible error reports whatsoever; it either crashes or freezes inside opengl dll.
Furthermore, only very latest drivers seem to work.
Quote:Original post by Dmytry
Quote:Original post by b2b3
I have Radeon HD 4850 in the desktop and the errors were exactly the same as other posters with ATI hardware reported. I will try the latest build in the evening and report back...

Get latest drivers as well. It worked on Radeon HD 4850 with latest drivers for someone else, and it seems it does not work with even slightly outdated drivers (seems that amd is more serious about supporting opengl than ati used to be, and there was massive improvement in opengl support).


I tried newer release and new drivers and now it works in XP.

As for the win7, I reread their release notes and they mention that OpenGL is not supported in 64 bit beta drivers. In which case it is strange that you program even started [smile].
Nice. So, it seems ATI opengl support definitely improved recently quite a bit.

This topic is closed to new replies.

Advertisement