-
Notifications
You must be signed in to change notification settings - Fork 2.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Vulkan rendering backend. Early Work-In-Progress #8601
Merged
Changes from all commits
Commits
Show all changes
116 commits
Select commit
Hold shift + click to select a range
c640640
Initial vulkan code.
hrydgard eedd819
Implement a trivial SPIR-V disassembler, just for fun
hrydgard 2a449f7
More vulkan fixing
hrydgard 847cab2
Fixes in VulkanContext
hrydgard 2a71e16
Enable vulkan validation
hrydgard 73d6d2d
More vulkan in thin3d
hrydgard 83a5313
More fixes
hrydgard 129c706
Just some work on the shader generators
hrydgard 4ddca86
Further vulkan stuff
hrydgard cfbecf5
More progress
hrydgard e89a7f0
Update VulkanContext
hrydgard d7e8f84
Support multiple texture formats
hrydgard 776439d
Per-frame descriptor pools. Safe-delete more types.
hrydgard 56e358a
Show Vulkan information in system information.
hrydgard 5216a24
Back to work on the PSP renderer
hrydgard cfcfd40
Start porting TextureCache. Lots of stubbing going on.
hrydgard 4063f7e
Fill out GPU_Vulkan.cpp with what's mostly a copy of GLES_GPU.cpp
hrydgard 3701e2e
Reaches the first clear
hrydgard 49f1e70
Okay, reached the shader generators
hrydgard 906b259
First PSP shaders actually compile
hrydgard ddb36a3
Some descriptor binding fixes
hrydgard 01e3fba
Fix clearing bug, add FIFO_RELAXED flag, etc
hrydgard 6688303
Begin/End frame fixes
hrydgard 28ae840
Pipelines, samplers, description sets, oh my
hrydgard d67d187
Get untextured drawing working! (at least cube.elf)
hrydgard 6141c36
Separate uniform updates from shader updates
hrydgard 6b8c004
Fix indexed drawing, flip rendering the right side up, enable culling
hrydgard ec6bc4a
Vertex format fixes. Flip through drawing the right way up.
hrydgard 4e6a9b8
Fix indexed through-mode drawing
hrydgard 9e34d7d
Remove remains of FragmentTestCache from Vulkan backend
hrydgard 7eeba08
Fix primitive topology. Crashfix.
hrydgard dced84c
Work on texture support, cube.elf works correctly. Delete unused code.
hrydgard 78d5fff
More texture work
hrydgard 87b743e
Fix issues with texture replacement
hrydgard b51b38f
Switch to "Mailbox" frame submission if available, lets us go beyond …
hrydgard 29341e5
Assorted fixes and cleanups.
hrydgard 3bf88d7
Plug the texture memory leak
hrydgard 4c281f1
Fix mixup with fragment shader ubo variables
hrydgard 52e7f06
Add Vulkan to Win32 menu. disable gfx logging in debug by default.
hrydgard 55ef976
More zero-initialization. Fix scope issue, MSVC's optimizer was aggr…
hrydgard 2e99889
The settings to the vertex decoder must match the implementation..
hrydgard 3284899
More clearing fixes. Also fix some memory leaks.
hrydgard 02d1648
Delete pipeline caches asynchronously too
hrydgard 4b978b1
Crashfix, fix left-behind culling disabling
hrydgard d5f685c
WIP trying to fix drawing issues
hrydgard 5b70957
Expose another couple of vulkan device features.
hrydgard ca63cca
WIP: Start work on getting the Vulkan code to compile for Android
hrydgard 5f71b5b
Android: Vulkan builds but doesn't link as we have no link library.
hrydgard 1677697
Vulkan: Don't try to overlap proj with proj_through, will need a diff…
hrydgard 432f276
Cleanups. Don't loop over bones in vshader, causes trouble
hrydgard 5a72564
Cleanup
hrydgard 2481714
Load Vulkan dynamically. Fix Android build (though - Vulkan is not wo…
hrydgard 45cf399
Remove remains of xcb support. Will add back later.
hrydgard c8e0667
Possible buildfix
hrydgard d325aa2
Hook up Vulkan on Android, no idea if it works. Move VulkanContext to…
hrydgard 96273c6
Turn off Vulkan in CMake-based and Qt-based builds, for now
hrydgard e97a6c6
VulkanLoader: Load vkDestroySurfaceKHR
phire 77420f7
VulkanLoader: Detect loader failure on windows.
phire 78b8782
Show backend chooser on Android so we can choose Vulkan.
hrydgard 9c457da
Gets the Vulkan backend running, but not drawing correctly, on Android.
hrydgard b06cf4e
Re-fix depth buffer initialization
hrydgard 8950509
Buildfix (glslang project settings /MT)
hrydgard 432fbe3
Vulkan: We're doing dual src blending wrong (GLSL part, not sure how …
hrydgard 76d8a87
Vulkan: Attempt at fixing dual source blending. Should work but doesn't.
hrydgard 22f47d3
Remove redundant configuration, remove temp hack
hrydgard 2d548d6
Move Vulkan code into a filter.
unknownbrackets 323130e
Don't crash as hard on shader compile error.
unknownbrackets ba7deb7
Fix GE debugger preview in non-buffered.
unknownbrackets 8efbcf8
Use draws for alpha/stencil only clear in Vulkan.
unknownbrackets c92790c
Specify a useful app version when loading Vulkan.
unknownbrackets 6e2e0bf
Should not specify the Vulkan patch version when requesting Vulkan 1.0.
hrydgard b7b0b59
Update Vulkan headers to 1.0.5. Remove references to vulkan-1.lib as …
hrydgard 5ca012e
Fix a bunch of new vulkan validation layer failures.
hrydgard 79fd828
Work around what seems like a validation layer bug (trigger by scrolling
hrydgard 575cc89
Turn off annoying "debug flicker" I used to see if we were swapping b…
hrydgard b0098f7
Replace ugly workaround with VK_LAYER_LUNARG_unique_objects which pre…
hrydgard fe270c5
Typo fix
hrydgard 76b17a4
Revert "Replace ugly workaround with VK_LAYER_LUNARG_unique_objects w…
hrydgard 82205a4
Handle Vulkan init errors more gracefully.
unknownbrackets 0b7e43d
Allow the graphicsContext to be overridden.
unknownbrackets c770349
Switch headless to using graphics contexts.
unknownbrackets 5cee885
Fix UV scale for some vertex formats (like GL). Separate updates of P…
hrydgard 1f1e679
Silence another validation warning
hrydgard 3e268e4
Mem leak fixes, cleanups
hrydgard 242daae
Disable last texture reuse for now.
unknownbrackets 00d617c
Fix bug where we sometimes pushed too much vertex data.
hrydgard 1970d38
Enable the Unpack Subimage path on DX9 (maybe should just remove the …
hrydgard 697f3a8
Matrix depth fix. Still have depth issues though.
hrydgard c2775d4
Default validation on in Debug and off in Release
hrydgard 5ea01ff
Add a secondary way to upload textures - through buffers.
hrydgard 8a62724
Upload PSP textures through a push buffer instead of image copy. More…
hrydgard 84e649f
Vulkan: Enable mipmapping
hrydgard e45c24b
Show how much pushbuffer space is used each frame.
hrydgard a995dd2
Get rid of strange offset in Vulkan matrix converter
hrydgard f289e84
Vulkan: Make sure depth==stencil when clearing.
unknownbrackets dad64b3
Vulkan: Properly set the alpha test ref.
unknownbrackets baa7132
Vulkan: Simplify color testing.
unknownbrackets 3744008
Correct the 5551 format for now.
unknownbrackets da50370
Split out VulkanTexture from VulkanContext.cpp/h into VulkanImage.cpp/h
hrydgard 82f3df1
Vulkan: Initial support for aniso filtering.
unknownbrackets add506a
Cleanup differences in aniso handling.
unknownbrackets 966cb89
Vulkan: Fix our use of dual source blending, re-enable if available.
hrydgard f7113bb
Use separate pushbuffers for UBO/Index/Vertex. This will make decodin…
hrydgard 5d56537
Move VulkanPushBuffer into VulkanMemory.h
hrydgard 2c61b1e
Change the VulkanPushBuffer API to allow for adding support for dynam…
hrydgard 8e9acff
Always specify depthstencil state in pipelines.
hrydgard 5d45413
Fix a resource leak. Request COHERENT memory for pushbuffers.
hrydgard 18d78f9
Minor optimizations
hrydgard d0659f0
No need to align vertex/index data. Will only be harmful for an upcom…
hrydgard d7ffc39
Vulkan: Remove support for software skinning to reduce complexity
hrydgard 5d19f3d
Decode vertex data directly into the vertex pushbuffer, saving a memcpy.
hrydgard 0b1cfaf
Be more economical with UBO pushbuffer space by reusing the last data…
hrydgard 29bc07e
SoftGPU with Vulkan runs but displays black
hrydgard c33c3cf
Vulkan: Add ugly temporary warning about buffered rendering not working
hrydgard 827481d
Combined two uniforms to get the base UBO down to 512b, in order to n…
hrydgard 0e19927
Buildfix to last commit, add a comment
hrydgard File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Seems like this is no longer used?
-[Unknown]