|
group2 0.1.0
CSE 125 Group 2
|
Implementation of SDL3 GPU boilerplate helpers. More...
Namespaces | |
| namespace | Boilerplate |
Functions | |
| 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::makeColorTarget (SDL_GPUTexture *texture, SDL_FColor clearColor) |
| Create a color render-target info with a clear color. | |
| SDL_GPUDepthStencilTargetInfo | Boilerplate::makeDepthTarget (SDL_GPUTexture *texture) |
| 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::createGraphicsPipeline (SDL_GPUDevice *device, SDL_Window *window, SDL_GPUShaderFormat shaderFormat, const ShaderInfo &vertexShaderInfo, const ShaderInfo &fragmentShaderInfo, const VertexInputLayout &vertexInputLayout, bool enableDepth=true) |
| Create a full graphics pipeline from vertex/fragment shaders and vertex layout. | |
| 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::createTextureRGBA8 (SDL_GPUDevice *device, Uint32 width, Uint32 height, const void *data) |
| 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_GPUSampler * | Boilerplate::createLinearRepeatSampler (SDL_GPUDevice *device) |
| Create a linear-filtering, repeat-addressing sampler. | |
Implementation of SDL3 GPU boilerplate helpers.