Henrik Rydgård
f3282dcfda
Delete the gl name cache (might resurrect it on the GLQueueRunner side if needed later). Other cleanup and fixes.
2018-01-27 15:10:17 +01:00
Henrik Rydgård
46e1fbb788
Initial texture work. Bugfix indexed drawing
2018-01-27 15:10:17 +01:00
Henrik Rydgård
bd6818198a
More GLRenderManager
2018-01-27 15:10:17 +01:00
Henrik Rydgård
376d92fcc9
Start messing with the draw engine...
2018-01-27 15:10:17 +01:00
Henrik Rydgård
b5e5d72a0a
Complete the separation of depth and stencil renderpass flags
2017-12-30 22:52:22 +01:00
Unknown W. Brackets
025a806ab4
GPU: Remove FBO auto-download hack.
...
See #6261 . This should be replaced now with block transfer detection,
which is faster and doesn't cause crashes.
Games that previously required this setting should use block transfer
instead. If that doesn't work, it's a bug.
2017-12-25 11:17:59 -08:00
Unknown W. Brackets
0956fa3ff6
GPU: Reduce depth blits when not updated.
...
If the game initially clears the depth in a buffer, but then never uses
that depth again, don't keep blitting depth.
Improves #8538 , by preventing the depth blits in this case.
2017-12-24 11:52:15 -08:00
Unknown W. Brackets
8e2682d93c
GLES: Reduce conversion buf size if possible.
...
No need to use the stride for the temp buf. May avoid issues if the
driver crashes when reading outside the FBO.
2017-12-21 12:02:45 -08:00
Unknown W. Brackets
30871bfcd1
GLES: Avoid buffer on GLES2 for h=1 / CLUT.
2017-12-21 11:52:11 -08:00
Unknown W. Brackets
75aa65908c
GLES: Pack without stride where possible.
...
This may possibly help #10425 in case the behavior is different when going
over width when reading pixels.
2017-12-21 11:41:53 -08:00
Henrik Rydgård
99b34c7b45
Use glslang to translate GLSL 1.x postshaders to GLSL 3.0 or later to appease strict GL Core drivers. Should fix #10362
...
Fixed small bugs, now tested and working on mac.
Add spirv-cross to cmake build
2017-12-08 10:25:42 +01:00
Henrik Rydgård
7d0fc9ce65
Rework GL lost-device to work more like Vulkan. Gets rid of gl_lost manager etc.
2017-12-07 15:05:59 +01:00
Henrik Rydgård
f8b70fe185
Clean up all the FBOs in DestroyAllFBOs. Missing any can have bad consequences after app switching on Android/Vulkan where we recreate stuff.
2017-12-01 12:17:10 +01:00
Henrik Rydgård
6ea669368c
Crash reports from 5% rollout of 1.5: Make some asserts dbg_asserts for now, try to fix an issue with framebuffers when postproc is enabled.
2017-11-29 18:53:52 +01:00
Henrik Rydgård
23f7819329
Unify RebindFramebuffer, mostly.
2017-11-15 20:44:25 +01:00
Henrik Rydgård
525cb40f84
Vulkan: Support wide lines if available on the GPU.
2017-11-12 10:17:49 +01:00
Unknown W. Brackets
78b5565035
GPU: Properly Release() FBOs.
...
In case we end up wanting to use those reference counts, let's use the
right API.
2017-11-05 12:45:02 -08:00
Henrik Rydgård
4a30aedc53
Unify and move around code to cleanup some debug accessors
2017-10-18 13:10:05 +02:00
Henrik Rydgård
898716cc26
Unify DownloadFramebufferForClut
2017-10-18 12:34:01 +02:00
Henrik Rydgård
981c49615c
Unify FlushBeforeCopy. Remove old dummy methods from Vulkan framebuffer manager.
2017-10-18 12:26:02 +02:00
Henrik Rydgård
4e3a9bc3e3
Unify some more framebuffer functions. Leave the GL stuff alone for now due to async.
2017-10-18 11:20:58 +02:00
Henrik Rydgård
f2ea0ce472
Unify (well, almost) GetOutputFramebuffer (D3D11/GL)
2017-10-18 10:54:26 +02:00
Henrik Rydgård
214270d192
Unify GetDepthBuffer/GetStencilBuffer in GL/D3D11
2017-10-18 10:54:26 +02:00
Henrik Rydgård
ad4bc3f9f4
Address review comments.
2017-10-16 14:32:26 +02:00
Henrik Rydgård
9b1ee6fce6
Unify GetFramebuffer in GLES and D3D11.
...
D3D9 is left behind for now, and Vulkan still needs implementation - got a branch with initial work towards that.
2017-10-11 13:39:34 +02:00
Henrik Rydgård
62972cb891
D3D11: Move to CopyFramebufferToSync where easily possible.
2017-10-11 13:34:31 +02:00
Henrik Rydgård
16e68aa7c7
Get rid of BindFramebufferForRead
2017-10-10 14:49:07 +02:00
Henrik Rydgård
5bbe0eb69a
Move GL readback to a Thin3D abstraction
2017-10-10 14:48:58 +02:00
Henrik Rydgård
2d94d45389
More format support in thin3d GL
2017-10-10 14:48:54 +02:00
Henrik Rydgård
0aa950b663
Start moving PACK_ALIGNMENT into SafeGLReadPixels
2017-10-09 15:43:26 +02:00
Henrik Rydgård
f760429792
Minor refactoring of framebuffer readbacks.
2017-10-09 15:17:55 +02:00
Unknown W. Brackets
e754cca288
GLES: Add OpenGL 3.x core profile support.
...
Need to define #version everywhere and avoid varying/etc.
2017-09-20 12:22:01 -07:00
LunaMoo
5b75d2af20
Add uniform to make post process aware of videos.
...
And an example effect ~ subtle AA in-game/heavy smoothing for videos.
2017-09-13 08:13:51 +02:00
Unknown W. Brackets
ca40282a10
Dirty on various framebuf state helpers.
...
Ideally we should cut down on using DisableState(), or restore afterward.
2017-08-14 11:36:07 +02:00
Unknown W. Brackets
5190ad7aa2
GLES: Copy only depth in BlitFramebufferDepth.
...
Otherwise we get glitched rendering in some games - see #9740 .
2017-06-01 20:57:08 -07:00
Unknown W. Brackets
f1e9180676
Vulkan: Fix Cardboard rendering.
...
Mostly the Viewport2D flush issue, which may possibly have broken
something else.
2017-05-31 23:26:38 -07:00
Henrik Rydgård
2b14c6b531
Delete obsolete function ClearBuffer
2017-05-31 13:38:22 +02:00
Henrik Rydgård
e8890e3c4a
Address a bunch of review comments.
2017-05-30 09:36:17 +02:00
Henrik Rydgård
c173da49d3
Fix a number of bugs and stuff affecting Vulkan on Mali
2017-05-30 09:36:17 +02:00
Henrik Rydgård
6bcfe539f7
Use vulkan-style clear-on-bind when switching render targets. Not optimally used yet.
...
Also removes a bunch of redundant render target binds.
2017-05-30 09:36:17 +02:00
Henrik Rydgård
35aefe4a2a
BindBackBufferAsRenderTarget is now replaced with BindFramebufferAsRT(nullptr)
2017-05-30 09:36:17 +02:00
Unknown W. Brackets
fd4399e108
GPU: Centralize fb resize, move to begin of frame.
...
It makes more sense here, because otherwise when you change it from the UI
settings, it takes a frame to "kick in".
2017-04-24 12:02:52 -07:00
Unknown W. Brackets
97620d4cca
GPU: Rebuild FBOs when they now have storage.
2017-04-24 09:37:54 -07:00
Unknown W. Brackets
98ba7afa83
Destroy FBOs only on actual resize.
...
As a side effect, this means going to settings won't reset all FBOs
anymore. The behavior can still be obtained by changing render resolution
or rendering mode.
This makes resizing the window faster on Windows, and resumes quicker from
pause.
2017-04-13 23:36:17 -07:00
Unknown W. Brackets
030f803002
Remove unused parameter to DestroyAllFBOs().
2017-04-13 23:07:21 -07:00
Unknown W. Brackets
ff14495511
Fix out-of-bounds framebuffer blit on color bind.
...
This corrects a crash reported in Persona 3 using D3D11.
2017-04-06 18:49:48 -07:00
Henrik Rydgard
10f144ef2e
Remove BGRA path from GLES. Less code to test and support and it does no longer appear to have any benefit. See new comments in #5874
2017-03-26 11:39:25 +02:00
Unknown W. Brackets
1b02734e56
GL: Avoid common-case shuffling video/raw draws.
2017-03-22 21:00:28 -07:00
Unknown W. Brackets
3fbb545451
Allow MakePixelTexture to use a subrange.
...
For example, if it has a larger texture it wants to reuse, it can control
this via texcoords. Let's keep it at top left, though.
2017-03-22 20:56:26 -07:00
Henrik Rydgård
eb73a28140
Add new log category FRAMEBUF
2017-03-13 13:55:29 +01:00