Age | Commit message (Collapse) | Author |
|
Avoids potential invalid junk data from being read.
|
|
shader/memory: Implement RED.E.ADD and minor changes to ATOM
|
|
CMakeLists: Make -Wreorder a compile-time error
|
|
This can result in silent logic bugs within code, and given the amount
of times these kind of warnings are caused, they should be flagged at
compile-time so no new code is submitted with them.
|
|
gl_rasterizer: Implement constant vertex attributes
|
|
maxwell_to_vk: Add uint16 vertex formats
|
|
gl_shader_cache: Use CompileDepth::FullDecompile on GLSL
|
|
gl_texture_cache: Fix layered texture attachment base level
|
|
shader/arithmetic: Add FCMP_CR variant
|
|
Revert "gl_shader_decompiler: Implement merges with bitfieldInsert"
|
|
vk_blit_screen: Initialize all members in VkPipelineViewportStateCreateInfo
|
|
|
|
Avoid invalid fallbacks.
|
|
When the dynamic state is specified, pViewports and pScissors are
ignored, quoting the specification:
pViewports is a pointer to an array of VkViewport structures, defining
the viewport transforms. If the viewport state is dynamic, this member
is ignored.
That said, AMD's proprietary driver itself seem to read it regardless of
what the specification says.
|
|
vk_rasterizer: Default to 1 viewports with a size of 0
|
|
This is a simple optimization as Buffer Copies are mostly used for texture recycling. They are, however, useful when games abuse undefined behavior but most 3D APIs forbid it.
|
|
This reverts commit 05cf27083608bebd3ee4c38f2f948c8f2030f881.
Apparently the first approach using floats instead of bitfieldInert
worked better for Fire Emblem: Three Houses. Reverting to get that
behavior back.
|
|
Adds another variant of FCMP.
|
|
service: friend: Stub IFriendService::GetBlockedUserListIds.
|
|
file_sys: patch_manager: Return early when there are no layers to apply.
|
|
Credits go to gdkchan from Ryujinx for finding constant attributes are
used in retail games.
|
|
|
|
- This is safe to stub, as there should be no adverse consequences from reporting no blocked users.
|
|
Silence validation layer errors.
|
|
From my testing on a Splatoon 2 shader that takes 3800ms on average to
compile changing to FullDecompile reduces it to 900ms on average.
The shader decoder will automatically fallback to a more naive method if
it can't use full decompile.
|
|
The base level is already included in the texture view. If we specify
the base level in the texture again, this will end up in the incorrect
level and potentially out of bounds.
|
|
renderer_vulkan: Drop Vulkan-Hpp
|
|
gl_rasterizer: Implement line widths and smooth lines
|
|
texture_cache: Remove preserve_contents
|
|
texture/astc: More small ASTC optimizations
|
|
shader/conversion: Implement I2I sign extension, saturation and selection
|
|
gl_texture_cache: Attach view instead of base texture for layered attchments
|
|
gl_shader_decompiler: Improve generated code in HMergeH*
|
|
shader/texture: Remove type mismatches management from shader decoder
|
|
Implements "legacy" features from OpenGL present on hardware such as
smooth lines and line width.
|
|
This also fixes Turing issues but it avoids doing more bitcasts. This
should improve the generated code while also avoiding more points where
compilers can flush floats.
|
|
service/vi: Partially implement BufferQueue disconnect
|
|
shader/video: Partially implement VMNMX
|
|
video_core: Add MSAA registers in 3D engine and TIC
|
|
Avoiding bitwise expressions, this fixes Turing issues in shaders using
half float merges that affected several games.
|
|
Implements the common usages for VMNMX. Inputs with a different size
than 32 bits are not supported and sign mismatches aren't supported
either.
VMNMX works as follows:
It grabs Ra and Rb and applies a maximum/minimum on them (this is
defined by .MX), having in mind the input sign. This result can then be
saturated. After the intermediate result is calculated, it applies
another operation on it using Rc. These operations are merges,
accumulations or another min/max pass.
This instruction allows to implement with a more flexible approach GCN's
min3 and max3 instructions (for instance).
|
|
This adds the registers used for multisampling. It doesn't implement
anything for now.
|
|
Buffer queue: Correct behavior of free buffer.
|
|
Port citra-emu/citra#4956: "Fixes to game list sorting"
|
|
preserve_contents was always true. We can't assume we don't have to
preserve clears because scissored and color masked clears exist.
This removes preserve_contents and assumes it as true at all times.
|
|
|
|
yuzu: Drop SDL2 and Qt frontend Vulkan requirements
|
|
This corrects the behavior of free buffer after witnessing it in an
unrelated hardware test. I haven't found any games affected by it but in
name of better accuracy we'll correct such behavior.
|
|
yuzu/configuration: Fix input profiles and a wrong assert
|
|
|