summaryrefslogtreecommitdiffstats
path: root/src/video_core/renderer_vulkan/vk_pipeline_cache.h (unfollow)
Commit message (Collapse)AuthorFilesLines
2020-04-29vulkan: Remove unnecessary includesLioncash1-2/+0
Reduces some header churn and reduces rebuilds when some header internals change. While we're at it we can also resolve a missing include in buffer_cache.
2020-04-26shader/memory_util: Deduplicate codeReinUsesLisp1-4/+4
Deduplicate code shared between vk_pipeline_cache and gl_shader_cache as well as shader decoder code. While we are at it, fix a bug in gl_shader_cache where compute shaders had an start offset of a stage shader.
2020-04-23vk_pipeline_cache: Unify pipeline cache keys into a single operationReinUsesLisp1-27/+22
This allows us to call Common::CityHash and std::memcmp only once for GraphicsPipelineCacheKey. While we are at it, do the same for compute.
2020-04-22ShaderCache/PipelineCache: Cache null shaders.Fernando Sahmkow1-0/+3
2020-04-11renderer_vulkan: Drop Vulkan-HppReinUsesLisp1-3/+3
2020-04-06Shader/Pipeline Cache: Use VAddr instead of physical memory for addressing.Fernando Sahmkow1-6/+1
2020-03-15vk_rasterizer: Reimplement clears with vkCmdClearAttachmentsReinUsesLisp1-3/+3
2020-03-13vk_shader_decompiler: Use registry for specializationReinUsesLisp1-0/+4
2020-03-09video_core: Rename "const buffer locker" to "registry"ReinUsesLisp1-2/+2
2020-02-24vk_shader_decompiler: Implement indexed texturesReinUsesLisp1-1/+1
Implement accessing textures through an index. It uses the same interface as OpenGL, the main difference is that Vulkan bindings are forced to be arrayed (the binding index doesn't change for stacked textures in SPIR-V).
2020-01-07vk_pipeline_cache: Initial implementationReinUsesLisp1-1/+108
Given a pipeline key, this cache returns a pipeline abstraction (for graphics or compute).
2020-01-07vk_graphics_pipeline: Initial implementationReinUsesLisp1-0/+32
This abstractio represents the state of the 3D engine at a given draw. Instead of changing individual bits of the pipeline how it's done in APIs like D3D11, OpenGL and NVN; on Vulkan we are forced to put everything together into a single, immutable object. It takes advantage of the few dynamic states Vulkan offers.
2020-01-07vk_compute_pipeline: Initial implementationReinUsesLisp1-0/+39
This abstraction represents a Vulkan compute pipeline.
2020-01-07vk_pipeline_cache: Add file and define descriptor update template fillerReinUsesLisp1-0/+22
This function allows us to share code between compute and graphics pipelines compilation.