Commit Graph

1268 Commits

Author SHA1 Message Date
Unknown W. Brackets a95170d789 SoftGPU: Bias bottom right side of line drawing.
Fixes lines in Persona 2.
2017-05-14 16:11:01 -07:00
Unknown W. Brackets a26aaec528 SoftGPU: Support flat shading for lines. 2017-05-14 16:11:00 -07:00
Unknown W. Brackets e4f2ff1464 SoftGPU: Implement lines in transform mode. 2017-05-14 16:10:59 -07:00
Unknown W. Brackets ad17decf5c SoftGPU: Quick hack to fix scissor w/2x2 pixels. 2017-05-14 16:02:27 -07:00
Unknown W. Brackets 8ee92048c0 SoftGPU: Avoid rcp due to precision issues.
Causes artifacts in Sword Art Online, which draws a dialog box using
stretched UVs - rcp causes the edges to sample outside the original UVs.
2017-05-14 16:02:21 -07:00
Henrik Rydgård d13fdfbf37 Merge pull request #9683 from unknownbrackets/ge-debugger
Minor GE debugger fixes
2017-05-15 00:02:19 +02:00
Unknown W. Brackets 94c138fd83 SoftGPU: Fix texture vertex preview in debugger. 2017-05-14 14:56:23 -07:00
Unknown W. Brackets 01076dd959 SoftGPU: Don't wrap negative positions.
Haven't fully verified this, but without this, Gods Eater Burst's bloom
doesn't work, since -1,-1 maps to 1023,1023 so everything is clipped.
2017-05-13 17:28:38 -07:00
Unknown W. Brackets b2d3058386 SoftGPU: Correct fog for rectangles.
Gods Eater Burst uses fog in its bloom, with rectangles.
2017-05-13 17:27:34 -07:00
Unknown W. Brackets 1a56466865 SoftGPU: Match GLES lighting better, use floats.
Using floats simplifies things and also makes it faster.
2017-05-13 12:54:18 -07:00
Unknown W. Brackets 86a1898732 SoftGPU: Correct rendering for pixel centers.
This should theoretically calculate everything more correctly.
2017-05-13 08:03:08 -07:00
Unknown W. Brackets 9e34601be2 SoftGPU: Correct texturing for pixel centers. 2017-05-13 07:53:39 -07:00
Unknown W. Brackets 6b0c9a5531 SoftGPU: Improve wsum recip SIMD.
A bit faster.
2017-05-13 06:56:33 -07:00
Unknown W. Brackets 7c526acc69 SoftGPU: Multiply S/T early via SIMD. 2017-05-13 06:49:27 -07:00
Unknown W. Brackets c4d1863ded GPU: Consistently bias const mip levels.
Since SLOPE is just a more complicated CONST, we can treat them the same.
2017-05-12 20:30:47 -07:00
Unknown W. Brackets 50a775d31f SoftGPU: Calculate mip level based on float bits.
This is probably what the hardware does and much faster.
2017-05-08 20:43:02 -07:00
Unknown W. Brackets 37a4d1308f SoftGPU: Round screencoords.
It seems like this is what the PSP does, or maybe this is just correcting
for floating point error...
2017-05-08 06:50:25 -07:00
Unknown W. Brackets 92ba91366c SoftGPU: Process mipmaps in texturing. 2017-05-08 06:50:25 -07:00
Unknown W. Brackets 3944a07bf7 SoftGPU: Fix separate mipmap cluts.
These should only be used for CLUT4.
2017-05-08 06:50:24 -07:00
Unknown W. Brackets f5dd3b9716 SoftGPU: Refactor mask calculation and use SSE.
A tiny bit faster.
2017-05-08 06:50:23 -07:00
Unknown W. Brackets 1f2c2b6d42 SoftGPU: Improve texcoord rounding.
This fixes several obvious issues in Crisis Core, but it's still wrong
when texcoords go the other direction.  Need to use the deltas.
2017-05-08 06:50:23 -07:00
Unknown W. Brackets 7ffc891522 SoftGPU: Apply clamp/wrap in through. 2017-05-08 06:50:21 -07:00
Unknown W. Brackets 4f6b9c1fd2 Arg, gcc buildfix. 2017-04-29 23:53:22 -07:00
Unknown W. Brackets 1666586869 SoftGPU: Implement CONTINUE prim type.
Matches tests (except 3D lines, which aren't implemented yet.)
2017-04-29 20:36:36 -07:00
Unknown W. Brackets 4fb7e43af8 SoftGPU: Grab 4 S/T coords in non-through too. 2017-04-23 11:11:16 -07:00
Unknown W. Brackets 81ee2e992e SoftGPU: Interpolate through texturing better.
This is significantly faster.
2017-04-23 10:37:12 -07:00
Unknown W. Brackets 3142462ac6 SoftGPU: Rasterize triangles in chunks of 4 pixels.
Not very optimal yet.
2017-04-23 10:37:11 -07:00
Unknown W. Brackets 7112cdce81 SoftGPU: Use texture bufw in bytes. 2017-04-23 10:37:10 -07:00
Unknown W. Brackets 1e78642a7b SoftGPU: Remove old spline handling code. 2017-04-15 21:10:19 -07:00
Unknown W. Brackets ede9025447 SoftGPU: Simplify index conversion. 2017-04-15 21:01:17 -07:00
Unknown W. Brackets 65439b8e96 SoftGPU: Fix indices starting after 0.
We decode to 0, so we need to offset.
2017-04-15 20:49:49 -07:00
Unknown W. Brackets b543c0d0e4 SoftGPU: Use common spline/bezier rendering.
There's nothing inherently non-software rendering about this.
2017-04-15 20:08:37 -07:00
Unknown W. Brackets b67650a8ff SoftGPU: Force render res to 1x.
This fixes issues with the vertex preview in the GE Debugger.
2017-04-15 19:54:42 -07:00
Unknown W. Brackets 31ddcd48ed SoftGPU: Fix crash on matrix load.
Just stubbing the draw engine here.
2017-04-15 19:53:56 -07:00
Unknown W. Brackets dfed20701a SoftGPU: Correct negative coord handling.
Fixes #5159 - we need this signed to handle negative values properly.
2017-04-15 19:52:17 -07:00
Henrik Rydgård c899882034 Fix issues with software GPU on D3D11 2017-04-11 12:53:11 +02:00
Henrik Rydgard ecdb289235 Fix SoftGPU for 16-bit framebuffer formats. Fixes #9422 2017-03-14 09:53:41 +01:00
Henrik Rydgard 03dab0fdbd More UWP prep 2017-02-25 09:57:22 +01:00
Henrik Rydgard eabcb22623 Refactor away SetImageData 2017-02-19 11:02:24 +01:00
Henrik Rydgard b0cdcfca3c D3D11: Proper fix for DXT5 crash. May also help #9134. 2017-02-18 02:41:17 +01:00
Henrik Rydgard 0e8aeaea3a D3D11: Implement basic framebuffer readback.
Also make debug interfaces more consistent.
2017-02-18 00:07:49 +01:00
Henrik Rydgard 2fabe3e1c5 Fix a number of resource leaks, both D3D11-only and general.
Additionally, fix D3D11 BlitFramebuffer
2017-02-17 19:23:01 +01:00
Henrik Rydgard 5c918da774 Minor cleanups (combined two identical enums, misc) 2017-02-15 11:06:59 +01:00
Henrik Rydgard 9bdae8f32e DrawContext: Use uniform buffers on all platforms (simulated where necessary) 2017-02-08 12:55:58 +01:00
Henrik Rydgard 41fecc8c16 More D3D11 basics. Only dynamic constant buffers left, then it should display the UI. 2017-02-07 19:45:09 +01:00
Henrik Rydgard d78d3bb25f Change the API for updating buffers from the CPU to be cleaner 2017-02-07 19:04:44 +01:00
Henrik Rydgard 534a65c610 Remove thin3d buffer->SetData 2017-02-07 18:42:32 +01:00
Henrik Rydgard 0d1d6f98e4 Pass in the DrawContext to all backends 2017-01-30 20:26:47 +01:00
Henrik Rydgard 20d9e60a67 Just some renaming. Start moving away from the "thin3d" name 2017-01-30 14:38:31 +01:00
Henrik Rydgård 14d2bf5989 Merge pull request #9136 from LunaMoo/ProjectionMatrixData
Limit Projection Matrix Data count to <= 16
2017-01-28 17:04:12 +01:00