Hi Robert, thanks for answering. I understand your point regarding cross platform complexity. However, I am pretty convinced that passing the context to drawing functions makes sense these days, especially considering the many contexts and threads running in parallel, and I don't get this as a vendor lock-in strategy, although this can be a side-effect of course.
Raphael On Thu, Mar 20, 2008 at 1:32 PM, Robert Osfield <[EMAIL PROTECTED]> wrote: > Hi Raphael, > > The changes of the OSG uses this tricked out non standard vendor > lock-in mechanism are 0. > > If such an extension was available across platforms it might make some > sense, but given the massive amount of changes it'd require, for a > minor platform like OSX, and the likely small performance delta they > might give anyway I think it would be huge waste of resources and > added code complexity, associated bugs and testing. It would in the > end be an utter nightmare to maintain for little gain for a small > number of users. > > Far more interesting is items like OpenGL-ES and OpenGL 3.x, this is > the future of OpenGL, not a silly little detour Apple hopes to hook > you into to make you apps even more tied to a single platform. > > Robert. > > On Thu, Mar 20, 2008 at 11:22 AM, Raphael Sebbe <[EMAIL PROTECTED]> > wrote: > > Hi all, > > > > On Mac OS X, there is a possibility of using a special mechanism for > OpenGL > > calls, that is, you include CGLMacros.h in your source, and all gl*** > calls > > take an implicit additional parameter, the context. This makes the use > of a > > "current active context" unnecessary, gives better performance and it > works > > better with threads. Developers are encouraged to use that mechanism. > > > > Some apps (thinking of Quartz Composer) strongly suggest that this is > used > > for their plugins, drawing to the given context, and discourage changing > the > > current OpenGL context. I guess we're not far from a "suggest" becoming > a > > "require" in the future. > > > > > > The way it works is that you have to define a local variable with the > name > > cgl_ctx, and that variable is passed as first argument to the special gl > > calls: > > > > CGLContextObj cgl_ctx = aContext; > > glBegin(GL_LINES); // which actually is like _blaBegin(cgl_ctx, > GL_LINES), > > because of CGLMacro.h inclusion > > // this won't compile if cgl_ctx is not defined > > > > > > > > > > So my question is: what is your thought about integrating this mechanism > in > > OSG? > > > > Thanks, > > > > Raphael > > > > > > > > _______________________________________________ > > osg-users mailing list > > [email protected] > > > http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org > > > > > _______________________________________________ > osg-users mailing list > [email protected] > http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org >
_______________________________________________ osg-users mailing list [email protected] http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

