[HOpenGL] problem with displayCallback and Double buffering
Marc A. Ziegert
coeus at gmx.de
Wed Nov 5 08:54:06 EST 2003
wow. thanks.
i think, i have to compile again...
and read about all the configurations first.
- marc
Am Mittwoch, 5. November 2003 01:04 schrieb Wolfgang Thaller:
>
> On 05.11.2003, at 00:34, Marc A. Ziegert wrote:
>
> > i've installed ghc-6.3.20031102 (still the "-lGL" <--> "-lGLU" bug in
> > package.conf).
> > that version works now, thanks.
> >
> > now i want to use ghci, especially with
> > forkIO mainLoop
> > , but that does not seem to work anymore. is that a forkIO bug?
>
> Hmm... did you build ghc with the --enable-threaded-rts flag? If so,
> you should be using forkOS instead of forkIO; forkIO creates a
> lightweight thread, but most OpenGL implementations require a
> (heavyweight) OS thread to run reliably. With GHC 6.3
> --enable-threaded-rts, this means you can call GLUT/OpenGL from the
> main thread, from threads created using forkOS, and from foreign
> exported functions, but not from threads created using forkIO.
>
> If you're not using --enable-threaded-rts, then you could encounter a
> different problem: GHCi only gets a chance to run while the GLUT
> mainLoop is inside a callback, and while GHCi is waiting for input
> using readline, the GLUT mainLoop will be blocked. Things might work if
> you build GHC without readline support and install an idle callback
> into the GLUT event loop.
>
> In both cases, keep in mind that all the OpenGL drawing has to be done
> from the thread that GLUT is running in. You can use MVars to
> communicate with that thread from the GHCi prompt, but doing OpenGL
> drawing from the GHCi prompt while a GLUT mainLoop is running in the
> background will never work reliably.
>
> Grüße,
>
> Wolfgang
>
> _______________________________________________
> HOpenGL mailing list
> HOpenGL at haskell.org
> http://www.haskell.org/mailman/listinfo/hopengl
>
>
More information about the HOpenGL
mailing list