git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41905 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
		
			
				
	
	
		
			57 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			TeX
		
	
	
	
	
	
			
		
		
	
	
			57 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			TeX
		
	
	
	
	
	
\section{\class{wxGLContext}}\label{wxglcontext}
 | 
						|
 | 
						|
An instance of a wxGLContext represents the state of an OpenGL state machine and the connection between OpenGL and the system.
 | 
						|
 | 
						|
The OpenGL state includes everything that can be set with the OpenGL API: colors, rendering variables, display lists, texture objects, etc.
 | 
						|
Although it is possible to have multiple rendering contexts share display lists in order to save resources,
 | 
						|
this method is hardly used today any more, because display lists are only a tiny fraction of the overall state.
 | 
						|
 | 
						|
Therefore, one rendering context is usually used with or bound to multiple output windows in turn,
 | 
						|
so that the application has access to the \emph{complete and identical} state while rendering into each window.
 | 
						|
 | 
						|
Binding (making current) a rendering context with another instance of a wxGLCanvas however works only
 | 
						|
if the other wxGLCanvas was created with the same attributes as the wxGLCanvas from which the wxGLContext
 | 
						|
was initialized. (This applies to sharing display lists among contexts analogously.)
 | 
						|
 | 
						|
Note that some wxGLContext features are extremely platform-specific - its best to check your native platform's glcanvas header (on windows include/wx/msw/glcanvas.h) to see what features your native platform provides.
 | 
						|
 | 
						|
\wxheading{Derived from}
 | 
						|
 | 
						|
\helpref{wxObject}{wxobject}
 | 
						|
 | 
						|
\wxheading{Include files}
 | 
						|
 | 
						|
<wx/glcanvas.h>
 | 
						|
 | 
						|
\wxheading{See also}
 | 
						|
 | 
						|
\helpref{wxGLCanvas}{wxglcanvas}
 | 
						|
 | 
						|
\latexignore{\rtfignore{\wxheading{Members}}}
 | 
						|
 | 
						|
 | 
						|
\membersection{wxGLContext::wxGLContext}\label{wxglcontextconstr}
 | 
						|
 | 
						|
\func{ }{wxGLContext}{ \param{wxGLCanvas*}{ win}, \param{const wxGLContext*}{ other=NULL} }
 | 
						|
 | 
						|
Constructor.
 | 
						|
 | 
						|
\docparam{win}{The canvas that is used to initialize this context. This parameter is needed only temporarily,
 | 
						|
and the caller may do anything with it (e.g. destroy the window) after the constructor returned.
 | 
						|
 | 
						|
It will be possible to bind (make current) this context to any other wxGLCanvas that has been created
 | 
						|
with equivalent attributes as {\it win}.}
 | 
						|
 | 
						|
\docparam{other}{Context to share display lists with or NULL (the default) for no sharing.}
 | 
						|
 | 
						|
 | 
						|
\membersection{wxGLContext::SetCurrent}\label{wxglcontextsetcurrent}
 | 
						|
 | 
						|
\func{void}{SetCurrent}{\param{const wxGLCanvas&}{ win}}
 | 
						|
 | 
						|
Makes the OpenGL state that is represented by this rendering context current with the wxGLCanvas {\it win}.
 | 
						|
Note that {\it win} can be a different wxGLCanvas window than the one that was passed to the constructor of this rendering context.
 | 
						|
If { \it RC } is an object of type wxGLContext, the statements {\it RC.SetCurrent(win);} and {\it win.SetCurrent(RC);} are equivalent,
 | 
						|
see \helpref{wxGLCanvas::SetCurrent}{wxglcanvassetcurrentrc}.
 | 
						|
 |