bunnei
bed06310f2
Merge pull request #242 from Subv/set_shader
...
GPU: Handle the SetShader method call (0xE24) and store the shader config.
2018-03-17 00:34:17 -04:00
Subv
c9850b0d3a
GPU: Handle the SetShader method call (0xE24) and store the shader config.
2018-03-16 22:51:06 -05:00
Subv
dbade2db3e
GPU: Added the vertex array registers.
2018-03-16 22:47:45 -05:00
bunnei
b849a04b2f
Merge pull request #241 from Subv/gpu_method_call
...
GPU: Process command mode 5 (IncreaseOnce) differently from other commands
2018-03-16 22:28:22 -04:00
Subv
6796e37911
GPU: Process command mode 5 (IncreaseOnce) differently from other commands.
...
Accumulate all arguments before calling the desired method.
Note: Maybe we should do the same for the NonIncreasing mode?
2018-03-16 20:32:44 -05:00
Subv
3247b8f9dd
GPU: Assert that we get a 0 CODE_ADDRESS register in the 3D engine.
...
Shader address calculation depends on this value to some extent, we do not currently know what it being 0 entails.
2018-03-16 19:24:41 -05:00
Subv
d468c046f9
GPU: Added Maxwell registers for Shader Program control.
2018-03-16 19:23:11 -05:00
Subv
083e494083
GPU: Intercept writes to the VERTEX_END_GL register.
...
This is the register that gets written after a game calls DrawArrays().
We should collect all GPU state and draw using our graphics API here.
2018-03-04 19:14:04 -05:00
Lioncash
c1583210dd
maxwell_3d: Make constructor explicit
2018-02-13 23:47:51 -05:00
bunnei
f87cb38361
Merge pull request #187 from Subv/maxwell3d_query
...
GPU: Partially implemented the QUERY_* registers in the Maxwell3D engine.
2018-02-13 23:25:07 -05:00
bunnei
f8ab7992d0
Merge pull request #178 from Subv/command_buffers
...
GPU: Added a command processor to decode the GPU pushbuffers and forward the commands to their respective engines
2018-02-12 13:51:52 -05:00
Subv
9cf3a6cc00
GPU: Partially implemented the QUERY_* registers in the Maxwell3D engine.
...
Only QueryMode::Write is supported at the moment.
2018-02-12 12:34:41 -05:00
Subv
0088b3128b
Make a GPU class in VideoCore to contain the GPU state.
...
Also moved the GPU MemoryManager class to video_core since it makes more sense for it to be there.
2018-02-11 23:44:12 -05:00
Subv
35176a0f73
GPU: Added a command processor to decode the GPU pushbuffers and forward the commands to their respective engines.
2018-02-11 22:42:48 -05:00
bunnei
1926a0d478
renderer_opengl: Support framebuffer flip vertical.
2018-02-11 21:03:55 -05:00
MerryMage
7a23a53396
memory: Replace all memory hooking with Special regions
2018-01-27 15:16:39 +00:00
James Rowe
ea88c44eb8
Format: Run the new clang format on everything
2018-01-20 16:45:11 -07:00
Lioncash
447c25646e
CMakeLists: Derive the source directory grouping from targets themselves
...
Removes the need to store to separate SRC and HEADER variables, and then
construct the target in most cases.
2018-01-17 21:51:43 -05:00
MerryMage
41bfd994f6
clang-format
2018-01-16 18:05:21 +00:00
bunnei
386ecbd433
renderer_gl: Clear screen to black before rendering framebuffer.
2018-01-15 00:20:19 -05:00
bunnei
f0bccde0a0
renderer: Render previous frame when no new one is available.
2018-01-14 23:54:56 -05:00
MerryMage
d616b36e7b
Fix build on macOS and linux
2018-01-13 22:38:52 +00:00
James Rowe
bd5740a721
Remove gpu debugger and get yuzu qt to compile
2018-01-12 19:11:04 -07:00
James Rowe
a5b9cd4d18
Remove references to PICA and rasterizers in video_core
2018-01-12 19:11:03 -07:00
bunnei
5203bf6799
renderer_opengl: Fix LOG_TRACE in LoadFBToScreenInfo.
2018-01-11 22:32:44 -05:00
bunnei
0ffcc1190e
renderer_opengl: Support rendering Switch framebuffer.
2018-01-10 23:28:59 -05:00
bunnei
14fe63772f
render_base: Add a struct describing framebuffer metadata.
2018-01-10 23:28:56 -05:00
bunnei
7fac24c9e3
renderer_opengl: Add MortonCopyPixels function for Switch framebuffer.
2018-01-10 23:28:53 -05:00
bunnei
46d4d95274
renderer_opengl: Update DrawScreens for Switch.
2018-01-10 23:28:49 -05:00
bunnei
4728cc141a
core/video_core: Fix a bunch of u64 -> u32 warnings.
2018-01-01 15:40:35 -05:00
bunnei
2ea8867549
hle: Initial implementation of NX service framework and IPC.
2017-10-14 22:18:42 -04:00
Huw Pascoe
e38656565d
Extracted the attribute setup and draw commands into their own functions
2017-10-04 01:08:29 +01:00
Huw Pascoe
da1c8d1522
Fixed type conversion ambiguity
2017-09-30 09:34:35 +01:00
Subv
9f1b2d3260
Disable unary operator- on Math::Vec2/Vec3/Vec4 for unsigned types.
...
It is unlikely we will ever use this without first doing a Cast to a signed type.
Fixes 9 "unary minus operator applied to unsigned type, result still unsigned" warnings on MSVC2017.3
2017-09-27 09:06:41 -05:00
B3n30
9b06d0afb7
Merge pull request #2951 from huwpascoe/perf-4
...
Optimized Morton
2017-09-25 08:28:55 +02:00
Huw Pascoe
cb0886468d
Optimized Float<M,E> multiplication
...
Before:
ucomiss xmm1, xmm1
jp .L9
pxor xmm2, xmm2
mov edx, 1
ucomiss xmm0, xmm2
setp al
cmovne eax, edx
test al, al
jne .L9
.L3:
movaps xmm0, xmm2
ret
.L9:
ucomiss xmm0, xmm0
jp .L10
pxor xmm2, xmm2
mov edx, 1
ucomiss xmm1, xmm2
setp al
cmovne eax, edx
test al, al
je .L3
After:
movaps xmm2, xmm1
mulss xmm2, xmm0
ucomiss xmm2, xmm2
jnp .L3
ucomiss xmm1, xmm0
jnp .L11
.L3:
movaps xmm0, xmm2
ret
.L11:
pxor xmm2, xmm2
jmp .L3
2017-09-25 00:54:02 +01:00
Huw Pascoe
275530d7a9
Optimized Morton
2017-09-24 22:27:14 +01:00
James Rowe
4c4807a251
Merge pull request #2921 from jroweboy/batch-fix-2
...
GPU: Add draw for immediate and batch modes
2017-09-24 07:57:16 -06:00
James Rowe
a10022da25
Remove pipeline.gpu_mode and fix minor issues
2017-09-23 09:28:20 -06:00
Yuri Kunde Schlesner
b9365deb5a
Merge pull request #2928 from huwpascoe/master
...
Fixed framebuffer warning
2017-09-22 04:06:38 +02:00
Huw Pascoe
1089bdda80
Improved performance of FromAttributeBuffer
...
Ternary operator is optimized by the compiler
whereas std::min() is meant to return a value.
I've noticed a 5%-10% emulation speed increase.
2017-09-17 15:56:36 +01:00
Huw Pascoe
a35ca6c623
Fixed framebuffer warning
2017-09-17 11:57:06 +01:00
Yuri Kunde Schlesner
e379255d9b
Merge pull request #2900 from wwylele/clip-2
...
PICA: implement custom clip plane
2017-09-16 10:23:00 +02:00
James Rowe
08a1641f8a
GPU: Add draw for immediate and batch modes
...
PR #1461 introduced a regression where some games would change configuration
even while in the poorly named "drawing" mode, which broke the heuristic
citra was using to determine when to draw the batch. This change adds
back in a draw call for batching, and also adds in a draw call in
immediate mode each time it adds a triangle.
2017-09-11 09:21:43 -06:00
bunnei
f536a8d269
Merge pull request #2865 from wwylele/gs++
...
PICA: implemented geometry shader
2017-09-07 23:02:59 -04:00
bunnei
d9e82a499e
Merge pull request #2914 from wwylele/fresnel-fix
...
pica/lighting: only apply Fresnel factor for the last light
2017-09-05 10:00:49 -04:00
wwylele
3b210dd006
pica/lighting: only apply Fresnel factor for the last light
2017-09-03 08:22:03 +03:00
wwylele
c58f627516
video_core: report telemetry for gas mode
2017-08-31 12:54:17 +03:00
bunnei
84ac533b17
Merge pull request #2891 from wwylele/sw-bump
...
SwRasterizer/Lighting: implement bump mapping
2017-08-30 21:07:30 -04:00
Weiyi Wang
d74c3415fb
Merge pull request #2892 from Subv/warnings2
...
Warnings: Fixed a few missing-return warnings in video_core.
2017-08-28 03:21:51 -05:00