bunnei
9e3c8681ce
Merge pull request #2912 from FernandoS27/async-fixes
...
General fixes to Async GPU
2019-10-16 10:34:48 -04:00
Lioncash
4ef3c0158a
gl_shader_decompiler: Make ExprDecompiler's GetResult() a const member function
...
This is only ever used to read, but not write, the resulting string, so
we can enforce this by making it a const member function.
2019-10-15 19:02:59 -04:00
Lioncash
eb9ca6f6a1
gl_shader_decompiler: Use a std::string_view with GetDeclarationWithSuffix()
...
This allows the function to be completely non-allocating for inputs of
all sizes (i.e. there's no heap cost for an input to convert to a
std::string_view).
2019-10-15 19:00:48 -04:00
Lioncash
09e9ee194b
gl_shader_decompiler: Fold flow_var constant into GetFlowVariable()
...
This is only ever used within this function, so we can narrow it's scope
down.
2019-10-15 18:58:36 -04:00
Lioncash
0d6adf0e50
gl_shader_decompiler: Mark ASTDecompiler/ExprDecompiler parameters as const references where applicable
...
These member functions don't actually modify the input parameter, so we
can make this explicit with the use of const.
2019-10-15 18:57:02 -04:00
Lioncash
274c260939
gl_shader_decompiler: Pass by reference to GenerateTextureArgument()
...
Avoids an unnecessary atomic reference count increment and decrement.
2019-10-15 18:29:37 -04:00
Lioncash
a6eecc8339
gl_shader_decompiler: Use std::holds_alternative within GenerateTexture()
...
This only ever queries if the type exists within the variant, but
doesn't actually do anything with the return value. We can just use
std::holds_alternative for this use case.
2019-10-15 18:25:48 -04:00
Lioncash
c531d0df85
gl_shader_decompiler: Avoid unnecessary copies of MetaImage
...
MetaImage contains a std::vector, so copying here could result in
unnecessary reallocations. Given the operation lives throughout the
entire scope, this is safe to do.
2019-10-15 18:14:55 -04:00
bunnei
45ec5ae319
Merge pull request #2927 from ReinUsesLisp/polygon-offset-units
...
gl_rasterizer: Fix polygon offset units
2019-10-09 15:38:52 -04:00
ReinUsesLisp
3d415bbb32
gl_shader_disk_cache: Properly ignore existing cache
...
Previously old entries where appended to the file even if the shader
cache was ignored at boot. Address that issue.
2019-10-06 18:00:20 -03:00
Fernando Sahmkow
986adabde5
GL_Renderer: Remove lefting snippet.
2019-10-04 19:59:55 -04:00
Fernando Sahmkow
0775dffe14
Gl_Rasterizer: Protect CPU Memory mapping from multiple threads.
2019-10-04 19:59:53 -04:00
Fernando Sahmkow
d9b035cc31
Nvdrv: Do framelimiting only in the CPU Thread
2019-10-04 19:59:50 -04:00
Fernando Sahmkow
4de60d6a41
Shader_ir: Address feedback
2019-10-04 18:52:57 -04:00
Fernando Sahmkow
073ccf8def
vk_shader_decompiler: Clean code and be const correct.
2019-10-04 18:52:55 -04:00
Fernando Sahmkow
8cd340c636
gl_shader_decompiler: Refactor and address feedback.
2019-10-04 18:52:53 -04:00
Fernando Sahmkow
7b55e1c0b1
Shader_Ir: Refactor Decompilation process and allow multiple decompilation modes.
2019-10-04 18:52:50 -04:00
Fernando Sahmkow
5d3c5df7f4
gl_shader_decompiler: Implement AST decompiling
2019-10-04 18:52:50 -04:00
ReinUsesLisp
1b0470b913
gl_rasterizer: Fix polygon offset units
...
For some reason hardware divides polygon offset units by two. This is
visible since drivers multiply the application requested polygon offset
by two.
2019-10-01 02:00:23 -03:00
ReinUsesLisp
6b66665ad2
gl_shader_decompiler: Add tailing return for HUnpack2
2019-09-24 01:03:59 -03:00
ReinUsesLisp
3673f32b82
gl_shader_decompiler: Fix clang build issues
2019-09-24 01:03:27 -03:00
bunnei
6deb6d2b10
Merge pull request #2869 from ReinUsesLisp/suld
...
shader/image: Implement SULD and fix SUATOM
2019-09-23 21:47:03 -04:00
David
cc451e4435
Merge pull request #2870 from FernandoS27/multi-draw
...
Implement a MME Draw commands Inliner and correct host instance drawing
2019-09-22 23:13:02 +10:00
Fernando Sahmkow
8452a180f2
Merge pull request #2891 from FearlessTobi/rod-tex
...
video_core: Implement RGBX16F and lower Surface Copy log severity
2019-09-22 09:11:28 -04:00
David
8a213621b0
Merge pull request #2867 from ReinUsesLisp/configure-framebuffers-clean
...
gl_rasterizer: Remove unused code paths from ConfigureFramebuffers
2019-09-22 23:10:07 +10:00
Fernando Sahmkow
d53d764965
Maxwell3D: Corrections and refactors to MME instance refactor
2019-09-22 07:23:13 -04:00
FearlessTobi
97f509e9d4
Fix clang-format
2019-09-22 02:21:56 +02:00
FearlessTobi
99b280bbf7
video_core: Implement RGBX16F PixelFormat
2019-09-22 02:16:44 +02:00
ReinUsesLisp
79a7463f4c
gl_shader_decompiler: Use uint for images and fix SUATOM
...
In the process remove implementation of SUATOM.MIN and SUATOM.MAX as
these require a distinction between U32 and S32. These have to be
implemented with imageCompSwap loop.
2019-09-21 17:33:52 -03:00
ReinUsesLisp
331d140bb4
shader/image: Implement SULD and remove irrelevant code
...
* Implement SULD as float.
* Remove conditional declaration of GL_ARB_shader_viewport_layer_array.
2019-09-21 17:32:48 -03:00
David
e468ba6cc6
Merge pull request #2868 from ReinUsesLisp/fix-mipmaps
...
maxwell_to_gl: Fix mipmap filtering
2019-09-21 19:57:09 +10:00
bunnei
3bacf9b70a
Merge pull request #2846 from ReinUsesLisp/fixup-viewport-index
...
gl_shader_decompiler: Avoid writing output attribute when unimplemented
2019-09-20 17:11:20 -04:00
bunnei
beabee3696
Merge pull request #2855 from ReinUsesLisp/shfl
...
shader_ir/warp: Implement SHFL for Nvidia devices
2019-09-20 17:10:42 -04:00
Fernando Sahmkow
5034835feb
Rasterizer: Correct introduced bug where a conditional render wouldn't stop a draw call from executing
2019-09-20 15:44:28 -04:00
Fernando Sahmkow
ab61f800b6
Rasterizer: Refactor and simplify DrawBatch Interface.
2019-09-19 11:41:33 -04:00
Fernando Sahmkow
e3fdcdf7f0
Rasterizer: Address Feedback and conscerns.
2019-09-19 11:41:32 -04:00
Fernando Sahmkow
2b5f0e2616
Rasterizer: Refactor draw calls, remove deadcode and clean up.
2019-09-19 11:41:31 -04:00
Fernando Sahmkow
ae03b1ebc7
VideoCore: Corrections to the MME Inliner and removal of hacky instance management.
2019-09-19 11:41:29 -04:00
Fernando Sahmkow
b61203a547
Video Core: initial Implementation of InstanceDraw Packaging
2019-09-19 11:41:27 -04:00
bunnei
47a8e03f14
Merge pull request #2784 from ReinUsesLisp/smem
...
shader_ir: Implement shared memory
2019-09-18 16:26:05 -04:00
ReinUsesLisp
42815d1d24
shader_ir/warp: Implement SHFL
2019-09-17 17:44:07 -03:00
ReinUsesLisp
61eb6e3e00
maxwell_to_gl: Fix mipmap filtering
...
OpenGL texture filters follow GL_<texture_filter>_MIPMAP_<mipmap_filter>
but we were using them in the opposite way.
2019-09-17 03:32:24 -03:00
ReinUsesLisp
64949b515e
gl_rasterizer: Remove unused code paths from ConfigureFramebuffers
2019-09-17 02:50:42 -03:00
Fernando Sahmkow
afcd6355ff
Merge pull request #2851 from ReinUsesLisp/srgb
...
renderer_opengl: Fix sRGB blits
2019-09-15 10:38:10 -04:00
ReinUsesLisp
8718c70d99
renderer_opengl: Fix rebase mistake
2019-09-11 00:09:37 -03:00
ReinUsesLisp
2e6bebb3d2
shader/image: Implement SUATOM and fix SUST
2019-09-10 20:22:31 -03:00
Fernando Sahmkow
997f808f69
gl_rasterizer: Correct sRGB Fix regression
2019-09-10 19:31:42 -03:00
ReinUsesLisp
3e5e983799
renderer_opengl: Fix sRGB blits
...
Removes the sRGB hack of tracking if a frame used an sRGB rendertarget
to apply at least once to blit the final texture as sRGB. Instead of
doing this apply sRGB if the presented image has sRGB.
Also enable sRGB by default on Maxwell3D registers as some games seem to
assume this.
2019-09-10 19:31:42 -03:00
ReinUsesLisp
38a1ebadf3
gl_shader_decompiler: Avoid writing output attribute when unimplemented
2019-09-06 15:02:12 -03:00
ReinUsesLisp
e2aad88d51
gl_shader_decompiler: Keep track of written images and mark them as modified
2019-09-05 23:26:05 -03:00