bunnei
20fa6379f6
gl_shader_decompiler: Implement TEX instruction.
8 years ago
bunnei
fc2f5b93c3
gl_shader_decompiler: Support multi-destination for TEXS.
8 years ago
Subv
455e14b8e3
Shaders: Implemented reading the gl_InstanceID and gl_VertexID variables in the vertex shader.
8 years ago
bunnei
ed61b578d9
gl_shader_decompiler: Partially implement F2F_R instruction.
8 years ago
bunnei
502fc1c4b3
shader_bytecode: Implement other variants of FMNMX.
8 years ago
Subv
12d6b53e60
Shaders: Implemented the FMNMX shader instruction.
8 years ago
Subv
062b1fb17c
ShadersDecompiler: Added decoding for the PSETP instruction.
8 years ago
bunnei
fc0fcbe9cc
maxwell_3d: Reset vertex counts after drawing.
8 years ago
bunnei
1bd065fb8e
shader_bytecode: Add decoding for FMNMX instruction.
8 years ago
bunnei
f2da134385
fermi_2d: Fix surface copy block height.
8 years ago
bunnei
aaa3d91e7c
gl_shader_decompiler: Partially implement I2I_R, and I2F_R.
8 years ago
bunnei
8c6970d20d
shader_bytecode: Add decodings for i2i instructions.
8 years ago
bunnei
f252169fa6
gl_shader_decompiler: Implement MOV32_IMM instruction.
8 years ago
Lioncash
324ee31fc3
general: Convert assertion macros over to be fmt-compatible
8 years ago
bunnei
8e661859a8
gl_shader_decompiler: Boilerplate for handling integer instructions.
8 years ago
Subv
0c04a308d1
GPU: Partially implemented the Fermi2D surface copy operation.
The hardware allows for some rather complicated operations to be performed on the data during the copy, this is not implemented.
Only same-format same-size raw copies are implemented for now.
8 years ago
Subv
1755d4bec3
Shaders: Added bit decodings for the I2I instruction.
8 years ago
Subv
bbb15541aa
GPU: Added surface copy registers to Fermi2D
8 years ago
Subv
b0b75e7ae4
GPU: Added boilerplate code for the Fermi2D engine
8 years ago
Subv
94d0d499c3
GPU: Reduce the number of registers of Maxwell3D to 0xE00.
The rest are just macro shim registers.
8 years ago
Subv
219b5d34e7
GPU: Move the Maxwell3D macro uploading code to the inside of the Maxwell3D processor.
It doesn't belong in the PFIFO handler.
8 years ago
Lioncash
f5bd2617a8
video-core: Move logging macros over to new fmt-capable ones
8 years ago
Subv
74c89df1c8
Shaders: Added decodings for the FSET instructions.
8 years ago
bunnei
b6bed8fd74
memory_manager: Make GpuToCpuAddress return an optional.
8 years ago
bunnei
ebef12f037
memory_manager: Use GPUVAdddr, not PAddr, for GPU addresses.
8 years ago
Subv
1eca798d8b
GPU: Added asserts to our code for handling the QUERY_GET GPU command.
This is based on research from nouveau. Many things are currently unknown and will require hwtests in the future.
This commit also stubs QueryMode::Write2 to do the same as Write. Nouveau code treats them interchangeably, it is currently unknown what the difference is.
8 years ago
Subv
6be45c562f
GPU: Support multiple enabled vertex arrays.
The vertex arrays will be copied to the stream buffer one after the other, and the attributes will be set using the ARB_vertex_attrib_binding extension.
yuzu now thus requires OpenGL 4.3 or the ARB_vertex_attrib_binding extension.
8 years ago
bunnei
f66098bd37
shader_bytecode: Add several more instruction decodings.
8 years ago
bunnei
d2302ee79f
shader_bytecode: Decode instructions based on bit strings.
8 years ago
Subv
2fbb91a6b6
ShaderGen: Implemented predicated instruction execution.
Each predicated instruction will be wrapped in an `if (predicate) { instruction_body; }` in the GLSL, where `predicate` is one of the predicate boolean variables previously set by fsetp.
8 years ago
Subv
31de416fc0
ShaderGen: Implemented the fsetp instruction.
Predicate variables are now added to the generated shader code in the form of 'pX' where X is the predicate id.
These predicate variables are initialized to false on shader startup and are set via the fsetp instructions.
TODO:
* Not all the comparison types are implemented.
* Only the single-predicate version is implemented.
8 years ago
Subv
601c5d9d93
ShaderGen: Register id 255 is special and is hardcoded to return 0 (SR_ZERO).
8 years ago
Subv
4ca65f10b1
ShaderGen: Implemented the fmul32i shader instruction.
8 years ago
bunnei
e8cc5900a6
gl_shader_gen: Support vertical/horizontal viewport flipping. ( #347 )
* gl_shader_gen: Support vertical/horizontal viewport flipping.
* fixup! gl_shader_gen: Support vertical/horizontal viewport flipping.
8 years ago
Subv
19a0e7e141
GPU: Pitch textures are now supported, don't assert when encountering them.
8 years ago
bunnei
de84b74dd4
maxwell3d: Allow Texture2DNoMipmap as Texture2D.
8 years ago
bunnei
797267eb58
shader_bytecode: Make ctor's constexpr and explicit.
8 years ago
bunnei
4d9c441bef
renderer_opengl: Implement BlendEquation and BlendFunc.
8 years ago
bunnei
c1408040a6
gl_shader_decompiler: Implement FMUL/FADD/FFMA immediate instructions.
8 years ago
bunnei
05305422e1
gl_shader_decompiler: Add support for TEXS instruction.
8 years ago
bunnei
65092bf8d8
gl_rasterizer: Implement indexed vertex mode.
8 years ago
Subv
e14e38fe0e
GPU: Added a function to determine whether a shader stage is enabled or not.
8 years ago
bunnei
538322ec1f
shaders: Add NumTextureSamplers const, remove unused #pragma.
8 years ago
bunnei
f48c229f0e
shaders: Address PR review feedback.
8 years ago
bunnei
47bf0b0094
shaders: Fix GCC and clang build issues.
8 years ago
bunnei
d166a50ded
gl_shader_decompiler: Implement negate, abs, etc. and lots of cleanup.
8 years ago
bunnei
a859a70da1
shader_bytecode: Add FSETP and KIL to GetInfo.
8 years ago
bunnei
6fe96737a1
shader_bytecode: Add SubOp decoding.
8 years ago
bunnei
7e7f053ea7
maxwell_3d: Make memory_manager public.
8 years ago
bunnei
4e961244a8
maxwell_3d: Fix shader_config decodings.
8 years ago