OGRE-Next
2.3
Object-Oriented Graphics Rendering Engine
|
#include <OgreGLXGLSupport.h>
Public Member Functions | |
GLXGLSupport () | |
~GLXGLSupport () | |
void | addConfig () override |
GL3PlusSupport::addConfig More... | |
virtual bool | checkExtension (const String &ext) const |
Check if an extension is available. More... | |
GLXFBConfig * | chooseFBConfig (const GLint *attribList, GLint *nElements) |
Portable replacement for glXChooseFBConfig. More... | |
::GLXContext | createNewContext (GLXFBConfig fbConfig, GLint renderType, ::GLXContext shareList, GLboolean direct) const |
Portable replacement for glXCreateNewContext. More... | |
Window * | createWindow (bool autoCreateWindow, GL3PlusRenderSystem *renderSystem, const String &windowTitle) override |
virtual ConfigOptionMap & | getConfigOptions () |
virtual unsigned int | getDisplayMonitorCount () const |
Gets the number of display monitors. More... | |
String | getDisplayName () |
Get the name of the display and screen used for rendering. More... | |
GLint | getFBConfigAttrib (GLXFBConfig fbConfig, GLint attribute, GLint *value) |
Portable replacement for glXGetFBConfigAttrib. More... | |
GLXFBConfig | getFBConfigFromContext (::GLXContext context) |
Get the GLXFBConfig used to create a ::GLXContext. More... | |
GLXFBConfig | getFBConfigFromDrawable (GLXDrawable drawable, unsigned int *width, unsigned int *height) |
Get the GLXFBConfig used to create a GLXDrawable. More... | |
GLXFBConfig | getFBConfigFromVisualID (VisualID visualid) |
Gets a GLXFBConfig compatible with a VisualID. More... | |
Display * | getGLDisplay () |
Get the Display connection used for rendering. More... | |
const String & | getGLVendor () const |
Get vendor information. More... | |
const DriverVersion & | getGLVersion () const |
Get version information. More... | |
virtual size_t | getNumPriorityConfigOptions () const |
virtual const char * | getPriorityConfigOption (size_t idx) const |
void * | getProcAddress (const char *procname) const override |
GL3PlusSupport::getProcAddress More... | |
const String & | getShaderCachePath () const |
Get shader cache path. More... | |
const String & | getShaderLibraryPath () const |
Get shader library path. More... | |
XVisualInfo * | getVisualFromFBConfig (GLXFBConfig fbConfig) |
Portable replacement for glXGetVisualFromFBConfig. More... | |
Display * | getXDisplay () |
Get the Display connection used for window management & events. More... | |
bool | hasMinGLVersion (int major, int minor) const |
Check if GL Version is supported. More... | |
void | initialiseExtensions () override |
GL3PlusSupport::initialiseExtensions More... | |
bool | loadIcon (const String &name, Pixmap *pix, Pixmap *mask) |
Loads an icon from an Ogre resource into the X Server. More... | |
Window * | newWindow (const String &name, uint32 width, uint32 height, bool fullScreen, const NameValuePairList *miscParams=0) override |
GLXFBConfig | selectFBConfig (const int *minAttribs, const int *maxAttribs) |
Select an FBConfig given a list of required and a list of desired properties. More... | |
void | setConfigOption (const String &name, const String &value) override |
GL3PlusSupport::setConfigOption More... | |
void | setShaderCachePath (String path) |
Set shader cache path. More... | |
void | setShaderLibraryPath (String path) |
Set shader library path. More... | |
void | start () override |
GL3PlusSupport::start More... | |
void | stop () override |
GL3PlusSupport::stop More... | |
void | switchMode () |
Switch back to original video mode. More... | |
void | switchMode (uint32 width, uint32 height, short frequency) |
Switch video modes. More... | |
String | validateConfig () override |
GL3PlusSupport::validateConfig More... | |
Public Attributes | |
Atom | mAtomDeleteWindow |
Atom | mAtomFullScreen |
Atom | mAtomState |
Ogre::GLXGLSupport::GLXGLSupport | ( | ) |
Ogre::GLXGLSupport::~GLXGLSupport | ( | ) |
|
overridevirtual |
|
virtualinherited |
Check if an extension is available.
Reimplemented in Ogre::GTKGLSupport.
GLXFBConfig* Ogre::GLXGLSupport::chooseFBConfig | ( | const GLint * | attribList, |
GLint * | nElements | ||
) |
Portable replacement for glXChooseFBConfig.
::GLXContext Ogre::GLXGLSupport::createNewContext | ( | GLXFBConfig | fbConfig, |
GLint | renderType, | ||
::GLXContext | shareList, | ||
GLboolean | direct | ||
) | const |
Portable replacement for glXCreateNewContext.
|
overridevirtual |
Implements Ogre::GL3PlusSupport.
|
virtualinherited |
|
inlinevirtualinherited |
Gets the number of display monitors.
Reimplemented in Ogre::Win32GLSupport.
String Ogre::GLXGLSupport::getDisplayName | ( | ) |
Get the name of the display and screen used for rendering.
Ogre normally opens its own connection to the X server and renders onto the screen where the user logged in
However, if Ogre is passed a current GL context when the first RenderTarget is created, then it will connect to the X server using the same connection as that GL context and direct all subsequent rendering to the screen targeted by that GL context.
GLint Ogre::GLXGLSupport::getFBConfigAttrib | ( | GLXFBConfig | fbConfig, |
GLint | attribute, | ||
GLint * | value | ||
) |
Portable replacement for glXGetFBConfigAttrib.
GLXFBConfig Ogre::GLXGLSupport::getFBConfigFromContext | ( | ::GLXContext | context | ) |
Get the GLXFBConfig used to create a ::GLXContext.
drawable | GLXContext |
GLXFBConfig Ogre::GLXGLSupport::getFBConfigFromDrawable | ( | GLXDrawable | drawable, |
unsigned int * | width, | ||
unsigned int * | height | ||
) |
Get the GLXFBConfig used to create a GLXDrawable.
Caveat: GLX version 1.3 is needed when the drawable is a GLXPixmap
drawable | GLXDrawable |
width | Receiver for the drawable width |
height | Receiver for the drawable height |
GLXFBConfig Ogre::GLXGLSupport::getFBConfigFromVisualID | ( | VisualID | visualid | ) |
Gets a GLXFBConfig compatible with a VisualID.
Some platforms fail to implement glXGetFBconfigFromVisualSGIX as part of the GLX_SGIX_fbconfig extension, but this portable alternative suffices for the creation of compatible contexts.
visualid | VisualID |
Display* Ogre::GLXGLSupport::getGLDisplay | ( | ) |
|
inlineinherited |
Get vendor information.
|
inlineinherited |
Get version information.
|
virtualinherited |
Reimplemented in Ogre::GlSwitchableSupport, and Ogre::EglPBufferSupport.
|
virtualinherited |
Reimplemented in Ogre::GlSwitchableSupport, and Ogre::EglPBufferSupport.
|
overridevirtual |
|
inlineinherited |
Get shader cache path.
|
inlineinherited |
Get shader library path.
XVisualInfo* Ogre::GLXGLSupport::getVisualFromFBConfig | ( | GLXFBConfig | fbConfig | ) |
Portable replacement for glXGetVisualFromFBConfig.
Display* Ogre::GLXGLSupport::getXDisplay | ( | ) |
|
inherited |
Check if GL Version is supported.
|
overridevirtual |
bool Ogre::GLXGLSupport::loadIcon | ( | const String & | name, |
Pixmap * | pix, | ||
Pixmap * | mask | ||
) |
Loads an icon from an Ogre resource into the X Server.
This currently only works for 24 and 32 bit displays. The image must be findable by the Ogre resource system, and of format PF_A8R8G8B8.
display | X display |
name | Name of image to load |
pix | Receiver for the output pixmap |
mask | Receiver for the output mask (alpha bitmap) |
|
overridevirtual |
Implements Ogre::GL3PlusSupport.
GLXFBConfig Ogre::GLXGLSupport::selectFBConfig | ( | const int * | minAttribs, |
const int * | maxAttribs | ||
) |
Select an FBConfig given a list of required and a list of desired properties.
minAttribs | FBConfig attributes that must be provided with minimum values |
maxAttribs | FBConfig attributes that are desirable with maximum values |
|
overridevirtual |
GL3PlusSupport::setConfigOption
GL3PlusSupport::setConfigOption
Reimplemented from Ogre::GL3PlusSupport.
|
inlineinherited |
Set shader cache path.
|
inlineinherited |
Set shader library path.
|
overridevirtual |
|
overridevirtual |
void Ogre::GLXGLSupport::switchMode | ( | ) |
Switch back to original video mode.
Switch video modes.
width | Receiver for requested and final width |
height | Receiver for requested and final drawable height |
height | Receiver for requested and final drawable frequency |
|
overridevirtual |
Atom Ogre::GLXGLSupport::mAtomDeleteWindow |
Atom Ogre::GLXGLSupport::mAtomFullScreen |
Atom Ogre::GLXGLSupport::mAtomState |