Markus Wick
46f18d6800
gl_shader_gen: Inline now constant texture buffer.
2018-06-22 17:20:55 +02:00
Markus Wick
0838c87dac
gl_stream_buffer: Only flush the host buffer if anything was written.
...
This might happen in the new TBO upload path.
2018-06-22 17:20:55 +02:00
Markus Wick
831d4f9aeb
gl_rasterizer: Use the shared texture buffer for the proctex lut.
2018-06-22 17:20:55 +02:00
Markus Wick
1ca6d2ea8d
gl_rasterizer: Use the shared texture buffer for the noise, color and alpha map.
2018-06-22 17:20:55 +02:00
Markus Wick
63fb7dcc1b
gl_rasterizer: Use the shared texture buffer for the fog lut.
2018-06-22 17:20:55 +02:00
Markus Wick
4679487640
gl_rasterizer: Use the shared texture buffer for the lighting lut.
2018-06-22 17:20:54 +02:00
Markus Wick
5a9cde138d
gl_rasterizer: Add a new dirty flag for any lighting lut.
2018-06-22 17:17:48 +02:00
Markus Wick
a8396cdbed
renderer_opengl: Create shared texture buffer.
2018-06-22 17:05:40 +02:00
Markus Wick
298ebe3752
gl_rasterizer: Inline texture buffer uploads.
2018-06-22 17:04:47 +02:00
Markus Wick
8a8c6f059f
gl_rasterizer: Move TBO syncing helper to one function.
2018-06-22 17:04:47 +02:00
Markus Wick
10fba63b94
gl_rasterizer: Provide texture buffer offsets.
...
This allows us to move all data into one TBO.
2018-06-22 17:03:38 +02:00
Weiyi Wang
f50e505a5a
Merge pull request #3778 from wwylele/shadow-hw-image-load-store
...
gl_rasterizer: implement shadow map 2D/Cube - Image load/store version
2018-06-22 17:47:09 +03:00
James Rowe
574824a26c
Merge pull request #3632 from N00byKing/3dtv_botenable
...
Add Support for Stereoscopic 3D
2018-06-17 21:05:15 -06:00
James Rowe
cf9bfe0690
Merge pull request #3787 from wwylele/shader-jit-state
...
shader/jit: preserve integer & condition register across invocation
2018-06-09 18:38:05 -06:00
James Rowe
2dac1a9590
Merge pull request #3788 from wwylele/shader-jit-breakc
...
shader/jit: implement breakc
2018-06-09 18:36:46 -06:00
N00byKing
523c52c708
renderer_opengl: Add Universal 3D Layout Adaption
2018-06-01 18:24:26 +02:00
jmorriz124
8c0ede544f
3dtv botenable improved ( #1 )
...
* Fixed crash when right eye isn't available
* Enabled swap screens in stereo views. Fixed window alignment in stereo
views to handle all screen aspect ratios.
* Minor code cleanup and clang fomat updates.
* Minor cleanup of swapped and aspect ratio code
2018-06-01 17:05:29 +02:00
N00byKing
2814bbc3da
renderer_opengl: Allow usage of Stereoscopic 3D
2018-06-01 17:01:06 +02:00
wwylele
781912e854
gl_rasterize: implement shadow mapping using image load/store
2018-06-01 14:26:44 +03:00
Weiyi Wang
08b119153d
Merge pull request #3799 from wwylele/sigh
...
gl_rasterizer: reset texture state context after every draw
2018-06-01 14:24:28 +03:00
wwylele
9060e08e49
shader/jit: implement breakc
2018-06-01 13:04:39 +03:00
wwylele
f0ee4c0595
gl_rasterizer: reset texture state context after every draw
2018-06-01 12:05:30 +03:00
James Rowe
7715fd2c19
Merge pull request #3750 from wwylele/cube-watcher-fix
...
gl_rasterizer_cache: add missing watcher invalidation
2018-05-31 23:11:39 -06:00
James Rowe
f7f5a54bc3
Merge pull request #3751 from wwylele/shader-warning-shutup
...
gl_shader_gen: rearrange function definition to avoid suprious warnings
2018-05-31 23:10:42 -06:00
James Rowe
e63c374ff0
Merge pull request #3714 from wwylele/primitive-restart-guard
...
video_core/command_processor: correctly handles 0xFFFF index as a normal index
2018-05-29 23:22:00 -06:00
Markus Wick
caba02d42a
gl_rasterizer: Don't flip the texture bindings.
...
The state object isn't used anywhere else, so there
is no need to revert the state.
And the comment is just wrong: It doesn't matter
which textures are bound on framebuffer binding, it
only matters at draw time. And we reset all bindings
before the draw call. So let's use gl_state as it is
designed to avoid flipping states.
2018-05-28 21:04:59 +02:00
wwylele
874cb42e70
shader/jit: preserve integer & condition register across invocation
2018-05-28 14:41:47 +03:00
wwylele
92a1252835
gl_shader_gen: rearrange function definition to avoid suprious warnings
2018-05-19 00:36:33 +03:00
wwylele
8b4e832c5f
gl_rasterizer_cache: add missing watcher invalidation
2018-05-18 23:58:43 +03:00
Markus Wick
8e1e52cad9
gl_rasterizer_cache: Use clean state for glBlitFramebuffer.
...
Framebuffer blits depends on pixel tests:
Ownership (is fine)
Scissor (is broken on the last commit)
Masking (is broken on master for a while)
So let's be honest and start with a clean state in
those helper functions.
2018-05-18 21:13:56 +02:00
Markus Wick
301073334a
gl_rasterizer: Remove redundant scissor state change.
...
There is no need to disable this state after the draw call,
gl_state will handle this for us if needed. This kind of
redundant state changes are bad for the driver overhead,
as flipping bits will invalidate the driver state.
2018-05-18 21:13:56 +02:00
wwylele
129b893509
gl_stream_buffer: update the information about the AMD hack
2018-05-18 14:08:12 +03:00
wwylele
dd6252a676
gl_rasterizer: fallback to software shader path if buffer overflow happens on hardware shader path
2018-05-18 13:55:19 +03:00
wwylele
6985b13439
[HACK] AMD workaround
2018-05-14 10:17:36 +03:00
wwylele
ede0d15fec
video_core/command_processor: attempt accelerate draw in draw trigger
2018-05-14 10:17:36 +03:00
wwylele
9b448a0739
gl_rasterizer: implement AccelerateDrawBatch to emulate PICA shader on hardware
2018-05-14 10:17:36 +03:00
MerryMage
15d14be3cc
primitive_assembly: Add getters for internal state
2018-05-14 10:17:35 +03:00
wwylele
06815ec905
video_core: receive hardware shader settings
2018-05-14 10:17:35 +03:00
wwylele
68b0a3e19e
regs_pipeline: use proper unsigned type where applicable
2018-05-06 15:57:48 +03:00
Weiyi Wang
f85e71c37c
Merge pull request #3715 from wwylele/hardware-vertex-vector
...
gl_rasterizer: Use GLvec* instead of C arrays
2018-05-06 07:19:06 +03:00
Weiyi Wang
0da3b75c9e
Merge pull request #3700 from wwylele/texcache-watcher
...
gl_rasterizer_cache: cache texture cube
2018-05-05 16:30:39 +03:00
Markus Wick
5960282303
gl_rasterizer: Use buffer_storage for uniform data.
...
This replaces the glBufferData logic with the shared stream buffer code.
The new code doesn't need a temporary staging buffer any more, so the
performance should imrpove quite a bit.
2018-05-05 09:22:02 +02:00
MerryMage
d6cd1a8712
gl_rasterizer: Use GLvec* instead of C arrays
2018-05-05 04:37:04 +03:00
wwylele
08a38370b0
video_core/command_processor: correctly handles 0xFFFF index as a normal index
2018-05-05 04:24:31 +03:00
Weiyi Wang
be5777f3de
Merge pull request #3686 from wwylele/glvtx-shader-gen
...
gl_shader_gen: generate programmable vs/gs and fixed gs
2018-05-01 21:27:48 +03:00
wwylele
1762ad2dcc
gl_rasterizer_cache: cache texture cube
2018-05-01 21:26:43 +03:00
bunnei
ed42b4b0d2
Merge pull request #3678 from wwylele/b15-fallback
...
gl_shader_decompiler: fallback to CPU shader on GS b15 access
2018-04-25 00:03:11 -04:00
wwylele
191b29e402
gl_shader_gen: generate programmable vs/gs and fixed gs
2018-04-24 20:39:10 +03:00
MerryMage
8186820d16
pica_to_gl: Add GLuvec{2,3,4} aliases
...
To allow for transfer for integers into shaders.
2018-04-23 20:21:24 +03:00
wwylele
e56128683c
gl_shader_decompiler: fallback to CPU shader on GS b15 access
2018-04-23 12:45:56 +03:00