bunnei
b00904f10e
gl_rasterizer_cache: Use zeta_width and zeta_height registers for depth buffer.
2018-07-21 21:51:06 -04:00
bunnei
602ff24d5c
gl_rasterizer: Use zeta_enable register to enable depth buffer.
2018-07-21 21:51:06 -04:00
bunnei
9ae3e4413f
Merge pull request #748 from lioncash/namespace
...
video_core: Use nested namespaces where applicable
2018-07-21 18:50:14 -07:00
bunnei
039c35ddeb
Merge pull request #747 from lioncash/unimplemented
...
gl_shader_manager: Remove unimplemented function prototype
2018-07-21 10:54:58 -07:00
Lioncash
604f780c9d
gl_shader_manager: Replace unimplemented function prototype
...
This was just a linker error waiting to happen.
2018-07-20 18:39:54 -04:00
Lioncash
d923d8f50c
gpu: Rename Get3DEngine() to Maxwell3D()
...
This makes it match its const qualified equivalent.
2018-07-20 18:34:49 -04:00
Lioncash
bdfd46e192
video_core: Use nested namespaces where applicable
...
Compresses a few namespace specifiers to be more compact.
2018-07-20 18:23:54 -04:00
bunnei
16888f7cb9
Merge pull request #738 from lioncash/sign
...
gl_state: Get rid of mismatched sign conversions in Apply()
2018-07-20 09:21:57 -07:00
bunnei
133c99fb4a
Merge pull request #731 from lioncash/shadow
...
gl_shader_decompiler: Eliminate variable and declaration shadowing
2018-07-20 09:13:36 -07:00
Lioncash
f53a9138bb
gl_state: Make references const where applicable in Apply()
2018-07-20 01:12:29 -04:00
Lioncash
80a916dc0a
gl_state: Get rid of mismatched sign conversions
...
While we're at it, amend the loop variable type to be the same width as
that returned by the .size() call.
2018-07-20 01:11:20 -04:00
Lioncash
41a8990ba7
gl_shader_decompiler: Eliminate variable and declaration shadowing
...
Ensures that no identifiers are being hidden, which also reduces
compiler warnings.
2018-07-19 20:32:49 -04:00
Lioncash
5b433431aa
gl_shader_decompiler: Remove unnecessary const from return values
...
This adds nothing from a behavioral point of view, and can inhibit the
move constructor/RVO
2018-07-19 20:11:04 -04:00
bunnei
9a4fa973c8
gl_state: Temporarily disable culling and depth test.
2018-07-18 23:21:43 -04:00
Lioncash
e72928762f
core: Don't construct instance of Core::System, just to access its live instance
...
This would result in a lot of allocations and related object
construction, just to toss it all away immediately after the call.
These are definitely not intentional, and it was intended that all of
these should have been accessing the static function GetInstance()
through the name itself, not constructed instances.
2018-07-18 18:18:27 -04:00
bunnei
42b866afc5
vi: Partially implement buffer crop parameters.
2018-07-17 20:13:17 -04:00
bunnei
efc5bbb9ab
gl_rasterizer_cache: Implement texture format G8R8.
2018-07-15 01:33:42 -04:00
bunnei
bba5e84efc
Merge pull request #665 from bunnei/fix-z24-s8
...
gl_rasterizer_cache: Fix incorrect offset in ConvertS8Z24ToZ24S8.
2018-07-14 22:18:55 -07:00
bunnei
50037e0c4f
gl_rasterizer_cache: Fix incorrect offset in ConvertS8Z24ToZ24S8.
2018-07-15 00:02:05 -04:00
bunnei
f5feb89c86
gl_rasterizer_cache: Implement depth format Z16_UNORM.
2018-07-14 23:43:28 -04:00
bunnei
c503bd852d
Merge pull request #598 from bunnei/makedonecurrent
...
OpenGL: Use MakeCurrent/DoneCurrent for multithreaded rendering.
2018-07-14 20:18:11 -07:00
bunnei
91e048cce7
OpenGL: Use MakeCurrent/DoneCurrent for multithreaded rendering.
2018-07-14 02:50:35 -04:00
Subv
021731e42a
GPU: Always enable the depth write when clearing the depth buffer.
...
The GPU ignores that register when clearing, but OpenGL obeys the glDepthMask parameter, so we set the depth mask to GL_TRUE when clearing the depth buffer. It will be restored to the correct value automatically on the next draw call.
2018-07-14 00:52:23 -05:00
bunnei
e904e1f785
gl_rasterizer: Fix check for if a shader stage is enabled.
2018-07-12 22:57:57 -04:00
bunnei
6e04dd24fe
gl_shader_gen: Implement dual vertex shader mode.
...
- When VertexA shader stage is enabled, we combine with VertexB program to make a single Vertex Shader stage.
2018-07-12 22:25:36 -04:00
bunnei
7fa10a188d
Merge pull request #655 from bunnei/pred-lt-nan
...
gl_shader_decompiler: Implement PredCondition::LessThanWithNan.
2018-07-12 18:59:15 -07:00
bunnei
50e6ef98e2
gl_shader_decompiler: Implement PredCondition::LessThanWithNan.
2018-07-12 20:04:35 -04:00
bunnei
fef7eb92de
gl_shader_decompiler: Use FlowCondition field in EXIT instruction.
2018-07-12 20:00:37 -04:00
Sebastian Valle
d1bd94351c
Merge pull request #652 from Subv/fadd32i
...
GPU: Implement the FADD32I shader instruction.
2018-07-12 17:36:51 -05:00
Subv
555dd2f793
GPU: Implement the FADD32I shader instruction.
2018-07-12 12:00:31 -05:00
bunnei
9d9375e109
gl_rasterizer: Flip triangles when regs.viewport_transform[0].scale_y is negative.
...
- Fixes a regression with Binding of Isaac.
2018-07-08 16:16:24 -04:00
bunnei
fb664990a3
Merge pull request #625 from Subv/imnmx
...
GPU: Implemented the IMNMX shader instruction.
2018-07-07 19:33:50 -07:00
Subv
3c86a705ba
GPU: Implemented the BC7U texture format.
...
Note: Our version of glad exports GL_COMPRESSED_RGBA_BPTC_UNORM as GL_COMPRESSED_RGBA_BPTC_UNORM_ARB, maybe it's time we update it.
2018-07-07 09:17:48 -05:00
bunnei
0ea724e06b
Merge pull request #629 from Subv/depth_test
...
GPU: Allow using the old NV04 values for the depth test function.
2018-07-05 16:43:10 -04:00
Subv
c44c0078cc
GPU: Allow using the old NV04 values for the depth test function.
...
These seem to be just a valid as the GL token values. Thanks @ReinUsesLisp
This restores graphical output to Disgaea 5
2018-07-05 13:01:31 -05:00
bunnei
aaf0e0a73e
Merge pull request #626 from Subv/shader_sync
...
GPU: Stub the shader SYNC and DEPBAR instructions.
2018-07-05 12:54:19 -04:00
bunnei
ffdd37675f
Merge pull request #624 from Subv/f2f_round
...
GPU: Implemented the F2F 'round' rounding mode.
2018-07-05 11:30:29 -04:00
bunnei
159deaa00f
Merge pull request #623 from Subv/vertex_types
...
GPU: Implement the Size_16_16 and Size_10_10_10_2 vertex attribute types
2018-07-05 11:30:01 -04:00
bunnei
9bfeacb59a
Merge pull request #622 from Subv/unused_tex
...
GPU: Ignore unused textures and corrected the TEX shader instruction decoding.
2018-07-05 11:29:17 -04:00
bunnei
a45206c2b2
Merge pull request #621 from Subv/psetp_
...
GPU: Implemented the PSETP shader instruction.
2018-07-05 11:28:50 -04:00
bunnei
21f8cd6e8c
Merge pull request #620 from Subv/depth_z32f
...
GPU: Implemented the 32 bit float depth buffer format.
2018-07-05 11:09:15 -04:00
Subv
cc56ecc097
GPU: Implemented the IMNMX shader instruction.
...
It's similar to the FMNMX instruction but it works on integers.
2018-07-04 15:44:37 -05:00
Subv
c4268c13c6
GPU: Implemented the F2F 'round' rounding mode.
...
It's implemented via the GLSL 'roundEven()' function.
2018-07-04 15:43:21 -05:00
Subv
56a5e7ba50
GPU: Stub the shader SYNC and DEPBAR instructions.
...
It is unknown at this moment if we actually need to do something with these instructions or if the GLSL compiler takes care of that for us.
2018-07-04 15:29:51 -05:00
Subv
25e08cf116
GPU: Implement the Size_16_16 and Size_10_10_10_2 vertex attribute types.
...
Both signed and unsigned variants.
2018-07-04 15:22:34 -05:00
Subv
36822431cc
GPU: Ignore textures that the GLSL compiler deemed unused when binding textures to the shaders.
2018-07-04 15:20:12 -05:00
Subv
9ba997d4f0
GPU: Implemented the PSETP shader instruction.
...
It's similar to the isetp and fsetp instructions but it works on predicates instead.
2018-07-04 15:15:03 -05:00
Subv
910af4676c
GPU: Implemented the 32 bit float depth buffer format.
2018-07-04 10:42:33 -05:00
Subv
70f55cf738
GPU: Flip the triangle front face winding if the GPU is configured to not flip the triangles.
...
OpenGL's default behavior is already correct when the GPU is configured to flip the triangles.
This fixes 1-2 Switch's splash screen.
2018-07-04 10:26:46 -05:00
Subv
53e622f91d
GPU: Only configure the used framebuffers during clear.
...
Don't try to configure the color buffer if it is not being cleared, it may not be completely valid at this point.
2018-07-03 22:32:59 -05:00