Commit Graph
9567 Commits
Author SHA1 Message Date
Henrik Rydgard ec6bc4a5f6 Vertex format fixes. Flip through drawing the right way up. 2016-03-20 19:30:11 +01:00
Henrik Rydgard 6b8c004561 Fix indexed drawing, flip rendering the right side up, enable culling 2016-03-20 19:30:11 +01:00
Henrik Rydgard 6141c3651b Separate uniform updates from shader updates 2016-03-20 19:30:11 +01:00
Henrik Rydgard d67d187b72 Get untextured drawing working! (at least cube.elf) 2016-03-20 19:30:11 +01:00
Henrik Rydgard 28ae840abe Pipelines, samplers, description sets, oh my 2016-03-20 19:30:11 +01:00
Henrik Rydgard 668830365d Begin/End frame fixes 2016-03-20 19:30:11 +01:00
Henrik Rydgard 01e3fbae95 Fix clearing bug, add FIFO_RELAXED flag, etc 2016-03-20 19:30:11 +01:00
Henrik Rydgard ddb36a35a0 Some descriptor binding fixes 2016-03-20 19:30:11 +01:00
Henrik Rydgard 906b259a85 First PSP shaders actually compile 2016-03-20 19:30:11 +01:00
Henrik Rydgard 49f1e702c9 Okay, reached the shader generators 2016-03-20 19:30:11 +01:00
Henrik Rydgard 3701e2eca3 Reaches the first clear 2016-03-20 19:30:11 +01:00
Henrik Rydgard 4063f7e0db Fill out GPU_Vulkan.cpp with what's mostly a copy of GLES_GPU.cpp 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 5216a24590 Back to work on the PSP renderer 2016-03-20 19:30:11 +01:00
Henrik Rydgard e89a7f0c67 Update VulkanContext 2016-03-20 19:26:41 +01:00
Henrik Rydgard cfbecf5071 More progress 2016-03-20 19:26:41 +01:00
Henrik Rydgard 129c706cfc Just some work on the shader generators 2016-03-20 19:26:12 +01:00
Henrik Rydgard 73d6d2dc72 More vulkan in thin3d 2016-03-20 19:25:53 +01:00
Henrik Rydgard 2a449f78bb More vulkan fixing 2016-03-20 19:25:30 +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 Rydgård 54a37f9bb8 Merge pull request #8591 from unknownbrackets/thin3d
Use thin3d for softgpu drawing (+thin3d improvements)
2016-03-20 18:06:53 +01:00
Henrik Rydgard 4c0e6d0138 Some renaming, fixes and tweaks to the gl_lost mechanism, which is again needed 2016-03-17 21:30:16 +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 RydgardandUnknown W. Brackets 58b07e00d7 Assorted fixes and cleanups. 2016-03-06 11:46:41 -08:00
Henrik RydgardandUnknown W. Brackets 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
Henrik RydgardandUnknown W. Brackets d67b148712 Add math dataconv funcs for packed values. 2016-03-06 11:33:53 -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 212848c1cc Explicitly enable dual source blending in shader.
Without this, the shader fails to compile on SHIELD devices with
up-to-date drivers.  It may have also been failing on other devices.

The specification notes that the #extension line must be used.
2016-03-05 13:27:27 -08:00
Unknown W. Brackets 7dfe8b58dc Clear attrMask on bad shader compile.
This prevents various crashes when incorrect attributes are enabled.
2016-03-05 13:14:25 -08:00
Unknown W. Brackets 505ff99461 Maintain and use a freelist for buffer objects.
Only for sized buffers, which are the ones we gain something from reusing.
2016-02-28 15:10:41 -08:00
Henrik Rydgard 5f761c346b Attempt workaround for #8610 2016-02-28 11:06:49 +01:00
Unknown W. Brackets 818a0d846a d3d9: Correct for half-pixel offset in softgpu. 2016-02-13 14:52:35 -08:00
Unknown W. Brackets f84ebdc3e4 thin3d: Use floats directly for 4x4 matrices. 2016-02-13 14:50:06 -08:00
Unknown W. Brackets 05fee24ccf thin3d: Add sampler state selection. 2016-02-13 14:03:43 -08:00
Unknown W. Brackets 0d68a172a9 softgpu: Draw using thin3d.
This way it ought to work for all backends.
2016-02-13 14:03:37 -08:00
Unknown W. Brackets b33e39788f d3d9: Use thin3d for reporting info. 2016-02-13 10:53:28 -08:00
Unknown W. Brackets 095624867a d3d9: Enable GPU info in D3D9 reporting. 2016-02-13 09:51:09 -08:00
Unknown W. Brackets 346e98046d Forgot to remove this report, not needed now. 2016-02-13 09:31:03 -08:00
Unknown W. Brackets 5894431fa0 Correct buffer size for offset download.
We need h, not h - y.  Should be #7819.
2016-02-11 22:30:44 -08:00
Henrik Rydgard 5bfeafc037 PackFramebufferSync_: Check for bad parameters that could cause crash
My theory for the #7819 crash
2016-02-11 22:10:54 +01:00
Unknown W. Brackets 271829c991 Consider depth blitting a slow framebuffer effect. 2016-02-10 21:02:19 -08: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
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 eab0278af4 Fallback to per-vertex depth rounding on GLES2.
Instead of not-working 24->16 now that it's disabled.
2016-02-06 20:42:01 -08:00
Unknown W. Brackets 0e85225e29 Bring back the depth range hack. 2016-02-06 20:28:45 -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 4ff78d3c55 d3d9: Use SSE at least for depth copies. 2016-01-31 09:00:00 -08:00