Mat M
fbf13d3f48
Merge pull request #3651 from ReinUsesLisp/line-widths
...
gl_rasterizer: Implement line widths and smooth lines
2020-04-13 10:19:59 -04:00
ReinUsesLisp
76615b9f34
gl_rasterizer: Implement line widths and smooth lines
...
Implements "legacy" features from OpenGL present on hardware such as
smooth lines and line width.
2020-04-13 01:30:34 -03:00
ReinUsesLisp
94b0e2e5da
texture_cache: Remove preserve_contents
...
preserve_contents was always true. We can't assume we don't have to
preserve clears because scissored and color masked clears exist.
This removes preserve_contents and assumes it as true at all times.
2020-04-11 01:51:02 -03:00
Fernando Sahmkow
913f42a3a7
Memory: Address Feedback.
2020-04-08 13:40:46 -04:00
Fernando Sahmkow
ea535d9470
Shader/Pipeline Cache: Use VAddr instead of physical memory for addressing.
2020-04-06 09:23:07 -04:00
Fernando Sahmkow
3dd5c07454
Query Cache: Use VAddr instead of physical memory for adressing.
2020-04-06 09:23:07 -04:00
Fernando Sahmkow
7fcd0fee6d
Buffer Cache: Use vAddr instead of physical memory.
2020-04-06 09:23:06 -04:00
Fernando Sahmkow
6ee316cb8f
Texture Cache: Use vAddr instead of physical memory for caching.
2020-04-06 09:23:05 -04:00
Fernando Sahmkow
9c0f40a1f5
GPU: Setup Flush/Invalidate to use VAddr instead of CacheAddr
2020-04-06 09:21:46 -04:00
ReinUsesLisp
1c5e2b60a7
gl_rasterizer: Mark cleared textures as dirty
...
Fixes a potential edge case where cleared textures read from the CPU
were not flushed.
2020-03-31 05:51:56 -03:00
ReinUsesLisp
7617e88fb2
gl_rasterizer: Update stencil test regardless of it being disabled
2020-03-26 01:08:14 -03:00
ReinUsesLisp
c310cef615
gl_rasterizer: Synchronize stencil testing on clears
2020-03-26 00:51:47 -03:00
ReinUsesLisp
bdcedc8506
gl_rasterizer: Use transformed viewport for depth ranges
...
Implement depth ranges using the transformed viewport instead of the
generic one. This matches the current Vulkan implementation but doesn't
support negative depth ranges. An update to glad is required for this.
2020-03-22 03:26:07 -03:00
ReinUsesLisp
acf328a71f
gl_rasterizer: Silence misc warnings
2020-03-18 20:03:19 -03:00
ReinUsesLisp
8e9f23f393
gl_rasterizer: Implement transform feedback bindings
2020-03-13 18:33:04 -03:00
Rodrigo Locatti
244fe13219
Merge branch 'master' into shader-purge
2020-03-13 16:44:06 -03:00
bunnei
b30b1f741d
Merge pull request #3491 from ReinUsesLisp/polygon-modes
...
gl_rasterizer: Implement polygon modes and fill rectangles
2020-03-13 10:08:57 -04:00
ReinUsesLisp
8357908099
gl_shader_manager: Fix interaction between graphics and compute
...
After a compute shader was set to the pipeline, no graphics shader was
invoked again. To address this use glUseProgram to bind compute shaders
(without state tracking) and call glUseProgram(0) when transitioning out
of it back to the graphics pipeline.
2020-03-11 01:04:52 -03:00
ReinUsesLisp
e4bc3c3342
gl_rasterizer: Implement polygon modes and fill rectangles
2020-03-09 20:39:58 -03:00
ReinUsesLisp
bd8b9bbcee
gl_shader_cache: Rework shader cache and remove post-specializations
...
Instead of pre-specializing shaders and then post-specializing them,
drop the later and only "specialize" the shader while decoding it.
2020-03-09 18:40:06 -03:00
Rodrigo Locatti
22e825a3bc
Merge pull request #3301 from ReinUsesLisp/state-tracker
...
video_core: Remove gl_state and use a state tracker based on dirty flags
2020-03-09 18:34:37 -03:00
ReinUsesLisp
887d5288ef
gl_rasterizer: Don't disable blending on clears
...
Blending doesn't affect clears.
2020-02-28 17:56:43 -03:00
ReinUsesLisp
b1498d2c54
gl_rasterizer: Remove num vertex buffers magic number
2020-02-28 17:56:43 -03:00
ReinUsesLisp
62437943a7
gl_rasterizer: Only apply polygon offset clamp if enabled
2020-02-28 17:56:43 -03:00
ReinUsesLisp
2eeea90713
gl_state_tracker: Implement dirty flags for depth clamp enabling
2020-02-28 17:56:43 -03:00
ReinUsesLisp
3ce66776ec
gl_rasterizer: Disable scissor 0 when scissor is not used on clear
2020-02-28 17:56:43 -03:00
ReinUsesLisp
35bb9239ca
gl_rasterizer: Notify depth mask changes on clear
2020-02-28 17:56:43 -03:00
ReinUsesLisp
98c8948b23
gl_rasterizer: Minor sort changes to clearing
2020-02-28 17:56:42 -03:00
ReinUsesLisp
a42a6e1a2c
gl_state_tracker: Implement dirty flags for clip control
2020-02-28 17:56:42 -03:00
ReinUsesLisp
4f8d152b18
gl_state_tracker: Implement dirty flags for point sizes
2020-02-28 17:56:42 -03:00
ReinUsesLisp
231601763c
gl_state_tracker: Implement dirty flags for fragment color clamp
2020-02-28 17:56:42 -03:00
ReinUsesLisp
bf1a1d989f
gl_state_tracker: Implement dirty flags for logic op
2020-02-28 17:56:42 -03:00
ReinUsesLisp
13afd0e5b0
gl_state_tracker: Implement dirty flags for sRGB
2020-02-28 17:56:42 -03:00
ReinUsesLisp
d8f5c45051
gl_state_tracker: Implement dirty flags for rasterize enable
2020-02-28 17:56:42 -03:00
ReinUsesLisp
b727d99441
gl_state_tracker: Implement dirty flags for multisample
2020-02-28 17:56:42 -03:00
ReinUsesLisp
3c22bd92d8
gl_state_tracker: Implement dirty flags for alpha testing
2020-02-28 17:56:42 -03:00
ReinUsesLisp
9e46953580
gl_state_tracker: Implement dirty flags for polygon offsets
2020-02-28 17:56:42 -03:00
ReinUsesLisp
46a1888e02
gl_state_tracker: Implement dirty flags for primitive restart
2020-02-28 17:56:42 -03:00
ReinUsesLisp
37536d7a49
gl_state_tracker: Implement dirty flags for stencil testing
2020-02-28 17:56:42 -03:00
ReinUsesLisp
40a2c57df5
gl_state_tracker: Implement depth dirty flags
2020-02-28 17:56:42 -03:00
ReinUsesLisp
b910a83a47
gl_state_tracker: Implement dirty flags for front face and culling
2020-02-28 17:56:42 -03:00
ReinUsesLisp
b01dd7d1c8
gl_state_tracker: Implement dirty flags for blending
2020-02-28 17:56:42 -03:00
ReinUsesLisp
f7ec078592
gl_state_tracker: Implement dirty flags for clip distances and shaders
2020-02-28 17:56:42 -03:00
ReinUsesLisp
758ad3f75d
gl_state_tracker: Add dirty flags for buffers and divisors
2020-02-28 17:56:42 -03:00
ReinUsesLisp
69ad6279e4
gl_state_tracker: Implement dirty flags for vertex formats
2020-02-28 17:56:42 -03:00
ReinUsesLisp
6530144ccb
gl_state_tracker: Implement dirty flags for color masks
2020-02-28 17:56:42 -03:00
ReinUsesLisp
ba6f390448
gl_state_tracker: Implement dirty flags for scissors
2020-02-28 17:56:42 -03:00
ReinUsesLisp
7f52efdf61
gl_state_tracker: Implement dirty flags for viewports
2020-02-28 17:56:41 -03:00
ReinUsesLisp
dacf83ac02
renderer_opengl: Reintroduce dirty flags for render targets
2020-02-28 17:56:41 -03:00
ReinUsesLisp
9e74e6988b
maxwell_3d: Flatten cull and front face registers
2020-02-28 17:56:41 -03:00