bunnei
977f2bafa7
gl_shader_decompiler: TEXS: Implement TextureType::TextureCube.
7 years ago
bunnei
dcc44650fe
gl_rasterizer_cache: Add support for SurfaceTarget::TextureCubemap.
7 years ago
bunnei
5b1e1c081e
gl_rasterizer_cache: Implement LoadGLBuffer for Texture2DArray.
7 years ago
bunnei
b0fded32c6
gl_rasterizer_cache: Update BlitTextures to support non-Texture2D ColorTexture surfaces.
7 years ago
bunnei
036c50c9a3
gl_rasterizer_cache: Track texture target and depth in the cache.
7 years ago
bunnei
09de119f10
gl_rasterizer_cache: Workaround for Texture2D -> Texture2DArray scenario.
7 years ago
bunnei
08d7415a8a
gl_rasterizer_cache: Keep track of surface 2D size separately from total size.
7 years ago
raven02
7cb5586653
Fix trailing whitespace
7 years ago
ReinUsesLisp
07609b33c4
video_core: Implement point_size and add point state sync
7 years ago
ReinUsesLisp
51435ad30c
gl_state: Pack sampler bindings into a single ARB_multi_bind
7 years ago
ReinUsesLisp
f5b5c5ba06
video_core: Add asserts for CS, TFB and alpha testing
Add asserts for compute shader dispatching, transform feedback being
enabled and alpha testing. These have in common that they'll probably break
rendering without logging.
7 years ago
David
e0c63533ab
Added glObjectLabels for renderdoc for textures and shader programs ( #1384 )
* Added glObjectLabels for renderdoc for textures and shader programs
* Changed hardcoded "Texture" name to reflect the texture type instead
* Removed string initialize
7 years ago
greggameplayer
5d3bc9c9b0
correct BC6H
7 years ago
Lioncash
c22d6203a9
gl_state: Remove unused type alias
This isn't used anywhere within the header, so we can remove it, along
with the include that was previously necessary. This also uncovers an
indirect include in the cpp file for the assertion macros.
7 years ago
Lioncash
02106208f8
shader_bytecode: Lay out the Ipa-related enums better
This is more consistent with the surrounding enums.
7 years ago
Lioncash
d8cbbfb8ea
shader_bytecode: Make operator== and operator!= of IpaMode const qualified
These don't affect the state of the struct and can be const member
functions.
7 years ago
FernandoS27
9acd217fed
Reverse stride align restriction on FastSwizzle due to lost performance
7 years ago
FernandoS27
ec51077131
Join both Swizzle methods within one interface function
7 years ago
FernandoS27
dc98e08d51
Standarized Legacy Swizzle to look alike FastSwizzle and use a Swizzling Table instead
7 years ago
FernandoS27
55543db875
Remove same output bpp restriction on FastSwizzle
7 years ago
FernandoS27
0bd735d574
Improved Legacy Swizzler to be better documented and work better
7 years ago
Lioncash
770efb87b8
gl_stream_buffer: Fix use of bitwise OR instead of logical OR in Map()
This was very likely intended to be a logical OR based off the
conditioning and testing of inversion in one case.
Even if this was intentional, this is the kind of non-obvious thing one
should be clarifying with a comment.
7 years ago
Subv
c865df9ca7
RasterizerGL: Use the correct framebuffer when clearing via the CLEAR_BUFFERS register.
Previously we were clearing the default backbuffer framebuffer.
Found thanks to a Piglit test :)
7 years ago
FernandoS27
cd00f35cc8
Improved fast swizzle and removed restrictions to it
7 years ago
Markus Wick
da98f8c157
gl_rasterizer: Fix StartAddress handling with indexed draw calls.
We uploaded the wrong data before. So the offset on the host GPU pointer may work for the first vertices, the last ones run out bounds.
Let's just offset the upload instead.
7 years ago
FernandoS27
b7be8be9ee
Implemented Internal Flags
7 years ago
Lioncash
8a6bc44751
gl_shader_decompiler: Avoid truncation warnings within LD_A and ST_A code
These are internally stored as u64 values, so using u32 here causes
truncation warnings. Instead, we can just use u64 and preserve the bit
width.
7 years ago
FernandoS27
5a00f0ec41
Implemented I2I.CC on the NEU control code, used by SMO
7 years ago
FernandoS27
81fd967a27
Implemented CSETP
7 years ago
FernandoS27
9cdcf964b5
Implemented Control Codes
7 years ago
FernandoS27
90ffde0a90
Added asserts for texture misc modes to texture instructions
7 years ago
FernandoS27
dc2a597dc8
Added texture misc modes to texture instructions
7 years ago
raven02
da0fb4d371
Add 1D sampler for TLDS - TexelFetch (Mario Rabbids)
7 years ago
raven02
13c243fcb6
Implement ASTC_2D_8X8 (Bayonetta 2)
7 years ago
raven02
8cf6772150
Implement RenderTargetFormat::BGR5A1_UNORM (Pokken Tournament DX)
7 years ago
Subv
415fd53a49
Shaders: Implemented multiple-word loads and stores to and from attribute memory.
This seems to be an optimization performed by nouveau.
7 years ago
fearlessTobi
1190ea6ddb
Port #4182 from Citra: "Prefix all size_t with std::"
7 years ago
FernandoS27
37224010a1
Optimized Texture Swizzling
7 years ago
Lioncash
35c05e8bf2
gl_shader_decompiler: Get rid of variable shadowing within LEA instructions
These variables are already defined within an outer scope.
7 years ago
ReinUsesLisp
a5584cd896
Use ARB_multi_bind for uniform buffers ( #1287 )
* gl_rasterizer: use ARB_multi_bind for uniform buffers
* address feedback
7 years ago
bunnei
98d5dc07f0
gl_rasterizer_cache: B5G6R5U should use GL_RGB8 as an internal format.
- Fixes a regression with Sonic Mania with ARB_texture_storage.
7 years ago
Subv
46b33657b6
GPU: Basic implementation of the Kepler Inline Memory engine (p2mf).
This engine writes data from a FIFO register into the configured address.
7 years ago
FernandoS27
aa5c2354eb
Implemented Texture Processing Modes
7 years ago
bunnei
673650e636
gl_rasterizer_cache: Always blit on recreate, regardless of format.
- Fixes several rendering issues with Super Mario Odyssey.
7 years ago
bunnei
2731b478af
gl_shader_cache: Remove cache_width/cache_height.
- This was once an optimization, but we no longer need it with the cache reserve.
- This is also inaccurate.
7 years ago
Markus Wick
bdcf568acf
gl_rasterizer: Use ARB_texture_storage.
It allows us to use texture views and it reduces the overhead within the GPU driver.
But it disallows us to reallocate the texture, but we don't do so anyways.
In the end, it is the new way to allocate textures, so there is no need to use the old way.
7 years ago
FernandoS27
324c65fc60
Implemented LEA and PSET
7 years ago
FernandoS27
a6294ad653
Implemented encodings for LEA and PSET
7 years ago
FernandoS27
4877b9a03d
Replace old FragmentHeader for the new Header
7 years ago
FernandoS27
120a7f2706
Implemented (Partialy) Shader Header
7 years ago