Henrik Rydgard
28ae840abe
Pipelines, samplers, description sets, oh my
2016-03-20 19:30:11 +01:00
Henrik Rydgard
cfcfd406fc
Start porting TextureCache. Lots of stubbing going on.
2016-03-20 19:30:11 +01:00
Henrik Rydgard
e89a7f0c67
Update VulkanContext
2016-03-20 19:26:41 +01:00
Henrik Rydgard
c64064024d
Initial vulkan code.
...
This was squashed from nine commits but using old versions of Vulkan.
2016-03-20 19:18:35 +01:00
Henrik Rydgard
c8457d39ed
Fix a bunch of compiler warnings, delete some unused code
2016-03-13 15:17:31 +01:00
Unknown W. Brackets
944a1f380b
Disable alpha test optimization with logic ops.
...
We still need to discard the pixels in the case of a logic op, like
invert. Otherwise we will invert the blended pixels too.
See #8632 .
2016-03-12 09:27:18 -08:00
Henrik Rydgard
58b07e00d7
Assorted fixes and cleanups.
2016-03-06 11:46:41 -08:00
Henrik Rydgard
9d8d810395
Clear detection: Don't need to check the even vertices, as the odd vertices are the ones used for color.
...
This lets us detect and replace cube.elf's clear, and probably others.
2016-03-06 11:36:32 -08:00
Unknown W. Brackets
6b9b00aa16
Assume DUALSOURCE replace alpha means supported.
...
We already check supports when generating this value, don't need to check
again when using it.
2016-03-05 17:18:04 -08:00
Unknown W. Brackets
8b51bc5b0b
Fix debugging and depth packing with old depth.
...
Which means, OpenGL in general right now.
2016-02-07 22:42:47 -08:00
Unknown W. Brackets
f1c06d25ea
Switch to old-style depth in OpenGL.
...
Some devices really aren't handling the new method well. There seem to be
accuracy problems when specifying the values to OpenGL.
2016-02-06 20:21:14 -08:00
Unknown W. Brackets
87b75235e7
Improve depth accuracy a bit in 16-bit slice mode.
2016-02-06 20:02:18 -08:00
Victor Xie
dc32805256
Made commit 0920f6c
a little more robust.
...
Eliminated division-by-zero when depth range is zero.
2016-02-01 13:17:15 +08:00
Unknown W. Brackets
c593b7cdfd
Ignored rendered CLUTs that are in the margins.
...
Fixes issues with Ridge Racer on some mobile devices.
2016-01-23 09:02:30 -08:00
Unknown W. Brackets
e30ab95179
d3d9: Fix maxSeenV when not known.
...
And just make the code reused between both. Fixes #8478 .
2016-01-22 18:48:54 -08:00
Unknown W. Brackets
0443fbebd0
Add methods to download depth to PSP RAM.
2016-01-20 22:11:03 -08:00
Unknown W. Brackets
2916298695
gedbg: Add scaled 16-bit z support.
2016-01-20 22:11:02 -08:00
Unknown W. Brackets
79750ed1ad
Add a config setting to control depth quality.
...
For those who want 1x PSP like behavior.
2016-01-20 22:11:00 -08:00
Henrik Rydgård
4c8384aa09
Merge pull request #8461 from unknownbrackets/gpu-depth
...
Swap depth range to use minz/maxz
2016-01-20 10:19:51 +01:00
Unknown W. Brackets
02bf70a2d0
Where possible, rewrite 5551 stencil ops too.
...
We can in most cases fix INVERT, and also INCR so INVERT works when we
can't fix it.
Fixes #8422 .
2016-01-19 23:17:58 -08:00
Unknown W. Brackets
e00c9940e8
Correct pixel depth rounding.
2016-01-19 20:19:50 -08:00
Unknown W. Brackets
5de7d2cf8f
Oops, correctly center depth.
2016-01-19 07:51:56 -08:00
Unknown W. Brackets
6ef97f72d2
gedbg: Show scaled depth values properly.
2016-01-19 07:23:06 -08:00
Unknown W. Brackets
b80c02c272
Simulate depth clamping.
...
We'll allow extra space in both directions. It's not exactly right, but
it's a fast approximation.
2016-01-19 07:12:58 -08:00
Unknown W. Brackets
0920f6c6eb
Use minz/maxz as the depth range.
...
This allows values that fall outside the viewport, but still within the
depth range, to be drawn.
2016-01-19 07:12:57 -08:00
Henrik Rydgård
07a16705d8
Merge pull request #8452 from unknownbrackets/gpu-mpeg
...
Resize FBOs when video width is larger
2016-01-19 09:42:13 +01:00
Unknown W. Brackets
d1b3768e49
Use a common func everywhere for float depth vals.
2016-01-18 19:29:45 -08:00
Unknown W. Brackets
99eb3f8a94
Instead, let's resize it in case there's rendering.
2016-01-17 23:07:00 -08:00
Unknown W. Brackets
7993866ee4
Invalidate FBOs when video width is larger.
...
This way we won't try to upload them wrong. Fixes #8392 .
2016-01-17 21:58:49 -08:00
Unknown W. Brackets
0828721bc2
Simplify depth calculation a bit.
...
This way we keep the original range better, so we should lose less
precision.
2016-01-17 18:30:58 -08:00
Unknown W. Brackets
516147680c
Merge pull request #8182 from LunaMoo/minor_cleaning
...
Move "Display Rotation" and stretching options to display layout editor.
2016-01-17 14:54:39 -08:00
Unknown W. Brackets
b40c3fd839
Use video format when uploading to framebuffers.
...
Expected to help Bounty Hound, #8392 .
2016-01-17 12:57:27 -08:00
Henrik Rydgard
790210f6ef
Minor fixes
2016-01-17 20:33:22 +01:00
Henrik Rydgard
dfa7a252de
Get rid of some redundant vertex shaders when using unlit ShadeMapping (wipeout, etc)
2016-01-17 20:33:21 +01:00
Henrik Rydgard
c8b1064d20
GL Cleanup: No longer redundantly store the shader ID inside the shader objects
2016-01-17 20:33:14 +01:00
LunaMoo
6061ad7579
Some improvements, comments and polishing.
2016-01-17 09:21:12 +01:00
LunaMoo
e4271fe1bc
Integrate stretching options into display layout editor.
2016-01-17 09:18:41 +01:00
LunaMoo
284600b1a7
Move "Display Rotation" to display layout editor.
...
Fix portrait rotation representation in the editor with auto setting.
Minor cleanup.
2016-01-17 09:18:36 +01:00
Unknown W. Brackets
6b3260df9a
Correct SSE alpha check for 4444 textures.
...
Oops, can't use cmplt here.
2016-01-12 00:20:36 -08:00
Henrik Rydgård
d479990595
Merge pull request #8413 from hrydgard/framebuffer-remove-unused
...
Remove some unused functionality from the framebuffer managers
2016-01-10 23:47:29 +01:00
Unknown W. Brackets
c6ffed6484
gedbg: Add mechanics to grab CLUT buffer.
2016-01-10 09:25:19 -08:00
Henrik Rydgard
88ed44189d
Remove some unused functionality from the framebuffer managers
2016-01-10 14:59:27 +01:00
Unknown W. Brackets
aa0055cea7
Track the running GPU backend separate from config.
...
This way we can change the config directly when we want to save a new
setting, rather than having hacks to use a temp var.
2016-01-05 22:37:28 -08:00
Henrik Rydgård
8b27bc51f5
Merge pull request #8389 from unknownbrackets/gpu-memcpy
...
Refactor VRAM download, optimize rendered CLUTs
2016-01-05 12:49:29 +01:00
Unknown W. Brackets
6b98b99006
Take the closest matching CLUT framebuffer.
2016-01-05 00:42:24 -08:00
Unknown W. Brackets
909d477719
Support CLUTs at an x offset.
...
Used by Kurohyo 2. Highly unlikely to be a mis-estimate within stride.
2016-01-05 00:02:58 -08:00
Victor Xie
cd63b6d057
Fixed build on Mac OS X.
2016-01-05 14:23:54 +08:00
Unknown W. Brackets
191350ff02
Minor cleanup.
2016-01-04 22:23:37 -08:00
Unknown W. Brackets
19877144ba
Avoid redownloading CLUT when reloaded.
...
In Brave Story, the game reloads the CLUT frequently, but doesn't actually
render to the CLUT that often. It also switches between a few different
rendered CLUTs - so caching that we've downloaded is a HUGE win.
In case someone reading this message is interested, it actually renders
these CLUT tables from what appears to be a color wheel. Crazy huh?
2016-01-04 22:21:33 -08:00
Unknown W. Brackets
28a07c70c6
Explicitly download rendered cluts.
...
This avoids triggering logic that tries to get the sizing right, or
optimize frequent copies. CLUTs often get estimated wrong, so it's better
to copy just the correct range, always.
2016-01-04 21:29:03 -08:00