Commit Graph

40 Commits (c28c4a9db072ff0684ec84d76ce88f1576a9ae60)

Author SHA1 Message Date
cosmonaut 18d92aeec8 remove Fix64 dependency on System.Random 2023-10-13 13:38:26 -07:00
cosmonaut be77e8bad1 add exponentiation functions to Fix64 2023-09-07 17:30:35 -07:00
cosmonaut b65d4e391c public Fix64 RawValue 2023-06-12 09:53:44 -07:00
cosmonaut 8209051a3c remove non-static Normalize + return identity on zero vector 2023-03-29 10:06:37 -07:00
cosmonaut 3a6b73e637 add int clamp to MathHelper 2023-03-14 14:42:13 -07:00
cosmonaut 455f4048df MathHelper.Quantize uses round instead of floor 2023-03-09 13:52:45 -08:00
cosmonaut 1f0e3b5040 Audio Improvements (#47)
- Audio is now processed on a background thread instead of the main thread
- Audio tick rate is now ~200Hz
- MoonWorks.Math.Easings class completely rewritten to be easier to understand and use
- SoundInstance properties no longer call into FAudio unless the value actually changed
- SoundInstance property values can now be interpolated over time (tweens)
- SoundInstance tweens can be delayed
- SoundInstance sets a sane filter frequency default when switching filter type
- StreamingSound classes can be designated to update automatically on the audio thread or manually
- StreamingSound buffer consumption should now set Stopped state in a more sane way
- Added ReverbEffect, which creates a submix voice for a reverb effect
- SoundInstance can apply a ReverbEffect, which enables the Reverb property
- Audio resource tracking improvements
- Some tweaks to VideoPlayer to make its behavior more consistent

Reviewed-on: #47
2023-03-07 23:28:57 +00:00
cosmonaut 40d12357c0 Remove MoonWorks.Collision (#46)
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: #46
2023-02-03 19:51:36 +00:00
marpe c4bae77408 Fix infinite recursion on certain Easing functions 2022-11-17 14:40:24 -08:00
cosmonaut bace9f570d add Fix64.Step 2022-09-22 20:17:13 -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
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 3543f074f4 fix erroneous Normalize 2022-07-12 16:06:13 -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 bb0b6daa91 Fix64.Fractional 2022-06-07 17:01:44 -07:00
cosmonaut e5c72c6f46 add lerp to Fix64 2022-05-18 18:28:53 -07:00
cosmonaut 547f7a388e add Fix64 random methods 2022-05-15 12:16:41 -07:00
cosmonaut 2bd88e1dc1 add a few useful functions 2022-05-13 16:26:26 -07:00
cosmonaut 0d93207ae9 Fixed Point Math (#19)
Reviewed-on: #19
2022-05-11 17:34:09 +00:00
cosmonaut 35ded250ed some more collision fast paths 2022-04-05 17:31:27 -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 9f4b69e6aa keyboard uses Button instead of ButtonState 2022-03-24 16:41:00 -07:00
cosmonaut 80c34c6b16 Collision API (#17) 2022-03-24 06:07:34 +00:00
cosmonaut 0fb7e98cb5 add Vector2.Transform Matrix3x2 overload 2022-03-15 23:02:38 -07:00
cosmonaut 8973b3e658 Formatting pass 2022-02-22 21:14:32 -08:00
cosmonaut 3b83eb41da add LookAt method to Quaternion 2021-03-26 12:07:46 -07:00
cosmonaut 7ecb27c98a add vibration support + fix controller axes 2021-03-09 21:48:31 -08:00
cosmonaut 09c03fece9 add Matrix3x2 and rename Matrix to Matrix4x4 2021-02-16 18:07:50 -08:00
cosmonaut 44cd77eecb fix orthographic projection for vulkan NDC space 2021-02-10 18:13:24 -08:00
cosmonaut 45861e122d math struct layouts + change Matrix projections to use right handed NDC space 2021-01-22 00:46:22 -08:00
cosmonaut e251d30aa9 Math 2021-01-20 14:44:59 -08:00