--- Brian Paul <[EMAIL PROTECTED]> wrote: > Alex Deucher wrote: > > --- Brian Paul <[EMAIL PROTECTED]> wrote: > > > > > > - snip - > > > > > > > the windows would then be a viewport into that context or am > > I way off? > > You're way off. A rendering context contains the current OpenGL > state > (current color, blend mode, texture modes, transformation matrices, > etc). This information is not per-window state. > > In my application I can create a rendering context and use it to > render into any number of windows. The glXMakeCurrent() call binds a > > rendering context to a window (for the calling thread). > > A rendering context can only be bound to one (or zero) windows at any > > given instant. > > Only one rendering context can be "current" at a time (for each > thread). > > > > Or are contexts app specific? > > A GL rendering context is explicitly created by applications by > calling glXCreateContext(), for example. Creating a window does not > create a rendering context. > > > > you might have an app that > > displays two separate 3D windows would that be one context with two > > windows? > > Not necessarily. If an application opens multiple 3D windows, it may > > use any number (>1) of rendering contexts to draw into them. But for > > a single-threaded program, only one can be current/active at any > instant. > > BTW, GLUT creates one rendering context for each window, so there > happens to be a one-to-one correspondence between contexts and > windows > in that case. > > It seems that a lot of people don't understand the distinction > between > rendering contexts and windows. Hopefully it's getting clearer now. > > Ok, I think I get it now. Thanks for explaining it.
> - snip - > >> > >>Where does 2048 come from? There's no window size limits that I'm > >>aware of. There is a GL viewport size limit, as mentioned above. > > > > > > the radeon scissor registers are only 12 bits apparently, hence the > max > > cliprect is 2048x2048. Several users have noted that if they > create a > > 3D window of greater than 2048, it only displays stuff up to 2048. > > Ok, that's a problem. I wasn't aware of that hardware limitation, > but > I'm not surprised by it. Windows wider than 2K pixels arent' too > common yet. > Other hardare may have similar limitations. > > >>>I guess I can't quite see how all > >>>this is supposed to work together. Also what source files should > I > >>>look in to mess with this? I apologizer if I'm getting the terms > >>>mixed up. > >> > >>The DRI drivers query the cliprect list for a window with the > >>XF86DRIGetDrawableInfo() function (defined in > >>xc/lib/GL/dri/XF86dri.c) > > > > > > Oh! I think it's starting to come together in my head. basically > what > > I need to do is add a cliprect if the window is larger than 2048 in > > either dimension. now, since this would be radeon specific, which > > radeon file should I look in...or...I guess I should check the > radeon > > driver and when it calls XF86DRIGetDrawableInfo() check the size of > > each cliprect. if it's larger then 2048, then I'd delete that > cliprect > > and replace it with two or more smaller ones or change the size of > the > > offending cliprect and add another. is this sort of behavior > allowed > > at that stage? > > I _think_ that could be done. I'd have to study the code for a while > > to fully understand the issues. Is there a better way to go about it? > > You better check if there are any other hardware limitations (such as > > scanline stride or pitch) before going too far. For example, if the > scanline stride is limited to 2K pixels you won't be able to go any > wider. Does anyone with Radeon/r200 databooks know what the limitations are in regards to stride/pitch/etc? there may also be issues with the 2D engine as the size of the framebuffer increases. > > Good luck. > > -Brian > Thanks. BTW, what's the difference between XF86DRIGetDrawableInfo() and friends in xc/lib/GL/dri/ vs. DRIGetDrawableInfo() and friends in xc/programs/Xserver/GL/dri/? Alex __________________________________ Do you Yahoo!? SBC Yahoo! DSL - Now only $29.95 per month! http://sbc.yahoo.com ------------------------------------------------------- This SF.Net email sponsored by: Parasoft Error proof Web apps, automate testing & more. Download & eval WebKing and get a free book. www.parasoft.com/bulletproofapps1 _______________________________________________ Dri-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/dri-devel