heapo
63c820c8b1
Implement postfactor multiplication/division for fmul instructions
7 years ago
heapo
a2df3bdd64
Fix arrayed shadow sampler array slice/depth comparison ordering, as well as invalid GLSL LOD selection.
7 years ago
Lioncash
6bdc98b5c8
gl_shader_cache: Dehardcode constant in CalculateProgramSize()
This constant is related to the size of the instruction.
7 years ago
Lioncash
df8d7cfc90
gl_shader_cache: Resolve truncation compiler warning
The previous code would cause a warning, as it was truncating size_t
(64-bit) to a u32 (32-bit) implicitly.
7 years ago
Marcos Vitali
4f59d874d8
gl_shader_decompiler: IPA FrontFacing: the right value when is the front face is 0xFFFFFFFF.
7 years ago
Fernando Sahmkow
1f1cc896d3
Implemented a shader unique identifier.
7 years ago
Marcos Vitali
89a288d7ce
gl_shader_decompiler: TLDS/TLD4/TLD4S Reworked reflecting the source registers, bugs fixed and modularize.
7 years ago
ReinUsesLisp
e228750f52
gl_shader_decompiler: Implement TEXS.F16
7 years ago
ReinUsesLisp
ad7a069b65
gl_shader_decompiler: Fixup inverted if
7 years ago
heapo
5c8f2009bb
Improve msvc codegen for hot-path array LUTs
In some constexpr functions, msvc is building the LUT at runtime
(pushing each element onto the stack) out of an abundance of caution. Moving the
arrays into be file-scoped constexpr's avoids this and turns the functions into
simple look-ups as intended.
7 years ago
Marcos
aa575cfea9
Rewrited TEX/TEXS (TEX Scalar). ( #1826 )
* Rewrited TEX/TEXS (TEX Scalar).
* Style fixes.
* Styles issues.
7 years ago
Subv
7d6721e3ae
Removed unused file.
This is a leftover from #1792
7 years ago
Subv
a052151664
GPU: Don't try to route PFIFO methods (0-0x40) to the other engines.
7 years ago
Lioncash
cd9570ce0d
Fix debug build
A non-existent parameter was left in some formatting calls (the logging
macro for which only does anything meaningful on debug builds)
7 years ago
bunnei
96dc19dfa0
gl_rasterizer_cache: Update AccurateCopySurface to flush complete source surface.
- Fixes issues with Breath of the Wild with use_accurate_gpu_emulation setting.
7 years ago
ReinUsesLisp
5861ae801a
gl_rasterizer: Enable clip distances when set in register and in shader
7 years ago
ReinUsesLisp
8ad9ec20fc
gl_rasterizer: Implement a framebuffer cache
7 years ago
ReinUsesLisp
95bdbe4ba6
gl_shader_manager: Update pipeline when programs have changed
7 years ago
bunnei
adf5b142d1
gl_rasterizer_cache: Remove BlitSurface and replace with more accurate copy.
- BlitSurface with different texture targets is inherently broken.
- When target is the same, we can just use FastCopySurface.
- Fixes rendering issues with Breath of the Wild.
7 years ago
ReinUsesLisp
af86f71874
gl_shader_decompiler: Remove texture temporal in TLD4
7 years ago
ReinUsesLisp
c63ad999e3
gl_shader_decompiler: Flip negated if else statement
7 years ago
ReinUsesLisp
b9a713ec1f
gl_shader_decompiler: Use GLSL scope on instructions unrelated to textures
7 years ago
ReinUsesLisp
1fde852168
gl_shader_decompiler: Move texture code generation into lambdas
7 years ago
ReinUsesLisp
e3149ce341
gl_shader_decompiler: Clean up texture instructions
7 years ago
ReinUsesLisp
e5e98bb15c
gl_shader_decompiler: Scope GLSL variables with a scoped object
7 years ago
ReinUsesLisp
5aa6a6e0d0
gl_rasterizer: Signal UNIMPLEMENTED when rt_separate_frag_data is not zero
7 years ago
ReinUsesLisp
e62bacf3d2
gl_rasterizer_cache: Use brackets for two-line single-expresion blocks
7 years ago
ReinUsesLisp
a923c7cda5
gl_rasterizer: Remove unused struct declarations
7 years ago
ReinUsesLisp
c6223f0a9e
gl_rasterizer: Remove extension booleans
7 years ago
bunnei
a86364480f
dma_pushbuffer: Optimize to avoid loop and copy on Push.
7 years ago
bunnei
9266f76fb2
gpu: Move command list profiling to DmaPusher::DispatchCalls.
7 years ago
ReinUsesLisp
f8cedc97d9
gl_shader_decompiler: Fixup clip distance index
7 years ago
Markus Wick
9a633ce5aa
gl_rasterizer: Fixup for #1723 .
On invalidating the streaming buffer, we need to reupload all vertex buffers.
But we don't need to reconfigure the vertex format.
This was a (silly) misstake in #1723 .
Thanks at Rodrigo for discovering the issue.
Fun fact, as configuring the vertex format also invalidate the vertex buffer,
this misstake had no affect on the behavior.
7 years ago
bunnei
f8b215e361
gpu: Rewrite GPU command list processing with DmaPusher class.
- More accurate impl., fixes Undertale (among other games).
7 years ago
Rodolfo Bogado
36f11c6b20
remove viewport_transform_enabled as it seems to be inactive when valid transforms are used.
7 years ago
ReinUsesLisp
944f2b471e
morton: Fixup compiler warning
7 years ago
Rodolfo Bogado
07e7586b63
Implement depth clamp
7 years ago
Rodolfo Bogado
0eabde665d
Add support for Clip Distance enabled register
7 years ago
Marcos
fc09b5cc26
GPU States: Implement Polygon Offset. This is used in SMO all the time. ( #1784 )
* GPU States: Implement Polygon Offset. This is used in SMO all the time.
* Clang Format fixes.
* Initialize polygon_offset in the constructor.
7 years ago
FernandoS27
b509890e4c
Implemented Tile Width Spacing
7 years ago
Rodolfo Bogado
fc1c8f585d
Limit the amount of viewports tested for state changes only to the usable ones
7 years ago
ReinUsesLisp
ac2c2ded06
gl_shader_decompiler: Implement S2R's Y_DIRECTION
7 years ago
ReinUsesLisp
5c4311075b
morton: Style changes
7 years ago
ReinUsesLisp
70920fd69f
video_core: Move morton functions to their own file
7 years ago
FernandoS27
b29904eb68
Fix Texture Overlapping
7 years ago
FernandoS27
84e30cb3a7
Implemented BRA CC conditional and FSET CC Setting
7 years ago
Rodolfo Bogado
dd86a7ee67
Add support for viewport_transfom_enable register
7 years ago
Rodolfo Bogado
d311047172
Add support for clear_flags register
7 years ago
FernandoS27
1d3cfabdd6
Fix TEXS Instruction encodings
7 years ago
FernandoS27
ca4e585916
Fix one encoding in TEX Instruction
7 years ago