Commit Graph

6534 Commits

Author SHA1 Message Date
ReinUsesLisp a648629d8a astc: Implement a fast precompiled alternative for Replicate 2020-04-09 03:58:25 -03:00
ReinUsesLisp 10d59444d9 astc: Move Replicate to a constexpr LUT when possible 2020-04-09 03:35:07 -03:00
ReinUsesLisp 14ea2ced5b astc: Make InputBitStream constexpr 2020-04-09 02:54:05 -03:00
ReinUsesLisp 2f105bd298 astc: OutputBitStream style changes and make it constexpr 2020-04-09 02:37:51 -03:00
bunnei 85d89e0758 Merge pull request #3601 from ReinUsesLisp/some-shader-encodings
video_core/shader: Add some instruction and S2R encodings
2020-04-09 00:17:39 -04:00
ReinUsesLisp 5ee9b93d2a gl_texture_cache: Attach view instead of base texture for layered attachments
This way we are not ignoring the base layer of the current texture.
2020-04-08 22:20:25 -03:00
Fernando Sahmkow cacbe85d13 VkRasterizer: Eliminate Legacy code. 2020-04-08 18:59:09 -04:00
Fernando Sahmkow 99e0ffe21b Memory: Correct GCC errors. 2020-04-08 18:09:16 -04:00
Fernando Sahmkow f00f6bbdb6 Memory: Address Feedback. 2020-04-08 13:40:46 -04:00
Fernando Sahmkow 3e7aecbd3c GPUMemoryManager: Improve safety of memory reads. 2020-04-08 12:08:06 -04:00
ReinUsesLisp 8591cb316a video_core/textures: Move GetMaxAnisotropy to cpp file 2020-04-07 20:47:31 -03:00
ReinUsesLisp 8a031dc233 video_core/texture: Use a LUT to convert sRGB texture borders
This is a reversed look up table extracted from
https://gist.github.com/rygorous/2203834#file-gistfile1-cpp-L41-L62

that is used in
https://github.com/devkitPro/deko3d/blob/04d4e9e587fa3dc5447b43d273bc45f440226e41/source/maxwell/tsc_generate.cpp#L38

Games usually bind 0xFD expecting a float texture border of 1.0f.
The conversion previous to this commit was multiplying the uint8 sRGB
texture border color by 255. This is close to 1.0f but when that
difference matters, some graphical glitches appear.

This look up table is manually changed in the edges, clamping towards
0.0f and 1.0f.

While we are at it, move this logic to its own translation unit.
2020-04-07 20:38:14 -03:00
bunnei 738e281da2 Merge pull request #3599 from ReinUsesLisp/revert-3499
Revert "Merge pull request #3499 from ReinUsesLisp/depth-2d-array"
2020-04-07 16:51:41 -04:00
ReinUsesLisp 30bbdc653c yuzu: Drop SDL2 and Qt frontend Vulkan requirements
Create Vulkan instances and surfaces from the Vulkan backend.
2020-04-07 16:32:19 -03:00
Rodrigo Locatti 43f13f7fa1 Merge pull request #3489 from namkazt/patch-2
shader: implement SULD.D bits32/64
2020-04-07 16:21:09 -03:00
Nguyen Dac Nam ca3161ee7e address nit. 2020-04-07 18:29:30 +07:00
ReinUsesLisp 3140098db9 renderer_vulkan: Query device names from the backend 2020-04-07 02:23:23 -03:00
ReinUsesLisp dbebae0027 shader/conversion: Implement I2I sign extension, saturation and selection
Reimplements I2I adding sign extension, saturation (clamp source value
to the destination), selection and destination sizes that are not 32
bits wide.

It doesn't implement CC yet.
2020-04-07 02:19:44 -03:00
Nguyen Dac Nam e2349b001e Apply suggestions from code review
Co-Authored-By: Rodrigo Locatti <reinuseslisp@airmail.cc>
2020-04-07 07:55:49 +07:00
Fernando Sahmkow 3390d627b8 Clang Format. 2020-04-06 09:23:08 -04:00
Fernando Sahmkow 02f2fa510d Shader/Pipeline Cache: Use VAddr instead of physical memory for addressing. 2020-04-06 09:23:07 -04:00
Fernando Sahmkow 6c9f7db8af Query Cache: Use VAddr instead of physical memory for adressing. 2020-04-06 09:23:07 -04:00
Fernando Sahmkow 3728c7160f Buffer Cache: Use vAddr instead of physical memory. 2020-04-06 09:23:06 -04:00
Fernando Sahmkow 5b66d2bf74 Texture Cache: Use vAddr instead of physical memory for caching. 2020-04-06 09:23:05 -04:00
Fernando Sahmkow 5cc292ac3c GPU: Setup Flush/Invalidate to use VAddr instead of CacheAddr 2020-04-06 09:21:46 -04:00
Fernando Sahmkow 3a6baefff4 Merge pull request #3513 from ReinUsesLisp/native-astc
video_core: Use native ASTC when available
2020-04-06 09:21:11 -04:00
namkazy a18e88be44 shader_decode: SULD.D using std::pair instead of out parameter 2020-04-06 13:46:55 +07:00
namkazy 319f68c624 shader_decode: SULD.D avoid duplicate code block. 2020-04-06 13:34:06 +07:00
namkazy a6e264cd58 shader_decode: SULD.D fix conversion error. 2020-04-06 13:26:58 +07:00
namkazy ca16317add shader_decode: SULD.D implement bits64 and reverse shader ir init method to removed shader stage. 2020-04-06 13:09:19 +07:00
ReinUsesLisp d222e63967 shader/memory: Implement RED.E.ADD
Implements a reduction operation. It's an atomic operation that doesn't
return a value.

This commit introduces another primitive because some shading languages
might have a primitive for reduction operations.
2020-04-06 02:24:47 -03:00
ReinUsesLisp e38cbb78ad shader/memory: Add "using std::move" 2020-04-06 02:18:14 -03:00
ReinUsesLisp e50c604505 shader/memory: Minor fixes in ATOM 2020-04-06 00:54:22 -03:00
Fernando Sahmkow f6d6689b13 Merge pull request #3592 from ReinUsesLisp/ipa
shader_decompiler: Remove FragCoord.w hack and change IPA implementation
2020-04-05 19:29:40 -04:00
Fernando Sahmkow 5e8119cf04 Merge pull request #3589 from ReinUsesLisp/fix-clears
gl_rasterizer: Mark cleared textures as dirty
2020-04-05 19:29:26 -04:00
namkazy d61a333362 silent warning (conversion error) 2020-04-05 16:02:07 +07:00
namkazy 15366b7474 shader_decode: SULD.D -> SINT actually same as UNORM. 2020-04-05 15:18:42 +07:00
namkazy 615eecd94e shader_decode: SULD.D fix decode SNORM component 2020-04-05 14:46:43 +07:00
namkazy dbd8cf0304 clang-format 2020-04-05 12:57:50 +07:00
namkazy c26cea4ad2 shader_decode: get sampler descriptor from registry. 2020-04-05 12:54:48 +07:00
namkazy 8990c9a814 tweaking. 2020-04-05 10:31:32 +07:00
Nguyen Dac Nam 524c42bec8 clang-format 2020-04-05 10:31:31 +07:00
namkazy 2799ef5f43 cleanup unuse params 2020-04-05 10:31:31 +07:00
namkazy 35995111c9 cleanup debug code. 2020-04-05 10:31:30 +07:00
namkazy 2f42b04ae5 reimplement get component type, uncomment mistaken code 2020-04-05 10:31:30 +07:00
namkazy d4038bf4ae remove disable optimize 2020-04-05 10:31:30 +07:00
namkazy e4402955e4 [wip] reimplement SULD.D 2020-04-05 10:31:29 +07:00
namkazy 67d9d397d2 add shader stage when init shader ir 2020-04-05 10:31:29 +07:00
Nguyen Dac Nam 731b0dbebc clang-fix 2020-04-05 10:31:28 +07:00
Nguyen Dac Nam 4c3ddd9c99 shader: image - import PredCondition 2020-04-05 10:31:27 +07:00