Henrik Rydgard
e8396b10f9
D3D11: Implement screenshots.
2017-02-18 00:43:02 +01:00
Henrik Rydgard
0e8aeaea3a
D3D11: Implement basic framebuffer readback.
...
Also make debug interfaces more consistent.
2017-02-18 00:07:49 +01:00
xebra
ef536ae54d
Move wasted checks in FastRunLoop() to Execute_TexLevel()
2017-02-15 01:02:50 +09:00
Henrik Rydgard
55aa879216
A lot of buildfixes
2017-02-06 16:16:43 +01:00
Henrik Rydgard
0d1d6f98e4
Pass in the DrawContext to all backends
2017-01-30 20:26:47 +01:00
Henrik Rydgard
182d87cc15
Minor cleanup in GPU dispatch tables
2017-01-28 12:11:56 +01:00
Henrik Rydgard
ab6bc4cb16
Restores a lost optimization from uv prescale - avoiding flushing. Should fix #9219 .
...
Also #ifdef away some invalid-address checks in hot paths in the GPU.
2017-01-28 11:39:34 +01:00
Henrik Rydgard
52a4467a46
Disable the GPU mutex in single core mode. On some platforms it's expensive enough to show up in profiles even though it's useless.
2017-01-27 10:17:44 +01:00
Henrik Rydgard
c70265d7f2
Use table-driven dirtying instead of callbacks in GPU_GLES
2017-01-24 18:12:20 +01:00
Henrik Rydgard
ae37df0a8c
Further centralization of EstimatePerVertexCost, now moved to GPUCommon
2017-01-23 21:11:39 +01:00
Henrik Rydgard
daf02f1de6
Centralize the matrix load functions, no need to duplicate them for each backend.
2017-01-23 21:11:39 +01:00
Henrik Rydgard
3c221a7ebd
Extract the dirty flag from the shader managers so code that dirties uniform flags can be shared.
2017-01-23 21:11:39 +01:00
Henrik Rydgard
bd4436c6eb
Centralize EstimatePerVertexCost and Execute_BlockTransferStart
2017-01-23 17:22:17 +01:00
Henrik Rydgard
ab9c1d4dc0
Centralize the spline/bezier/bbox execute functions into GPUCommon
2017-01-21 20:43:05 +01:00
Henrik Rydgard
dc5c0c0d2d
Centralize ProcessEvent
2016-12-21 20:02:05 +01:00
Henrik Rydgard
7634ff7f09
Centralize a few more functions, fix DX9
2016-12-21 18:51:19 +01:00
Henrik Rydgard
98ebf9ed6f
Centralize PerformStencil* and Invalidate* functions
2016-12-21 18:33:08 +01:00
Henrik Rydgard
866d4a645f
Centralize "PerformMemory*" functions
2016-12-21 18:26:06 +01:00
Henrik Rydgard
e15cba0e1b
Centralize "Resized()"
2016-12-21 18:13:58 +01:00
Henrik Rydgard
7e46a153c0
Centralize DoBlockTransfer between the GPUs.
...
Required adding a pointer to the framebuffer manager and texture cache in
GPUCommon, which took a little bit of refactoring.
2016-12-21 18:07:17 +01:00
Henrik Rydgard
f4b1152b00
Pick some safe changes from the android gradle branch (including windows CMake fixes)
2016-12-05 16:52:03 +01:00
Florent Castelli
70593d1004
android: Change preprocessor define to standard __ANDROID__
...
ANDROID is only standard to the old Makefile buildsystem, not the platform.
2016-10-12 11:14:09 +02:00
Unknown W. Brackets
e95b2cf0d5
Reduce some repetitive code.
2016-04-10 13:07:08 -07:00
Henrik Rydgard
35b6c7341b
Fix a bunch of memory leaks, after enabling file+line-number memory leak tracking for the MS Debug CRT.
...
Few of these were serious, most were on-exit, but good to have a cleaner memory report after running.
2016-02-10 15:36:10 +01:00
Henrik Rydgard
94c91e199a
Minor GPU interface change needed for a WIP backend
2016-01-06 23:53:21 +01:00
Henrik Rydgård
25d2f4da9c
LLVM warning fixes
2015-10-14 22:18:43 +02:00
Henrik Rydgard
7f4e473e8c
Add new shader viewing tool
2015-10-14 18:10:21 +02:00
Henrik Rydgard
72ae497350
Remove glstate usage except in the GPU implementation. Prepare for moving it into PPSSPP.
2015-09-06 12:42:15 +02:00
Henrik Rydgard
b22850720d
Move the CheckGPUFeatures call to the Resize check
2015-09-06 00:13:46 +02:00
Henrik Rydgard
f524049277
Move more GPU feature checks upfront. Re-check when exiting settings menu.
2015-09-05 21:23:58 +02:00
Henrik Rydgard
2430c283a5
More GPU cleaning, removing uses of GPUState.h where not needed.
...
Want to get rid of direct accesses to GPUState in modules that may be reused in
my future next-gen backends, that will reformat display lists into command lists that will
then be optimized and executed, out of sync with the real GPUState.
Candidate modules that may be reused in full are Framebuffer and Depal, possibly TextureCache to some degree.
2015-07-29 12:37:49 +02:00
Unknown W. Brackets
6b26e1a591
Read pending vertex data before exiting gpu loop.
...
Fixes save pictures in Crimson Gem Saga.
2015-03-14 18:11:24 -07:00
Unknown W. Brackets
795088001c
Avoid passing a GPUstate by value.
...
Only used by Qt GE debugger thing anyway.
2015-01-17 18:21:04 -08:00
Unknown W. Brackets
6d104edb5d
Make sure not to leak any enabled vertex arrays.
...
When returning to EmuScreen, we need to reset any enabled vertex arrays or
we could crash in EmuScreen. Also, when starting a frame / dirting the
shader, make sure also to toggle the vertex arrays.
2014-06-22 21:42:29 -07:00
Unknown W. Brackets
03f86f364f
Skip debug stepping time in list/func time.
...
Just makes the debug stats actually useful while stepping. A bit of
overengineering, but it makes it easy to go frame-by-frame looking for
perf issues.
2014-06-14 08:42:18 -07:00
Unknown W. Brackets
256e98b841
Add the common funcs to the direct exec calls.
2014-04-17 01:18:52 -07:00
Unknown W. Brackets
82df1b1fa8
Simplify UpdatePC() a bit more.
2014-04-05 12:04:10 -07:00
Unknown W. Brackets
a4327702f1
Reduce some includes under GPU/.
2014-03-29 16:51:38 -07:00
Unknown W. Brackets
0a880b09ad
Allow fast bone mtx loads w/o software skinning.
2014-03-02 18:12:40 -08:00
Unknown W. Brackets
d35717f5a8
Also report the vertex decoder jit to verysleepy.
...
Can use the same methods to support other platforms.
2013-11-30 19:20:22 -08:00
Unknown W. Brackets
435115441d
Reinitialize the GE on sceKernelLoadExec().
...
Mostly, reset the lists and draw completion, etc.
May be required for Capcom Classic Collection Reloaded to work.
2013-11-28 15:35:12 -08:00
Unknown W. Brackets
597b2fe597
Align the GPU so the tick count can be aligned.
...
It's atomic for free on 64 bit, but only if it's aligned.
2013-10-26 18:29:44 -07:00
Henrik Rydgard
a88ab80477
Only clear the shader cache when toggling "Disable alpha test"
2013-10-22 14:34:16 +02:00
Unknown W. Brackets
ff0e9cf32d
Make it possible to flip flags in the ge debugger.
2013-10-06 22:17:56 -07:00
Unknown W. Brackets
3787471791
Add some initial methods to GPUDebugInterface.
2013-09-22 10:22:33 -07:00
Unknown W. Brackets
eabd8b5302
Add GPU debugging hooks to Host, not yet in use.
2013-09-22 08:14:55 -07:00
Unknown W. Brackets
881cefbc83
A paused list will allow a context save.
...
Just not stall, drawing, etc.
2013-09-21 21:01:41 -07:00
Unknown W. Brackets
e7bd716c71
Allocate ge list ids using round robin.
...
Even if you enqueue and then dequeue 0, you don't get it again right away.
2013-09-21 15:03:29 -07:00
Unknown W. Brackets
863eb83e4c
Add support for sceGeGetStack() for debugging.
2013-09-21 10:04:31 -07:00
Unknown W. Brackets
4078dcd917
Support save/restore of context on list run/finish.
2013-09-20 09:51:44 -07:00