| Age | Commit message (Collapse) | Author |
|
gl_device: Enable compute shaders for Intel Mesa drivers
|
|
gl_shader_cache: Add missing new-line on emitted GLSL
|
|
Added missing include
|
|
implemented.
This commit ensures the OGL backend does not execute tesselation shader
stages as they are currently unimplemented.
|
|
shader: Implement MEMBAR.GL
|
|
|
|
Previously we naively checked for "Intel" in GL_VENDOR, but this
includes both Intel's proprietary driver and the mesa driver. Re-enable
compute shaders for mesa.
|
|
Add missing new-line. This caused shaders using local memory and shared
memory to inject a preprocessor GLSL line after an expression (resulting
in invalid code).
It looked like this:
shared uint smem[8];#define LOCAL_MEMORY_SIZE 16
It should look like this (addressed by this commit):
shared uint smem[8];
\#define LOCAL_MEMORY_SIZE 16
|
|
This commit finishes adding depth mode that was reverted before due to
other unresolved issues.
|
|
Implement using memoryBarrier in GLSL and OpMemoryBarrier on SPIR-V.
|
|
|
|
|
|
|
|
Update Sirit and its usage in vk_shader_decompiler. Highlights:
- Implement tessellation shaders
- Implement geometry shaders
- Implement some missing features
- Use native half float instructions when available.
|
|
|
|
|
|
- Setup more features and requirements.
- Improve logging for missing features.
- Collect telemetry parameters.
- Add queries for more image formats.
- Query push constants limits.
- Optionally enable some extensions.
|
|
maxwell_3d: Add tessellation state entries
|
|
|
|
We don't know until the game is running if it's using an sRGB color
space or not. Add support for hot-swapping swapchain surface formats.
|
|
|
|
|
|
|
|
|
|
Implement FLO & TXD Instructions on GPU Shaders
|
|
Texture_Cache: Redo invalid Surfaces handling.
|
|
gl_framebuffer_cache: Optimize framebuffer cache management
|
|
Some texture views were being created out of bounds (with more layers or
mipmaps than what the original texture has). This is because of a
miscalculation in mipmap bounding. end_layer and end_mipmap are out of
bounds (e.g. layer 6 in a cubemap), there's no need to add one more
there.
Fixes OpenGL errors and Vulkan crashes on Splatoon 2.
|
|
Pack color attachment enumerations into a single u32. To determine the
number of buffers, the highest color attachment with a shared pointer
that doesn't point to null is used.
|
|
|
|
core/memory: Deglobalize memory management code
|
|
video_core/gpu_thread: Tidy up SwapBuffers()
|
|
We can just use std::nullopt and std::make_optional to make this a
little bit less noisy.
|
|
Tidies it up a little bit visually.
|
|
|
|
Silences a compiler warning.
|
|
This is only used within the accelerated rasterizer in two places, so
this is also a very trivial migration.
|
|
With all of the interfaces ready for migration, it's trivial to migrate
over GetPointer().
|
|
Amends a few interfaces to be able to handle the migration over to the
new Memory class by passing the class by reference as a function
parameter where necessary.
Notably, within the filesystem services, this eliminates two ReadBlock()
calls by using the helper functions of HLERequestContext to do that for
us.
|
|
gl_device: Deduce indexing bug from device instead of heuristic
|
|
Casts from f32 to f16 zeroes the higher half of the target register.
|
|
The heuristic to detect AMD's driver was not working properly since it
also included Intel. Instead of using heuristics to detect it, compare
the GL_VENDOR string.
|
|
gl_texture_cache: Apply sRGB on blits
|
|
gpu_thread: Don't spin wait if there are no GPU commands.
|
|
gl_shader_cache: Miscellaneous changes to shaders
|
|
glBlitFramebuffer keeps in mind GL_FRAMEBUFFER_SRGB's state. Enable this
depending on the target surface pixel format.
|
|
maxwell_3d: Fix stencil_back_func_mask offset
|
|
buffer_cache: Remove brace initialized for objects with default constructor
|
|
|
|
gl_shader_gen: Apply default value to gl_Position
|