Low-level OpenGL Wrappers.
- See also
- ImFusionGL
|
| enum class | ShaderTextReplacement { ShaderTextReplacement::ExactMatch = 1 << 0
, ShaderTextReplacement::AllUppercase = 1 << 1
, ShaderTextReplacement::AllLowercase = 1 << 2
} |
| | Bitfield enum describing how to perform text replacement in a shader when using the MultiIncludable interface. More...
|
| enum class | PixelFormat : uint32_t {
PixelFormat::Red = 0x1903
, PixelFormat::RG = 0x8227
, PixelFormat::RGB = 0x1907
, PixelFormat::RGBA = 0x1908
,
PixelFormat::RedInteger = 0x8D94
, PixelFormat::RGInteger = 0x8228
, PixelFormat::RGBInteger = 0x8D98
, PixelFormat::RGBAInteger = 0x8D99
,
PixelFormat::DepthComponent = 0x1902
, PixelFormat::DepthStencil = 0x84F9
, PixelFormat::BGRA = 0x80E1
, PixelFormat::BGRAInteger = 0x8D9B
,
PixelFormat::StencilIndex = 0x1901
} |
| | Describes the host pixel format during OpenGL texture upload/download. More...
|
| enum class | PixelType : uint32_t {
PixelType::Byte = 0x1400
, PixelType::UByte = 0x1401
, PixelType::Short = 0x1402
, PixelType::UShort = 0x1403
,
PixelType::Int = 0x1404
, PixelType::UInt = 0x1405
, PixelType::Float = 0x1406
, PixelType::HFloat = 0x140B
,
PixelType::Double = 0x140A
} |
| | Describes the host pixel type during OpenGL texture upload/download. More...
|
| enum class | Primitive : uint32_t {
Primitive::Points = 0x0000
, Primitive::Lines = 0x0001
, Primitive::LineLoop = 0x0002
, Primitive::LineStrip = 0x0003
,
Primitive::Triangles = 0x0004
, Primitive::TriangleStrip = 0x0005
, Primitive::TriangleFan = 0x0006
, Primitive::LinesAdjacency = 0x000A
,
Primitive::LineStripAdjacency = 0x000B
, Primitive::TrianglesAdjacency = 0x000C
, Primitive::TriangleStripAdjacency = 0x000D
} |
| | Primitive type to render, to be used with GL::VertexBuffer::draw(). More...
|
| enum class | Barrier : uint32_t {
Barrier::VertexAttribArray = 0x00000001
, Barrier::ElementArray = 0x00000002
, Barrier::Uniform = 0x00000004
, Barrier::TextureFetch = 0x00000008
,
Barrier::ShaderImageAccess = 0x00000020
, Barrier::Command = 0x00000040
, Barrier::PixelBuffer = 0x00000080
, Barrier::TextureUpdate = 0x00000100
,
Barrier::BufferUpdate = 0x00000200
, Barrier::Framebuffer = 0x00000400
, Barrier::TransformFeedback = 0x00000800
, Barrier::AtomicCounter = 0x00001000
,
Barrier::ShaderStorage = 0x00002000
, Barrier::ClientMappedBuffer = 0x00004000
, Barrier::QueryBuffer = 0x00008000
, Barrier::All = 0xFFFFFFFF
} |
| | Bitflag enum to describe how you intend to use the data after issuing the memoryBarrier() command. More...
|
| enum class | GraphicsResetStatus { GraphicsResetStatus::NoError = 0
, GraphicsResetStatus::GuiltyContextReset = 0x8253
, GraphicsResetStatus::InnocentContextReset = 0x8254
, GraphicsResetStatus::UnknownContextReset = 0x8255
} |
| | Return value of GL::getGraphicsResetStatus(). More...
|
|
| void | init (std::unique_ptr< Context >=nullptr) |
| | Initializes the OpenGL backend.
|
| void | deinit () |
| | Properly deinitializes all OpenGL resources.
|
|
bool | getBool (uint32_t param) |
| | Convenience wrapper for glGetBoolean_v() that directly returns the result.
|
|
int32_t | getInt (uint32_t param) |
| | Convenience wrapper for glGetInteger_v() that directly returns the result.
|
|
int32_t | getIntIndexed (uint32_t param, uint32_t index) |
| | Convenience wrapper for indexed glGetIntegeri_v() that directly returns the result.
|
|
float | getFloat (uint32_t param) |
| | Convenience wrapper for glGetFloat_v() that directly returns the result.
|
|
std::string | getString (uint32_t param) |
| | Convenience wrapper for glGetString() that directly returns the result.
|
| GraphicsResetStatus | getGraphicsResetStatus () |
| | Checks if the current context has been lost due to software or hardware issues.
|
|
void | clearColorBuffer (const vec4f &color) |
| | Clears all color buffers attached to the current framebuffer by calling glClearColor(color) and glClear(GL_COLOR_BUFFER_BIT);.
|
|
void | clearDepthBuffer (double value) |
| | Clears the depth buffer attached to the current framebuffer by calling glClearDepth(value) and glClear(GL_DEPTH_BUFFER_BIT);.
|
| void | memoryBarrier (Flags< Barrier > barriers) |
| | Inserts a barrier into the OpenGL command stream to order memory transactions.
|
|
void | flush () |
| | Calls glFlush() to block until all OpenGL commands have been transferred to the GPU.
|
|
void | finish () |
| | Calls glFinish() to block until all OpenGL execution is complete.
|
|
mat4 | createOrtho (double left, double right, double bottom, double top, double pnear, double pfar) |
| | Generates an orthographic projection matrix, the same as glOrtho() would do.
|
| mat4 | createOrtho2d (int width, int height) |
| | Generates a pixel-perfect 2D orthographic projection matrix for the given viewport size.
|
|
mat4 | createPerspective (double fov, double aspect, double pnear, double pfar) |
| | Generates an perspective projection matrix, the same as glPerspective() would do.
|
|
PlatformInfo | platformInfo () |
| | Returns information about the currently active OpenGL platform.
|
| MemoryInfo | memoryInfo () |
| | Returns information about the currently available and total GPU memory.
|
| Utils::Version | versionInfo () |
| | Returns the available OpenGL version of the current context.
|
| void | setDpiScale (double dpiScale) |
| | Sets the global DPI scaling factor that should be used by DPI-sensitive OpenGL renderings.
|
| double | dpiScale () |
| | Queries the global DPI scaling factor that should be used by DPI-sensitive OpenGL renderings.
|
|
Framebuffer::Attachment | operator+ (Framebuffer::Attachment lhs, int rhs) |
|
bool | operator== (InternalFormat lhs, InternalFormat rhs) |
|
bool | operator!= (InternalFormat lhs, InternalFormat rhs) |
|
std::ostream & | operator<< (std::ostream &os, const PixelFormat &format) |
|
std::ostream & | operator<< (std::ostream &os, const PixelType &type) |