Commit Graph
1046 Commits
Author SHA1 Message Date
wheremyfoodat 5b90cb7a03 [MIC] Stub SetIIRFilter (Fixes Hatsune Miku) 2023-07-24 23:56:53 +03:00
wheremyfoodatandGitHub c87501f86f Merge pull request #125 from Wunkolo/vulkan-init
Initialize Vulkan Context
2023-07-24 21:05:26 +03:00
wheremyfoodat 4a1ed06525 Update build instructions 2023-07-24 21:04:36 +03:00
wheremyfoodat 71bcfbab69 [Vulkan] Respect GPU_DEBUG_INFO 2023-07-24 19:23:47 +03:00
offtkp 3a21661f45 Refactor http server 2023-07-24 11:43:40 +03:00
Wunkolo e2e49b7291 Add in-place swapchain recreation
Lots of todos, this should probably just be its own self-contained
object to allow the emulator to render "headlessly" regardless of a
swapchain existing or not.
2023-07-23 21:44:39 -07:00
wheremyfoodatandGitHub 4a24a331da Merge pull request #113 from wheremyfoodat/ir
Merging despite it still being partially broken because I don't want this to be isolated in a random branch
2023-07-24 01:11:46 +03:00
wheremyfoodatandGitHub 34b87e50bd Mac pls 2023-07-24 00:04:51 +03:00
Wunkolo c49fd71722 Use numeric_limits rather than ~0ULL 2023-07-22 19:44:09 -07:00
Wunkolo af4163de19 Implement simple swapchain image clearing
Creates a swapchain, and per-swapchain image data for safe parallelism and synchronization.
2023-07-22 19:41:41 -07:00
Wunkolo 90a4c9cf8d Initialize command buffer allocationFix SDL_Vulkan_GetDrawableSize call 2023-07-22 17:13:13 -07:00
Wunkolo fa804ae4c7 Implement swapchain draw loop
Verified on Windows and MacOS(M2)
2023-07-22 16:44:54 -07:00
Wunkolo 26c97eb716 Implement initial swapchain creation 2023-07-22 15:24:41 -07:00
Wunkolo 197e2a4bbd Allocate present/graphics/compute/transfer queue families 2023-07-22 14:23:37 -07:00
Wunkolo da6f880128 Disable timeline semaphore features
This is an optional feature that can be supported conditionally later
2023-07-22 13:34:10 -07:00
Wunkolo 8ace959d72 Fix RendererSW initGraphicsContext prototype 2023-07-22 13:20:57 -07:00
Wunkolo f715cb9478 Install VulkanSDK into CI environment 2023-07-22 13:16:23 -07:00
Wunkolo 428a9d1f1a Fix SDL_Window forward declaration
Should be struct, not class.
2023-07-22 13:16:23 -07:00
Wunkolo 165134ca40 Consider surface-support in device partitions
Use a stable_partitioning of the list of devices the driver gave us with
the addition of checking of the physical device supports the
display-surface that SDL gave us as well.
2023-07-22 13:16:23 -07:00
Wunkolo 0ada1f4e38 Include additional vulkan-extensions that SDL requests
Required for proper surface creation. This gets the surface-creation
call to pass now.
2023-07-22 13:16:23 -07:00
Wunkolo c7a93c4f52 Warn on failed surface creation for vulkan
Vulkan can technically work just fine without presenting to the user, so
consider these failed window procedures as "warnings" during iteration.
2023-07-22 13:16:23 -07:00
Wunkolo 444d50eaf5 Fix instance extensions on MacOS
These preprocessors were combining into a singular string rather than
the name of two individual extensions. Whoops.
2023-07-22 13:16:23 -07:00
Wunkolo eff62d3de7 Disable asserts on Vulkan result codes 2023-07-22 13:16:23 -07:00
Wunkolo d9afb12daf Fix MacOS build 2023-07-22 13:16:23 -07:00
Wunkolo b048d4dd6e Add SDL_Window to initGraphicsContext prototype
This value is needed for vulkan to properly allocate a surface, and would benefit OpenGL to move more of its initialization code into here rather than in `emulator.cpp`.
2023-07-22 13:16:23 -07:00
Wunkolo 870b6a21bf Add initial vulkan instance creation
Headlessly creates a new vulkan instance, with conditional MacOS
support, and enables the `VK_EXT_debug_utils` instance-extension with a
debug-messenger to hook onto validation layer messages.
2023-07-22 13:16:23 -07:00
Wunkolo d2241a25bc Stub Vulkan backend support
A lot of the architecture of the emulator here does not allow for vulkan
to initialize easily since it involves a bit of data to be exchanged
between SDL and Vulkan. This commit just adds the foundational linkage
and library code for vulkan support.
2023-07-22 13:16:23 -07:00
wheremyfoodatandGitHub c98e5fb631 Merge pull request #132 from wheremyfoodat/sw-boilerplate
SW renderer infrastructure
2023-07-22 23:13:19 +03:00
wheremyfoodat 311d69fd2d Always build glad 2023-07-22 22:15:44 +03:00
wheremyfoodat 9da11b95d9 Add glm submodule 2023-07-22 21:57:23 +03:00
wheremyfoodat ae4a4dfc29 Hook up sw rendering backend 2023-07-22 20:47:19 +03:00
wheremyfoodat f328200c65 Add empty sw renderer class 2023-07-22 20:24:49 +03:00
wheremyfoodat 3b067a0eed Merge branch 'master' into ir 2023-07-21 15:45:04 +03:00
wheremyfoodatandGitHub 5dfc17ed18 Merge pull request #131 from wheremyfoodat/cheats
More AR stuff
2023-07-21 15:39:57 +03:00
wheremyfoodat d470a8c8d3 Merge branch 'master' into ir 2023-07-21 15:19:57 +03:00
wheremyfoodat 5d8f75a385 Format 2023-07-21 15:12:40 +03:00
wheremyfoodat 0588b99674 [ActionReplay] More conditional ops 2023-07-21 14:49:04 +03:00
wheremyfoodatandGitHub 52314c188c Merge pull request #130 from wheremyfoodat/cheats
More cheating
2023-07-21 03:56:30 +03:00
wheremyfoodat 4a45599303 [ActionReplay] Add HID stuff 2023-07-21 03:35:22 +03:00
wheremyfoodat d007b2d780 Emulator cleanup, add AR conditionals 2023-07-21 00:55:08 +03:00
wheremyfoodatandGitHub 6dad0f05d1 Merge pull request #129 from wheremyfoodat/cheats
Add preliminary cheat support
2023-07-20 16:28:22 +03:00
wheremyfoodat 08596c1a24 [AR] More opcodes 2023-07-20 16:10:32 +03:00
wheremyfoodatandGitHub fbcb7cee42 Merge pull request #128 from GPUCode/span-across
texture: Use spans
2023-07-20 16:10:00 +03:00
GPUCode a019d98af9 texture: Use spans 2023-07-20 15:43:24 +03:00
wheremyfoodat 8e45b8c324 [ActionReplay] Add 16-bit writes 2023-07-20 14:01:47 +03:00
wheremyfoodat 97f8ea6cfd Get our first AR code running 2023-07-20 13:50:32 +03:00
wheremyfoodat ae69c8f8c4 [Cheats] Split gateway and AR 2023-07-19 21:09:44 +03:00
wheremyfoodat 0904638df0 [Cheats] Add boilerplate 2023-07-19 20:51:45 +03:00
wheremyfoodatandGitHub 5b4f6ef46c Merge pull request #120 from Wunkolo/renderer-null
Add a `null` rendering backend
2023-07-18 23:26:52 +03:00
wheremyfoodat c339c7d1c5 Bonk 2023-07-18 23:11:20 +03:00