Commit Graph

316 Commits (3bc25bc3a1658d641f93316266404d8747822307)

Author SHA1 Message Date
cosmonaut b380707462 Video Optimization (#22)
- 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: MoonsideGames/MoonWorks#22
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 (#21)
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: MoonsideGames/MoonWorks#21
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 0b0a6feff5 make note of Theorafile dependency 2022-08-02 16:57:07 -07:00
cosmonaut 1e6455d070 fix StreamingSoundOgg seek 2022-08-02 14:15:16 -07:00
cosmonaut efb9893aef Theora video support + audio improvements (#20)
- `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: MoonsideGames/MoonWorks#20
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 d6bd11d63f add Documentation to README 2022-07-13 12:33:08 -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 97fad21c0c update Wellspring 2022-06-17 14:09:23 -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 a10f18b4eb update README dependencies 2022-06-04 16:09:56 -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