- 05 Jun, 2020 2 commits
-
-
ReinUsesLisp authored
Games using D3D idioms can join images and samplers when a shader executes, instead of baking them into a combined sampler image. This is also possible on Vulkan. One approach to this solution would be to use separate samplers on Vulkan and leave this unimplemented on OpenGL, but we can't do this because there's no consistent way of determining which constant buffer holds a sampler and which one an image. We could in theory find the first bit and if it's in the TIC area, it's an image; but this falls apart when an image or sampler handle use an index of zero. The used approach is to track for a LOP.OR operation (this is done at an IR level, not at an ISA level), track again the constant buffers used as source and store this pair. Then, outside of shader execution, join the sample and image pair with a bitwise or operation. This approach won't work on games that truly use separate samplers in a meaningful way. For example, pooling textures in a 2D array and determining at runtime what sampler to use. This invalidates OpenGL's disk shader cache :) - Used mostly by D3D ports to Switch
-
ReinUsesLisp authored
-
- 02 Jun, 2020 4 commits
-
-
bunnei authored
glsl: Squash constant buffers into a single SSBO when we hit the limit
-
LC authored
shader/other: Fix hardcoded value in S2R INVOCATION_INFO
-
LC authored
maxwell_to_vk: Add R16UI image format
-
ReinUsesLisp authored
- Used by Octopath Traveler
-
- 01 Jun, 2020 5 commits
-
-
bunnei authored
buffer_cache: Avoid copying twice on certain cases
-
bunnei authored
maxwell_3d: Initialize more registers to their expected value
-
Rodrigo Locatti authored
format_lookup_table: Implement G24S8 format as S8Z24
-
bunnei authored
fixed_pipeline_state,gl_rasterizer: Swap negative viewport checks for front faces
-
ReinUsesLisp authored
Avoids compilation errors at the cost of shader build times and runtime performance when a game hits the limit of uniform buffers we can use.
-
- 31 May, 2020 7 commits
-
-
bunnei authored
vk_rasterizer: Implement constant attributes
-
bunnei authored
-
bunnei authored
-
bunnei authored
OpenGL: Enable Debug Context and Synchronous debugging when graphics debugging is enabled
-
bunnei authored
texture_cache: Optimize GetSurfacesInRegion
-
Rodrigo Locatti authored
gl_device: Enable compute shaders for Intel proprietary drivers
-
Morph authored
Previously we were disabling compute shaders on Intel's proprietary driver due to broken compute. This has been fixed in the latest Intel drivers. Re-enable compute for Intel proprietary drivers and remove the check for broken compute.
-
- 30 May, 2020 4 commits
-
-
bunnei authored
shader/other: Implement MEMBAR.CTS
-
ReinUsesLisp authored
Geometry shaders built from Nvidia's compiler check for bits[16:23] to be less than or equal to 0 with VSETP to default to a "safe" value of 0x8000'0000 (safe from hardware's perspective). To avoid hitting this path in the shader, return 0x00ff'0000 from S2R INVOCATION_INFO. This seems to be the maximum number of vertices a geometry shader can emit in a primitive.
-
Fernando Sahmkow authored
Add xbyak external
-
David Marcec authored
-
- 29 May, 2020 3 commits
- 28 May, 2020 8 commits
-
-
ReinUsesLisp authored
These logs were killing performance on some games when they were spammed. Reduce them to Debug severity.
-
ReinUsesLisp authored
-
lat9nq authored
-
lat9nq authored
-
bunnei authored
gl_shader_manager: Unbind GLSL program when binding a host pipeline
-
lat9nq authored
Changes many patch_manager functions to use a case-less variant of GetSubdirectory. Fixes patches not showing up on *nix systems when patch directories are named with odd cases, i.e. `exeFS'.
-
bunnei authored
main: Log host system memory parameters
-
ReinUsesLisp authored
Avoid copying to a staging buffer on non-granular memory addresses. Add a callable argument to StreamBufferUpload to be able to copy to the staging buffer directly from ReadBlockUnsafe.
-
- 27 May, 2020 7 commits
-
-
ReinUsesLisp authored
-
bunnei authored
maxwell_to_vk: Add format B8G8R8A8_SRGB and add Attachable capability for B8G8R8A8_UNORM
-
ReinUsesLisp authored
This avoids most heap allocations when collecting surfaces into a vector.
-
ReinUsesLisp authored
Initialize line widths to avoid setting a line width of zero.
-
ReinUsesLisp authored
NVN expects this to be initialized as Fill, otherwise games that never bind a rasterizer state will log an invalid polygon mode.
-
Morph authored
-
ReinUsesLisp authored
This silences an assertion we were hitting and uses workgroup memory barriers when the game requests it.
-