Commit Graph

306 Commits

Author SHA1 Message Date
Jack Andersen 03f155fcf5 Move xxhash to boo; cached shader components 2017-03-04 21:54:58 -10:00
Jack Andersen 8bcac27c10 Fix updated glew for Windows 2017-02-24 21:58:09 -10:00
Jack Andersen 0cc794f49d Update glew 2017-02-23 22:26:27 -10:00
Jack Andersen 3197142d1f Vulkan window resize fixes 2017-02-15 17:17:18 -10:00
Jack Andersen f9ed2ba5b8 Make resized() lock platform-dependent 2017-02-15 13:13:05 -10:00
Jack Andersen fef663a5e3 Allow audio AQS buffering to occur during frame idle 2017-02-14 20:00:10 -10:00
Jack Andersen 27a455c61d Touch Bar support 2017-02-08 23:22:12 -10:00
Jack Andersen ed8cc3a57b Conform D3D and Vulkan backends 2017-01-28 21:26:42 -10:00
Jack Andersen 80e93a8e38 Mipmapped array textures 2017-01-28 17:56:17 -10:00
Jack Andersen 7bf2ad48a7 Add ability to unregister audio callback 2017-01-22 21:20:40 -10:00
Jack Andersen ee9f3efe61 Hold shader data bindings through to rendering worker 2017-01-19 17:52:40 -10:00
Jack Andersen 7463426fe6 Default audio mixing to main output 2016-12-13 15:08:42 -10:00
Jack Andersen d309f124b9 More stable D3D11 resource residency 2016-12-11 13:29:08 -10:00
Jack Andersen 1177d50eda Metal pool buffers 2016-12-11 10:20:29 -10:00
Jack Andersen c057068e64 use hash table for pool buffers 2016-12-10 20:18:41 -10:00
Jack Andersen 25fadc7348 Windows sync 2016-12-10 15:50:26 -10:00
Jack Andersen fa45c6750a macOS HIDPI fixes; buffer pools 2016-12-09 16:31:50 -10:00
Jack Andersen 7da2f8e632 Minor Windows include tweaks 2016-09-10 15:21:24 -10:00
Jack Andersen e92e6d7c4c Full spelling of 'OpenGL' for enum consistency 2016-08-23 18:33:20 -10:00
Jack Andersen dbf7b9bcf8 Windows fixes and include refinements 2016-08-17 10:04:19 -10:00
Phillip Stephens 8b923214fd Remove GLES3 enum 2016-08-04 20:20:28 -07:00
Jack Andersen 29364a8024 D3D sync 2016-07-31 18:32:27 -10:00
Jack Andersen 2ec943f0b2 Metal platform fixes 2016-07-31 10:25:02 -10:00
Jack Andersen 66c64cde08 Fallback flow for graphics APIs 2016-07-20 07:14:18 -10:00
Jack Andersen 02c1004d67 Minor adjustments to silence MSVC warnings 2016-07-14 11:29:55 -10:00
Jack Andersen f35ccbaad5 Add voice allocator master volume 2016-07-13 20:16:40 -10:00
Jack Andersen 9552801968 Working linearized Submixes 2016-07-13 18:59:41 -10:00
Jack Andersen 86003c4ac4 Initial multiple-referencing submix refactor 2016-07-12 17:06:12 -10:00
Jack Andersen 44e8317d49 Refactor GLSL shader bindings 2016-07-07 14:05:22 -10:00
Jack Andersen c47780527d Add WAVOut Voice Backend for offline Audio mixing 2016-07-06 11:29:06 -10:00
Jack Andersen d9abcb8cf5 Refactored audio supply dispatch across two passes 2016-07-04 15:06:22 -10:00
Jack Andersen f4dc3626e5 sRGB mapping working on Intel; other platforms need testing 2016-07-01 19:19:28 -10:00
Jack Andersen 0c99623aa9 Vulkan platform conformances 2016-07-01 17:44:57 -10:00
Jack Andersen 295d100ca3 Initial vulkan rendering within URDE 2016-06-30 16:30:29 -10:00
Jack Andersen 0e48afcc02 Initial working booTest on Vulkan 2016-06-29 18:54:29 -10:00
Jack Andersen fba6d10b37 Use Vulkan Blit command rather than Copy 2016-06-28 16:00:02 -10:00
Jack Andersen c7df255c24 Several Vulkan bug fixes, state setup validates 2016-06-26 18:33:01 -10:00
Jack Andersen fb259a7d12 More Vulkan bug fixes 2016-06-25 14:33:22 -10:00
Jack Andersen 9bc1193e3f Update glslang, some Vulkan bug fixes 2016-06-23 17:03:06 -10:00
Jack Andersen 52c0cca593 Improved MIDI timing interface 2016-06-07 18:37:21 -10:00
Jack Andersen 521b490d0f Support for runtime changing of audio output endpoint under WASAPI 2016-05-31 18:53:57 -10:00
Jack Andersen f1e07861ca dry-main, wet-submix audio routing 2016-05-30 19:16:29 -10:00
Jack Andersen 9b13390447 Integrate Win32 MIDI API 2016-05-22 19:34:20 -10:00
Jack Andersen 59f42ae85f Add OS X CoreMIDI interfaces 2016-05-22 13:09:32 -10:00
Jack Andersen 53f4e32c46 Add channel-matrix slewing 2016-05-21 11:45:55 -10:00
Jack Andersen df61d6678b Functor-based MIDI command receiving 2016-05-20 12:57:34 -10:00
Jack Andersen 7756fcaf76 Add MIDI interface classes 2016-05-19 20:16:07 -10:00
Jack Andersen 77507459cc Add 5ms callback registration for precise audio updates 2016-05-19 00:14:21 -10:00
Jack Andersen 8ff2b9c404 Add IMIDIPort, initial ALSA midiport implementation 2016-05-18 16:18:52 -10:00
Jack Andersen ceff1934c1 Add `slew` option to pitch-update function 2016-05-16 17:46:03 -10:00
Jack Andersen 89b0fa5cd6 Add API for reporting submix sample rate and format 2016-05-13 18:47:31 -10:00
Jack Andersen b3e77c4384 DeferredWindowEvents moved to boo 2016-05-10 18:50:26 -10:00
Jack Andersen f86b9706d4 Update effect API to include sample count info 2016-05-09 16:29:51 -10:00
Jack Andersen 08a4c5d7a8 Fix some submix issues 2016-05-07 12:11:45 -10:00
Jack Andersen 4b969fd475 Implement AudioSubmix 2016-05-06 18:28:32 -10:00
Jack Andersen 4cec163804 depth range part of setViewport now 2016-04-04 15:49:08 -10:00
Jack Andersen 5b43b31529 Vulkan API sync 2016-04-03 20:36:28 -10:00
Jack Andersen 4a2c32c2a9 Metal extension shader support 2016-04-03 20:13:11 -10:00
Jack Andersen 01649d42f6 Windows fixes 2016-04-02 17:30:44 -10:00
Jack Andersen 83f55a54d9 Dedicated ThreadLocalPtr header 2016-03-31 18:24:05 -10:00
Jack Andersen 679ba36c4c Metal lambda sync 2016-03-30 11:07:12 -10:00
Jack Andersen ecc65a9fd5 D3D sync of new lambda API 2016-03-30 10:42:36 -10:00
Jack Andersen bf6b4e37e8 Major GraphicsDataFactory lambda-API refactor 2016-03-30 09:14:17 -10:00
Jack Andersen 4d33cec75c Add selectable topology to Vulkan 2016-03-23 22:15:15 -10:00
Jack Andersen 6600ff208c Draw primitive now settable via pipeline object 2016-03-23 22:05:19 -10:00
Jack Andersen 1eb46301c0 Overhauled audio system, now with internal mixing and sample-rate-conversion 2016-03-23 14:01:57 -10:00
Jack Andersen e1964f57a9 Updates to support pumped audio voices (ALSA only for now) 2016-03-07 21:09:58 -10:00
Jack Andersen 5603164a2d Update LICENSE date and Vulkan tweaks 2016-03-06 17:09:46 -10:00
Jack Andersen 8ac929d140 Humungous refactor 2016-03-04 13:02:18 -10:00
Jack Andersen 7bdabb5ed3 Metal stubs for resolveBindTexture 2016-02-24 19:06:13 -10:00
Jack Andersen fec5218666 Preparation for ResolveBindTexture test 2016-02-24 16:53:23 -10:00
Jack Andersen b11b727c4d OS X fixes 2016-02-24 11:07:48 -10:00
Jack Andersen 6de30424e3 GLSL bindings and Vulkan bug fixes 2016-02-23 17:11:58 -10:00
Jack Andersen 74e2f47bcf Tons of Vulkan bug fixes 2016-02-22 15:13:03 -10:00
Jack Andersen ae487b70f3 Xlib integration of Vulkan 2016-02-21 16:47:45 -10:00
Jack Andersen 1037b37f9a Major Vulkan commit 2016-02-20 20:27:54 -10:00
Jack Andersen 77e9492b43 better OpenGL mipmap configuration 2016-02-16 09:41:16 -10:00
Jack Andersen 1ab63cfb18 No-context texture constructor (OpenGL only for now) 2016-02-15 19:47:09 -10:00
Jack Andersen 502debaedd Initial AudioQueueServices implementation 2016-01-28 15:17:19 -10:00
Jack Andersen 43376ff416 Initial audio interface classes 2016-01-28 13:53:51 -10:00
Jack Andersen 5a2fb0768b Preliminary Vulkan shader pipeline factory 2016-01-14 12:46:05 -10:00
Jack Andersen a79f55c5c1 Integrate glslang CMake targets 2016-01-14 11:10:48 -10:00
Jack Andersen 6afe4eaff7 Merge branch 'master' of https://github.com/AxioDL/libBoo 2016-01-09 20:42:20 -10:00
Jack Andersen f20c1bcfc2 Add crosshairs mouse cursor 2016-01-09 20:42:00 -10:00
Phillip Stephens 799f3b1275 Fix embedded glew include 2016-01-08 18:42:29 -08:00
Jack Andersen 45fb66540f GraphicsToken bool operator 2016-01-06 14:35:57 -10:00
Jack Andersen 7eeebce37c Minor Xlib refactor 2016-01-02 13:10:35 -10:00
Jack Andersen 6ee5e9011b D3D11 Buffer update fix 2016-01-02 11:16:50 -10:00
Jack Andersen bcfff2bf7f Fix Win32 repeat key test 2016-01-01 18:15:41 -10:00
Jack Andersen 4d7e9656f1 Add SWindowRect::intersect() 2016-01-01 16:26:59 -10:00
Jack Andersen 9c17350524 Add system scroll-acceleration property 2015-12-31 14:15:34 -10:00
Jack Andersen 52692b0459 Xlib in sync with new text system 2015-12-27 13:23:17 -10:00
Jack Andersen fb1282c3e4 initial TextInput context callback 2015-12-25 19:21:13 -10:00
Jack Andersen a933edcc40 Working Input Method support 2015-12-24 10:55:23 -10:00
Jack Andersen aab693ff2f Clipboard support for Xlib; initial IM support 2015-12-23 17:30:52 -10:00
Jack Andersen 1ed592e0a1 Xlib input text-case handling 2015-12-22 20:10:46 -10:00
Jack Andersen 01ab873e06 OS X updates; post-frame handler event 2015-12-20 14:40:52 -10:00
Jack Andersen 511ac1fad7 Add ibeam cursor for Xlib 2015-12-19 18:39:48 -10:00
Jack Andersen 86daf8b3f0 Windows header include fix 2015-12-18 11:59:54 -10:00
Jack Andersen 8a33d74c13 OS X thread-local fixes 2015-12-18 11:33:53 -10:00
Jack Andersen aa787eb427 IGraphicsDataToken rename 2015-12-17 17:25:23 -10:00
Jack Andersen 7224d5fdf7 Thread safety additions for OpenGL 2015-12-13 18:54:57 -10:00
Jack Andersen 3e4ed5ad1f OpenGL deferred delete fix 2015-12-07 15:49:17 -10:00
Jack Andersen 3daa5df720 Brought Metal renderer in sync 2015-12-04 15:12:52 -10:00
Jack Andersen db40c2bff0 Brought D3D11/12 in sync 2015-12-04 15:03:44 -10:00
Jack Andersen d145e15ecb IGraphicsDataToken and IGraphicsCommandQueue::stopRenderer() 2015-12-04 14:41:30 -10:00
Jack Andersen be7d0fce3f Window coordinates now signed throughout for Xlib 2015-12-03 15:33:43 -10:00
Jack Andersen fc4234708f Brought metal in sync 2015-12-02 12:25:30 -10:00
Jack Andersen 13cf33d75f Internal dynamic buffer updating (OpenGL only) 2015-12-02 11:09:49 -10:00
Jack Andersen c34b93f00f Windows bug fixes 2015-11-30 14:33:14 -10:00
Jack Andersen 5843840411 Added cursor change method 2015-11-29 14:20:20 -10:00
Jack Andersen c0b93f39d8 Instanced rendering support in Metal 2015-11-27 18:07:53 -10:00
Jack Andersen 783b4d9c5e Update IWindow.hpp 2015-11-26 19:23:15 -10:00
Jack Andersen c5de075c0d Array texture fix 2015-11-26 13:03:01 -10:00
Jack Andersen 6c83991e2a More vertex semantic adjustments 2015-11-25 14:22:05 -10:00
Jack Andersen 3bcfa99b5a Updates to support instanced rendering (OpenGL only) 2015-11-24 16:14:30 -10:00
Jack Andersen 8682485dea Added array texture factory method (OGL only right now) 2015-11-22 22:49:53 -10:00
Phillip Stephens e7cbf17150 Add ifndef before ENABLE_BITWISE_ENUM 2015-11-21 20:18:30 -08:00
Jack Andersen d040e20096 OS X enum refactor fixes 2015-11-20 16:16:15 -10:00
Jack Andersen c9edf8dd85 Major scoped-enum refactor 2015-11-20 15:12:22 -10:00
Jack Andersen 62fae60042 HECL metal shader support 2015-11-18 13:55:25 -10:00
Jack Andersen 998255efd5 Working HECL shader generation on D3D11/12 2015-11-17 20:14:49 -10:00
Jack Andersen 4d133edd2c Window resizing stability fixes 2015-11-16 20:41:32 -10:00
Jack Andersen 181a038901 Bug fixes for HECL 2015-11-16 10:43:27 -10:00
Jack Andersen d75c675f7a Updates for HECL support 2015-11-15 18:29:31 -10:00
Jack Andersen a2ffab3ff5 Proper multithreaded locking for Xlib 2015-11-11 18:31:59 -10:00
Jack Andersen 6d3b8d3198 Windows fixes 2015-11-10 10:11:08 -10:00
Jack Andersen 2be32d6ca4 Initial integration of Metal API 2015-11-08 16:24:45 -10:00
Jack Andersen 606e3676b1 OS X event fixes and prep for Metal API 2015-11-07 14:36:38 -10:00
Jack Andersen 8951008cca Added Windows OpenGL support. D3D11 stability fixes 2015-11-06 15:43:12 -10:00
Jack Andersen 0923254b39 Lots of D3D11 implemented 2015-11-05 17:20:58 -10:00
Phillip Stephens 1e5ae0c89b Temporary close handling for Xlib (needs a proper solution) 2015-11-05 01:28:51 -08:00
Phillip Stephens 50075a729a Implement motif window styles 2015-11-04 23:30:40 -08:00
Jack Andersen 5d62f6593b Initial D3D window appearing 2015-11-04 14:00:29 -10:00
Jack Andersen bc17d5aba8 Fixed rendering for decoupled target texture 2015-11-03 15:58:36 -10:00
Jack Andersen 30898c6549 OpenGL API sync 2015-11-03 15:02:05 -10:00
Jack Andersen 7367c9a952 Merge branch 'master' of https://github.com/AxioDL/libBoo 2015-11-03 14:27:59 -10:00
Jack Andersen bc84471d4d More D3D12 work 2015-11-03 14:27:32 -10:00
Phillip Stephens 5bb1198dd1 Fix intermittent upload failures on NVIDIA GPUs 2015-11-03 14:13:15 -08:00
Jack Andersen facacd4e95 More D3D12 work 2015-11-02 18:19:41 -10:00
Phillip Stephens 4f650ce5f5 Rename classes to match their functionality/API better 2015-11-02 02:09:25 -08:00
Phillip Stephens d5cd0bfb50 Various fixes 2015-11-02 01:31:06 -08:00
Jack Andersen e54c8a7c6b Initial round of D3D12 implementation 2015-11-01 19:41:24 -10:00
Jack Andersen f796d66407 All kinds of fixes and updates 2015-10-31 14:06:56 -10:00
Jack Andersen d013f1e25c Integrated GLEW; began migration to Xlib 2015-10-30 18:28:21 -10:00
Jack Andersen b73ecde4aa Added LogVisor 2015-10-29 20:26:02 -10:00
Jack Andersen 2814da014f Further GLES3 implementation 2015-10-29 14:00:56 -10:00
Jack Andersen 5435f01d20 lots of initial GLES3 renderer implementation 2015-10-28 18:44:38 -10:00
Jack Andersen 3db5a7e211 GLX tweaks 2015-10-27 15:47:55 -10:00
Jack Andersen 13edb3eb01 OS X fixes 2015-09-02 09:09:13 -10:00
Jack Andersen 49771b0e15 Windows refactors 2015-08-30 17:40:58 -10:00
Jack Andersen f9c4ed0761 Dolphin controller updates 2015-08-28 15:30:21 -10:00
Jack Andersen 12e5948d31 some app flow redesign 2015-08-27 14:10:46 -10:00
Phillip Stephens 10c14a0c39 Merge branch 'master' of https://github.com/RetroView/libBoo into ds3 2015-08-18 16:32:19 -07:00
Jack Andersen 2c2991d44e switched to unique_ptr due to expected app main use 2015-08-18 12:50:52 -10:00
Jack Andersen 87ab129e01 Compile fixes 2015-08-18 12:43:30 -10:00