Age | Commit message (Collapse) | Author |
|
renderers themselves
Given we use a base-class type within the renderer for the rasterizer
(RasterizerInterface), we want to allow renderers to perform more
complex initialization if they need to do such a thing. This makes it
important to reserve type information.
Given the OpenGL renderer is quite simple settings-wise, this is just a
simple shuffling of the initialization code. For something like Vulkan
however this might involve doing something like:
// Initialize and call rasterizer-specific function that requires
// the full type of the instance created.
auto raster = std::make_unique<VulkanRasterizer>(some, params);
raster->CallSomeVulkanRasterizerSpecificFunction();
// Assign to base class variable
rasterizer = std::move(raster)
|
|
GLRasterizer: Implemented instanced vertex arrays.
|
|
Shaders/TEXS: Write to the correct output register when swizzling.
|
|
Shaders: Use the correct shader type when sampling textures.
|
|
Added CheckFreeCommunicationPermission
|
|
New account backend to allow for future extended support
|
|
Implemented RGBA8_UINT
|
|
game_list: Avoid uninitialized variables when retrieving program ID
|
|
Needed by kirby
|
|
Avoids potentially leaving this variable uninitialized based off the
loader failing to retrieve the ID value.
|
|
This fixes save files not loading in splatoon 2
|
|
Previously we could end up with a TEXS that didn't write any outputs, this was wrong.
|
|
Shaders: Corrected the 'abs' and 'neg' bit usage in the float arithmetic instructions.
|
|
Shader: Remove an unneeded assert, the negate bit is implemented for conversion instructions.
|
|
Shaders/TEXS: Fixed the component mask in the TEXS instruction.
|
|
Previously we could end up with a TEXS that didn't write any outputs, this was wrong.
|
|
Added WrapMode MirrorOnceClampToEdge
|
|
Shaders: Implemented a stack for the SSY/SYNC instructions.
|
|
It is unknown how TLD4S determines the sampler type, more research is needed.
|
|
Different sampler types have their parameters in different registers.
|
|
instructions.
|
|
|
|
Shaders: Added decodings for the LDG and STG instructions.
|
|
Shaders: Implemented the gl_FrontFacing input attribute (attr 63).
|
|
Shader: Implemented the predicate and mode arguments of LOP.
|
|
|
|
|
|
|
|
conversion instructions.
|
|
Before each draw call, for every enabled vertex array configured as instanced, we take the current instance id and divide it by its configured divisor, then we multiply that by the corresponding stride and increment the start address by the resulting amount. This way we can simulate the vertex array being incremented once per instance without actually using OpenGL's instancing functions.
|
|
The mode can be used to set the predicate to true depending on the result of the logic operation. In some cases, this means discarding the result (writing it to register 0xFF (Zero)).
This is used by Super Mario Odyssey.
|
|
Port #3616 from Citra: "appveyor: set jobs to 4 for mingw"
|
|
Used by splatoon 2
|
|
The SSY instruction pushes an address into the stack, and the SYNC instruction pops it. The current stack depth is 20, we should figure out if this is enough or not.
|
|
instructions.
We should definitely audit our shader generator for more errors like this.
|
|
Added pred-condition GreaterThanWithNan
|
|
|
|
gl_rasterizer_cache: Remove asserts for supported blits.
|
|
renderer_opengl: Treat OpenGL errors as critical.
|
|
* Used by Mario Tennis Aces
|
|
core: Delete System copy/move constructors and assignment operators
|
|
qt/main: Get rid of compilation warnings
|
|
greggameplayer/GetDefaultDisplayResolutionChangeEvent
Implement GetDefaultDisplayResolutionChangeEvent
|
|
|
|
|
|
Rasterizer: Manually implemented instanced rendering.
|
|
dynarmic: Update to 550d662
|
|
gl_rasterizer_cache: Treat Depth formats differently from DepthStencil.
|
|
|
|
Require by Toki Tori and Toki Tori 2+
|