aboutsummaryrefslogtreecommitdiff
path: root/src/video_core
AgeCommit message (Collapse)Author
2020-02-13gl_resource_manager: Add managed query classReinUsesLisp
2020-02-13Merge pull request #3395 from FernandoS27/queriesbunnei
GPU: Refactor queries implementation and correct GPU Clock.
2020-02-13gl_rasterizer: Use the least generic OpenGL draw function possibleReinUsesLisp
This may help some implementations.
2020-02-13vk_shader_decompiler: Fix vertex id and instance idReinUsesLisp
Vulkan's VertexIndex and InstanceIndex don't match with hardware. This is because Nvidia implements gl_VertexID and gl_InstanceID. The math that relates these is: gl_VertexIndex = gl_BaseVertex + gl_VertexID gl_InstanceIndex = gl_InstanceIndex + gl_InstanceID To emulate it using what Vulkan's SPIR-V offers (the *Index variants) this commit substracts gl_Base* from gl_*Index to obtain the OpenGL and hardware's equivalent.
2020-02-13GPU: Address Feedback.Fernando Sahmkow
2020-02-11Merge pull request #3376 from ReinUsesLisp/point-spritebunnei
gl_rasterizer: Implement GL_POINT_SPRITE
2020-02-10GPU: Implement GPU Clock correctly.Fernando Sahmkow
2020-02-10Maxwell3D: Correct query reporting.Fernando Sahmkow
2020-02-09Merge pull request #3372 from ReinUsesLisp/fix-back-stencilbunnei
maxwell_3d: Fix stencil back mask
2020-02-08Merge pull request #3387 from bunnei/gpu-mpscqueuebunnei
gpu_thread: Use MPSCQueue for GPU commands.
2020-02-07gpu_thread: Use MPSCQueue for GPU commands.bunnei
- Necessary for multiple service threads.
2020-02-07video_core: memory_manager: Use GPU interface for cache functions.bunnei
2020-02-07Merge pull request #3378 from ReinUsesLisp/uscaledbunnei
maxwell_to_gl: Implement R8G8_USCALED
2020-02-07Merge pull request #3369 from ReinUsesLisp/shfbunnei
shader/shift: Implement SHF
2020-02-06Merge pull request #3362 from ReinUsesLisp/fix-instancedbunnei
gl_rasterizer: Fix instanced draw arrays
2020-02-05shader/decode: Fix constant buffer offsetsReinUsesLisp
Some instances were using cbuf34.offset instead of cbuf34.GetOffset(). This returned the an invalid offset. Address those instances and rename offset to "shifted_offset" to avoid future bugs.
2020-02-04maxwell_to_gl: Implement R8G8_USCALEDReinUsesLisp
2020-02-04maxwell_to_gl: Reduce unimplemented formats to LOG_ERRORReinUsesLisp
2020-02-04vk_rasterizer: Use noexcept variants of std::bitsetReinUsesLisp
Removes bounds checking from "texceptions" instances.
2020-02-04Merge pull request #3357 from ReinUsesLisp/bfi-rcbunnei
shader/bfi: Implement register-constant buffer variant
2020-02-04gl_rasterizer: Implement GL_POINT_SPRITEReinUsesLisp
OpenGL core defaults to GL_POINT_SPRITE, meanwhile on OpenGL compatibility we have to explicitly enable it. This fixes gl_PointCoord's behaviour.
2020-02-04Merge pull request #3356 from ReinUsesLisp/fcmpbunnei
shader/arithmetic: Implement FCMP
2020-02-03Merge pull request #3337 from ReinUsesLisp/vulkan-stagedbunnei
yuzu: Implement Vulkan frontend
2020-02-02maxwell_3d: Fix stencil back maskReinUsesLisp
2020-02-01shader: Remove curly braces initializers on shared pointersReinUsesLisp
2020-02-01Merge pull request #3282 from FernandoS27/indexed-samplersbunnei
Partially implement Indexed samplers in general and specific code in GLSL
2020-02-01shader/shift: Implement SHIFT_RIGHT_{IMM,R}ReinUsesLisp
Shifts a pair of registers to the right and returns the low register.
2020-02-01shader/shift: Implement SHF_LEFT_{IMM,R}ReinUsesLisp
Shifts a pair of registers to the left and returns the high register.
2020-01-30Merge pull request #3347 from ReinUsesLisp/local-membunnei
shader/memory: Implement LDL.S16, LDS.S16, STL.S16 and STS.S16
2020-01-30gl_rasterizer: Fix instanced draw arraysReinUsesLisp
glDrawArrays was being used when the draw had a base instance specified. This commit removes the draw parameters abstraction and fixes the mentioned issue.
2020-01-29Merge pull request #3350 from ReinUsesLisp/atombunnei
shader/memory: Implement ATOM.ADD
2020-01-29yuzu: Implement Vulkan frontendReinUsesLisp
Adds a Qt and SDL2 frontend for Vulkan. It also finishes the missing bits on Vulkan initialization.
2020-01-29settings: Add settings for graphics backendReinUsesLisp
2020-01-29shader/other: Fix skips for SYNC and BRKReinUsesLisp
2020-01-29shader/other: Stub S2R LaneIdReinUsesLisp
2020-01-29buffer_cache: Delay buffer destructionsReinUsesLisp
Delay buffer destruction some extra frames to avoid destroying buffers that are still being used from older frames. This happens on Nvidia's driver with mailbox.
2020-01-29Merge pull request #3355 from ReinUsesLisp/break-downbunnei
texture_cache/surface_base: Fix layered break down
2020-01-29Merge pull request #3358 from ReinUsesLisp/implicit-texture-cachebunnei
gl_texture_cache: Silence implicit sign cast warnings
2020-01-28Merge pull request #3359 from ReinUsesLisp/assert-point-sizebunnei
gl_shader_decompiler: Remove UNIMPLEMENTED for gl_PointSize
2020-01-28gl_shader_decompiler: Remove UNIMPLEMENTED for gl_PointSizeReinUsesLisp
This was implemented by a previous commit and it's no longer required.
2020-01-27gl_texture_cache: Silence implicit sign cast warningsReinUsesLisp
2020-01-27shader/bfi: Implement register-constant buffer variantReinUsesLisp
It's the same as the variant that was implemented, but it takes the operands from another source.
2020-01-27shader/arithmetic: Implement FCMPReinUsesLisp
Compares the third operand with zero, then selects between the first and second.
2020-01-26texture_cache/surface_base: Fix layered break downReinUsesLisp
Layered break downs was passing "layer" as a "depth" parameter. This commit addresses that.
2020-01-26gl_texture_cache: Properly implement depth/stencil samplingReinUsesLisp
This addresses the long standing issue of compatibility vs. core profiles on OpenGL, properly implementing depth vs. stencil sampling depending on the texture swizzle.
2020-01-26shader/memory: Implement ATOM.ADDReinUsesLisp
ATOM operates atomically on global memory. For now only add ATOM.ADD since that's what was found in commercial games. This asserts for ATOM.ADD.S32 (handling the others as unimplemented), although ATOM.ADD.U32 shouldn't be any different. This change forces us to change the default type on SPIR-V storage buffers from float to uint. We could also alias the buffers, but it's simpler for now to just use uint. While we are at it, abstract the code to avoid repetition.
2020-01-25Shader_IR: Address feedback.Fernando Sahmkow
2020-01-25shader/memory: Implement STL.S16 and STS.S16ReinUsesLisp
2020-01-25shader/memory: Implement unaligned LDL.S16 and LDS.S16ReinUsesLisp
2020-01-25shader/memory: Move unaligned load/store to functionsReinUsesLisp