Draw context property types |
enum {
kQ3DrawContextPropertyClearDepthBufferFlag = Q3_METHOD_TYPE('c', 'l', 'd', 'b'),
kQ3DrawContextPropertyClearDepthBufferValue = Q3_METHOD_TYPE('c', 'l', 'd', 'v'),
kQ3DrawContextPropertyWritableDepthBuffer = Q3_METHOD_TYPE('w', 'r', 'd', 'b'),
kQ3DrawContextPropertyGLDepthFunc = Q3_METHOD_TYPE('g', 'l', 'd', 'f'),
kQ3DrawContextPropertyGLTextureSharing = Q3_METHOD_TYPE('g', 'l', 't', 's'),
kQ3DrawContextPropertyGLStencilBufferDepth = Q3_METHOD_TYPE('g', 'l', 's', 'd'),
kQ3DrawContextPropertySwapBufferInEndPass = Q3_METHOD_TYPE('s', 'b', 'e', 'p'),
kQ3DrawContextPropertySyncToRefresh = Q3_METHOD_TYPE('g', 'l', 's', 'r'),
kQ3DrawContextPropertySurfaceBehindWindow = Q3_METHOD_TYPE('s', 'u', 'b', 'w'),
kQ3DrawContextPropertyGLContextBuildCount = Q3_METHOD_TYPE('g', 'l', 'b', 'c'),
kQ3DrawContextPropertyAcceleratedOffscreen = Q3_OBJECT_TYPE('g', 'l', 'a', 'o'),
kQ3DrawContextPropertyGLPixelFormat = Q3_OBJECT_TYPE('g', 'l', 'p', 'f'),
kQ3DrawContextPropertyTypeSize32 = 0xFFFFFFFF
};
Property types that may be assigned to a draw context, for instance to
request special rendering behavior. Such requests may be ignored by some
renderers. If a particular property has not been set, it will be treated
as having the default value.
- kQ3DrawContextPropertyClearDepthBufferFlag
- Whether to clear the depth buffer before rendering. Data type: TQ3Boolean. Default: kQ3True
- kQ3DrawContextPropertyClearDepthBufferValue
- Value to fill the depth buffer with if it is cleared. Data type: TQ3Float64 Default: 1.0
- kQ3DrawContextPropertyWritableDepthBuffer
- Whether the depth buffer is initially writable. (See glDepthMask) Data type: TQ3Boolean Default: kQ3True
- kQ3DrawContextPropertyGLDepthFunc
- Initial value for glDepthFunc. Data type: TQ3Uns32 Default: GL_LESS
- kQ3DrawContextPropertyGLTextureSharing
- If true, requests that an OpenGL context should share textures with a previously-created OpenGL context, if possible. Data type: TQ3Boolean. Default: kQ3True
- kQ3DrawContextPropertyGLStencilBufferDepth
- Desired bit depth of OpenGL stencil buffer. Data type: TQ3Uns32. Default: 0 (no stencil buffer)
- kQ3DrawContextPropertySwapBufferInEndPass
- If true, requests that the renderer swap buffers in its EndPass method. Only relevant to double-buffered contexts. Data type: TQ3Boolean. Default: kQ3True.
- kQ3DrawContextPropertySyncToRefresh
- If true, requests that the renderer synchronize drawing with the screen refresh rate. Data type: TQ3Boolean. Default: kQ3False.
- kQ3DrawContextPropertySurfaceBehindWindow
- If true, requests that drawing occur on a surface behind the window. Only applies to Mac window contexts. Data type: TQ3Boolean. Default: kQ3False.
- kQ3DrawContextPropertyGLContextBuildCount
- Unlike most draw context properties, this is set by Quesa itself and read by clients. When used with OpenGL-based renderers, the count is incremented whenever the associated OpenGL context is rebuilt. Data type: TQ3Uns32.
- kQ3DrawContextPropertyAcceleratedOffscreen
- This property, which may only be used with a pixmap draw context, requests that the context use hardware acceleration if possible. Data type: TQ3AcceleratedOffscreenPropertyData.
- kQ3DrawContextPropertyGLPixelFormat
- Request a specific OpenGL pixel format. The data type is platform-specific. Mac Carbon: AGLPixelFormat. Windows: int. Mac Cocoa: NSOpenGLPixelFormat*.
TQ3DirectDrawObjectSelector |
typedef enum {
kQ3DirectDrawObject = 1,
kQ3DirectDrawObject2 = 2,
kQ3DirectDrawObjectSize32 = 0xFFFFFFFF
} TQ3DirectDrawObjectSelector;
Windows DirectDraw interface selectors.
- kQ3DirectDrawObject
- A DIRECTDRAW interface has been supplied.
- kQ3DirectDrawObject2
- A DIRECTDRAW2 interface has been supplied.
TQ3DirectDrawObjectSelector |
typedef enum {
kQ3DirectDrawSurface = 1,
kQ3DirectDrawSurface2 = 2,
kQ3DirectDrawSurfaceSize32 = 0xFFFFFFFF
} TQ3DirectDrawSurfaceSelector;
Windows DirectDraw surface selectors.
- kQ3DirectDrawSurface
- A DIRECTDRAWSURFACE interface has been supplied.
- kQ3DirectDrawSurface2
- A DIRECTDRAWSURFACE2 interface has been supplied.
TQ3DrawContextClearImageMethod |
typedef enum {
kQ3ClearMethodNone = 0,
kQ3ClearMethodWithColor = 1,
kQ3ClearMethodSize32 = 0xFFFFFFFF
} TQ3DrawContextClearImageMethod;
Clear method.
- kQ3ClearMethodNone
- Do not clear the draw context before rendering.
- kQ3ClearMethodWithColor
- Clear the draw context to the clear colour before rendering.
TQ3MacDrawContext2DLibrary |
typedef enum {
kQ3Mac2DLibraryNone = 0,
kQ3Mac2DLibraryQuickDraw = 1,
kQ3Mac2DLibraryQuickDrawGX = 2,
kQ3Mac2DLibrarySize32 = 0xFFFFFFFF
} TQ3MacDrawContext2DLibrary;
Mac draw context variants. These are legacy constants from QD3D, and for Quesa
the library field should be set to kQ3Mac2DLibraryNone.
- kQ3Mac2DLibraryNone
- Unspecified method should be used.
- kQ3Mac2DLibraryQuickDraw
- Renderers should use QuickDraw in the final stage of rendering.
- kQ3Mac2DLibraryQuickDrawGX
- Renderers should use QuickDraw GX in the final stage of rendering.
© 1999-2008 Quesa Developers (Last Updated 5/10/2008)