Subv
b4ae8432b4
GPU: Implemented the Z32_S8_X24 depth buffer format.
2018-07-24 20:41:40 -05:00
Subv
72cb7ab18b
GPU: Allow using Z32 as a texture format.
2018-07-24 19:54:23 -05:00
Subv
1930980a26
GPU: Allow the usage of R8 as a render target format.
2018-07-24 19:49:36 -05:00
Subv
3b77420f15
GPU: Remove the assert that required the CODE_ADDRESS to be 0.
...
Games usually just leave it at 0 but nouveau sets it to something else. This already works fine, the assert is useless.
2018-07-24 13:54:12 -05:00
Subv
d10cc9c548
GPU: Implemented the R16 and R16F texture formats.
2018-07-24 13:39:16 -05:00
Lioncash
6bbabfe848
gl_rasterizer: Replace magic number with GL_INVALID_INDEX in SetupConstBuffers()
...
This is just the named constant that OpenGL provides, so we can use that
instead of using a literal -1
2018-07-24 12:24:49 -04:00
Lioncash
7300872843
gl_rasterizer: Use std::string_view instead of std::string when checking for extensions
...
We can avoid heap allocations here by just using a std::string_view
instead of performing unnecessary copying of the string data.
2018-07-24 12:10:37 -04:00
Lioncash
2aa1ec7f8d
gl_rasterizer: Use in-class member initializers where applicable
...
We can just assign to the members directly in these cases.
2018-07-24 12:08:12 -04:00
Lioncash
4cab632ba6
video_core/memory_manager: Replace a loop with std::array's fill() function in PageSlot()
...
We already have a function that does what this code was doing, so let's
use that instead.
2018-07-24 11:56:30 -04:00
Lioncash
38ad89a19b
video_core/memory_manager: Avoid repeated unnecessary page slot lookups
...
We don't need to keep calling the same function over and over again in a
loop, especially when the behavior is slightly non-trivial. We can just
keep a reference to the looked up location and do all the checking and
assignments based off it instead.
2018-07-24 11:19:54 -04:00
bunnei
a0873add99
Merge pull request #799 from Subv/tex_r32f
...
GPU: Implement texture format R32F.
2018-07-24 04:46:07 -07:00
bunnei
2216f26593
Merge pull request #796 from bunnei/gl-uint
...
maxwell_to_gl: Implement VertexAttribute::Type::UnsignedInt.
2018-07-24 04:44:56 -07:00
bunnei
772c408826
gl_rasterizer: Implement texture border color.
2018-07-23 23:34:42 -04:00
bunnei
a5062c345f
maxwell_to_gl: Implement Texture::WrapMode::Border.
2018-07-23 23:34:41 -04:00
Subv
3a80e8ab24
GPU: Implement texture format R32F.
2018-07-23 22:21:31 -05:00
bunnei
c324ea103c
Merge pull request #791 from bunnei/rg32f-rgba32f-bgra8
...
gl_rasterizer_cache: Implement formats BGRA8_UNORM/RGBA32_FLOAT/RG32_FLOAT
2018-07-23 20:13:19 -07:00
bunnei
295d3104fb
maxwell_to_gl: Implement VertexAttribute::Type::UnsignedInt.
2018-07-23 23:12:14 -04:00
bunnei
15f87717ca
Merge pull request #792 from lioncash/retval
...
gl_shader_decompiler: Correct return value of WriteTexsInstruction()
2018-07-23 20:06:48 -07:00
bunnei
236789a321
Merge pull request #790 from bunnei/shader-print-instr
...
gl_shader_decompiler: Print instruction value in shader comments.
2018-07-23 19:48:47 -07:00
bunnei
f2fc9c5284
Merge pull request #788 from bunnei/shader-check-zero
...
gl_shader_decompiler: Check if SetRegister result is ZeroIndex.
2018-07-23 19:44:05 -07:00
Lioncash
97ce8f0457
gl_shader_decompiler: Correct return value of WriteTexsInstruction()
...
This should be returning void, not a std::string
2018-07-23 22:31:58 -04:00
bunnei
567ae2ae9c
gl_shader_decompiler: Implement shader instruction TLDS.
2018-07-23 22:02:51 -04:00
bunnei
889da74c9d
gl_rasterizer_cache: Implement RenderTargetFormat RG32_FLOAT.
2018-07-23 21:22:54 -04:00
bunnei
c8cb44909a
gl_rasterizer_cache: Implement RenderTargetFormat RGBA32_FLOAT.
2018-07-23 21:22:53 -04:00
bunnei
e1ffcc6817
gl_rasterizer_cache: Implement RenderTargetFormat BGRA8_UNORM.
2018-07-23 21:22:44 -04:00
bunnei
ff355e7684
gl_rasterizer_cache: Add missing log statements.
2018-07-23 21:20:09 -04:00
bunnei
04cf719b92
gl_shader_decompiler: Print instruction value in shader comments.
2018-07-23 21:11:05 -04:00
bunnei
658f096c03
gl_shader_decompiler: Check if SetRegister result is ZeroIndex.
2018-07-23 21:08:40 -04:00
Lioncash
71c3648ad6
gl_shader_decompiler: Simplify GetCommonDeclarations()
2018-07-23 17:11:18 -04:00
bunnei
ee26b9541e
Merge pull request #769 from bunnei/shader-mask-fixes
...
shader_bytecode: Implement other TEXS masks.
2018-07-22 18:03:31 -07:00
Lioncash
db185e6950
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.
2018-07-22 03:30:35 -04:00
bunnei
392383692c
shader_bytecode: Implement other TEXS masks.
2018-07-22 03:23:15 -04:00
bunnei
30b1afcf99
Merge pull request #767 from bunnei/shader-cleanup
...
gl_shader_decompiler: Remove unused state tracking and minor cleanup.
2018-07-22 00:03:17 -07:00
bunnei
e8f619cc71
gl_shader_decompiler: Remove unused state tracking and minor cleanup.
2018-07-22 01:00:44 -04:00
bunnei
3a6bad38b6
gl_shader_decompiler: Implement SEL instruction.
2018-07-22 00:37:12 -04:00
bunnei
f4101aeacc
gl_rasterizer_cache: Blit surfaces on recreation instead of flush and load.
2018-07-21 21:51:06 -04:00
bunnei
def372de50
gl_rasterizer_cache: Use GPUVAddr as cache key, not parameter set.
2018-07-21 21:51:06 -04:00
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
6d96a4fc0a
maxwell_3d: Add depth buffer enable, width, and height registers.
2018-07-21 21:51:05 -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
e85b4f8c75
Merge pull request #735 from lioncash/video-unused
...
maxwell_3d: Remove unused variable within GetStageTextures()
2018-07-20 09:16:15 -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