![]() |
LLGL 0.05 Beta
|
Namespaces | |
| namespace | Direct3D11 |
| namespace | Direct3D12 |
| namespace | Metal |
| namespace | OpenGL |
| namespace | OpenXR |
| namespace | Vulkan |
| namespace | Memory |
| namespace | Log |
| namespace | Timer |
| namespace | Version |
Classes | |
| class | Blob |
| CPU read-only buffer of arbitrary size. More... | |
| class | Buffer |
| Hardware buffer interface. More... | |
| class | BufferArray |
| Hardware buffer container interface. More... | |
| struct | BufferDescriptor |
| Hardware buffer descriptor structure. More... | |
| struct | BufferViewDescriptor |
| Buffer view descriptor structure. More... | |
| struct | VertexBufferView |
| Vertex buffer view structure for buffer array initialization. More... | |
| class | Canvas |
| Canvas interface for mobile platforms. More... | |
| struct | CanvasFlags |
| Canvas creation flags. More... | |
| struct | CanvasDescriptor |
| Canvas descriptor structure. More... | |
| class | CommandBuffer |
| Command buffer interface used for storing and encoding GPU commands. More... | |
| struct | CommandBufferFlags |
| Command buffer creation flags. More... | |
| struct | ClearFlags |
| Command buffer clear flags. More... | |
| struct | ClearValue |
| Clear value structure for color, depth, and stencil clear operations. More... | |
| struct | AttachmentClear |
| Attachment clear command structure. More... | |
| struct | CommandBufferDescriptor |
| Command buffer descriptor structure. More... | |
| class | CommandBufferTier1 |
| Extended tier-1 command buffer interface. More... | |
| class | CommandQueue |
| Command queue interface. More... | |
| class | AlignedArray |
Alternative to std::aligned_storage but with support for zero length array. More... | |
| class | AlignedArray< T, 0u > |
| Template specialization for an empty array. More... | |
| class | ArrayView |
| Constant array view container template. Keeps pointer to array and length. More... | |
| class | DynamicArray |
| Generic container class for dynamic arrays that usually do not change in size. More... | |
| struct | GrowStrategyAddHalf |
| Container capacity grow strategy to increase the capacity to 150%. More... | |
| struct | GrowStrategyDouble |
| Container capacity grow strategy to increase the capacity to 200%. More... | |
| struct | GrowStrategyRoundUpPow2 |
| Container capacity grow strategy to increase the capacity to the next higher power of two. More... | |
| class | SmallVector |
| Generic container class for consecutive arrays optimized for small sizes. More... | |
| class | BasicStringLiteral |
| Constant string container template to either reference a compile-time string literal (lightweight) or own a dynamic string (non-mutable). More... | |
| class | BasicStringView |
| Constant string view container template. Keeps pointer to string and its length. More... | |
| class | UTF8String |
| Container class for UTF-8 encoded strings. More... | |
| class | Display |
| Display interface to query the attributes of all connected displays/monitors. More... | |
| struct | DisplayMode |
| Display mode structure. More... | |
| class | Fence |
| Fence interface for CPU/GPU synchronization. More... | |
| struct | FormatFlags |
| Format attribute flags enumeration. More... | |
| struct | FormatAttributes |
| Vertex and texture format attributes structure. More... | |
| struct | FragmentAttribute |
| Fragment output attribute structure. More... | |
| struct | MutableImageView |
| Mutable image view structure used as destination when reading the image data from a hardware texture. More... | |
| struct | ImageView |
| Image view structure used as source when writing the image data to a hardware texture. More... | |
| class | IncludeHandler |
| File include handler interface. More... | |
| struct | DrawIndirectArguments |
| Structure for the arguments of an indirect draw command. More... | |
| struct | DrawIndexedIndirectArguments |
| Structure for the arguments of an indirect indexed draw command. More... | |
| struct | DrawPatchIndirectArguments |
| Structure for the arguments of an indirect draw/indexed-draw command for tessellation on Metal renderer. More... | |
| struct | DispatchIndirectArguments |
| Structure for the arguments of an indirect compute command. More... | |
| struct | DrawMeshIndirectArguments |
| Structure for the arguments of an indirect mesh draw command. More... | |
| class | Interface |
| Base class for all interfaces in LLGL. More... | |
| struct | InterfaceID |
| Enumeration of all interfaces in LLGL. More... | |
| class | NonCopyable |
| Base class for all classes with virtual function tables in LLGL. More... | |
| class | PipelineCache |
| Pipeline state cache interface. More... | |
| class | PipelineLayout |
| Pipeline layout interface. More... | |
| struct | BarrierFlags |
| Flags for memory barriers in pipeline layouts. More... | |
| struct | BindingSlot |
| Resource binding slot structure. More... | |
| struct | BindingDescriptor |
| Layout structure for a single binding point of the pipeline layout descriptor. More... | |
| struct | StaticSamplerDescriptor |
| Static sampler state pipeline layout descriptor. More... | |
| struct | UniformDescriptor |
| Shader uniform pipeline layout descriptor. More... | |
| struct | CombinedTextureSamplerDescriptor |
| Descriptor structure for a combined texture-sampler. More... | |
| struct | PipelineLayoutDescriptor |
| Pipeline layout descriptor structure. More... | |
| class | PipelineState |
| Graphics and compute pipeline state interface. More... | |
| struct | ColorMaskFlags |
| Blend target color mask flags. More... | |
| struct | Viewport |
| Viewport dimensions. More... | |
| struct | Scissor |
| Scissor dimensions. More... | |
| struct | DepthDescriptor |
| Depth state descriptor structure. More... | |
| struct | StencilFaceDescriptor |
| Stencil face descriptor structure. More... | |
| struct | StencilDescriptor |
| Stencil state descriptor structure. More... | |
| struct | DepthBiasDescriptor |
| Depth bias descriptor structure to control fragment depth values. More... | |
| struct | RasterizerDescriptor |
| Rasterizer state descriptor structure. More... | |
| struct | BlendTargetDescriptor |
| Blend target state descriptor structure. More... | |
| struct | BlendDescriptor |
| Blending state descriptor structure. More... | |
| struct | TessellationDescriptor |
| Tessellation descriptor structure for the graphics pipeline. More... | |
| struct | GraphicsPipelineDescriptor |
| Graphics pipeline state descriptor structure. More... | |
| struct | ComputePipelineDescriptor |
| Compute pipeline state descriptor structure. More... | |
| struct | MeshPipelineDescriptor |
| Mesh pipeline state descriptor structure. More... | |
| struct | NativeHandle |
| Android native handle structure. More... | |
| class | QueryHeap |
| Query heap interface that holds a certain number of queries that are all of the same type. More... | |
| struct | QueryPipelineStatistics |
| Query data structure for pipeline statistics. More... | |
| struct | QueryHeapDescriptor |
| Query heap descriptor structure. More... | |
| struct | ApplicationDescriptor |
| Application descriptor structure. More... | |
| struct | RendererConfigurationVulkan |
| Structure for a Vulkan renderer specific configuration. More... | |
| struct | RendererConfigurationOpenGL |
| OpenGL/OpenGLES profile descriptor structure. More... | |
| class | RenderingDebugger |
| Rendering debugger interface. More... | |
| struct | ProfileTimeRecord |
| Structure with annotation and elapsed time for a timer profile. More... | |
| struct | ProfileCommandQueueRecord |
| struct | ProfileCommandBufferRecord |
| struct | FrameProfile |
| Profile of a rendered frame. More... | |
| class | RenderPass |
| Render pass interface. More... | |
| struct | AttachmentFormatDescriptor |
| Render pass attachment descriptor structure. More... | |
| struct | RenderPassDescriptor |
| Render pass descriptor structure. More... | |
| class | RenderSystemDeleter |
| Delegate to delete an instance of the RenderSystem interface. More... | |
| class | RenderSystem |
| Render system interface. More... | |
| class | RenderSystemChild |
| Base class for all interfaces whose instances are owned by the RenderSystem. More... | |
| struct | RenderSystemFlags |
| Render system flags enumeration. More... | |
| struct | RendererID |
| Renderer identification number enumeration. More... | |
| struct | RendererInfo |
| Renderer basic information structure. More... | |
| struct | RenderSystemDescriptor |
| Render system descriptor structure. More... | |
| struct | RenderingFeatures |
| Contains the attributes for all supported rendering features. More... | |
| struct | RenderingLimits |
| Contains all rendering limitations such as maximum buffer size, maximum texture resolution etc. More... | |
| struct | RenderingCapabilities |
| Structure with all attributes describing the rendering capabilities of the render system. More... | |
| class | RenderTarget |
| Render target interface. More... | |
| struct | AttachmentDescriptor |
| Render target attachment descriptor structure. More... | |
| struct | RenderTargetDescriptor |
| Render target descriptor structure. More... | |
| class | Report |
| Error and warning report class. More... | |
| class | Resource |
| Base class for all hardware resource interfaces. More... | |
| struct | BindFlags |
| Flags for Buffer and Texture resources that describe for which purposes they will be used. More... | |
| struct | CPUAccessFlags |
| CPU read/write access flag enumeration for mapping GPU into CPU memory space. More... | |
| struct | MiscFlags |
| Miscellaneous resource flags. More... | |
| class | ResourceHeap |
| Resource heap interface. More... | |
| struct | ResourceViewDescriptor |
| Resource view descriptor structure. More... | |
| struct | ResourceHeapDescriptor |
| Resource heap descriptor structure. More... | |
| class | Sampler |
| Sampler interface. More... | |
| struct | SamplerDescriptor |
| Texture sampler descriptor structure. More... | |
| class | Shader |
| Shader interface. More... | |
| struct | ShaderCompileFlags |
| Shader compilation flags enumeration. More... | |
| struct | StageFlags |
| Shader stage flags enumeration. More... | |
| struct | ShaderMacro |
| Shader macro structure with name and optional body definition. More... | |
| struct | VertexShaderAttributes |
| Vertex (or geometry or tessellation-evaluation) shader specific structure. More... | |
| struct | FragmentShaderAttributes |
| Fragment shader specific descriptor structure. More... | |
| struct | ComputeShaderAttributes |
| Compute shader specific descriptor structure. More... | |
| struct | ShaderDescriptor |
| Shader source and binary code descriptor structure. More... | |
| struct | ShaderResourceReflection |
| Shader reflection resource structure. More... | |
| struct | ShaderReflection |
| Shader reflection structure. More... | |
| class | Surface |
| The Surface interface is the base interface for Window (on Desktop platforms) and Canvas (on mobile platforms). More... | |
| class | SwapChain |
| Swap-chain interface. More... | |
| struct | ResizeBuffersFlags |
| Swap-chain resize buffers flags. More... | |
| struct | SwapChainDescriptor |
| Swap chain descriptor structure. More... | |
| struct | UninitializeTag |
| Common uninitialize tag. More... | |
| struct | CopyTag |
| Common copy tag. More... | |
| class | Texture |
| Texture interface. More... | |
| struct | TextureSwizzleRGBA |
| Texture component swizzle structure for red, green, blue, and alpha components. More... | |
| struct | TextureSubresource |
| Texture subresource descriptor which specifies the array layer and MIP-map level range of a texture resource. More... | |
| struct | TextureLocation |
| Texture location structure: MIP-map level and offset. More... | |
| struct | TextureRegion |
| Texture region structure: Subresource (MIP-map level and array layer range), offset, and extent. More... | |
| struct | TextureDescriptor |
| Texture descriptor structure. More... | |
| struct | TextureViewDescriptor |
| Texture view descriptor structure. More... | |
| struct | SubresourceFootprint |
| Memory footprint structure for texture subresources. More... | |
| struct | Extent2D |
| 2-Dimensional extent structure. More... | |
| struct | Extent3D |
| 3-Dimensional extent structure. More... | |
| struct | Offset2D |
| 2-Dimensional offset structure. More... | |
| struct | Offset3D |
| 3-Dimensional offset structure. More... | |
| class | Color |
| Base color class with N components. More... | |
| class | Color< T, 3u > |
| RGB color class with components: r, g, and b. More... | |
| class | Color< T, 4u > |
| RGBA color class with components: r, g, b, and a. More... | |
| class | Image |
| Utility class to manage the storage and attributes of an image. More... | |
| class | Input |
| Default window event listener to receive user input. More... | |
| class | ParseContext |
| Context class for descriptor parsing. More... | |
| struct | VertexFormat |
| Utility structure to store vertex attributes. More... | |
| struct | VersionInfo |
| General purpose version information structure. More... | |
| struct | VertexAttribute |
| Vertex input/output attribute structure. More... | |
| class | Window |
| Window interface for desktop platforms. More... | |
| struct | WindowFlags |
| Window creation flags. More... | |
| struct | WindowDescriptor |
| Window descriptor structure. More... | |
| struct | XRConfigurationOpenXR |
| Configuration structure for OpenXR-specific settings. More... | |
| struct | XRFrameState |
| Per-frame state returned by XRSession::BeginFrame. More... | |
| class | XRSession |
| XR session interface. More... | |
| class | XRSwapChain |
| XR swap-chain interface. More... | |
| class | XRSystem |
| XR system interface. More... | |
| struct | XRSystemFlags |
| XR system flags enumeration. More... | |
| struct | XRSystemDescriptor |
| XR system descriptor structure. More... | |
| struct | XRSessionDescriptor |
| XR session descriptor structure. More... | |
| struct | XRViewConfigurationView |
| Per-view configuration entry returned by XRSystem::GetViewConfigurations. More... | |
| struct | XRSwapChainDescriptor |
| XR swap-chain descriptor structure. More... | |
| struct | XRViewPose |
| Pose and projection parameters for a single XR view sampled at frame begin. More... | |
Typedefs | |
| using | DynamicByteArray = DynamicArray<char> |
| Common type for dynamic byte arrays. | |
| template<typename T, typename Allocator = std::allocator<T>, typename GrowStrategy = GrowStrategyAddHalf> | |
| using | DynamicVector = SmallVector<T, 0, Allocator, GrowStrategy> |
Template alias to a SmallVector with zero local capacity. This is intended as alternative to std::vector in the public interface. | |
| using | StringLiteral = BasicStringLiteral<char> |
| ANSI character string literal (char). | |
| using | WStringLiteral = BasicStringLiteral<wchar_t> |
| Wide character string literal (wchar_t). | |
| using | StringView = BasicStringView<char> |
| ANSI character string view (char). | |
| using | WStringView = BasicStringView<wchar_t> |
| Wide character string view (wchar_t). | |
| using | RenderSystemPtr = std::unique_ptr<RenderSystem, RenderSystemDeleter> |
| Unique pointer type for the RenderSystem interface with a custom deleter. | |
| using | ValidateRenderingCapsFunc = std::function<bool(const std::string& info, const std::string& attrib)> |
| Callback interface for the ValidateRenderingCaps function. | |
| template<typename T> | |
| using | ColorRGB = Color<T, 3> |
| using | ColorRGBb = ColorRGB<bool> |
| using | ColorRGBf = ColorRGB<float> |
| using | ColorRGBd = ColorRGB<double> |
| using | ColorRGBub = ColorRGB<std::uint8_t> |
| template<typename T> | |
| using | ColorRGBA = Color<T, 4> |
| using | ColorRGBAb = ColorRGBA<bool> |
| using | ColorRGBAf = ColorRGBA<float> |
| using | ColorRGBAd = ColorRGBA<double> |
| using | ColorRGBAub = ColorRGBA<std::uint8_t> |
| using | XRSystemPtr = std::unique_ptr<XRSystem> |
| Unique pointer type for the XRSystem interface. | |
Functions | |
| LLGL_EXPORT bool | IsTypedBuffer (const BufferDescriptor &desc) |
Returns true if the buffer descriptor denotes a typed buffer, i.e. Buffer or RWBuffer in HLSL. | |
| LLGL_EXPORT bool | IsStructuredBuffer (const BufferDescriptor &desc) |
Returns true if the buffer descriptor denotes a structured buffer, i.e. StructuredBuffer, RWStructuredBuffer, AppendStructuredBuffer, or ConsumeStructuredBuffer in HLSL. | |
| LLGL_EXPORT bool | IsByteAddressBuffer (const BufferDescriptor &desc) |
Returns true if the buffer descriptor denotes a byte address buffer, i.e. ByteAddressBuffer or RWByteAddressBuffer in HLSL. | |
| LLGL_EXPORT Extent2D | GetShadingRateSize (ShadingRate shadingRate) |
| Returns the dimensions of the specified shading rate. | |
| UTF8String | operator+ (const UTF8String &lhs, const UTF8String &rhs) |
| Concatenates the two UTF-8 string. | |
| template<typename TChar, typename Traits> | |
| UTF8String | operator+ (const UTF8String &lhs, const BasicStringView< TChar, Traits > &rhs) |
| template<typename TChar> | |
| UTF8String | operator+ (const UTF8String &lhs, const TChar *rhs) |
| template<typename TChar, typename Traits> | |
| UTF8String | operator+ (const BasicStringView< TChar, Traits > &lhs, const UTF8String &rhs) |
| template<typename TChar> | |
| UTF8String | operator+ (const TChar *lhs, const UTF8String &rhs) |
| LLGL_DEFINE_STRING_COMPARE_OPERATORS (==,==) | |
| LLGL_DEFINE_STRING_COMPARE_OPERATORS (!=, !=) | |
| LLGL_DEFINE_STRING_COMPARE_OPERATORS (<, >) | |
| LLGL_DEFINE_STRING_COMPARE_OPERATORS (<=, >=) | |
| LLGL_DEFINE_STRING_COMPARE_OPERATORS (>=,<=) | |
| LLGL_EXPORT bool | operator== (const DisplayMode &lhs, const DisplayMode &rhs) |
| Compares the two specified display mode descriptors on equality. | |
| LLGL_EXPORT bool | operator!= (const DisplayMode &lhs, const DisplayMode &rhs) |
| Compares the two specified display mode descriptors on inequality. | |
| LLGL_EXPORT bool | CompareSWO (const DisplayMode &lhs, const DisplayMode &rhs) |
| Compares the two display modes in a strict-weak-order (SWO) fashion. | |
| LLGL_EXPORT Extent2D | GetExtentRatio (const Extent2D &extent) |
| Returns the ratio of the specified extent as another extent, i.e. all attributes are divided by their greatest common divisor. | |
| LLGL_EXPORT const FormatAttributes & | GetFormatAttribs (const Format format) |
| Returns the attributes for the specified hardware format or a zero-initialized structure in case of an invalid argument. | |
| LLGL_EXPORT std::uint32_t | ImageFormatSize (const ImageFormat imageFormat) |
| Returns the size (in number of components) of the specified image format. | |
| LLGL_EXPORT std::size_t | GetMemoryFootprint (const Format format, std::size_t numTexels) |
| Returns the memory footprint (in bytes) of a texture or buffer with the specified hardware format and number of elements. | |
| LLGL_EXPORT std::size_t | GetMemoryFootprint (const ImageFormat imageFormat, const DataType dataType, std::size_t numTexels) |
| Returns the memory footprint (in bytes) of an image with the specified format, data type, and number of elements. | |
| LLGL_EXPORT bool | IsCompressedFormat (const Format format) |
| Returns true if the specified hardware format is a compressed format, e.g. Format::BC1UNorm, Format::BC2UNorm_sRGB, Format::BC4SNorm, etc. | |
| LLGL_EXPORT bool | IsDepthOrStencilFormat (const Format format) |
| Returns true if the specified hardware format is a depth or depth-stencil format, i.e. Format::D16UNorm, Format::D24UNormS8UInt, Format::D32Float, or Format::D32FloatS8X24UInt. | |
| LLGL_EXPORT bool | IsDepthAndStencilFormat (const Format format) |
| Returns true if the specified hardware format is a depth and stencil format, i.e. Format::D24UNormS8UInt or Format::D32FloatS8X24UInt. | |
| LLGL_EXPORT bool | IsDepthOrStencilFormat (const ImageFormat imageFormat) |
| Returns true if the specified color format is a depth-stencil format, i.e. either ImageFormat::Depth or ImageFormat::DepthStencil. | |
| LLGL_EXPORT bool | IsDepthFormat (const Format format) |
| Returns true if the specified hardware format is a depth format, i.e. Format::D16UNorm, Format::D24UNormS8UInt, Format::D32Float, or Format::D32FloatS8X24UInt. | |
| LLGL_EXPORT bool | IsStencilFormat (const Format format) |
| Returns true if the specified hardware format is a stencil format, i.e. Format::D24UNormS8UInt or Format::D32FloatS8X24UInt. | |
| LLGL_EXPORT bool | IsColorFormat (const Format format) |
| Returns true if the specified hardware format is a color format. | |
| LLGL_EXPORT bool | IsNormalizedFormat (const Format format) |
| Returns true if the specified hardware format is a normalized format (like Format::RGBA8UNorm, Format::R8SNorm etc.). | |
| LLGL_EXPORT bool | IsIntegerFormat (const Format format) |
| Returns true if the specified hardware format is a strict integer format (like Format::RGBA8UInt, Format::R8SInt etc.). | |
| LLGL_EXPORT bool | IsFloatFormat (const Format format) |
| Returns true if the specified hardware format is a strict floating-point format (like Format::RGBA32Float, Format::R32Float etc.). | |
| LLGL_EXPORT std::uint32_t | DataTypeSize (const DataType dataType) |
| Returns the size (in bytes) of the specified data type. | |
| LLGL_EXPORT bool | IsSIntDataType (const DataType dataType) |
| Determines if the argument refers to a signed integer data type. | |
| LLGL_EXPORT bool | IsUIntDataType (const DataType dataType) |
| Determines if the argument refers to an unsigned integer data type. | |
| LLGL_EXPORT bool | IsFloatDataType (const DataType dataType) |
| Determines if the argument refers to a floating-pointer data type. | |
| LLGL_EXPORT std::size_t | ConvertImageBuffer (const ImageView &srcImageView, const MutableImageView &dstImageView, const Extent3D &extent, unsigned threadCount=0, bool copyUnchangedImage=false, std::uint32_t depthMask=~0u, std::uint32_t stencilMask=~0u) |
| Converts the image format and data type of the source image (only uncompressed color formats). | |
| LLGL_EXPORT std::size_t | ConvertImageBuffer (const ImageView &srcImageView, const MutableImageView &dstImageView, unsigned threadCount=0, bool copyUnchangedImage=false) |
| Converts the image format and data type of the source image (only uncompressed color formats). | |
| LLGL_EXPORT DynamicByteArray | ConvertImageBuffer (const ImageView &srcImageView, ImageFormat dstFormat, DataType dstDataType, const Extent3D &extent, unsigned threadCount=0) |
| Converts the image format and data type of the source image (only uncompressed color formats) and returns the new generated image buffer. | |
| LLGL_EXPORT DynamicByteArray | ConvertImageBuffer (const ImageView &srcImageView, ImageFormat dstFormat, DataType dstDataType, unsigned threadCount=0) |
| Converts the image format and data type of the source image (only uncompressed color formats) and returns the new generated image buffer. | |
| LLGL_EXPORT DynamicByteArray | DecompressImageBufferToRGBA8UNorm (Format compressedFormat, const ImageView &srcImageView, const Extent2D &extent, unsigned threadCount=0) |
| Decompresses the specified image buffer to RGBA format with 8-bit unsigned normalized integers. | |
| LLGL_EXPORT void | CopyImageBufferRegion (const MutableImageView &dstImageView, const Offset3D &dstOffset, std::uint32_t dstRowStride, std::uint32_t dstLayerStride, const ImageView &srcImageView, const Offset3D &srcOffset, std::uint32_t srcRowStride, std::uint32_t srcLayerStride, const Extent3D &extent) |
| Copies an image buffer region from the source buffer to the destination buffer. | |
| LLGL_EXPORT DynamicByteArray | GenerateImageBuffer (ImageFormat format, DataType dataType, std::size_t imageSize, const float fillColor[4]) |
| Generates an image buffer with the specified fill data for each pixel. | |
| bool | operator== (const BindingSlot &lhs, const BindingSlot &rhs) |
Returns true if the specified binding slots are equal, i.e. index and set are equal. | |
| bool | operator!= (const BindingSlot &lhs, const BindingSlot &rhs) |
Returns true if the specified binding slots are not equal, i.e. index and set are not equal. | |
| LLGL_EXPORT bool | IsPrimitiveTopologyPatches (const PrimitiveTopology primitiveTopology) |
| Returns true if the specified primitive topology is a patch list. | |
| LLGL_EXPORT bool | IsPrimitiveTopologyStrip (const PrimitiveTopology primitiveTopology) |
| Returns true if the specified primitive topology is a strip that generates a new primitive with each new vertex. | |
| LLGL_EXPORT std::uint32_t | GetPrimitiveTopologyPatchSize (const PrimitiveTopology primitiveTopology) |
| Returns the number of patch control points of the specified primitive topology (in range [1, 32]), or 0 if the topology is not a patch list. | |
| LLGL_EXPORT bool | ValidateRenderingCaps (const RenderingCapabilities &presentCaps, const RenderingCapabilities &requiredCaps, const ValidateRenderingCapsFunc &callback={}) |
| Validates the presence of the specified required rendering capabilities. | |
| LLGL_EXPORT bool | IsShaderSourceCode (const ShaderSourceType type) |
| Returns true if the specified shader source type is either ShaderSourceType::CodeString or ShaderSourceType::CodeFile. | |
| LLGL_EXPORT bool | IsShaderSourceBinary (const ShaderSourceType type) |
| Returns true if the specified shader source type is either ShaderSourceType::BinaryBuffer or ShaderSourceType::BinaryFile. | |
| LLGL_EXPORT long | GetStageFlags (const ShaderType type) |
| Returns the StageFlags bitmask for the specified shader type. | |
| LLGL_EXPORT std::uint32_t | NumMipLevels (std::uint32_t width, std::uint32_t height=1, std::uint32_t depth=1) |
| Returns the number of MIP-map levels for a texture with the specified size. | |
| LLGL_EXPORT std::uint32_t | NumMipLevels (const TextureType type, const Extent3D &extent) |
| Returns the number of MIP-map levels for the specified texture attributes. | |
| LLGL_EXPORT std::uint32_t | NumMipLevels (const TextureDescriptor &textureDesc) |
| Returns the number of MIP-map levels for the specified texture descriptor. | |
| LLGL_EXPORT std::uint32_t | NumMipTexels (const TextureType type, const Extent3D &extent, std::uint32_t mipLevel) |
Returns the number of texture elements (texels) for the specified texture attributes, or zero extent if mipLevel is out of bounds (see NumMipLevels). | |
| LLGL_EXPORT std::uint32_t | NumMipTexels (const TextureType type, const Extent3D &extent, const TextureSubresource &subresource) |
| Returns the number of texture elements (texels) for the specified texture subresource range. | |
| LLGL_EXPORT std::uint32_t | NumMipTexels (const TextureDescriptor &textureDesc, std::uint32_t mipLevel=~0u) |
| Returns the number of texture elements (texels) for the specified texture descriptor. | |
| LLGL_EXPORT std::uint32_t | NumMipDimensions (const TextureType type) |
| Returns the number of MIP-map dimensions for the specified texture type. This is either 1, 2, 3, or 0 if the input is invalid. | |
| LLGL_EXPORT std::uint32_t | NumTextureDimensions (const TextureType type) |
| Returns the number of texture dimensions for the specified texture type. This is either 1, 2, 3, or 0 if the input is invalid. | |
| LLGL_EXPORT Extent3D | GetMipExtent (const TextureType type, const Extent3D &extent, std::uint32_t mipLevel) |
Returns the MIP-map extent (including array layers) for the specified texture type, or an empty extent if mipLevel is out of bounds (see NumMipLevels). | |
| LLGL_EXPORT Extent3D | GetMipExtent (const TextureDescriptor &textureDesc, std::uint32_t mipLevel=0) |
| Returns the MIP-map extent (including array layers) for the specified texture descriptor. | |
| LLGL_EXPORT std::size_t | GetMemoryFootprint (const TextureType type, const Format format, const Extent3D &extent, const TextureSubresource &subresource) |
| Returns the memory footprint (in bytes) of a texture subresource with the specified hardware format and extent. | |
| LLGL_EXPORT bool | IsMipMappedTexture (const TextureDescriptor &textureDesc) |
| Returns true if the specified texture descriptor describes a texture with MIP-mapping enabled. | |
| LLGL_EXPORT bool | IsArrayTexture (const TextureType type) |
| Returns true if the specified texture type is an array texture. | |
| LLGL_EXPORT bool | IsMultiSampleTexture (const TextureType type) |
| Returns true if the specified texture type is a multi-sample texture. | |
| LLGL_EXPORT bool | IsCubeTexture (const TextureType type) |
| Returns true if the specified texture type is a cube texture. | |
| LLGL_EXPORT bool | IsTextureSwizzleIdentity (const TextureSwizzleRGBA &swizzle) |
| Returns true if the specified texture swizzling is equal to the identity mapping. | |
| LLGL_EXPORT void | Trap (Exception exception, const char *origin, const char *format,...) |
| Primary function to trap execution from an unrecoverable state. | |
| template<typename T> | |
| bool | IsInstanceOf (const Interface *obj) |
Returns whether the specified object is an instance of the interface specified by template parameter T. | |
| template<typename T> | |
| bool | IsInstanceOf (const Interface &obj) |
| Const-reference version of IsInstanceOf. | |
| template<typename T> | |
| const T * | CastTo (const Interface *obj) |
Returns a constant pointer to this instance of type const T* if it implements the specified interface. | |
| template<typename T> | |
| T * | CastTo (Interface *obj) |
Returns a pointer to this instance of type T* if it implements the specified interface. | |
| template<typename T> | |
| const T & | CastTo (const Interface &obj) |
Returns a constant reference to this instance of type const T& if it implements the specified interface. | |
| template<typename T> | |
| T & | CastTo (Interface &obj) |
Returns a reference to this instance of type T& if it implements the specified interface. | |
| LLGL_EXPORT Extent2D | operator+ (const Extent2D &lhs, const Extent2D &rhs) |
| Returns the sum of left hand side extent 'lhs' and the right hand side extent 'rhs'. | |
| LLGL_EXPORT Extent2D | operator- (const Extent2D &lhs, const Extent2D &rhs) |
| Returns the subtraction of left hand side extent 'lhs' and the right hand side extent 'rhs'. | |
| LLGL_EXPORT Extent3D | operator+ (const Extent3D &lhs, const Extent3D &rhs) |
| Returns the sum of left hand side extent 'lhs' and the right hand side extent 'rhs'. | |
| LLGL_EXPORT Extent3D | operator- (const Extent3D &lhs, const Extent3D &rhs) |
| Returns the subtraction of left hand side extent 'lhs' and the right hand side extent 'rhs'. | |
| LLGL_EXPORT Offset2D | operator+ (const Offset2D &lhs, const Offset2D &rhs) |
| Returns the sum of left hand side offset 'lhs' and the right hand side offset 'rhs'. | |
| LLGL_EXPORT Offset2D | operator- (const Offset2D &lhs, const Offset2D &rhs) |
| Returns the subtraction of left hand side offset 'lhs' and the right hand side offset 'rhs'. | |
| LLGL_EXPORT Offset3D | operator+ (const Offset3D &lhs, const Offset3D &rhs) |
| Returns the sum of left hand side offset 'lhs' and the right hand side offset 'rhs'. | |
| LLGL_EXPORT Offset3D | operator- (const Offset3D &lhs, const Offset3D &rhs) |
| Returns the subtraction of left hand side offset 'lhs' and the right hand side offset 'rhs'. | |
| bool | operator== (const Offset2D &lhs, const Offset2D &rhs) |
| Returns true if the left hand side offset 'lhs' is equal to the right hand side offset 'rhs'. | |
| bool | operator!= (const Offset2D &lhs, const Offset2D &rhs) |
| Returns true if the left hand side offset 'lhs' is unequal to the right hand side offset 'rhs'. | |
| bool | operator== (const Offset3D &lhs, const Offset3D &rhs) |
| Returns true if the left hand side offset 'lhs' is equal to the right hand side offset 'rhs'. | |
| bool | operator!= (const Offset3D &lhs, const Offset3D &rhs) |
| Returns true if the left hand side offset 'lhs' is unequal to the right hand side offset 'rhs'. | |
| bool | operator== (const Extent2D &lhs, const Extent2D &rhs) |
| Returns true if the left hand side extent 'lhs' is equal to the right hand side extent 'rhs'. | |
| bool | operator!= (const Extent2D &lhs, const Extent2D &rhs) |
| Returns true if the left hand side extent 'lhs' is unequal to the right hand side extent 'rhs'. | |
| bool | operator== (const Extent3D &lhs, const Extent3D &rhs) |
| Returns true if the left hand side extent 'lhs' is equal to the right hand side extent 'rhs'. | |
| bool | operator!= (const Extent3D &lhs, const Extent3D &rhs) |
| Returns true if the left hand side extent 'lhs' is unequal to the right hand side extent 'rhs'. | |
| template<typename T> | |
| T | MaxColorValue () |
| Returns the maximal color value for the data type T. By default 1. | |
| template<> | |
| std::uint8_t | MaxColorValue< std::uint8_t > () |
| Specialized version. For unsigned 8-bit integers, the return value is 255. | |
| template<> | |
| bool | MaxColorValue< bool > () |
| Specialized version. For booleans, the return value is true. | |
| template<typename Dst, typename Src> | |
| Dst | CastColorValue (const Src &value) |
| Casts the specified color value and transforms it from the source data type range to the destination data type range. | |
| template<> | |
| bool | CastColorValue< bool, bool > (const bool &value) |
| Specialized template which merely passes the input value as output. | |
| template<> | |
| float | CastColorValue< float, float > (const float &value) |
| Specialized template which merely passes the input value as output. | |
| template<> | |
| double | CastColorValue< double, double > (const double &value) |
| Specialized template which merely passes the input value as output. | |
| template<> | |
| std::uint8_t | CastColorValue< std::uint8_t, std::uint8_t > (const std::uint8_t &value) |
| Specialized template which merely passes the input value as output. | |
| template<typename T, std::size_t N> | |
| Color< T, N > | operator+ (const Color< T, N > &lhs, const Color< T, N > &rhs) |
| template<typename T, std::size_t N> | |
| Color< T, N > | operator- (const Color< T, N > &lhs, const Color< T, N > &rhs) |
| template<typename T, std::size_t N> | |
| Color< T, N > | operator* (const Color< T, N > &lhs, const Color< T, N > &rhs) |
| template<typename T, std::size_t N> | |
| Color< T, N > | operator/ (const Color< T, N > &lhs, const Color< T, N > &rhs) |
| template<typename T, std::size_t N> | |
| Color< T, N > | operator* (const Color< T, N > &lhs, const T &rhs) |
| template<typename T, std::size_t N> | |
| Color< T, N > | operator* (const T &lhs, const Color< T, N > &rhs) |
| template<typename T, std::size_t N> | |
| Color< T, N > | operator/ (const Color< T, N > &lhs, const T &rhs) |
| template<typename T, std::size_t N> | |
| Color< T, N > | operator/ (const T &lhs, const Color< T, N > &rhs) |
| template<typename T, std::size_t N> | |
| bool | operator== (const Color< T, N > &lhs, const Color< T, N > &rhs) |
| Returns true if all components of both colors 'lhs' and 'rhs' are equal. | |
| template<typename T, std::size_t N> | |
| bool | operator!= (const Color< T, N > &lhs, const Color< T, N > &rhs) |
| Returns true if any component of both colors 'lhs' and 'rhs' are unequal. | |
| LLGL_EXPORT ParseContext | Parse (const char *format,...) |
| Returns a parse context for the input source code. | |
| LLGL_EXPORT ParseContext | Parse (const StringView &s) |
| Returns a parse context for the input source code. | |
| LLGL_EXPORT const char * | ToString (const ShaderType val) |
| Returns a string representation for the specified ShaderType value, or null if the input type is invalid. | |
| LLGL_EXPORT const char * | ToString (const ErrorType val) |
| Returns a string representation for the specified ErrorType value, or null if the input type is invalid. | |
| LLGL_EXPORT const char * | ToString (const WarningType val) |
| Returns a string representation for the specified WarningType value, or null if the input type is invalid. | |
| LLGL_EXPORT const char * | ToString (const ShadingLanguage val) |
| Returns a string representation for the specified ShadingLanguage value, or null if the input type is invalid. | |
| LLGL_EXPORT const char * | ToString (const Format val) |
| Returns a string representation for the specified Format value, or null if the input type is invalid. | |
| LLGL_EXPORT const char * | ToString (const ImageFormat val) |
| Returns a string representation for the specified ImageFormat value, or null if the input type is invalid. | |
| LLGL_EXPORT const char * | ToString (const TextureType val) |
| Returns a string representation for the specified TextureType value, or null if the input type is invalid. | |
| LLGL_EXPORT const char * | ToString (const BlendOp val) |
| Returns a string representation for the specified BlendOp value, or null if the input type is invalid. | |
| LLGL_EXPORT const char * | ToString (const ResourceType val) |
| Returns a string representation for the specified ResourceType value, or null if the input type is invalid. | |
| LLGL_EXPORT const char * | ToString (const SystemValue val) |
| Returns a string representation for the specified SystemValue value, or null if the input type is invalid. | |
| LLGL_EXPORT const char * | ToString (const QueryType val) |
| Returns a string representation for the specified QueryType value, or null if the input type is invalid. | |
| LLGL_EXPORT TextureDescriptor | Texture1DDesc (Format format, std::uint32_t width, long bindFlags=(BindFlags::ColorAttachment|BindFlags::Sampled)) |
| Returns a TextureDescriptor structure with the TextureType::Texture1D type. | |
| LLGL_EXPORT TextureDescriptor | Texture2DDesc (Format format, std::uint32_t width, std::uint32_t height, long bindFlags=(BindFlags::ColorAttachment|BindFlags::Sampled)) |
| Returns a TextureDescriptor structure with the TextureType::Texture2D type. | |
| LLGL_EXPORT TextureDescriptor | Texture3DDesc (Format format, std::uint32_t width, std::uint32_t height, std::uint32_t depth, long bindFlags=(BindFlags::ColorAttachment|BindFlags::Sampled)) |
| Returns a TextureDescriptor structure with the TextureType::Texture3D type. | |
| LLGL_EXPORT TextureDescriptor | TextureCubeDesc (Format format, std::uint32_t width, std::uint32_t height, long bindFlags=(BindFlags::ColorAttachment|BindFlags::Sampled)) |
| Returns a TextureDescriptor structure with the TextureType::TextureCube type. | |
| LLGL_EXPORT TextureDescriptor | Texture1DArrayDesc (Format format, std::uint32_t width, std::uint32_t arrayLayers, long bindFlags=(BindFlags::ColorAttachment|BindFlags::Sampled)) |
| Returns a TextureDescriptor structure with the TextureType::Texture1DArray type. | |
| LLGL_EXPORT TextureDescriptor | Texture2DArrayDesc (Format format, std::uint32_t width, std::uint32_t height, std::uint32_t arrayLayers, long bindFlags=(BindFlags::ColorAttachment|BindFlags::Sampled)) |
| Returns a TextureDescriptor structure with the TextureType::Texture2DArray type. | |
| LLGL_EXPORT TextureDescriptor | TextureCubeArrayDesc (Format format, std::uint32_t width, std::uint32_t height, std::uint32_t arrayLayers, long bindFlags=(BindFlags::ColorAttachment|BindFlags::Sampled)) |
| Returns a TextureDescriptor structure with the TextureType::TextureCubeArray type. | |
| LLGL_EXPORT TextureDescriptor | Texture2DMSDesc (Format format, std::uint32_t width, std::uint32_t height, std::uint32_t samples, long bindFlags=(BindFlags::ColorAttachment|BindFlags::Sampled)) |
| Returns a TextureDescriptor structure with the TextureType::Texture2DMS type. | |
| LLGL_EXPORT TextureDescriptor | Texture2DMSArrayDesc (Format format, std::uint32_t width, std::uint32_t height, std::uint32_t arrayLayers, std::uint32_t samples, long bindFlags=(BindFlags::ColorAttachment|BindFlags::Sampled)) |
| Returns a TextureDescriptor structure with the TextureType::Texture2DMSArray type. | |
| LLGL_EXPORT BufferDescriptor | VertexBufferDesc (std::uint64_t size, std::uint32_t stride=0, long cpuAccessFlags=0) |
| Returns a BufferDescriptor structure for a vertex buffer. | |
| BufferDescriptor | VertexBufferDesc (std::uint64_t size, const VertexFormat &vertexFormat, long cpuAccessFlags=0) |
| LLGL_EXPORT BufferDescriptor | IndexBufferDesc (std::uint64_t size, const Format format, long cpuAccessFlags=0) |
| Returns a BufferDescriptor structure for an index buffer. | |
| LLGL_EXPORT BufferDescriptor | ConstantBufferDesc (std::uint64_t size, long cpuAccessFlags=0) |
| Returns a BufferDescriptor structure for a constant buffer. | |
| LLGL_EXPORT BufferDescriptor | StorageBufferDesc (std::uint64_t size, const StorageBufferType storageType, std::uint32_t stride, long cpuAccessFlags=CPUAccessFlags::ReadWrite) |
| Returns a BufferDescriptor structure for a storage buffer. | |
| LLGL_EXPORT ShaderDescriptor | ShaderDescFromFile (const ShaderType type, const char *filename, const char *entryPoint=nullptr, const char *profile=nullptr, long flags=0) |
| Returns a ShaderDescriptor structure. | |
| LLGL_EXPORT PipelineLayoutDescriptor | PipelineLayoutDesc (const ShaderReflection &reflection) |
| Converts the specified shader reflection descriptor into a pipeline layout descriptor. | |
| LLGL_EXPORT RenderPassDescriptor | RenderPassDesc (const RenderTargetDescriptor &renderTargetDesc) |
| Converts the specified render target descriptor into a render pass descriptor with default settings. | |
| LLGL_EXPORT int | Compare (VersionInfo lhs, VersionInfo rhs) |
| LLGL_EXPORT const char * | ToString (VersionStatus status) |
| Returns a string representation of the specified version status or null if undefined (VersionStatus::Undefined). | |
| LLGL_EXPORT const char * | ToString (VersionInfo info) |
| Returns a string representation of the specified version. | |
| LLGL_EXPORT const char * | ToString (VersionInfo info, std::size_t bufferSize, char *buffer, std::size_t *outMinBufferSize=nullptr) |
| Returns a string representation of the specified version using a custom buffer. | |
| LLGL_EXPORT VersionInfo | GetLLGLVersion () |
| Returns the version information of this library. | |
| bool | operator== (VersionInfo lhs, VersionInfo rhs) |
| Returns true if both VersionInfo arguments are equal. | |
| bool | operator!= (VersionInfo lhs, VersionInfo rhs) |
| Returns true if both VersionInfo arguments are not equal. | |
| bool | operator< (VersionInfo lhs, VersionInfo rhs) |
Returns true if lhs describes an earlier version than rhs. | |
| bool | operator<= (VersionInfo lhs, VersionInfo rhs) |
Returns true if lhs describes an earlier or equal version as rhs. | |
| bool | operator> (VersionInfo lhs, VersionInfo rhs) |
Returns true if lhs describes a newer version than rhs. | |
| bool | operator>= (VersionInfo lhs, VersionInfo rhs) |
Returns true if lhs describes a newer or equal version as rhs. | |
| LLGL_EXPORT bool | operator== (const VertexAttribute &lhs, const VertexAttribute &rhs) |
| Compares the two VertexAttribute types for equality (including their names and all other members). | |
| LLGL_EXPORT bool | operator!= (const VertexAttribute &lhs, const VertexAttribute &rhs) |
| Compares the two VertexAttribute types for inequality (including their names and all other members). | |
| using LLGL::ColorRGB = Color<T, 3> |
| using LLGL::ColorRGBA = Color<T, 4> |
| using LLGL::ColorRGBAb = ColorRGBA<bool> |
| using LLGL::ColorRGBAd = ColorRGBA<double> |
| using LLGL::ColorRGBAf = ColorRGBA<float> |
| using LLGL::ColorRGBAub = ColorRGBA<std::uint8_t> |
| using LLGL::ColorRGBb = ColorRGB<bool> |
| using LLGL::ColorRGBd = ColorRGB<double> |
| using LLGL::ColorRGBf = ColorRGB<float> |
| using LLGL::ColorRGBub = ColorRGB<std::uint8_t> |
| using LLGL::DynamicByteArray = DynamicArray<char> |
Common type for dynamic byte arrays.
| using LLGL::DynamicVector = SmallVector<T, 0, Allocator, GrowStrategy> |
Template alias to a SmallVector with zero local capacity. This is intended as alternative to std::vector in the public interface.
| using LLGL::RenderSystemPtr = std::unique_ptr<RenderSystem, RenderSystemDeleter> |
Unique pointer type for the RenderSystem interface with a custom deleter.
| using LLGL::StringLiteral = BasicStringLiteral<char> |
ANSI character string literal (char).
| using LLGL::StringView = BasicStringView<char> |
ANSI character string view (char).
| using LLGL::WStringLiteral = BasicStringLiteral<wchar_t> |
Wide character string literal (wchar_t).
| using LLGL::WStringView = BasicStringView<wchar_t> |
Wide character string view (wchar_t).
| using LLGL::XRSystemPtr = std::unique_ptr<XRSystem> |
Unique pointer type for the XRSystem interface.
|
strong |
Enumeration for render pass attachment load operations.
| Enumerator | |
|---|---|
| Undefined | We don't care about the previous content of the respective render target attachment. |
| Load | Loads the previous content of the respective render target attachment. |
| Clear | Clear the previous content of the respective render target attachment.
|
|
strong |
Enumeration for render pass attachment store operations.
|
strong |
Blending arithmetic operations enumeration.
|
strong |
Blending operations enumeration.
| Enumerator | |
|---|---|
| Zero | Data source is the color black (0, 0, 0, 0). |
| One | Data source is the color white (1, 1, 1, 1). |
| SrcColor | Data source is color data (RGB) from a fragment shader.
|
| InvSrcColor | Data source is inverted color data (1 - RGB) from a fragment shader.
|
| SrcAlpha | Data source is alpha data (A) from a fragment shader. |
| InvSrcAlpha | Data source is inverted alpha data (1 - A) from a fragment shader. |
| DstColor | Data source is color data (RGB) from a framebuffer.
|
| InvDstColor | Data source is inverted color data (1 - RGB) from a framebuffer.
|
| DstAlpha | Data source is alpha data (A) from a framebuffer. |
| InvDstAlpha | Data source is inverted alpha data (1 - A) from a framebuffer. |
| SrcAlphaSaturate | Data source is alpha data (A) from a fragment shader which is clamped to 1 or less. |
| BlendFactor | Data source is the blend factor (RGBA) from the blend state.
|
| InvBlendFactor | Data source is the inverted blend factor (1 - RGBA) from the blend state.
|
| Src1Color | Data sources are both color data (RGB) from a fragment shader with dual-source color blending.
|
| InvSrc1Color | Data sources are both inverted color data (1 - RGB) from a fragment shader with dual-source color blending.
|
| Src1Alpha | Data sources are both alpha data (A) from a fragment shader with dual-source color blending. |
| InvSrc1Alpha | Data sources are both inverted alpha data (1 - A) from a fragment shader with dual-source color blending. |
|
strong |
Clipping depth range enumeration.
| Enumerator | |
|---|---|
| MinusOneToOne | Specifies the clipping depth range [-1, 1].
|
| ZeroToOne | Specifies the clipping depth range [0, 1]. |
|
strong |
Compare operations enumeration.
|
strong |
Classifications of CPU access to mapped resources.
| Enumerator | |
|---|---|
| ReadOnly | CPU read access to a mapped resource.
|
| WriteOnly | CPU write access to a mapped resource.
|
| WriteDiscard | CPU write access to a mapped resource, where the previous content can be discarded.
|
| ReadWrite | CPU read and write access to a mapped resource.
|
|
strong |
Polygon culling modes enumeration.
| Enumerator | |
|---|---|
| Disabled | No culling. |
| Front | Front face culling. |
| Back | Back face culling. |
|
strong |
Data types enumeration used for CPU side operations.
|
strong |
Rendering debugger error types enumeration.
|
strong |
|
strong |
Enumeration of all exception classes Trap() can throw.
LLGL_ENABLE_EXCEPTIONS. | Enumerator | |
|---|---|
| RuntimeError | Refers to std::runtime_error. |
| OutOfRange | Refers to std::out_of_range. |
| BadCast | Refers to std::bad_cast. |
| InvalidArgument | Refers to std::invalid_argument. |
|
strong |
Texture and vertex attribute format enumeration used for GPU side operations.
A[31:30], B[29:20], G[19:10], R[9:0] for instance.n denotes unsigned normalized formats (UNorm)s denotes signed normalized formats (SNorm)u denotes unsigned integer formats (UInt)i denotes signed integer formats (SInt)f denotes floating-point formats (Float)VkFormat: https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkFormat.html DXGI_FORMAT: https://msdn.microsoft.com/en-us/library/windows/desktop/bb173059(v=vs.85).aspx MTLPixelFormat: https://developer.apple.com/documentation/metal/mtlpixelformat MTLVertexFormat: https://developer.apple.com/documentation/metal/mtlvertexformat | Enumerator | |
|---|---|
| Undefined | Undefined format. |
| A8UNorm | Alpha channel format: alpha 8-bit normalized unsigned integer component. |
| R8UNorm | Ordinary color format: red 8-bit normalized unsigned integer component. |
| R8SNorm | Ordinary color format: red 8-bit normalized signed integer component. |
| R8UInt | Ordinary color format: red 8-bit unsigned integer component. |
| R8SInt | Ordinary color format: red 8-bit signed integer component. |
| R16UNorm | Ordinary color format: red 16-bit normalized unsigned integer component. |
| R16SNorm | Ordinary color format: red 16-bit normalized signed integer component. |
| R16UInt | Ordinary color format: red 16-bit unsigned integer component. |
| R16SInt | Ordinary color format: red 16-bit signed integer component. |
| R16Float | Ordinary color format: red 16-bit floating point component. |
| R32UInt | Ordinary color format: red 32-bit unsigned integer component. |
| R32SInt | Ordinary color format: red 32-bit signed integer component. |
| R32Float | Ordinary color format: red 32-bit floating point component. |
| R64Float | Ordinary color format: red 64-bit floating point component.
|
| RG8UNorm | Ordinary color format: red, green 8-bit normalized unsigned integer components. |
| RG8SNorm | Ordinary color format: red, green 8-bit normalized signed integer components. |
| RG8UInt | Ordinary color format: red, green 8-bit unsigned integer components. |
| RG8SInt | Ordinary color format: red, green 8-bit signed integer components. |
| RG16UNorm | Ordinary color format: red, green 16-bit normalized unsigned integer components. |
| RG16SNorm | Ordinary color format: red, green 16-bit normalized signed integer components. |
| RG16UInt | Ordinary color format: red, green 16-bit unsigned integer components. |
| RG16SInt | Ordinary color format: red, green 16-bit signed integer components. |
| RG16Float | Ordinary color format: red, green 16-bit floating point components. |
| RG32UInt | Ordinary color format: red, green 32-bit unsigned integer components. |
| RG32SInt | Ordinary color format: red, green 32-bit signed integer components. |
| RG32Float | Ordinary color format: red, green 32-bit floating point components. |
| RG64Float | Ordinary color format: red, green 64-bit floating point components.
|
| RGB8UNorm | Ordinary color format: red, green, blue 8-bit normalized unsigned integer components. |
| RGB8UNorm_sRGB | Ordinary color format: red, green, blue 8-bit normalized unsigned integer components in non-linear sRGB color space. |
| RGB8SNorm | Ordinary color format: red, green, blue 8-bit normalized signed integer components. |
| RGB8UInt | Ordinary color format: red, green, blue 8-bit unsigned integer components. |
| RGB8SInt | Ordinary color format: red, green, blue 8-bit signed integer components. |
| RGB16UNorm | Ordinary color format: red, green, blue 16-bit normalized unsigned integer components. |
| RGB16SNorm | Ordinary color format: red, green, blue 16-bit normalized signed integer components. |
| RGB16UInt | Ordinary color format: red, green, blue 16-bit unsigned integer components. |
| RGB16SInt | Ordinary color format: red, green, blue 16-bit signed integer components. |
| RGB16Float | Ordinary color format: red, green, blue 16-bit floating point components. |
| RGB32UInt | Ordinary color format: red, green, blue 32-bit unsigned integer components. |
| RGB32SInt | Ordinary color format: red, green, blue 32-bit signed integer components. |
| RGB32Float | Ordinary color format: red, green, blue 32-bit floating point components. |
| RGB64Float | Ordinary color format: red, green, blue 64-bit floating point components.
|
| RGBA8UNorm | Ordinary color format: red, green, blue, alpha 8-bit normalized unsigned integer components. |
| RGBA8UNorm_sRGB | Ordinary color format: red, green, blue, alpha 8-bit normalized unsigned integer components in non-linear sRGB color space. |
| RGBA8SNorm | Ordinary color format: red, green, blue, alpha 8-bit normalized signed integer components. |
| RGBA8UInt | Ordinary color format: red, green, blue, alpha 8-bit unsigned integer components. |
| RGBA8SInt | Ordinary color format: red, green, blue, alpha 8-bit signed integer components. |
| RGBA16UNorm | Ordinary color format: red, green, blue, alpha 16-bit normalized unsigned integer components. |
| RGBA16SNorm | Ordinary color format: red, green, blue, alpha 16-bit normalized signed integer components. |
| RGBA16UInt | Ordinary color format: red, green, blue, alpha 16-bit unsigned integer components. |
| RGBA16SInt | Ordinary color format: red, green, blue, alpha 16-bit signed integer components. |
| RGBA16Float | Ordinary color format: red, green, blue, alpha 16-bit floating point components. |
| RGBA32UInt | Ordinary color format: red, green, blue, alpha 32-bit unsigned integer components. |
| RGBA32SInt | Ordinary color format: red, green, blue, alpha 32-bit signed integer components. |
| RGBA32Float | Ordinary color format: red, green, blue, alpha 32-bit floating point components. |
| RGBA64Float | Ordinary color format: red, green, blue, alpha 64-bit floating point components.
|
| BGRA8UNorm | Ordinary color format: blue, green, red, alpha 8-bit normalized unsigned integer components. |
| BGRA8UNorm_sRGB | Ordinary color format: blue, green, red, alpha 8-bit normalized unsigned integer components in non-linear sRGB color space. |
| BGRA8SNorm | Ordinary color format: blue, green, red, alpha 8-bit normalized signed integer components.
|
| BGRA8UInt | Ordinary color format: blue, green, red, alpha 8-bit unsigned integer components.
|
| BGRA8SInt | Ordinary color format: blue, green, red, alpha 8-bit signed integer components.
|
| RGB10A2UNorm | Packed color format: red, green, blue 10-bit and alpha 2-bit normalized unsigned integer components. |
| RGB10A2UInt | Packed color format: red, green, blue 10-bit and alpha 2-bit unsigned integer components. |
| RG11B10Float | Packed color format: red, green 11-bit and blue 10-bit unsigned floating point, i.e. 6-bit mantissa for red and green, 5-bit mantissa for blue, and 5-bit exponent for all components. |
| RGB9E5Float | Packed color format: red, green, blue 9-bit unsigned floating-point with shared 5-bit exponent, i.e. 9-bit mantissa for each component and one 5-bit exponent for all components. |
| BGR5A1UNorm | Packed color format: blue, green, red 5-bit and alpha 1-bit normalized unsigned integer components. |
| D16UNorm | Depth-stencil format: depth 16-bit normalized unsigned integer component. |
| D24UNormS8UInt | Depth-stencil format: depth 24-bit normalized unsigned integer component, and 8-bit unsigned integer stencil component. |
| D32Float | Depth-stencil format: depth 32-bit floating point component. |
| D32FloatS8X24UInt | Depth-stencil format: depth 32-bit floating point component, and 8-bit unsigned integer stencil components (where the remaining 24 bits are unused). |
| BC1UNorm | Compressed color format: S3TC BC1 compressed RGBA with normalized unsigned integer components in 64-bit per 4x4 block. |
| BC1UNorm_sRGB | Compressed color format: S3TC BC1 compressed RGBA with normalized unsigned integer components in 64-bit per 4x4 block in non-linear sRGB color space. |
| BC2UNorm | Compressed color format: S3TC BC2 compressed RGBA with normalized unsigned integer components in 128-bit per 4x4 block. |
| BC2UNorm_sRGB | Compressed color format: S3TC BC2 compressed RGBA with normalized unsigned integer components in 128-bit per 4x4 block in non-linear sRGB color space. |
| BC3UNorm | Compressed color format: S3TC BC3 compressed RGBA with normalized unsigned integer components in 128-bit per 4x4 block. |
| BC3UNorm_sRGB | Compressed color format: S3TC BC3 compressed RGBA with normalized unsigned integer components in 128-bit per 4x4 block in non-linear sRGB color space. |
| BC4UNorm | Compressed color format: S3TC BC4 compressed red channel with normalized unsigned integer component in 64-bit per 4x4 block. |
| BC4SNorm | Compressed color format: S3TC BC4 compressed red channel with normalized signed integer component 64-bit per 4x4 block. |
| BC5UNorm | Compressed color format: S3TC BC5 compressed red and green channels with normalized unsigned integer components in 64-bit per 4x4 block. |
| BC5SNorm | Compressed color format: S3TC BC5 compressed red and green channels with normalized signed integer components in 128-bit per 4x4 block. |
| BC6HUFloat | Compressed color format: BPTC BC6H compressed RGB for high-dynamic range (HDR) with unsigned 16-bit floating-point components in 128-bit per 4x4 block. |
| BC6HSFloat | Compressed color format: BPTC BC6H compressed RGB for high-dynamic range (HDR) with signed 16-bit floating-point components in 128-bit per 4x4 block. |
| BC7UNorm | Compressed color format: BPTC BC7 compressed RGBA with normalized unsigned integer components in 128-bit per 4x4 block. |
| BC7UNorm_sRGB | Compressed color format: BPTC BC7 compressed RGBA with normalized unsigned integer components in 128-bit per 4x4 block in non-linear sRGB color space. |
| ASTC4x4 | Compressed color format: ASTC compressed RGBA format in 128-bit per 4x4 block (8.00 bit rate). |
| ASTC4x4_sRGB | Compressed color format: ASTC compressed RGBA format in 128-bit per 4x4 block (8.00 bit rate) in non-linear sRGB color space. |
| ASTC5x4 | Compressed color format: ASTC compressed RGBA format in 128-bit per 5x4 block (6.40 bit rate). |
| ASTC5x4_sRGB | Compressed color format: ASTC compressed RGBA format in 128-bit per 5x4 block (6.40 bit rate) in non-linear sRGB color space. |
| ASTC5x5 | Compressed color format: ASTC compressed RGBA format in 128-bit per 5x5 block (5.12 bit rate). |
| ASTC5x5_sRGB | Compressed color format: ASTC compressed RGBA format in 128-bit per 5x5 block (5.12 bit rate) in non-linear sRGB color space. |
| ASTC6x5 | Compressed color format: ASTC compressed RGBA format in 128-bit per 6x5 block (4.27 bit rate). |
| ASTC6x5_sRGB | Compressed color format: ASTC compressed RGBA format in 128-bit per 6x5 block (4.27 bit rate) in non-linear sRGB color space. |
| ASTC6x6 | Compressed color format: ASTC compressed RGBA format in 128-bit per 6x6 block (3.56 bit rate). |
| ASTC6x6_sRGB | Compressed color format: ASTC compressed RGBA format in 128-bit per 6x6 block (3.56 bit rate) in non-linear sRGB color space. |
| ASTC8x5 | Compressed color format: ASTC compressed RGBA format in 128-bit per 8x5 block (3.20 bit rate). |
| ASTC8x5_sRGB | Compressed color format: ASTC compressed RGBA format in 128-bit per 8x5 block (3.20 bit rate) in non-linear sRGB color space. |
| ASTC8x6 | Compressed color format: ASTC compressed RGBA format in 128-bit per 8x6 block (2.67 bit rate). |
| ASTC8x6_sRGB | Compressed color format: ASTC compressed RGBA format in 128-bit per 8x6 block (2.67 bit rate) in non-linear sRGB color space. |
| ASTC8x8 | Compressed color format: ASTC compressed RGBA format in 128-bit per 8x8 block (2.00 bit rate). |
| ASTC8x8_sRGB | Compressed color format: ASTC compressed RGBA format in 128-bit per 8x8 block (2.00 bit rate) in non-linear sRGB color space. |
| ASTC10x5 | Compressed color format: ASTC compressed RGBA format in 128-bit per 10x5 block (2.56 bit rate). |
| ASTC10x5_sRGB | Compressed color format: ASTC compressed RGBA format in 128-bit per 10x5 block (2.56 bit rate) in non-linear sRGB color space. |
| ASTC10x6 | Compressed color format: ASTC compressed RGBA format in 128-bit per 10x6 block (2.13 bit rate). |
| ASTC10x6_sRGB | Compressed color format: ASTC compressed RGBA format in 128-bit per 10x6 block (2.13 bit rate) in non-linear sRGB color space. |
| ASTC10x8 | Compressed color format: ASTC compressed RGBA format in 128-bit per 10x8 block (1.60 bit rate). |
| ASTC10x8_sRGB | Compressed color format: ASTC compressed RGBA format in 128-bit per 10x8 block (1.60 bit rate) in non-linear sRGB color space. |
| ASTC10x10 | Compressed color format: ASTC compressed RGBA format in 128-bit per 10x10 block (1.28 bit rate). |
| ASTC10x10_sRGB | Compressed color format: ASTC compressed RGBA format in 128-bit per 10x10 block (1.28 bit rate) in non-linear sRGB color space. |
| ASTC12x10 | Compressed color format: ASTC compressed RGBA format in 128-bit per 12x10 block (1.07 bit rate). |
| ASTC12x10_sRGB | Compressed color format: ASTC compressed RGBA format in 128-bit per 12x10 block (1.07 bit rate) in non-linear sRGB color space. |
| ASTC12x12 | Compressed color format: ASTC compressed RGBA format in 128-bit per 12x12 block (0.89 bit rate). |
| ASTC12x12_sRGB | Compressed color format: ASTC compressed RGBA format in 128-bit per 12x12 block (0.89 bit rate) in non-linear sRGB color space. |
| ETC1UNorm | Compressed color format: ETC1 compressed RGB with normalized unsigned integer components in 64-bit per 4x4 block. |
| ETC2UNorm | Compressed color format: ETC2 compressed RGB with normalized unsigned integer components in 64-bit per 4x4 block. |
| ETC2UNorm_sRGB | Compressed color format: ETC2 compressed RGB with normalized unsigned integer components in 64-bit per 4x4 block in non-linear sRGB color space. |
|
strong |
Image format enumeration that applies to each pixel of an image.
| Enumerator | |
|---|---|
| Alpha | Single color component: Alpha. |
| R | Single color component: Red. |
| RG | Two color components: Red, Green. |
| RGB | Three color components: Red, Green, Blue. |
| BGR | Three color components: Blue, Green, Red. |
| RGBA | Four color components: Red, Green, Blue, Alpha. |
| BGRA | Four color components: Blue, Green, Red, Alpha. |
| ARGB | Four color components: Alpha, Red, Green, Blue. Legacy format, mainly used in Direct3D 9. |
| ABGR | Four color components: Alpha, Blue, Green, Red. Legacy format, mainly used in Direct3D 9. |
| Depth | Depth component. |
| DepthStencil | Depth and stencil components. |
| Stencil | Stencil component. |
| Compressed | Compressed image format. The actual compression format must be specified with |
|
strong |
Input key codes.
|
strong |
Logical pixel operation enumeration.
src denotes the source color and dst denotes the destination color.
|
strong |
Type enumeration to distinguish native handles between X11 and Wayland protocols.
| Enumerator | |
|---|---|
| X11 | |
| Wayland | |
|
strong |
OpenGL context profile enumeration.
| Enumerator | |
|---|---|
| Auto | Automatic profile selection.
|
| CompatibilityProfile | OpenGL compatibility profile. |
| CoreProfile | OpenGL core profile. |
| ESProfile | OpenGL ES profile.
|
| LLGL_DEPRECATED_ENUMCASE |
|
|
strong |
|
strong |
Primitive topology enumeration.
2^16-1 (or 0xFFFF) for Format::R16UInt and 2^32-1 (or 0xFFFFFFFF) for Format::R32UInt.
|
strong |
Query type enumeration.
| Enumerator | |
|---|---|
| SamplesPassed | Number of samples that passed the depth test. This can be used as render condition. |
| AnySamplesPassed | Non-zero if any samples passed the depth test. This can be used as render condition. |
| AnySamplesPassedConservative | Non-zero if any samples passed the depth test within a conservative rasterization. This can be used as render condition. |
| TimeElapsed | Elapsed time (in nanoseconds) between the begin- and end query command. |
| StreamOutPrimitivesWritten | Number of vertices that have been written into a stream output (also called "Transform Feedback").
|
| StreamOutOverflow | Non-zero if any of the streaming output buffers (also called "Transform Feedback Buffers") has an overflow.
|
| PipelineStatistics | Pipeline statistics such as number of shader invocations, generated primitives, etc. |
|
strong |
Render condition mode enumeration.
|
strong |
Hardware resource type enumeration.
| Enumerator | |
|---|---|
| Undefined | Undefined resource type. |
| Buffer | Buffer resource.
|
| Texture | Texture resource. |
| Sampler | Sampler state resource.
|
|
strong |
Technique for resolving texture coordinates that are outside of the range [0, 1].
|
strong |
Sampling filter enumeration.
| Enumerator | |
|---|---|
| Nearest | Take the nearest texture sample.
|
| Linear | Interpolate between multiple texture samples.
|
|
strong |
Screen coordinate system origin enumeration.
| Enumerator | |
|---|---|
| LowerLeft | Specifies a screen origin in the lower-left.
|
| UpperLeft | Specifies a screen origin in the upper-left. |
|
strong |
Shader source type enumeration.
|
strong |
Shader type enumeration.
| Enumerator | |
|---|---|
| Undefined | Undefined shader type. |
| Vertex | Vertex shader type. |
| TessControl | Tessellation control shader type (also "Hull Shader"). |
| TessEvaluation | Tessellation evaluation shader type (also "Domain Shader"). |
| Geometry | Geometry shader type. |
| Fragment | Fragment shader type (also "Pixel Shader"). |
| Compute | Compute shader type. |
| Task | Task shader (also "Amplification Shader"). |
| Mesh | Mesh shader. |
| LLGL_DEPRECATED_ENUMCASE |
|
|
strong |
Shading language version enumeration.
| Enumerator | |
|---|---|
| GLSL | GLSL (OpenGL Shading Language). |
| GLSL_110 | GLSL 1.10 (since OpenGL 2.0). |
| GLSL_120 | GLSL 1.20 (since OpenGL 2.1). |
| GLSL_130 | GLSL 1.30 (since OpenGL 3.0). |
| GLSL_140 | GLSL 1.40 (since OpenGL 3.1). |
| GLSL_150 | GLSL 1.50 (since OpenGL 3.2). |
| GLSL_330 | GLSL 3.30 (since OpenGL 3.3). |
| GLSL_400 | GLSL 4.00 (since OpenGL 4.0). |
| GLSL_410 | GLSL 4.10 (since OpenGL 4.1). |
| GLSL_420 | GLSL 4.20 (since OpenGL 4.2). |
| GLSL_430 | GLSL 4.30 (since OpenGL 4.3). |
| GLSL_440 | GLSL 4.40 (since OpenGL 4.4). |
| GLSL_450 | GLSL 4.50 (since OpenGL 4.5). |
| GLSL_460 | GLSL 4.60 (since OpenGL 4.6). |
| ESSL | ESSL (OpenGL ES Shading Language). |
| ESSL_100 | ESSL 1.00 (since OpenGL ES 2.0). |
| ESSL_300 | ESSL 3.00 (since OpenGL ES 3.0). |
| ESSL_310 | ESSL 3.10 (since OpenGL ES 3.1). |
| ESSL_320 | ESSL 3.20 (since OpenGL ES 3.2). |
| HLSL | HLSL (High Level Shading Language). |
| HLSL_2_0 | HLSL 2.0 (since Direct3D 9). |
| HLSL_2_0a | HLSL 2.0a (since Direct3D 9a). |
| HLSL_2_0b | HLSL 2.0b (since Direct3D 9b). |
| HLSL_3_0 | HLSL 3.0 (since Direct3D 9c). |
| HLSL_4_0 | HLSL 4.0 (since Direct3D 10). |
| HLSL_4_1 | HLSL 4.1 (since Direct3D 10.1). |
| HLSL_5_0 | HLSL 5.0 (since Direct3D 11). |
| HLSL_5_1 | HLSL 5.1 (since Direct3D 11.3). |
| HLSL_6_0 | HLSL 6.0 (since Direct3D 12). Shader model 6.0 adds wave intrinsics and 64-bit integer types to HLSL. |
| HLSL_6_1 | HLSL 6.1 (since Direct3D 12). Shader model 6.1 adds |
| HLSL_6_2 | HLSL 6.2 (since Direct3D 12). Shader model 6.2 adds 16-bit scalar types to HLSL. |
| HLSL_6_3 | HLSL 6.3 (since Direct3D 12). Shader model 6.3 adds ray tracing (DXR) to HLSL. |
| HLSL_6_4 | HLSL 6.4 (since Direct3D 12). Shader model 6.4 adds machine learning intrinsics to HLSL. |
| HLSL_6_5 | HLSL 6.5 (since Direct3D 12). Shader model 6.5 adds DXR 1.1 to HLSL. |
| HLSL_6_6 | HLSL 6.6 (since Direct3D 12). Shader model 6.6 adds dynamic resources to HLSL. |
| HLSL_6_7 | HLSL 6.7 (since Direct3D 12). Shader model 6.7 adds advanced texture operations to HLSL. |
| HLSL_6_8 | HLSL 6.8 (since Direct3D 12). Shader model 6.8 adds work graphs to HLSL. |
| HLSL_6_9 | HLSL 6.9 (since Direct3D 12). Shader model 6.9 adds long vectors with up to 1024 elements. |
| Metal | Metal Shading Language. |
| Metal_1_0 | Metal 1.0 (since iOS 8.0). |
| Metal_1_1 | Metal 1.1 (since iOS 9.0 and OS X 10.11). |
| Metal_1_2 | Metal 1.2 (since iOS 10.0 and macOS 10.12). |
| Metal_2_0 | Metal 2.0 (since iOS 11.0 and macOS 10.13). |
| Metal_2_1 | Metal 2.1 (since iOS 12.0 and macOS 10.14). |
| Metal_2_2 | Metal 2.2 (since iOS 13.0 and macOS 10.15). |
| Metal_2_3 | Metal 2.3 (since iOS 14.0 and macOS 11.0). |
| Metal_2_4 | Metal 2.4 (since iOS 15.0 and macOS 12.0). |
| Metal_3_0 | Metal 3.0 (since iOS 16.0 and macOS 13.0). |
| SPIRV | SPIR-V Shading Language. |
| SPIRV_100 | SPIR-V 1.0. |
| DXIL | |
| DXIL_1_0 | DXIL 1.0 (since Direct3D 12) maps to Shader model 6.0. See HLSL_6_0. |
| DXIL_1_1 | DXIL 1.1 (since Direct3D 12) maps to Shader model 6.1. See HLSL_6_1. |
| DXIL_1_2 | DXIL 1.2 (since Direct3D 12) maps to Shader model 6.2. See HLSL_6_2. |
| DXIL_1_3 | DXIL 1.3 (since Direct3D 12) maps to Shader model 6.3. See HLSL_6_3. |
| DXIL_1_4 | DXIL 1.4 (since Direct3D 12) maps to Shader model 6.4. See HLSL_6_4. |
| DXIL_1_5 | DXIL 1.5 (since Direct3D 12) maps to Shader model 6.5. See HLSL_6_5. |
| DXIL_1_6 | DXIL 1.6 (since Direct3D 12) maps to Shader model 6.6. See HLSL_6_6. |
| DXIL_1_7 | DXIL 1.7 (since Direct3D 12) maps to Shader model 6.7. See HLSL_6_7. |
| DXIL_1_8 | DXIL 1.8 (since Direct3D 12) maps to Shader model 6.8. See HLSL_6_8. |
| DXIL_1_9 | DXIL 1.9 (since Direct3D 12) maps to Shader model 6.9. See HLSL_6_9. |
| VersionBitmask | Bitmask for the version number of each shading language enumeration entry. |
|
strong |
Variable rate shading enumeration.
|
strong |
Shading rate combiner operation enumeration.
| Enumerator | |
|---|---|
| Keep | Specifies the combiners as passthrough from input A. |
| Replace | Specifies the combiners as override from input B. |
| Min | Specifies the combiners minimum between inputs A and B. |
| Max | Specifies the combiners maximum between inputs A and B. |
| Sum | Specifies the combiners as sum of both inputs A and B.
|
|
strong |
|
strong |
Stencil operations enumeration.
| Enumerator | |
|---|---|
| Keep | Keep the existing stencil data. |
| Zero | Set stencil data to 0. |
| Replace | Set the stencil data to the reference value.
|
| IncClamp | Increment the stencil value by 1, and clamp the result. |
| DecClamp | Decrement the stencil value by 1, and clamp the result. |
| Invert | Invert the stencil data. |
| IncWrap | Increment the stencil value by 1, and wrap the result if necessary. |
| DecWrap | Decrement the stencil value by 1, and wrap the result if necessary. |
|
strong |
Storage buffer type enumeration for shader reflection.
| Enumerator | |
|---|---|
| Undefined | Undefined storage buffer type. |
| TypedBuffer | Typed buffer, e.g.
|
| StructuredBuffer | Structured buffer, e.g.
|
| ByteAddressBuffer | Byte-address buffer, e.g.
|
| RWTypedBuffer | Typed read/write buffer, e.g.
|
| RWStructuredBuffer | Read/write structured buffer, e.g.
|
| RWByteAddressBuffer | Read/write byte-address buffer, e.g.
|
| AppendStructuredBuffer | Append structured buffer, e.g. |
| ConsumeStructuredBuffer | Consume structured buffer, e.g. |
|
strong |
Enumeration of system values for vertex input or fragment output attributes.
| Type | HLSL | GLSL | SPIR-V | Metal |
|---|---|---|---|---|
| SystemValue::ClipDistance | SV_ClipDistance | gl_ClipDistance | gl_ClipDistance | [[clip_distance]] |
| SystemValue::Color | SV_Target | N/A | N/A | [[color(N)]] |
| SystemValue::CullDistance | SV_CullDistance | gl_CullDistance | gl_CullDistance | N/A |
| SystemValue::Depth | SV_Depth | gl_FragDepth | gl_FragDepth | [[depth(any)]] |
| SystemValue::DepthGreater | SV_DepthGreaterEqual | N/A | N/A | [[depth(greater)]] |
| SystemValue::DepthLess | SV_DepthLessEqual | N/A | N/A | [[depth(less)]] |
| SystemValue::FrontFacing | SV_IsFrontFace | gl_FrontFacing | gl_FrontFacing | [[front_facing]] |
| SystemValue::InstanceID | SV_InstanceID | gl_InstanceID | gl_InstanceIndex | [[instance_id] |
| SystemValue::Position | SV_Position | gl_Position, gl_FragCoord | gl_Position, gl_FragCoord | [[position]] |
| SystemValue::PrimitiveID | SV_PrimitiveID | gl_PrimitiveID | gl_PrimitiveID | N/A |
| SystemValue::RenderTargetIndex | SV_RenderTargetArrayIndex | gl_Layer | gl_Layer | [[render_target_array_index]] |
| SystemValue::SampleMask | SV_Coverage | gl_SampleMask | gl_SampleMask | [[sample_mask]] |
| SystemValue::SampleID | SV_SampleIndex | gl_SampleID | gl_SampleID | [[sample_id]] |
| SystemValue::Stencil | SV_StencilRef | N/A | N/A | [[stencil]] |
| SystemValue::VertexID | SV_VertexID | gl_VertexID | gl_VertexIndex | [[vertex_id]] |
| SystemValue::ViewIndex | SV_ViewID | gl_ViewIndex | gl_ViewIndex | [[amplification_id]] |
| SystemValue::ViewportIndex | SV_ViewportArrayIndex | gl_ViewportIndex | gl_ViewportIndex | [[viewport_array_index]] |
| Enumerator | |
|---|---|
| Undefined | Undefined system value. |
| ClipDistance | Forward-compatible mechanism for vertex clipping. |
| Color | Fragment output color value. |
| CullDistance | Mechanism for controlling user culling. |
| Depth | Fragment depth value. |
| DepthGreater | Fragment depth value that is greater than or equal to the previous one. |
| DepthLess | Fragment depth value that is less than or equal to the previous one. |
| FrontFacing | Indicates whether a primitive is front or back facing. |
| InstanceID | Index of the input instance.
|
| Position | Vertex or fragment position. |
| PrimitiveID | Index of the geometry primitive. |
| RenderTargetIndex | Index of the render target layer. |
| SampleMask | Sample coverage mask. |
| SampleID | Index of the input sample. |
| Stencil | Fragment stencil value.
|
| VertexID | Index of the input vertex.
|
| ViewIndex | Index of the view in a multiview render pass.
|
| ViewportIndex | Index of the viewport array. |
|
strong |
Tessellation partition mode enumeration.
|
strong |
Texture component swizzle enumeration.
|
strong |
Texture type enumeration.
| Enumerator | |
|---|---|
| Texture1D | 1-Dimensional texture. |
| Texture2D | 2-Dimensional texture. |
| Texture3D | 3-Dimensional texture. |
| TextureCube | Cube texture.
|
| Texture1DArray | 1-Dimensional texture.
|
| Texture2DArray | 2-Dimensional array texture.
|
| TextureCubeArray | Cube array texture.
|
| Texture2DMS | 2-Dimensional multi-sample texture.
|
| Texture2DMSArray | 2-Dimensional multi-sample array texture.
|
|
strong |
Shader uniform type enumeration.
Bool1 instead of Bool). | Enumerator | |
|---|---|
| Undefined | Undefined uniform type. |
| Float1 | Single scalar of a 32-bit floating-point. Use |
| Float2 | Two component vector of 32-bit floating-points. Use |
| Float3 | Three component vector of 32-bit floating-points. Use |
| Float4 | Four component vector of 32-bit floating-points. Use |
| Double1 | Single scalar of a 64-bit floating-point. Use |
| Double2 | Two component vector of 64-bit floating-points. Use |
| Double3 | Three component vector of 64-bit floating-points. Use |
| Double4 | Four component vector of 64-bit floating-points. Use |
| Int1 | Single scalar of a 32-bit signed integer. Use |
| Int2 | Two component vector of 32-bit signed integers. Use |
| Int3 | Three component vector of 32-bit signed integers. Use |
| Int4 | Four component vector of 32-bit signed integers. Use |
| UInt1 | Single scalar of a 32-bit unsigned integer. Use |
| UInt2 | Two component vector of 32-bit unsigned integers. Use |
| UInt3 | Three component vector of 32-bit unsigned integers. Use |
| UInt4 | Four component vector of 32-bit unsigned integers. Use |
| Bool1 | Single scalar of a 32-bit boolean. Use |
| Bool2 | Two component vector of 32-bit booleans. Use |
| Bool3 | Three component vector of 32-bit booleans. Use |
| Bool4 | Four component vector of 32-bit booleans. Use |
| Float2x2 | 2x2 matrix of 32-bit floating-points. Use |
| Float2x3 | 2x3 matrix of 32-bit floating-points. Use |
| Float2x4 | 2x4 matrix of 32-bit floating-points. Use |
| Float3x2 | 3x2 matrix of 32-bit floating-points. Use |
| Float3x3 | 3x3 matrix of 32-bit floating-points. Use |
| Float3x4 | 3x4 matrix of 32-bit floating-points. Use |
| Float4x2 | 4x2 matrix of 32-bit floating-points. Use |
| Float4x3 | 4x3 matrix of 32-bit floating-points. Use |
| Float4x4 | 4x4 matrix of 32-bit floating-points. Use |
| Double2x2 | 2x2 matrix of 64-bit floating-points. Use |
| Double2x3 | 2x3 matrix of 64-bit floating-points. Use |
| Double2x4 | 2x4 matrix of 64-bit floating-points. Use |
| Double3x2 | 3x2 matrix of 64-bit floating-points. Use |
| Double3x3 | 3x3 matrix of 64-bit floating-points. Use |
| Double3x4 | 3x4 matrix of 64-bit floating-points. Use |
| Double4x2 | 4x2 matrix of 64-bit floating-points. Use |
| Double4x3 | 4x3 matrix of 64-bit floating-points. Use |
| Double4x4 | 4x4 matrix of 64-bit floating-points. Use |
| Sampler | Sampler uniform (e.g. |
| Image | Image uniform (e.g. |
| AtomicCounter | Atomic counter uniform (e.g. |
|
strong |
|
strong |
Rendering debugger warning types enumeration.
|
strong |
XR environment blend mode enumeration.
|
strong |
XR form factor enumeration.
| Enumerator | |
|---|---|
| HeadMountedDisplay | Head-mounted display, e.g. a VR headset. |
| HandheldDisplay | Handheld display, e.g. a phone or tablet held by the user. |
|
strong |
XR session lifecycle states reported by XRSession::GetState.
|
strong |
|
inline |
Casts the specified color value and transforms it from the source data type range to the destination data type range.
|
inline |
Specialized template which merely passes the input value as output.
|
inline |
Specialized template which merely passes the input value as output.
|
inline |
Specialized template which merely passes the input value as output.
|
inline |
Specialized template which merely passes the input value as output.
|
inline |
Returns a constant reference to this instance of type const T& if it implements the specified interface.
T must be a sub class of Interface and implement the following function:
|
inline |
Returns a constant pointer to this instance of type const T* if it implements the specified interface.
T must be a sub class of Interface and implement the following function:
|
inline |
Returns a reference to this instance of type T& if it implements the specified interface.
T must be a sub class of Interface and implement the following function:
|
inline |
Returns a pointer to this instance of type T* if it implements the specified interface.
T must be a sub class of Interface and implement the following function: | LLGL_EXPORT int LLGL::Compare | ( | VersionInfo | lhs, |
| VersionInfo | rhs ) |
\briefs Compares the two VersionInfo arguments.
lhs is considered an earlier version than rhs, or > 0 if lhs is considered a newer version than ths. | LLGL_EXPORT Extent2D LLGL::GetExtentRatio | ( | const Extent2D & | extent | ) |
Returns the ratio of the specified extent as another extent, i.e. all attributes are divided by their greatest common divisor.
| LLGL_EXPORT VersionInfo LLGL::GetLLGLVersion | ( | ) |
Returns the version information of this library.
| LLGL_EXPORT std::uint32_t LLGL::GetPrimitiveTopologyPatchSize | ( | const PrimitiveTopology | primitiveTopology | ) |
Returns the number of patch control points of the specified primitive topology (in range [1, 32]), or 0 if the topology is not a patch list.
| LLGL_EXPORT Extent2D LLGL::GetShadingRateSize | ( | ShadingRate | shadingRate | ) |
Returns the dimensions of the specified shading rate.
| LLGL_EXPORT long LLGL::GetStageFlags | ( | const ShaderType | type | ) |
Returns the StageFlags bitmask for the specified shader type.
|
inline |
Const-reference version of IsInstanceOf.
|
inline |
Returns whether the specified object is an instance of the interface specified by template parameter T.
T must be a sub class of Interface and implement the following function: | LLGL_EXPORT bool LLGL::IsPrimitiveTopologyPatches | ( | const PrimitiveTopology | primitiveTopology | ) |
Returns true if the specified primitive topology is a patch list.
| LLGL_EXPORT bool LLGL::IsPrimitiveTopologyStrip | ( | const PrimitiveTopology | primitiveTopology | ) |
Returns true if the specified primitive topology is a strip that generates a new primitive with each new vertex.
primitiveTopology is equal to one of the following primitive topologies:
| LLGL_EXPORT bool LLGL::IsShaderSourceBinary | ( | const ShaderSourceType | type | ) |
Returns true if the specified shader source type is either ShaderSourceType::BinaryBuffer or ShaderSourceType::BinaryFile.
| LLGL_EXPORT bool LLGL::IsShaderSourceCode | ( | const ShaderSourceType | type | ) |
Returns true if the specified shader source type is either ShaderSourceType::CodeString or ShaderSourceType::CodeFile.
| LLGL::LLGL_DEFINE_STRING_COMPARE_OPERATORS | ( | ! | , |
| ! | ) |
| LLGL::LLGL_DEFINE_STRING_COMPARE_OPERATORS | ( | <, > | ) |
| LLGL::LLGL_DEFINE_STRING_COMPARE_OPERATORS | ( | <= | , |
| >= | ) |
| LLGL::LLGL_DEFINE_STRING_COMPARE_OPERATORS | ( | ) |
| LLGL::LLGL_DEFINE_STRING_COMPARE_OPERATORS | ( | >= | , |
| <= | ) |
|
inline |
Returns the maximal color value for the data type T. By default 1.
|
inline |
Specialized version. For booleans, the return value is true.
|
inline |
Specialized version. For unsigned 8-bit integers, the return value is 255.
|
inline |
Returns true if the specified binding slots are not equal, i.e. index and set are not equal.
| bool LLGL::operator!= | ( | const Color< T, N > & | lhs, |
| const Color< T, N > & | rhs ) |
Returns true if any component of both colors 'lhs' and 'rhs' are unequal.
| LLGL_EXPORT bool LLGL::operator!= | ( | const DisplayMode & | lhs, |
| const DisplayMode & | rhs ) |
Compares the two specified display mode descriptors on inequality.
| LLGL_EXPORT bool LLGL::operator!= | ( | const VertexAttribute & | lhs, |
| const VertexAttribute & | rhs ) |
Compares the two VertexAttribute types for inequality (including their names and all other members).
|
inline |
Returns true if both VersionInfo arguments are not equal.
| Color< T, N > LLGL::operator* | ( | const Color< T, N > & | lhs, |
| const Color< T, N > & | rhs ) |
| Color< T, N > LLGL::operator* | ( | const Color< T, N > & | lhs, |
| const T & | rhs ) |
| Color< T, N > LLGL::operator* | ( | const T & | lhs, |
| const Color< T, N > & | rhs ) |
|
inline |
| Color< T, N > LLGL::operator+ | ( | const Color< T, N > & | lhs, |
| const Color< T, N > & | rhs ) |
|
inline |
|
inline |
|
inline |
|
inline |
Concatenates the two UTF-8 string.
| Color< T, N > LLGL::operator- | ( | const Color< T, N > & | lhs, |
| const Color< T, N > & | rhs ) |
| Color< T, N > LLGL::operator/ | ( | const Color< T, N > & | lhs, |
| const Color< T, N > & | rhs ) |
| Color< T, N > LLGL::operator/ | ( | const Color< T, N > & | lhs, |
| const T & | rhs ) |
| Color< T, N > LLGL::operator/ | ( | const T & | lhs, |
| const Color< T, N > & | rhs ) |
|
inline |
Returns true if lhs describes an earlier version than rhs.
|
inline |
Returns true if lhs describes an earlier or equal version as rhs.
|
inline |
Returns true if the specified binding slots are equal, i.e. index and set are equal.
| bool LLGL::operator== | ( | const Color< T, N > & | lhs, |
| const Color< T, N > & | rhs ) |
Returns true if all components of both colors 'lhs' and 'rhs' are equal.
| LLGL_EXPORT bool LLGL::operator== | ( | const DisplayMode & | lhs, |
| const DisplayMode & | rhs ) |
Compares the two specified display mode descriptors on equality.
| LLGL_EXPORT bool LLGL::operator== | ( | const VertexAttribute & | lhs, |
| const VertexAttribute & | rhs ) |
Compares the two VertexAttribute types for equality (including their names and all other members).
|
inline |
Returns true if both VersionInfo arguments are equal.
|
inline |
Returns true if lhs describes a newer version than rhs.
|
inline |
Returns true if lhs describes a newer or equal version as rhs.
| LLGL_EXPORT const char * LLGL::ToString | ( | VersionInfo | info | ) |
Returns a string representation of the specified version.
printf function directly for instance, use the other version of this function and provide it with a custom buffer. | LLGL_EXPORT const char * LLGL::ToString | ( | VersionInfo | info, |
| std::size_t | bufferSize, | ||
| char * | buffer, | ||
| std::size_t * | outMinBufferSize = nullptr ) |
Returns a string representation of the specified version using a custom buffer.
| [in] | info | Specifies the version information to print as a string. |
| [in] | bufferSize | Specifies the size (in number of characters) of the output buffer. This size includes the NUL-terminator. |
| [out] | buffer | Pointer to the output buffer to write the string representation to. This buffer must point to a memory block of at least bufferSize characters. This may also be null, in which case only the outMinBufferSize is used to write out the requird buffer size. |
| [out] | outMinBufferSize | Optional pointer the function can write the required buffer size to. |
buffer parameter for convenient use in printf style functions. | LLGL_EXPORT const char * LLGL::ToString | ( | VersionStatus | status | ) |
Returns a string representation of the specified version status or null if undefined (VersionStatus::Undefined).
| LLGL_EXPORT void LLGL::Trap | ( | Exception | exception, |
| const char * | origin, | ||
| const char * | format, | ||
| ... ) |
Primary function to trap execution from an unrecoverable state.
| [in] | exception | Specifies what type of exception this function should throw if exceptions are enabled. |
| [in] | origin | Specifies the origin where execution is trapped. This can be the special preprocessor macro __FUNCTION__ for instance. |
| [in] | format | Specifies the formatted string as used with printf. |
LLGL_ENABLE_EXCEPTIONS) to let the client programmer exit the application gracefully. Otherwise, this function simply aborts execution and dumps the callstack to the standard error pipe. | LLGL_EXPORT bool LLGL::ValidateRenderingCaps | ( | const RenderingCapabilities & | presentCaps, |
| const RenderingCapabilities & | requiredCaps, | ||
| const ValidateRenderingCapsFunc & | callback = {} ) |
Validates the presence of the specified required rendering capabilities.
| [in] | presentCaps | Specifies the rendering capabilities that are present for a certain renderer. |
| [in] | requiredCaps | Specifies the rendering capabilities that are required for the host application to work properly. |
| [in] | callback | Optional callback to retrieve information about the attributes that did not fulfill the requirement. If this is null the validation process breaks with the first attribute that did not fulfill the requirement. By default null. |