|
| ImGui_ImplSDLGPU3_InitInfo | Boilerplate::createImGuiInfo (SDL_GPUDevice *device, SDL_Window *window) |
| | Create an ImGui initialization info struct for SDL3 GPU rendering.
|
| SDL_GPUVertexAttribute | Boilerplate::makeAttribute (Uint32 location, SDL_GPUVertexElementFormat format, Uint32 offset, Uint32 bufferSlot=0) |
| | Build an SDL_GPUVertexAttribute descriptor.
|
| SDL_GPUColorTargetInfo | Boilerplate::makeColorTargetClear (SDL_GPUTexture *texture, SDL_FColor clearColor) |
| | Create a color render-target info with a clear color.
|
| SDL_GPUColorTargetInfo | Boilerplate::makeColorTargetLoad (SDL_GPUTexture *texture) |
| | Create a color render-target info with a clear color.
|
| SDL_GPUDepthStencilTargetInfo | Boilerplate::makeDepthTarget (SDL_GPUTexture *texture, Uint8 layer, bool store, bool reverseZ) |
| | Create a depth/stencil render-target info that clears to depth 1.0.
|
| SDL_GPUTextureSamplerBinding | Boilerplate::makeTextureSamplerBinding (SDL_GPUTexture *texture, SDL_GPUSampler *sampler) |
| | Create a texture-sampler binding pair for fragment shader use.
|
| SDL_GPUShaderFormat | Boilerplate::selectShaderFormat (SDL_GPUDevice *device) |
| | Pick the best available shader format for the given device.
|
| SDL_GPUShader * | Boilerplate::loadShader (SDL_GPUDevice *device, const char *path, SDL_GPUShaderFormat format, SDL_GPUShaderStage stage, Uint32 samplerCount, Uint32 uniformBufferCount, Uint32 storageBufferCount, Uint32 storageTextureCount) |
| | Load and compile a shader from disk (explicit parameters).
|
| SDL_GPUShader * | Boilerplate::loadShader (SDL_GPUDevice *device, const ShaderInfo &shaderInfo, SDL_GPUShaderFormat format) |
| | Load and compile a shader from a ShaderInfo descriptor.
|
| SDL_GPUGraphicsPipeline * | Boilerplate::createGraphicsDepthPipeline (SDL_GPUDevice *device, PipelineDescription pipelineDesc) |
| SDL_GPUGraphicsPipeline * | Boilerplate::createGraphicsPipeline (SDL_GPUDevice *device, SDL_GPUTextureFormat &colorFormat, SDL_GPUShaderFormat shaderFormat, const ShaderInfo &vertexShaderInfo, const ShaderInfo &fragmentShaderInfo, const VertexInputLayout &vertexInputLayout, bool enableDepth=true, bool overBlending=false) |
| | Create a full graphics pipeline from vertex/fragment shaders and vertex layout.
|
| SDL_GPUGraphicsPipeline * | Boilerplate::createGraphicsPipeline (SDL_GPUDevice *device, const std::vector< SDL_GPUTextureFormat > &colorFormats, SDL_GPUShaderFormat shaderFormat, const ShaderInfo &vertexShaderInfo, const ShaderInfo &fragmentShaderInfo, const VertexInputLayout &vertexInputLayout, bool enableDepth=true, bool overBlending=false) |
| | Create a graphics pipeline with multiple color render targets.
|
| SDL_GPUBuffer * | Boilerplate::createBuffer (SDL_GPUDevice *device, size_t bufferSize, SDL_GPUBufferUsageFlags usage) |
| | Allocate a GPU buffer of the given size and usage.
|
| SDL_GPUTransferBuffer * | Boilerplate::createTransferBuffer (SDL_GPUDevice *device, size_t transferBufferSize, bool upload) |
| | Allocate a GPU transfer buffer for upload or download.
|
| SDL_GPUTransferBuffer * | Boilerplate::createUploadBuffer (SDL_GPUDevice *device, size_t transferBufferSize) |
| | Allocate a GPU transfer buffer for uploading data.
|
| void | Boilerplate::uploadBuffers (SDL_GPUDevice *device, SDL_GPUCommandBuffer *cmd, const std::vector< BufferUpload > &uploads) |
| | Batch-upload multiple CPU buffers to their corresponding GPU buffers.
|
| SDL_GPUTexture * | Boilerplate::createEmptyTextureD32F (SDL_GPUDevice *device, Uint32 width, Uint32 height, bool cube, Uint32 arraySize) |
| | Create an empty depth texture, optionally cube/cube-array shaped.
|
| SDL_GPUTexture * | Boilerplate::createTextureRGBA32 (SDL_GPUDevice *device, Uint32 width, Uint32 height, const void *data, SDL_GPUTextureFormat format) |
| SDL_GPUTexture * | Boilerplate::createTextureRGBA8 (SDL_GPUDevice *device, Uint32 width, Uint32 height, const void *data, SDL_GPUTextureFormat format=SDL_GPU_TEXTUREFORMAT_R8G8B8A8_UNORM) |
| | Create a 2D RGBA8 texture and upload pixel data to it.
|
| SDL_GPUTexture * | Boilerplate::loadTexture (SDL_GPUDevice *device, const char *path) |
| | Load an image file from disk and create a GPU texture from it.
|
| SDL_GPUTexture * | Boilerplate::createDepthTexture (SDL_GPUDevice *device, Uint32 width, Uint32 height) |
| | Create a D32_FLOAT depth texture of the given dimensions.
|
| SDL_GPUTexture * | Boilerplate::createSampledColorTarget (SDL_GPUDevice *device, Uint32 width, Uint32 height, SDL_GPUTextureFormat format) |
| | Create a sampleable 2D color render target of the given dimensions.
|
| SDL_GPUSampler * | Boilerplate::createLinearRepeatSampler (SDL_GPUDevice *device, bool nearest) |
| | Create a linear-filtering, repeat-addressing sampler.
|
| SDL_GPUSampler * | Boilerplate::createLinearComparisonSampler (SDL_GPUDevice *device, SDL_GPUFilter filterMode, bool reverseZ) |
| | Create a linear-filtering, comparison sampler (for shadow map depth comparison).
|
| SDL_GPUSampler * | Boilerplate::createLinearClampSampler (SDL_GPUDevice *device) |
| | Create a linear-filtering, clamp-to-edge sampler.
|
Implementation of SDL3 GPU boilerplate helpers.