Commit Graph

401 Commits (4180ecb129fab6f450f1c5ac5b00303bce5d9dbf)

Author SHA1 Message Date
cosmonaut e9aacb44da Add synchronized audio playback mechanism 2023-02-16 15:12:35 -08:00
cosmonaut 5baa1d7b40 Fix video shader base path lookup 2023-02-08 12:44:36 -08:00
cosmonaut 36ce74b58a tweak video shader filenames 2023-02-03 15:07:32 -08:00
cosmonaut 40d12357c0 Remove MoonWorks.Collision ()
After months of tweaking and refactoring I have realized that collision is like rendering - it's so fundamental to the structure of your game that making broad decisions about how it should work from a library level is too restrictive and difficult to optimize. Anyone skilled enough to use MoonWorks should be easily able to roll their own collision detection.

Reviewed-on: 
2023-02-03 19:51:36 +00:00
TheSpydog b39526ca90 Textures now have a sample count, not render passes ()
Co-authored-by: Caleb Cornett <caleb.cornett@outlook.com>
Reviewed-on: 
Co-authored-by: TheSpydog <thespydog@noreply.example.org>
Co-committed-by: TheSpydog <thespydog@noreply.example.org>
2023-01-31 20:27:26 +00:00
TheSpydog 88d9119830 Remove warning from DrawInstancedPrimitives doc comment ()
Co-authored-by: Caleb Cornett <caleb.cornett@outlook.com>
Reviewed-on: 
Co-authored-by: TheSpydog <thespydog@noreply.example.org>
Co-committed-by: TheSpydog <thespydog@noreply.example.org>
2023-01-24 00:14:46 +00:00
TheSpydog 05de9a4066 Make video shaders optional and search for them in the root output directory ()
Whenever the video shaders change, they can be rebuilt with refreshc and distributed alongside the moonlibs.

Co-authored-by: Caleb Cornett <caleb.cornett@outlook.com>
Reviewed-on: 
Co-authored-by: TheSpydog <thespydog@noreply.example.org>
Co-committed-by: TheSpydog <thespydog@noreply.example.org>
2023-01-21 23:37:01 +00:00
TheSpydog b1d30a9e6c Remove isFixed param from AcquireCommandBuffer call ()
Co-authored-by: Caleb Cornett <caleb.cornett@outlook.com>
Reviewed-on: 
Co-authored-by: TheSpydog <thespydog@noreply.example.org>
Co-committed-by: TheSpydog <thespydog@noreply.example.org>
2023-01-14 18:04:53 +00:00
TheSpydog 030745361b Fix BC7 loading for textures without DDSD_CAPS/FMT ()
Co-authored-by: Caleb Cornett <caleb.cornett@outlook.com>
Reviewed-on: 
Co-authored-by: TheSpydog <thespydog@noreply.example.org>
Co-committed-by: TheSpydog <thespydog@noreply.example.org>
2023-01-07 01:46:59 +00:00
cosmonaut c43df10c2a vertex binding API improvements 2023-01-05 13:41:48 -08:00
cosmonaut 95981f0f03 rework vertex input state creation to avoid reflection 2023-01-04 17:34:01 -08:00
TheSpydog 230c1b41b4 Add IndirectDrawCommand struct ()
Co-authored-by: Caleb Cornett <caleb.cornett@outlook.com>
Reviewed-on: 
Co-authored-by: TheSpydog <thespydog@noreply.example.org>
Co-committed-by: TheSpydog <thespydog@noreply.example.org>
2023-01-04 18:44:56 +00:00
TheSpydog 6f8858c8b7 RasterizerState / BlendFactor ABI break ()
Updates the APIs to match [this Refresh PR]().

Co-authored-by: Caleb Cornett <caleb.cornett@outlook.com>
Reviewed-on: 
Co-authored-by: TheSpydog <thespydog@noreply.example.org>
Co-committed-by: TheSpydog <thespydog@noreply.example.org>
2022-12-29 03:22:47 +00:00
TheSpydog f96298f991 Add validation checks for AcquireSwapchainTexture and BindVertexBuffers ()
This replaces the Refresh-side check for window claim status in AcquireSwapchainTexture, and adds validation to ensure that BindVertexBuffers is not called before BindGraphicsPipeline.

Co-authored-by: Caleb Cornett <caleb.cornett@outlook.com>
Reviewed-on: 
Co-authored-by: TheSpydog <thespydog@noreply.example.org>
Co-committed-by: TheSpydog <thespydog@noreply.example.org>
2022-12-29 03:18:36 +00:00
cosmonaut d76633bdfc change sizeof calls to Marshal.SizeOf in interop situations 2022-12-13 19:01:40 -08:00
cosmonaut debb76f62a validate scissor dimensions 2022-12-13 16:09:32 -08:00
cosmonaut ca61e94b13 optimize mouse update 2022-12-13 15:13:43 -08:00
cosmonaut 36e6c6f332 optimize AcquireSwapchainTexture 2022-12-13 00:52:35 -08:00
cosmonaut 916962da6c garbage collection optimizations 2022-12-13 00:34:16 -08:00
cosmonaut cfd52b00bd add FIXME note for spatial hash boxing 2022-12-08 13:29:04 -08:00
cosmonaut b0e1ad3cf8 add note about disposing swapchain texture 2022-12-01 13:20:11 -08:00
cosmonaut 751b8310ce Fix crash when no audio device found 2022-11-30 09:43:49 -08:00
cosmonaut 474b8fe37d only check depth format if there is a depth attachment 2022-11-29 13:06:03 -08:00
cosmonaut bc41d2c079 add IsIdle and IsUp to Keyboard 2022-11-28 10:19:03 -08:00
cosmonaut d5ddd44bd3 add IsIdle and IsUp to VirtualButton 2022-11-28 00:48:48 -08:00
cosmonaut de9d13757a distinguish between idle and released on buttons 2022-11-27 12:41:09 -08:00
cosmonaut ca9fb45536 fix spacing 2022-11-18 10:34:32 -08:00
cosmonaut faf81bceed add support for mouse X1 and X2 buttons ()
Reviewed-on: 
2022-11-18 18:33:15 +00:00
cosmonaut fa992652b1 fix mouse button updating twice 2022-11-17 18:16:26 -08:00
marpe c4bae77408 Fix infinite recursion on certain Easing functions 2022-11-17 14:40:24 -08:00
cosmonaut ecf1a8ed55 Optimize CommandBuffer ()
- remove params methods in favor of overloads and last-resort `in Span<T>` overloads
- add `in` to params that take structs to reduce unnecessary copying
- Buffer can now implicitly cast to BufferBinding
- add render pass / graphics pipeline format match validation

Reviewed-on: 
2022-11-17 20:35:21 +00:00
cosmonaut 970517c3c2 add window size change callback support 2022-11-15 22:53:37 -08:00
cosmonaut f3c5bbf902 rename BorderlessWindow to BorderlessFullscreen 2022-11-15 22:49:07 -08:00
cosmonaut 02b20f79f5 allow sampler binding calls to take array segment 2022-11-15 17:53:30 -08:00
TheSpydog c2ef78d136 Add validation check that all work group dimension counts are >= 1 ()
Co-authored-by: Caleb Cornett <caleb.cornett@outlook.com>
Reviewed-on: 
Co-authored-by: TheSpydog <thespydog@noreply.example.org>
Co-committed-by: TheSpydog <thespydog@noreply.example.org>
2022-11-14 18:21:03 +00:00
TheSpydog 5533eeb2fd Fix bad pointer arithmetic in SetBufferData ()
Fixes a bug where SetBufferData was writing garbage to the buffer if `startElement` was non-zero.

Rather than fixing the pointer addition (it should have been `ptr + startElement`) I opted to remove it and instead pass the index explicitly when grabbing the address of the array element. I think that's a little easier to understand, and it's slightly safer too -- if you pass a startElement beyond the array bounds it will now throw an IndexOutOfRangeException instead of silently reading from outside the array bounds.

Co-authored-by: Caleb Cornett <caleb.cornett@outlook.com>
Reviewed-on: 
Co-authored-by: TheSpydog <thespydog@noreply.example.org>
Co-committed-by: TheSpydog <thespydog@noreply.example.org>
2022-11-12 03:42:35 +00:00
TheSpydog 02b0c12ad8 Bunch of Refresh API changes, plus more validation ()
Co-authored-by: TheSpydog <thespydog@noreply.example.org>
Co-committed-by: TheSpydog <thespydog@noreply.example.org>
2022-11-09 18:49:53 +00:00
TheSpydog 1b38f8606b Added more graphics validation, misc api tweaks ()
* Refactored render pass attachment validation to avoid copy-pasting the asserts
* Added validation for texture usage flags and null textures/samplers
* Added an exception for when GraphicsPipeline/ComputePipeline creation fails
* Changed TextureSamplerBinding so that it holds references to the Texture and Sampler classes, rather than just their handles
* Removed the CommandBuffer.BindVertex/FragmentSamplers overloads that took a length parameter

Co-authored-by: Caleb Cornett <caleb.cornett@outlook.com>
Reviewed-on: 
Co-authored-by: TheSpydog <thespydog@noreply.example.org>
Co-committed-by: TheSpydog <thespydog@noreply.example.org>
2022-11-08 19:29:05 +00:00
cosmonaut bd98ae8441 fix validation error when TextBatch is empty 2022-10-24 17:22:24 -07:00
cosmonaut 59190e619d fix Mouse.Wheel calculation 2022-10-21 11:39:06 -07:00
cosmonaut ea86212199 add AudioDevice.MasteringVolume property 2022-10-20 15:00:25 -07:00
cosmonaut 66c6ceec04 hide main window until Game.Run is called 2022-09-30 13:03:05 -07:00
cosmonaut dfddc24d0e add PresentMode to WindowCreateInfo 2022-09-30 13:02:51 -07:00
cosmonaut b66e077376 GraphicsDevice throw if backend invalid 2022-09-29 19:21:47 -07:00
cosmonaut 07c0b1b9a2 Window API revision + Framerate limiter ()
- add `Backend` enum
- `GraphicsDevice` can now take a preferred backend at creation

- add `GraphicsDevice.ClaimWindow`
- add `GraphicsDevice.UnclaimWindow`
- add `GraphicsDevice.SetPresentMode`

- add `Window.Claimed`
- add `Window.SwapchainFormat`
- fix certain odd behaviors in multi-window scenarios

- rename `FramerateSettings` to `FrameLimiterSettings`
- add `Game.SetFrameLimiter`

Reviewed-on: 
2022-09-29 22:22:50 +00:00
TheSpydog 3ffdf8a929 Specify readonly access when creating ShaderModule stream ()
Co-authored-by: Caleb Cornett <caleb.cornett@outlook.com>
Reviewed-on: 
Co-authored-by: TheSpydog <thespydog@noreply.example.org>
Co-committed-by: TheSpydog <thespydog@noreply.example.org>
2022-09-28 23:52:29 +00:00
cosmonaut bace9f570d add Fix64.Step 2022-09-22 20:17:13 -07:00
cosmonaut 32f80282a0 clean up Video.cs 2022-09-21 15:16:34 -07:00
cosmonaut 23252a149f ignore currently loaded video on VideoPlayer.Load 2022-09-20 11:31:27 -07:00
cosmonaut 80f19e4521 Refresh 1.7.0 2022-09-13 13:58:09 -07:00
cosmonaut d5a7daa524 add graphics state validation in debug mode 2022-09-07 13:07:17 -07:00
cosmonaut 5c080a4c42 add another DepthStencilAttachment constructor 2022-09-07 12:38:05 -07:00
TheSpydog eb8c350a47 Fix debug assertion in AudioDevice constructor ()
Let's try this again...

Co-authored-by: Caleb Cornett <caleb.cornett@outlook.com>
Reviewed-on: 
Co-authored-by: TheSpydog <thespydog@noreply.example.org>
Co-committed-by: TheSpydog <thespydog@noreply.example.org>
2022-08-30 17:09:32 +00:00
cosmonaut 0933b8e70f reset static audio on free + rework filter API 2022-08-29 22:45:28 -07:00
cosmonaut 1af16231ce Refresh 1.6.0 2022-08-25 12:32:49 -07:00
cosmonaut 0c6bb538fb fix depth-only render pass invocation + throw instead of return 2022-08-22 19:30:44 -07:00
TheSpydog ebfd4fd457 Ignore dllmap logic when running under NativeAOT ()
Co-authored-by: Caleb Cornett <caleb.cornett@outlook.com>
Reviewed-on: 
Co-authored-by: TheSpydog <thespydog@noreply.example.org>
Co-committed-by: TheSpydog <thespydog@noreply.example.org>
2022-08-22 16:43:19 +00:00
cosmonaut b380707462 Video Optimization ()
- Videos are now shoved into memory when created to avoid disk latency issues
- Added VideoPlayer class to avoid redundant texture creation on videos
- Most Video functions are now on VideoPlayer

Reviewed-on: 
2022-08-18 20:45:34 +00:00
cosmonaut 491eafac76 fix default Video playback speed being 0 2022-08-18 00:57:22 -07:00
cosmonaut 0dddf2a0af fix default pitch 2022-08-17 18:45:35 -07:00
cosmonaut 15aefc2212 add MoonWorks.Math.Easing 2022-08-16 18:24:46 -07:00
cosmonaut a427b79510 add Fix64-int arithmetic 2022-08-16 18:24:34 -07:00
TheSpydog 49f852a822 Combine all dependencies into the main csproj ()
This removes the need for per-library dllmap logic and simplifies the build process.

Co-authored-by: Caleb Cornett <caleb.cornett@outlook.com>
Reviewed-on: 
Co-authored-by: TheSpydog <thespydog@noreply.example.org>
Co-committed-by: TheSpydog <thespydog@noreply.example.org>
2022-08-14 20:44:55 +00:00
cosmonaut c649b24dad Game.Timestep is now public 2022-08-11 21:55:12 -07:00
cosmonaut f06ad263b7 add Fixed.Vector2.Lerp 2022-08-09 17:14:38 -07:00
cosmonaut 28e3479444 remove decimal cast from Fix64.Atan2 2022-08-05 16:56:26 -07:00
cosmonaut 72ad850ab4 fix unnecessary double cast 2022-08-03 16:34:15 -07:00
cosmonaut 9cd6e6cc7b add Vector2.Rotate methods 2022-08-03 16:15:47 -07:00
cosmonaut 9c8ec7ad5a ButtonState now has a public constructor 2022-08-03 10:13:20 -07:00
cosmonaut 1e6455d070 fix StreamingSoundOgg seek 2022-08-02 14:15:16 -07:00
cosmonaut efb9893aef Theora video support + audio improvements ()
- `SoundInstance.Play` no longer takes a loop parameter
- `SoundInstance.Stop` is split into `Stop` and `StopImmediate` instead of taking an immediate parameter
- Added `StreamingSoundSeekable` to better support streaming audio that does not support seek
- `StreamingSound` no longer has a Loop property, but `StreamingSoundSeekable` does
- abstract `StreamingSound.AddBuffer` renamed to `FillBuffer`
- `FillBuffer` is now provided with a native buffer to avoid an extra data copy
- `StreamingSound` buffer implementation optimized to avoid repeated alloc/frees

- added `Video` class which can load and play Theora (.ogv) streaming video/audio

Reviewed-on: 
2022-08-02 21:04:12 +00:00
cosmonaut 5a5fbc0c77 handle OS window size changes 2022-07-28 16:06:50 -07:00
cosmonaut 40a2b31e90 add StartMaximized flag to WindowCreateInfo 2022-07-28 16:06:37 -07:00
cosmonaut 424f410688 add SystemResizable flag to WindowCreateInfo 2022-07-26 19:08:21 -07:00
cosmonaut f6fc80804e improve gamepad init and support hotplugging 2022-07-13 11:53:09 -07:00
cosmonaut 646e5e9283 empty virtual button 2022-07-12 17:57:37 -07:00
cosmonaut ab619192a6 combine button states 2022-07-12 17:57:27 -07:00
cosmonaut d07a722fb1 VirtualButton system 2022-07-12 16:09:23 -07:00
cosmonaut 3543f074f4 fix erroneous Normalize 2022-07-12 16:06:13 -07:00
cosmonaut d3e124cea1 reset AnyPressedButton at start of Update 2022-07-08 16:52:37 -07:00
cosmonaut 1cf3a13541 Inputs.AnyPressed implementation 2022-07-08 16:47:12 -07:00
cosmonaut db5ca97726 Packer.TextBounds 2022-06-30 16:24:28 -07:00
cosmonaut d190df55b2 update wellspring 2022-06-30 13:25:52 -07:00
cosmonaut 1aa522ffa1 avoid TextBatch.Draw smashing the stack with big strings 2022-06-30 13:24:51 -07:00
cosmonaut a9b3b53ce9 add optional Destroy method to Game 2022-06-23 23:59:23 -07:00
cosmonaut d32bbcd537 radian and degree conversions on Fix64 2022-06-21 11:20:32 -07:00
cosmonaut b23792acd0 remove empty struct constructors for language compatibility 2022-06-20 13:04:44 -07:00
cosmonaut 2f5d25b458 Fix64 random fix 2022-06-16 00:51:02 -07:00
cosmonaut ba662d7c3e add Fix64 random range 2022-06-14 18:25:37 -07:00
cosmonaut c1085db9c5 add store ops to depth stencil attach info struct 2022-06-08 17:15:14 -07:00
cosmonaut bb0b6daa91 Fix64.Fractional 2022-06-07 17:01:44 -07:00
cosmonaut 13519c3150 fix stencil clear 2022-06-06 18:44:03 -07:00
cosmonaut 6ab7a2f722 read ShaderModules from stream 2022-06-06 10:42:05 -07:00
cosmonaut 436affe5de remove some unnecessary qualifiers 2022-06-05 12:29:35 -07:00
darkerbit ff544140e0 add file drop API 2022-06-05 12:27:46 -07:00
cosmonaut 26e7e5c809 move mouse wheel reset to sensible location 2022-06-04 15:51:19 -07:00
cosmonaut d2a51ce524 decouple fixed timestep from draw, add frame cap 2022-06-04 15:48:55 -07:00
cosmonaut 5a9709c843 revert Game and GameState change 2022-06-01 18:31:22 -07:00
cosmonaut 0e8188682e game state now changes on next update 2022-05-23 19:12:27 -07:00
cosmonaut 9862bfd0a0 TextureSamplerBinding now stores IntPtrs 2022-05-23 19:12:17 -07:00
cosmonaut 4756fe2b14 add SetMasteringVolume method to AudioDevice 2022-05-23 19:11:48 -07:00
cosmonaut e5c72c6f46 add lerp to Fix64 2022-05-18 18:28:53 -07:00
cosmonaut 318ca22021 add default case for clarity 2022-05-15 12:16:41 -07:00
cosmonaut 547f7a388e add Fix64 random methods 2022-05-15 12:16:41 -07:00
cosmonaut dd3fb75905 fix DDS mip level loader 2022-05-14 10:31:56 -07:00
cosmonaut 2bd88e1dc1 add a few useful functions 2022-05-13 16:26:26 -07:00
cosmonaut 66d363459b improve DDS format support 2022-05-12 11:21:07 -07:00
cosmonaut b22d3bed30 add DDS and BC7 support 2022-05-11 21:22:20 -07:00
cosmonaut 0d93207ae9 Fixed Point Math ()
Reviewed-on: 
2022-05-11 17:34:09 +00:00
cosmonaut a0082bcec6 change Marshal.SizeOf to sizeof 2022-04-27 14:14:15 -07:00
cosmonaut 810f270a41 blittable button identifiers 2022-04-27 11:37:35 -07:00
cosmonaut 27e0404ec0 expose Line properties + no-ID retrieve 2022-04-21 16:04:40 -07:00
cosmonaut be4b5cf2c7 fix audio not being disposed in correct order 2022-04-20 14:57:24 -07:00
cosmonaut 83eb268a4a add audio Seek functionality 2022-04-20 14:29:46 -07:00
cosmonaut 985e096a7b add Update and Remove to SpatialHash2D 2022-04-20 10:57:16 -07:00
cosmonaut dccd81e029 change collision API to support multi shapes 2022-04-18 11:33:40 -07:00
cosmonaut 65568ea234 Font rendering update 2022-04-13 15:10:23 -07:00
cosmonaut 61a6d0bdc0 Font Rendering ()
Adds a font rendering system based on Wellspring.

Reviewed-on: 
2022-04-13 03:06:14 +00:00
cosmonaut 72c9dd4bda close vorbis stream before freeing data 2022-04-08 00:17:58 -07:00
cosmonaut 412f0ca179 game state system 2022-04-08 00:03:42 -07:00
cosmonaut b252d0eb92 forgot that C# arrays are not just memory 2022-04-07 15:11:14 -07:00
cosmonaut ba66ed4225 stream ogg from memory instead of disk 2022-04-07 14:19:43 -07:00
cosmonaut 5e2b8de2d3 Spatial Hash Retrieve returns collision groups 2022-04-06 20:25:46 -07:00
cosmonaut 35ded250ed some more collision fast paths 2022-04-05 17:31:27 -07:00
cosmonaut f8146b799a store rectangle properties as ints 2022-04-05 16:35:55 -07:00
cosmonaut 4b4abaab01 fix AABB2D transform method 2022-04-05 16:06:34 -07:00
cosmonaut 6a1fa004d6 set loop on play instead of construct 2022-04-05 16:05:42 -07:00
cosmonaut b1b6b84809 WAV static sounds + static sound instance pool 2022-04-04 23:33:36 -07:00
cosmonaut 08a3c01f66 add Vector2.Angle 2022-03-31 15:31:53 -07:00
cosmonaut ec5160c060 add int variant to MathHelper.Approach 2022-03-31 14:51:18 -07:00
cosmonaut c96c7a0d90 MathHelper.Approach should not return delta 2022-03-29 00:11:50 -07:00
cosmonaut f0d3dfccf9 add collision mask system to spatial hash 2022-03-25 15:11:38 -07:00
cosmonaut 9f4b69e6aa keyboard uses Button instead of ButtonState 2022-03-24 16:41:00 -07:00
cosmonaut 80c34c6b16 Collision API () 2022-03-24 06:07:34 +00:00
cosmonaut cc876b2132 GetGamepad no longer throws if slot is empty 2022-03-18 12:11:00 -07:00
cosmonaut 71d9f8f4fe remove unnecessary setters and add doc comments 2022-03-18 11:58:10 -07:00
cosmonaut 5050a9369d Input API rework 2022-03-18 11:46:44 -07:00
cosmonaut 3623e6b07c add debug exception for binding a null texture 2022-03-17 14:42:43 -07:00
cosmonaut 1b5221f2c7 vertex format ABI break 2022-03-17 14:42:30 -07:00
cosmonaut 0fb7e98cb5 add Vector2.Transform Matrix3x2 overload 2022-03-15 23:02:38 -07:00
cosmonaut 5424d05d63 RasterizerState ABI break 2022-03-14 10:48:31 -07:00
cosmonaut 2a9286f31e Clear and AcquireSwapchainTexture ABI break 2022-03-10 10:25:41 -08:00
cosmonaut 8f9aaf6d61 ButtonState is now a struct 2022-03-07 10:54:52 -08:00
cosmonaut cf2d8473a1 renderArea NULL inputs 2022-03-06 22:33:12 -08:00
cosmonaut b5b0f35b50 SetViewport and SetScissor doc comments 2022-03-04 14:14:22 -08:00
cosmonaut 527f47436a Refresh 1.2.0 2022-03-04 13:21:52 -08:00
cosmonaut 40d9cdd33a add element-wise SetBufferData overload 2022-03-04 10:00:29 -08:00
cosmonaut a413863cf9 add Size property to Buffer 2022-03-03 17:18:38 -08:00
cosmonaut 17333cfb67 destroy update 2022-03-03 17:16:39 -08:00
cosmonaut 111df04c0f fix some Window stuff 2022-03-02 14:46:55 -08:00
cosmonaut 9c83423c79 add buffer creation convenience method 2022-03-02 14:29:43 -08:00
cosmonaut 7d3a7901b2 convenience constructors for graphics state 2022-03-02 13:57:30 -08:00
cosmonaut 278db7d55b fix a few missing renames 2022-03-02 11:45:37 -08:00
cosmonaut 774028a013 D3D compatibility ABI break 2022-03-02 11:42:26 -08:00
cosmonaut f6369b6bce add some notes to AcquireSwapchainTexture 2022-03-02 10:13:52 -08:00
cosmonaut c34f74a99d do not destroy untracked resource 2022-03-02 09:58:32 -08:00
cosmonaut d6606d90f6 AcquireSwapchainTexture nullable 2022-03-02 09:39:23 -08:00
cosmonaut ef10be4e9d add some shortcut defaults to structs 2022-03-01 23:32:44 -08:00
cosmonaut 1fa73f0275 more presentation API improvements 2022-03-01 23:21:42 -08:00
cosmonaut 81c882bd48 presentation ABI break 2022-03-01 22:57:10 -08:00
cosmonaut 7328cbc13d add some constructors to reduce boilerplate 2022-02-25 18:01:22 -08:00
cosmonaut 32b269526f Blend state ABI break 2022-02-25 17:50:08 -08:00
cosmonaut 9028a8b1a0 remove Window namespace 2022-02-25 13:23:31 -08:00
cosmonaut edd21ec573 remove count from managed GraphicsPipelineAttachmentInfo 2022-02-25 11:10:35 -08:00
Caleb Cornett 2469cf530a Capitalized attachment info struct member names 2022-02-25 11:17:37 -05:00
cosmonaut e5213da686 fix clear color conversion 2022-02-24 22:06:29 -08:00
cosmonaut 1064bae828 Render Pass Streamlining ()
Changes as per a531fb8593

Reviewed-on: 
Co-authored-by: cosmonaut <evan@moonside.games>
Co-committed-by: cosmonaut <evan@moonside.games>
2022-02-25 05:34:36 +00:00
cosmonaut 8a3d93d2dc intellisense improvement + API tweak 2022-02-22 22:16:06 -08:00
cosmonaut 8973b3e658 Formatting pass 2022-02-22 21:14:32 -08:00
cosmonaut a0c57c7a59 Cleanup fixes 2022-02-22 16:44:39 -08:00
cosmonaut 5679dba978 Actually dispose graphics resources 2022-02-22 14:29:50 -08:00
cosmonaut cb25e6feff resource destroy now requires a CB 2022-02-18 21:02:16 -08:00
cosmonaut 4acc2588e1 QueuePresent ABI break 2022-02-08 17:17:51 -08:00
cosmonaut 8022cd1011 add DispatchCompute to command buffer 2022-01-17 20:39:03 -08:00
cosmonaut d2fca3654b never mind on SetDataOptions, bad idea 2022-01-13 14:48:32 -08:00
cosmonaut a5c8ebfc3a update buffer upload ABI 2022-01-13 14:29:08 -08:00
cosmonaut 7d7437721c uniforms are now pushed via command buffer 2022-01-12 13:01:32 -08:00
cosmonaut 0c588b96f4 add more info to Texture 2022-01-10 12:20:01 -08:00
cosmonaut 1fe256a479 get rid of badly conceived command buffer queue 2022-01-10 12:11:24 -08:00
cosmonaut 9df9aaeb3a update texture SetData API 2021-11-14 21:08:02 -08:00
cosmonaut 9f588d389b tighten game loop timing 2021-07-23 15:47:02 -07:00
cosmonaut a337b94dfa .NET 5 2021-07-23 14:33:16 -07:00
cosmonaut 681e620477 add mouse wheel support 2021-03-26 12:20:05 -07:00
cosmonaut 3b83eb41da add LookAt method to Quaternion 2021-03-26 12:07:46 -07:00
cosmonaut 984e30cc4c add system for text input 2021-03-25 15:57:26 -07:00
cosmonaut ccefe570db add meta keys to keycodes 2021-03-23 17:38:53 -07:00
cosmonaut 7ecb27c98a add vibration support + fix controller axes 2021-03-09 21:48:31 -08:00
cosmonaut 5eb5027bf1 initial 3D audio implementation 2021-02-26 16:17:26 -08:00
cosmonaut 8e627c9b18 add window resize function 2021-02-24 13:03:39 -08:00
cosmonaut b928257d3c document lots of graphics stuff 2021-02-24 12:43:35 -08:00
cosmonaut 72c676a1e0 add doc comments to CommandBuffer 2021-02-23 23:41:14 -08:00
cosmonaut 09c03fece9 add Matrix3x2 and rename Matrix to Matrix4x4 2021-02-16 18:07:50 -08:00
cosmonaut e6fa95b823 rework sampler binding API call 2021-02-11 12:25:12 -08:00
cosmonaut 44cd77eecb fix orthographic projection for vulkan NDC space 2021-02-10 18:13:24 -08:00
cosmonaut dc59b851d4 fix begin render pass 2021-02-10 17:15:46 -08:00
cosmonaut d1e691a02b change clear color type 2021-02-09 22:51:30 -08:00
cosmonaut aab0917603 fix clear options input 2021-02-08 19:22:27 -08:00
cosmonaut 4eb2cb6b09 some state tweaks 2021-02-08 18:10:02 -08:00
cosmonaut 29a86c2040 move uniform pushes to pipeline 2021-02-05 19:51:10 -08:00
cosmonaut 0daf548fd3 update uniform API 2021-02-02 16:34:40 -08:00