Commit Graph
4135 Commits
Author SHA1 Message Date
Henrik Rydgard 5df4bac6d2 Delete some left behind unused code 2017-01-25 10:05:39 +01:00
Henrik Rydgård 524854ac16 Merge pull request #9233 from xebra/spline_bezier
[spline/bezier]Remove wasted code.
2017-01-24 23:33:51 +01:00
xebra 133a9d78a8 [spline/bezier]Remove wasted code. 2017-01-25 06:35:36 +09:00
Henrik Rydgård 528af8a939 Simplification around textures 2017-01-24 20:59:00 +01:00
Henrik Rydgård d8dbb8389b Make buffer binding more Vulkan/Metal-like 2017-01-24 20:59:00 +01:00
Henrik Rydgård 8654d42528 DrawContext API change: introduce TextureDesc 2017-01-24 20:59:00 +01:00
Henrik Rydgård 6a7d3a3910 Break out image file management from DrawContext (thin3d) 2017-01-24 20:58:59 +01:00
Henrik Rydgard e17d3e1e7a Vulkan: Forgot to extend a few more dirtyflag variables to 64-bit. Avoid a warning. 2017-01-24 20:19:06 +01:00
Henrik Rydgard 62a171c616 Minor DX9 optimization 2017-01-24 18:12:20 +01:00
Henrik Rydgard d85888dc2b Table-driven dirty-flags for Vulkan and D3D9. Minor Vulkan optimization. 2017-01-24 18:12:20 +01:00
Henrik Rydgard 1fe32d380b Update lots of dirty-flag table entries 2017-01-24 18:12:20 +01:00
Henrik Rydgard 443d735a28 Activate table-driven dirty-flags in DX9 and Vulkan backends 2017-01-24 18:12:20 +01:00
Henrik Rydgard 068f2d3c71 Remove Execute_Generic in both D3D9 and Vulkan backends 2017-01-24 18:12:20 +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 e4cb44c243 Merge the texture flags into the dirty flags 2017-01-24 18:12:20 +01:00
Henrik Rydgard c289a2c7bf Split TextureChanged into two bools, so we can later convert to dirtyflags 2017-01-24 18:12:20 +01:00
Henrik Rydgard 7d60ec73be Move framebufChanged into the dirty flag field 2017-01-24 18:12:20 +01:00
Henrik Rydgard b423998c36 Move uniform dirty-flag to gstate_c, opening up for other uses. 2017-01-24 18:12:20 +01:00
Henrik Rydgard ae569cd53a Fix some Vulkan brokenness (Vulkan2D beginframe/endframe weren't called) 2017-01-24 18:11:48 +01:00
Henrik Rydgard 0a3bb4a720 Vulkan: Increase size of per-frame descriptor pool, move uniform to right place 2017-01-24 18:11:48 +01:00
xebra 3ecff41908 [spline/bezier]Fix to avoid temporarily texture animation bug with hardware tessellation. 2017-01-24 14:39:19 +09:00
Henrik Rydgard f111767315 Workaround the lack of support for software skinning in Vulkan 2017-01-23 22:06:30 +01:00
Henrik Rydgard 69267d4cd6 Minor optimizations 2017-01-23 21:14:27 +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 097638f4fd Fix crash bug 2017-01-23 21:09:20 +01:00
Henrik Rydgard 59d80a3785 Share the set of dirty flags between the backend, to let use share more code. 2017-01-23 20:39:17 +01:00
Henrik Rydgard 63c00ec528 Don't need to take vertex format into account when applying UV scale for spline/bezier 2017-01-23 17:44:13 +01:00
Henrik Rydgard f139246a78 Switch D3D and Vulkan to 64-bit dirty flags 2017-01-23 17:32:18 +01:00
Henrik Rydgard bd4436c6eb Centralize EstimatePerVertexCost and Execute_BlockTransferStart 2017-01-23 17:22:17 +01:00
Henrik Rydgard d9acd27126 Rename GLES files to match the convention the other backends use. 2017-01-23 17:08:58 +01:00
Henrik Rydgård f111eede85 Some GLSL syntax fixes 2017-01-23 14:31:44 +01:00
xebra 54a2dcd442 [spline/bezier]Add some comments and fix to avoid division, use multiply instead. 2017-01-23 14:13:28 +01:00
xebra 7530e35ab6 Fix 64bits shader dirty flags properly. 2017-01-23 14:13:28 +01:00
xebra b436aef32a [spline/bezier]Avoid to set shader id bits if option of hardware tessellation is off. 2017-01-23 14:13:28 +01:00
xebra de253a6aef [spline/bezier]Revert #ab9c1d4 about spline/bezier. 2017-01-23 14:12:46 +01:00
xebra deea258383 [spline/bezier]Fix to avoid crashing when activated hardware tessellation with dx9 and vulkan. 2017-01-23 14:12:03 +01:00
xebra 334afbd1ae [spline/bezier]Fix again about compatibility with GLES. from @LunaMoo. 2017-01-23 14:12:03 +01:00
xebra 67503ed160 [spline/bezier]Small fixes for compatibility with GLES 2.0. 2017-01-23 14:12:03 +01:00
xebra 5aeaa95f2c [spline/bezier]Implement hardware tessellation on OpenGL. 2017-01-23 14:12:02 +01:00
xebra 38293adc78 [spline/bezier]Expand shader dirty flags to 64 bit, and add some flags for hardware tessellation. 2017-01-23 14:12:02 +01:00
xebra 52f86cf61b [spline/bezier]Implement common logic of hardware tessellation. 2017-01-23 14:12:02 +01:00
xebra 71a44644a1 [spline/bezier]Add some flags in shader id for hardware tessellation. 2017-01-23 14:12:02 +01:00
xebra b78e184c51 [spline/bezier]Add some variables in gpu state cache for hardware tessellation. 2017-01-23 14:12:02 +01:00
xebra 65be0aa002 [spline/bezier]Move index conversion logic to tiny class. 2017-01-23 14:12:02 +01:00
Henrik Rydgard b0697b62d7 Fix bug in setting certain uniforms in DX9. Fixes #9224 2017-01-21 21:54:42 +01:00
Henrik Rydgard ab9c1d4dc0 Centralize the spline/bezier/bbox execute functions into GPUCommon 2017-01-21 20:43:05 +01:00
Henrik Rydgard 47283db18f DX9: When optimizing rectangles to clears, don't forget to convert the color to a D3DCOLOR properly. Fixes part of #9224 2017-01-21 17:45:53 +01:00
Henrik Rydgård e47138a5f3 Warning fixes 2017-01-17 20:26:48 +07:00