Commit Graph

183 Commits (3c832550d0f8ff0d5901b080572e348cb5509880)

Author SHA1 Message Date
cosmonaut 3c832550d0 modify readback API 2024-03-05 17:47:37 -08:00
cosmonaut c84752f38c D3D11 support 2024-03-05 16:17:29 -08:00
cosmonaut 019afa91f5 fix stencil API 2024-03-02 23:10:44 -08:00
cosmonaut 00adec189c update bindings and WriteOption API 2024-03-01 15:03:14 -08:00
cosmonaut 0e723514df TextureSlice and TextureRegion API 2024-02-29 23:53:11 -08:00
cosmonaut e0f4c19dc2 another refresh2 update 2024-02-28 20:07:19 -08:00
cosmonaut 178a5ea3cf some tweaks to ResourceUploader 2024-02-27 00:42:53 -08:00
cosmonaut 50b8cb11c9 add SetBufferData to ResourceUploader 2024-02-23 16:00:29 -08:00
cosmonaut d83501437d rearrange methods in CommandBuffer 2024-02-23 15:53:49 -08:00
cosmonaut fe520dc9cc add element-wise buffer upload 2024-02-23 15:40:01 -08:00
cosmonaut 22bcd2e471 add SetTextureData to ResourceUploader 2024-02-23 14:53:35 -08:00
cosmonaut fe31e23ccc rename ResourceInitializer to ResourceUploader 2024-02-23 14:32:23 -08:00
cosmonaut 848b1c706c add UploadAndWait method to ResourceInitializer 2024-02-23 14:23:43 -08:00
cosmonaut a207f404b9 add texture slice setters to ResourceInitializer 2024-02-23 14:04:57 -08:00
cosmonaut 31c79d3179 built-in Blit operation 2024-02-23 12:39:59 -08:00
cosmonaut 8229e5dd33 CreateTextureFromDDS + respect buffer alignment 2024-02-23 11:59:56 -08:00
cosmonaut 1eae01c95c add DDS parser to ImageUtils 2024-02-23 11:59:33 -08:00
cosmonaut b80527d793 rename CpuBuffer.cs to TransferBuffer.cs 2024-02-23 10:57:34 -08:00
cosmonaut ecfcb666a8 remove byte pointer interface from TransferBuffer 2024-02-23 10:56:03 -08:00
cosmonaut ad97aed60f compute pass + additional validation 2024-02-23 10:43:39 -08:00
cosmonaut 0a5ec9e82d rename cpuBuffer to transferBuffer in Font 2024-02-23 10:43:22 -08:00
cosmonaut 8648eef5d1 rename CpuBuffer to TransferBuffer 2024-02-23 09:56:00 -08:00
cosmonaut 39496c37ea Refresh 2 changes 2024-02-23 00:06:04 -08:00
cosmonaut d986b3013f fix TextBatch index buffers being created as vertex buffers 2024-01-27 17:34:26 -08:00
cosmonaut 42e3ac91af Vertex instance input shortcut (#53)
Reviewed-on: #53
2024-01-27 03:44:19 +00:00
cosmonaut 0df2944ccf CommandBuffer is now a pooled class + more state validation 2024-01-18 12:27:34 -08:00
cosmonaut e50fb472b1 Debug mode sample count and depth assertions 2024-01-15 23:16:29 -08:00
cosmonaut df3f38a67b Debug mode bounds checks for buffer and texture upload 2024-01-15 22:19:59 -08:00
cosmonaut 4dbd5a2cbe MSDF font rendering + improved resource tracking (#52)
This is a major rewrite of the Font system. MoonWorks now uses MSDF font rendering, which allows high quality rendering of fonts at arbitrary sizes.

We now ship default embedded shader binaries for Video and Font. If you replace them with shader binaries of the same name located in your base directory, those will be used instead.

Many improvements have been made to resource tracking to prevent memory corruption, particularly on shutdown.

You must be careful not to leak AudioResource classes in particular, as there isn't much we can automatically do to recover from this without potentially crashing your game.

Reviewed-on: #52
2023-12-15 18:46:43 +00:00
cosmonaut 450b08cbd8 Atomically call graphics resource destroy function 2023-12-08 16:07:38 -08:00
cosmonaut a736ed031d clean up graphics resource code 2023-11-20 17:09:22 -08:00
cosmonaut b2a0ca3515 replace WeakReference with weak GCHandle 2023-11-20 15:18:06 -08:00
cosmonaut e616b0fa62 resource management and logging improvements 2023-10-04 14:45:17 -07:00
cosmonaut daae1a34b9 fix a few more compile errors 2023-09-19 17:14:48 -07:00
cosmonaut 2e5657789c fix a Conversions issue 2023-09-19 17:11:14 -07:00
cosmonaut d8064862bf move PackedVector classes to MoonWorks.Graphics.PackedVector 2023-09-19 16:50:08 -07:00
cosmonaut 402c26131d fix erroneous GetData length warning 2023-09-19 13:40:48 -07:00
cosmonaut b026b9e81f add lots more doc comments 2023-09-19 13:19:41 -07:00
cosmonaut e0f05881b0 new MoonWorks.Graphics.Fence API 2023-09-18 23:18:21 -07:00
cosmonaut 088e7c4b6f add debug check for zero length buffer copy 2023-08-07 10:12:46 -07:00
cosmonaut 496eb670ab AV1 Video instead of Theora (#49)
VideoPlayer now takes AV1 video instead of Ogg Theora. This brings a significant decode speed improvement. The decoder now also operates in a threaded manner, which should prevent runtime stalls when fetching video frames.

Reviewed-on: #49
2023-06-07 21:18:44 +00:00
cosmonaut 300ef9f88e fix unnecessary copy in PackFontRanges 2023-05-22 11:41:19 -07:00
cosmonaut 5df08727c1 Sound instancing rework 2023-05-11 17:56:40 -07:00
cosmonaut 2d7bb24b5c rename Texture load methods for clarity 2023-04-19 00:50:59 -07:00
cosmonaut 0ea60a376b new image loader API 2023-04-19 00:41:18 -07:00
cosmonaut 3584e670ee add array overloads to avoid explicit generic parameter 2023-04-05 12:40:34 -07:00
cosmonaut 5a2f7eadb8 change array param to span in Buffer.GetData 2023-04-05 11:32:12 -07:00
cosmonaut 1e3f04235e remove array parameters from API functions 2023-04-05 11:07:16 -07:00
cosmonaut 1cf04a7279 assets stream data directly into unmanaged memory 2023-04-05 00:47:02 -07:00
cosmonaut 8134761e44 load images from memory + QOI support 2023-04-03 17:28:00 -07:00