Lioncash
0797657bc0
gl_shader_decompiler: Remove redundant Subroutine construction in AddSubroutine()
We don't need to toss away the Subroutine instance after the find() call
and reconstruct another instance with the same data right after it.
Particularly give Subroutine contains a std::set.
8 years ago
bunnei
f5a2944ab6
gl_shader_decompiler: Remove unused state tracking and minor cleanup.
8 years ago
bunnei
c43eaa94f3
gl_shader_decompiler: Implement SEL instruction.
8 years ago
bunnei
63fbf9a7d3
gl_rasterizer_cache: Blit surfaces on recreation instead of flush and load.
8 years ago
bunnei
4301f0b539
gl_rasterizer_cache: Use GPUVAddr as cache key, not parameter set.
8 years ago
bunnei
cd47391c2d
gl_rasterizer_cache: Use zeta_width and zeta_height registers for depth buffer.
8 years ago
bunnei
d8c60029d6
gl_rasterizer: Use zeta_enable register to enable depth buffer.
8 years ago
bunnei
5287991a36
maxwell_3d: Add depth buffer enable, width, and height registers.
8 years ago
Lioncash
d5bc9aef4e
gl_shader_manager: Replace unimplemented function prototype
This was just a linker error waiting to happen.
8 years ago
Lioncash
863579736c
gpu: Rename Get3DEngine() to Maxwell3D()
This makes it match its const qualified equivalent.
8 years ago
Lioncash
bb960c8cb4
video_core: Use nested namespaces where applicable
Compresses a few namespace specifiers to be more compact.
8 years ago
Lioncash
0faa13baeb
gl_state: Make references const where applicable in Apply()
8 years ago
Lioncash
e6b3d3a9ea
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.
8 years ago
Lioncash
8b08f82dc7
maxwell_3d: Remove unused variable within GetStageTextures()
8 years ago
Lioncash
f26866ff6a
gl_shader_decompiler: Eliminate variable and declaration shadowing
Ensures that no identifiers are being hidden, which also reduces
compiler warnings.
8 years ago
Lioncash
c2121cb059
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
8 years ago
bunnei
cf30c4be22
gl_state: Temporarily disable culling and depth test.
8 years ago
bunnei
b496a9eefe
decoders: Fix calc of swizzle image_width_in_gobs.
8 years ago
Lioncash
3a4841e403
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.
8 years ago
Lioncash
6a03badcbc
astc: Initialize vector size directly in Decompress
There's no need to perform a separate resize.
8 years ago
Lioncash
0f148548f3
astc: Mark functions as internally linked where applicable
8 years ago
Lioncash
c5803e30d3
astc: const-correctness changes where applicable
A few member functions didn't actually modify class state, so these can
be amended as necessary.
8 years ago
Lioncash
e3fadb9616
astc: Delete Bits' copy contstructor and assignment operator
This also potentially avoids warnings, considering the copy assignment
operator is supposed to have a return value.
8 years ago
Lioncash
4cd52a34b9
astc: In-class initialize member variables where appropriate
8 years ago
bunnei
c3dd456d51
vi: Partially implement buffer crop parameters.
8 years ago
Subv
3d3b10adc7
GPU: Added register definitions for the stencil parameters.
8 years ago
bunnei
3a96670f2d
gl_rasterizer_cache: Implement texture format G8R8.
8 years ago
bunnei
3145114190
gl_rasterizer_cache: Fix incorrect offset in ConvertS8Z24ToZ24S8.
8 years ago
bunnei
e21190f47f
gl_rasterizer_cache: Implement depth format Z16_UNORM.
8 years ago
bunnei
05cb10530f
OpenGL: Use MakeCurrent/DoneCurrent for multithreaded rendering.
8 years ago
Subv
b37354cca8
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.
8 years ago
bunnei
8aeff9cf8e
gl_rasterizer: Fix check for if a shader stage is enabled.
8 years ago
bunnei
c4015cd93a
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.
8 years ago
bunnei
49c0c081c4
gl_shader_decompiler: Implement PredCondition::LessThanWithNan.
8 years ago
bunnei
4757ffdcce
gl_shader_decompiler: Use FlowCondition field in EXIT instruction.
8 years ago
Subv
c1ae841f47
GPU: Implement the FADD32I shader instruction.
8 years ago
Subv
0cad310e12
GPU: Corrected the decoding of FFMA for immediate operands.
8 years ago
bunnei
854f474f52
gl_rasterizer: Flip triangles when regs.viewport_transform[0].scale_y is negative.
- Fixes a regression with Binding of Isaac.
8 years ago
Subv
4633dd9505
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.
8 years ago
Subv
9f6a5660e8
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
8 years ago
Subv
b0c92b80b1
GPU: Implemented the IMNMX shader instruction.
It's similar to the FMNMX instruction but it works on integers.
8 years ago
Subv
d800a02b4b
GPU: Implemented the F2F 'round' rounding mode.
It's implemented via the GLSL 'roundEven()' function.
8 years ago
Subv
77cfe4f027
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.
8 years ago
Subv
ce39ae3e57
GPU: Implement the Size_16_16 and Size_10_10_10_2 vertex attribute types.
Both signed and unsigned variants.
8 years ago
Subv
4bda9693be
GPU: Ignore textures that the GLSL compiler deemed unused when binding textures to the shaders.
8 years ago
Subv
c42b818cf9
GPU: Corrected the decoding for the TEX shader instruction.
8 years ago
Subv
53a55bd751
GPU: Implemented the PSETP shader instruction.
It's similar to the isetp and fsetp instructions but it works on predicates instead.
8 years ago
Subv
016e357c75
GPU: Implemented the 32 bit float depth buffer format.
8 years ago
Subv
c1bebdef5e
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.
8 years ago
Subv
5a9df3c675
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.
8 years ago