Commit Graph

421 Commits (95781e337837bd3a91ed24ef309d0be67d06941e)

Author SHA1 Message Date
Caleb Cornett 95781e3378 Two typos in the same malloc... + cube RT fixes 2024-03-02 23:11:37 -08:00
Caleb Cornett 02aaf582d4 Fix copy-paste error from last commit 2024-03-02 23:11:37 -08:00
Caleb Cornett e3d112a971 Do some type shenanigans to allow depth textures to be sampled + fix viewport sizing logic 2024-03-02 23:11:37 -08:00
Caleb Cornett 9f78f83322 DepthStencilView creation + DS state fixes 2024-03-02 23:11:37 -08:00
Caleb Cornett 92f344d2f6 RTV overhaul to fix binding an RT with a specific depth/mip level 2024-03-02 23:11:37 -08:00
Caleb Cornett 0f2aacbae9 First rough pass at color RTs 2024-03-02 23:11:37 -08:00
Caleb Cornett dcac27b5d8 Use NO_OVERWRITE on uniform buffers after the initial WRITE_DISCARD + SetBufferData cleanup 2024-03-02 23:11:37 -08:00
Caleb Cornett c9b98c6e2b Fix repeated buffer writes by using USAGE_DEFAULT/UpdateSubresource instead of DYNAMIC/Map for non-uniform buffers 2024-03-02 23:11:37 -08:00
Caleb Cornett 557ce50737 PushComputeShaderUniforms + CreateComputePipeline fix 2024-03-02 23:11:37 -08:00
Caleb Cornett 11cbfca702 Actually compile compute shaders 2024-03-02 23:11:37 -08:00
Caleb Cornett f7fae4d314 GetBufferData 2024-03-02 23:11:36 -08:00
Caleb Cornett 508d077c26 QueueDestroyComputePipeline + style cleanup for QueueDestroyGraphicsPipeline 2024-03-02 23:11:36 -08:00
Caleb Cornett d76d223f68 Fence API 2024-03-02 23:11:36 -08:00
Caleb Cornett 105ef1aebb Clean up fence logic 2024-03-02 23:11:36 -08:00
Caleb Cornett 155d01ed92 Uniform buffer binding rework for clarity + minor cleanup 2024-03-02 23:11:36 -08:00
Caleb Cornett 06f00c77a0 First pass at fence infrastructure 2024-03-02 23:11:36 -08:00
Caleb Cornett 297b8b2cd2 First rough draft of Compute functions (untested!) 2024-03-02 23:11:36 -08:00
Caleb Cornett f598b65be5 DrawPrimitivesIndirect 2024-03-02 23:11:36 -08:00
Caleb Cornett 60a0ecab92 BindVertexSamplers 2024-03-02 23:11:36 -08:00
Caleb Cornett 4d11afa422 Fix 3D texture SRV creation, use UpdateSubresource1 to avoid bug with non-zero offsets on deferred contexts 2024-03-02 23:11:36 -08:00
Caleb Cornett 5d069f006d Fix fragment uniform buffer block calculation 2024-03-02 23:11:36 -08:00
Caleb Cornett e7be43e835 Fix device level check, fix ID3D11Device memory leak 2024-03-02 23:11:36 -08:00
Caleb Cornett b712bda8a3 Set up the DXGI Info Queue so we can filter messages without using DirectX Control Panel 2024-03-02 23:11:36 -08:00
Caleb Cornett 5f3dd6ba8a Add DXGIDebug logic to help track memory leaks, fix SRV leak it discovered 2024-03-02 23:11:36 -08:00
Caleb Cornett db6ad7fb6a Minor style cleanup 2024-03-02 23:11:36 -08:00
Caleb Cornett 0108b26d31 Fix a couple minor memory leaks 2024-03-02 23:11:36 -08:00
Caleb Cornett ca29f3b7da Release DLLs after releasing D3D11/DXGI objects (and release dxgi.dll!) 2024-03-02 23:11:36 -08:00
Caleb Cornett c9f23dd73b Fix degenerate InputLayout creation when creating graphics pipeline with no vertex attributes 2024-03-02 23:11:36 -08:00
Caleb Cornett a3c8ab6a55 Fixed uniform offsets, removed a bunch of code from cdefines.h 2024-03-02 23:11:36 -08:00
Caleb Cornett eb956a2f8b Uniform buffer infrastructure, still missing offset support 2024-03-02 23:11:36 -08:00
Caleb Cornett cdad57d1dd Fix texture conversion array 2024-03-02 23:11:36 -08:00
Caleb Cornett ce3b222529 Fix command buffer memory leak 2024-03-02 23:11:36 -08:00
Caleb Cornett 6a1c4ba80f CreateTexture, SetTextureData, BindIndexBuffer, BindFragmentSamplers, QueueDestroyTexture, DrawIndexedPrimitives, DrawInstancedPrimitives 2024-03-02 23:11:36 -08:00
Caleb Cornett a7bbc51653 Fix redundant error code printing 2024-03-02 23:11:36 -08:00
Caleb Cornett ba842d855e QueueDestroySampler 2024-03-02 23:11:36 -08:00
Caleb Cornett b906ec9c69 Add a border color conversion function 2024-03-02 23:11:36 -08:00
Caleb Cornett 7f4ddde607 CreateSampler 2024-03-02 23:11:36 -08:00
Caleb Cornett 15a73854b6 CreateBuffer, QueueDestroyBuffer, SetBufferData, BindVertexBuffers 2024-03-02 23:11:36 -08:00
Caleb Cornett abfdb2c7d9 Initial work on DestroyDevice 2024-03-02 23:11:36 -08:00
Caleb Cornett d7290c5e2b Implement SetViewport and SetScissor 2024-03-02 23:11:36 -08:00
Caleb Cornett 740fb56aa1 Style cleanups + added FIXME note for shader compilation 2024-03-02 23:11:36 -08:00
Caleb Cornett afeb7ebd16 shaderc now flips Y values in the vertex shader 2024-03-02 23:11:36 -08:00
Caleb Cornett 01cd001b07 DrawPrimitives, BindGraphicsPipeline, misc cleanup 2024-03-02 23:11:36 -08:00
Caleb Cornett dda7db1d92 Implement CreateShaderModule 2024-03-02 23:11:36 -08:00
Caleb Cornett f008408965 Pipeline creation copied over from old work + shaderc update 2024-03-02 23:11:36 -08:00
Caleb Cornett b74666a6d7 Fix for command pool crash, fix for hanging on Wait 2024-03-02 23:11:36 -08:00
Caleb Cornett acf64d51f0 Reworked Wait and Submit logic to use D3D11 Query objects as fences 2024-03-02 23:11:36 -08:00
Caleb Cornett acae35ebfa Stub out D3D11_Wait, fix crash when unclaiming windows, fix backend order 2024-03-02 23:11:36 -08:00
Caleb Cornett 0948537fe0 UnclaimWindow, swapchain destruction, fixed template signature 2024-03-02 23:11:36 -08:00
Caleb Cornett cbd8f4aee0 Implemented BeginRenderPass and Submit, ClearScreen works now! 2024-03-02 23:11:36 -08:00