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
David Marcec
4258678ebe
Fixed renderdoc input/output textures not working due to render targets
7 years ago
Markus Wick
118c1c36c1
video_core: Refactor command_processor.
Inline the WriteReg helper as it is called ~20k times per frame.
7 years ago
Markus Wick
a5613f87ef
video_core: Move command buffer loop.
This moves the hot loop into video_core. This refactoring shall reduce the CPU overhead of calling ProcessCommandList.
7 years ago
Markus Wick
f84b102dfb
rasterizer: Drop unused handler.
This virtual function is called in a very hot spot, and it does nothing.
If this kind of feature is required, please be more specific and add callbacks
in the switch statement within Maxwell3D::WriteReg. There is no point in having
another switch statement within the rasterizer.
7 years ago
bunnei
101abc3586
gl_rasterizer_cache: Only use depth for applicable texture formats.
- Fixes an issue with Octopath Traveler leaving stale data here.
7 years ago
bunnei
1a13349404
gl_rasterizer: Implement clear for non-zero render targets.
- Several misc. changes to ConfigureFramebuffers in support of this.
7 years ago
bunnei
33a936e055
gl_rasterizer_cache: Implement RenderTargetFormat::BGRA8_SRGB.
- Used by Octopath Traveler (with multiple render targets).
7 years ago
bunnei
05d93558f4
gl_rasterizer: Implement multiple color attachments.
7 years ago
FernandoS27
e54854dfb7
Implemented TMML
7 years ago
FernandoS27
6dd5b33570
Implemented TXQ dimension query type, used by SMO.
7 years ago
Patrick Elsässer
6f5e0de50e
video_core: fixed arithmetic overflow warnings & improved code style
- Fixed all warnings, for renderer_opengl items, which were indicating a
possible incorrect behavior from integral promotion rules and types
larger than those in which arithmetic is typically performed.
- Added const for variables where possible and meaningful.
- Added constexpr where possible.
7 years ago
tech4me
2855533e5a
Port Citra #4047 & #4052 : add change background color support
7 years ago
FernandoS27
0611ac673f
Change name of TEXQ to TXQ, in order to match NVIDIA's naming
7 years ago
Subv
6e6071b6f9
GPU/DMA: Partially implemented the 'enable_2d' bit in the DMA engine.
When not set, this tells the GPU to only use the X size when performing a DMA copy.
This is only implemented for linear->linear and tiled->tiled copies. Conversion copies still retain the assert.
This bit is unset by some games for various purposes, and by nouveau when copying the vertex buffers.
7 years ago
bunnei
c6cd8bb43d
gl_rasterizer: Use baseInstance instead of moving the buffer points.
This hopefully helps our cache not to redundant upload the vertex buffer.
# Conflicts:
# src/video_core/renderer_opengl/gl_rasterizer.cpp
7 years ago
Patrick Elsässer
e3fef57563
video_core: Arithmetic overflow warning fix for gl_rasterizer ( #1262 )
* video_core: Arithmetic overflow fix for gl_rasterizer
- Fixed warnings, which were indicating incorrect behavior from integral
promotion rules and types larger than those in which arithmetic is
typically performed.
- Added const for variables where possible and meaningful.
* Changed the casts from C to C++ style
Changed the C-style casts to C++ casts as proposed.
Took also care about signed / unsigned behaviour.
7 years ago
bunnei
7b0f5982ab
gl_rasterizer_cache: Improve accuracy of RecreateSurface for non-2D textures.
7 years ago
bunnei
58c9460557
maxwell_3d: Remove assert that no longer applies.
7 years ago
bunnei
a41cf2aa71
gl_rasterizer_cache: Partially implement several non-2D texture types.
7 years ago
bunnei
cc86fd93ed
gl_shader_decompiler: Partially implement several non-2D texture types (Subv).
7 years ago
bunnei
c444e52f0c
gl_rasterizer: Implement texture wrap mode p.
7 years ago
bunnei
d30f69d1af
gl_rasterizer_cache: Track texture depth.
7 years ago
bunnei
bae5d830aa
gl_rasterizer_cache: Remove impl. of FlushGLBuffer.
- Will not work for non-2d textures, and was not used anyways.
7 years ago
bunnei
98ac4a2b73
gl_rasterizer_cache: Keep track of texture type per surface.
7 years ago
bunnei
3719060146
gl_rasterizer_cache: Remove unused DownloadGLTexture.
7 years ago
bunnei
6683faf819
gl_state: Keep track of texture target.
7 years ago
bunnei
a377771f88
gl_rasterizer: Call state.Apply only once on SetupShaders.
7 years ago