Commit Graph

431 Commits (7274173b440a7065ed53ff3af7494f93f32455bc)

Author SHA1 Message Date
Caleb Cornett 7274173b44 Add shader type to the .refresh shader bytecode format 2024-03-02 23:11:37 -08:00
Caleb Cornett c497402f1d Fix a few more FIXME's 2024-03-02 23:11:37 -08:00
Caleb Cornett 56f292f987 Note which FIXME's require a Refresh API update 2024-03-02 23:11:37 -08:00
Caleb Cornett 0a520f7a66 Combine swapchain and window data structs + actually allocate claimedWindows... 2024-03-02 23:11:37 -08:00
Caleb Cornett 4fe02e8571 FIXME fixups, mostly for contextLock 2024-03-02 23:11:37 -08:00
Caleb Cornett 539ee66d41 PresentMode fixes 2024-03-02 23:11:37 -08:00
Caleb Cornett 17f9322698 SetSwapchainPresentMode + other swapchain-y features from FNA3D D3D11 2024-03-02 23:11:37 -08:00
Caleb Cornett a5284ba0cd Fix non-MSAA cube RTs 2024-03-02 23:11:37 -08:00
Caleb Cornett 644763f004 MSAA for color and depth targets 2024-03-02 23:11:37 -08:00
Caleb Cornett b3addd6e0b SetTextureDataYUV 2024-03-02 23:11:37 -08:00
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