Commit Graph
9567 Commits
Author SHA1 Message Date
xebra 3ecff41908 [spline/bezier]Fix to avoid temporarily texture animation bug with hardware tessellation. 2017-01-24 14:39:19 +09:00
LunaMoo e0aaba5448 Also fix SoftGPU 2017-01-24 02:35:06 +01:00
LunaMoo c81dc7bd55 Limit Projection Matrix Data count to <= 16 2017-01-24 02:33:16 +01: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
xebraandHenrik Rydgård 54a2dcd442 [spline/bezier]Add some comments and fix to avoid division, use multiply instead. 2017-01-23 14:13:28 +01:00
xebraandHenrik Rydgård 7530e35ab6 Fix 64bits shader dirty flags properly. 2017-01-23 14:13:28 +01:00
xebraandHenrik Rydgård b436aef32a [spline/bezier]Avoid to set shader id bits if option of hardware tessellation is off. 2017-01-23 14:13:28 +01:00
xebraandHenrik Rydgård de253a6aef [spline/bezier]Revert #ab9c1d4 about spline/bezier. 2017-01-23 14:12:46 +01:00
xebraandHenrik Rydgård deea258383 [spline/bezier]Fix to avoid crashing when activated hardware tessellation with dx9 and vulkan. 2017-01-23 14:12:03 +01:00
xebraandHenrik Rydgård 334afbd1ae [spline/bezier]Fix again about compatibility with GLES. from @LunaMoo. 2017-01-23 14:12:03 +01:00
xebraandHenrik Rydgård 67503ed160 [spline/bezier]Small fixes for compatibility with GLES 2.0. 2017-01-23 14:12:03 +01:00
xebraandHenrik Rydgård 5aeaa95f2c [spline/bezier]Implement hardware tessellation on OpenGL. 2017-01-23 14:12:02 +01:00
xebraandHenrik Rydgård 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
xebraandHenrik Rydgård 52f86cf61b [spline/bezier]Implement common logic of hardware tessellation. 2017-01-23 14:12:02 +01:00
xebraandHenrik Rydgård 71a44644a1 [spline/bezier]Add some flags in shader id for hardware tessellation. 2017-01-23 14:12:02 +01:00
xebraandHenrik Rydgård b78e184c51 [spline/bezier]Add some variables in gpu state cache for hardware tessellation. 2017-01-23 14:12:02 +01:00
xebraandHenrik Rydgård 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
Henrik Rydgård 5af8b152e1 Further buildfixes 2016-12-27 11:59:12 +01:00
Henrik Rydgård 674937a520 Extend some enums with potentially useful values 2016-12-27 11:59:12 +01:00
Henrik Rydgård cbf4e5f38c Implement colormask 2016-12-27 11:59:11 +01:00
Henrik Rydgård 9f2e83b66c Bundle up more state in the pipeline object. Lets us get rid of Vulkan's pipeline cache. 2016-12-27 11:59:11 +01:00
Henrik Rydgård 8d84fb75c7 Remove ShaderSet presets 2016-12-27 11:59:10 +01:00
Henrik Rydgård 1ed7f0d7fd More modern way to specify vertex data format (inputlayout) 2016-12-27 11:59:10 +01:00
Henrik Rydgård 166243e0fd Make pipelines bound state 2016-12-27 11:59:10 +01:00
Henrik Rydgård 4462a8cc99 Rename ShaderSet to Pipeline. Get rid of scissorEnable setting (scissor is always enabled). 2016-12-27 11:59:10 +01:00
Henrik Rydgård 3de4a38527 More renaming to match 2016-12-27 11:59:10 +01:00
Henrik Rydgård 425940b433 More renaming 2016-12-27 11:59:07 +01:00
Henrik Rydgård c7c541f926 Add DepthStencilStateDesc 2016-12-27 11:59:06 +01:00
Henrik Rydgård f86b9f7900 Guess what? More renaming 2016-12-27 11:59:06 +01:00
Henrik Rydgård 9b439e4c43 Remove Thin3D prefix on more things 2016-12-27 11:59:06 +01:00
Henrik Rydgård 463251908b Rename things to closer match another project which I plan to share some code with 2016-12-27 11:59:02 +01:00
Henrik Rydgård 10393f5d4e Move Thin3D into the Draw namespace. 2016-12-27 11:58:03 +01:00
Henrik Rydgård b60ad37146 Remove blend and sampler state presets, they didn't save any code 2016-12-25 11:37:23 +01:00
Henrik Rydgård 97d029972e Rename SetTextures to BindTextures 2016-12-25 11:31:33 +01:00
Henrik Rydgård 1c0c755b03 Extract RasterState from thin3d, for easier d3d11 porting 2016-12-25 11:31:33 +01:00