Rodrigo Locatti
944d38efc8
Merge pull request #3502 from namkazt/patch-3
shader_decode: Reimplement BFE instructions
6 years ago
Rodrigo Locatti
131bdfdc6d
Merge pull request #3503 from makigumo/patch-2
maxwell_to_vk: add vertex format eA2B10G10R10UnormPack32
6 years ago
Rodrigo Locatti
a1ee0278e2
Merge pull request #3512 from bunnei/fix-renderdoc
renderer_opengl: Keep frames synchronized when using a GPU debugger.
6 years ago
Rodrigo Locatti
f6d97aa744
Merge pull request #3516 from makigumo/patch-3
vk_shader_decompiler: fix linux build
6 years ago
makigumo
f22915ad99
vk_shader_decompiler: fix linux build
6 years ago
bunnei
6ae05a9a45
renderer_opengl: Keep presentation frames in lock-step when GPU debugging.
- Fixes renderdoc with OpenGL renderer.
6 years ago
bunnei
dc916f35ad
gl_device: Add option to check GL_EXT_debug_tool.
6 years ago
bunnei
4be989abc0
Merge pull request #3508 from FernandoS27/page-table
PageTable: move backing addresses to a children class as the CPU page table does not need them.
6 years ago
Fernando Sahmkow
a261944a6a
Merge pull request #3500 from ReinUsesLisp/incompatible-types
texture_cache: Report incompatible textures as black
6 years ago
Fernando Sahmkow
56fc1688f6
Merge pull request #3499 from ReinUsesLisp/depth-2d-array
texture_cache/surface_params: Force depth=1 on 2D textures
6 years ago
Fernando Sahmkow
ad5120c595
Merge pull request #3490 from ReinUsesLisp/transform-feedbacks
video_core: Initial implementation of transform feedbacks
6 years ago
Fernando Sahmkow
34be867080
PageTable: move backing addresses to a children class as the CPU page table does not need them.
This PR aims to reduce the memory usage in the CPU page table by moving
GPU specific parameters into a child class. This saves 1Gb of Memory for
most games.
6 years ago
Nguyen Dac Nam
2cd41ab020
clang-format
6 years ago
Nguyen Dac Nam
d13e860a08
nit
6 years ago
ReinUsesLisp
00de4b82b4
vk/gl_shader_decompiler: Silence assertion on compute
6 years ago
ReinUsesLisp
289e443898
vk_shader_decompiler: Fix default varying regression
6 years ago
ReinUsesLisp
e7dfc5d8a3
maxwell_3d: Add padding words to XFB entries
Use INSERT_UNION_PADDING_WORDS instead of alignas to ensure a size
requirement.
6 years ago
ReinUsesLisp
dcb8702efe
gl_shader_decompiler: Fix implicit conversion errors
6 years ago
Rodrigo Locatti
bae039e59c
vk_shader_decompiler: Fix implicit type conversion
Co-Authored-By: Mat M. <mathew1800@gmail.com>
6 years ago
ReinUsesLisp
dd16e198e3
vk_rasterizer: Implement transform feedback binding zero
6 years ago
ReinUsesLisp
3d1d9650b9
vk_shader_decompiler: Add XFB decorations to generic varyings
6 years ago
ReinUsesLisp
5cf97a4a19
vk_device: Enable VK_EXT_transform_feedback when available
6 years ago
ReinUsesLisp
ccf434d1f4
vk_device: Shrink formatless capability name size
6 years ago
ReinUsesLisp
8838f3322c
shader/transform_feedback: Expose buffer stride
6 years ago
ReinUsesLisp
fb404d9818
vk_shader_decompiler: Use registry for specialization
6 years ago
ReinUsesLisp
fcc4b81079
gl_rasterizer: Implement transform feedback bindings
6 years ago
ReinUsesLisp
7e6d501452
gl_shader_decompiler: Decorate output attributes with XFB layout
We sometimes have to slice attributes in different parts. This is needed
for example in instances where the game feedbacks 3 components but
writes 4 from the shader (something that is possible with
GL_NV_transform_feedback).
6 years ago
ReinUsesLisp
cb05500d6c
shader/transform_feedback: Add host API friendly TFB builder
6 years ago
Fernando Sahmkow
627a602dd6
Merge pull request #3473 from ReinUsesLisp/shader-purge
gl_shader_cache: Rework shader cache and store texture arrays
6 years ago
Rodrigo Locatti
e836473754
Merge branch 'master' into shader-purge
6 years ago
bunnei
4ee2a50537
Merge pull request #3491 from ReinUsesLisp/polygon-modes
gl_rasterizer: Implement polygon modes and fill rectangles
6 years ago
makigumo
2b56ec192d
fix formatting
6 years ago
makigumo
f00372cc31
maxwell_to_vk: add vertex format eA2B10G10R10UnormPack32
6 years ago
Nguyen Dac Nam
a9e6b48dc0
clang-format
6 years ago
Nguyen Dac Nam
be63f9a0a2
Apply suggestions from code review
Co-Authored-By: Mat M. <mathew1800@gmail.com>
6 years ago
Nguyen Dac Nam
edabb9957a
shader_decode: BFE add ref of reverse parallel method.
6 years ago
Nguyen Dac Nam
8b2bc366f8
shader_decode: implement BREV on BFE
Implement reverse parallel follow: https://graphics.stanford.edu/~seander/bithacks.html#ReverseParallel
6 years ago
Nguyen Dac Nam
3f688622d7
shader_bytecode: update BFE instructions struct.
6 years ago
Nguyen Dac Nam
339b95dfa1
node_helper: add IBitfieldExtract case
6 years ago
Nguyen Dac Nam
86eb7ea0c7
shader_decode: Reimplement BFE instructions
6 years ago
ReinUsesLisp
7fe1da4478
gl_shader_decompiler: Initialize gl_Position on vertex shaders
6 years ago
Fernando Sahmkow
b028bc272e
Merge pull request #3483 from namkazt/patch-1
vk_rasterizer: fix mistype on SetupGraphicsImages
6 years ago
Fernando Sahmkow
4ea067bde4
Merge pull request #3480 from ReinUsesLisp/vk-disabled-ubo
vk_rasterizer: Support disabled uniform buffers
6 years ago
ReinUsesLisp
2bfe536e83
gl_shader_decompiler: Add missing {} on smem GLSL emission
6 years ago
ReinUsesLisp
9fce105f45
texture_cache: Report incompatible textures as black
Some games bind incompatible texture types to certain types.
For example Astral Chain binds a 2D texture with 1 layer (non-array) to
a cubemap slot (that's how it's used in the shader). After testing this
in hardware, the expected "undefined behavior" is to report all pixels
as black.
We already have a path for reporting black textures in the texture
cache. When textures types are incompatible, this commit binds these
kind of textures. This is done on the API agnostic texture cache so no
extra code has to be inserted on OpenGL or Vulkan.
As a side effect, this fixes invalidations of ASTC textures on Astral
Chain. This happened because yuzu detected a cube texture and forced
6 faces, generating a texture larger than what the TIC reported.
6 years ago
ReinUsesLisp
2337a2fdbc
texture_cache/surface_params: Force depth=1 on 2D textures
Sometimes games will sample a 2D array TIC with a 2D access in the
shader. This causes bad interactions with the rest of the texture cache.
To emulate what the game wants to do, force a depth=1 on 2D textures
(not 2D arrays) and let the texture cache handle the rest.
6 years ago
bunnei
586bdc38b0
Merge pull request #3497 from FernandoS27/microprogfile-extend
Small corrections and features to microprofile
6 years ago
bunnei
c59b8e9e8f
Merge pull request #3496 from vitor-k/remove-enum
framebuffer_layout.h: drop the use of enum for screen dimensions
6 years ago
Fernando Sahmkow
babc572a47
NVFlinger: Do the microprofile Flip after processing a valid frame.
6 years ago
Fernando Sahmkow
111ebc6339
Microprofile: Allow accessing token.
6 years ago