Commit Graph

27 Commits

Author SHA1 Message Date
Alex Szpakowski deff795908 Rename some internal buffer enums to better match what they do 2021-01-17 20:59:16 -04:00
Alex Szpakowski b7400892a4 Merge branch 'master' into 12.0-development 2020-12-22 19:35:06 -04:00
Miku AuahDark 81272ba5b5 Only use pinned memory on AMD GPUs.
As per in Discord, for some reason Intel driver in Linux(?) expose
pinned memory extension and causes driver crash in one test case.
2020-12-15 10:25:38 +08:00
Alex Szpakowski a0a933a1b9 Merge branch 'master' into 12.0 2020-02-15 13:51:12 -04:00
Alex Szpakowski 15f0e4109b Fix a typo in a comment 2020-02-15 13:50:47 -04:00
Alex Szpakowski 813b1e0e69 Remove debug print 2020-02-05 18:03:34 -04:00
Alex Szpakowski ca84b6db48 More robust error handling for AMD Pinned Memory buffers (issue #1540)
Also print out any errors that are produced from that (for now).
2020-02-05 07:49:38 -04:00
Alex Szpakowski 51db32cfdf Merge default into minor.
--HG--
branch : minor
2020-01-06 22:41:01 -04:00
Alex Szpakowski eab3b83a2e Fix a hard freeze on AMD+Windows systems when the internal buffers used for automatic batching are resized. 2020-01-06 19:58:22 -04:00
Alex Szpakowski 5f9b5a21d0 Merge default into minor
--HG--
branch : minor
2020-01-03 22:45:36 -04:00
Alex Szpakowski fc4847c69d Update copyright for the new year 2020-01-03 22:40:36 -04:00
Alex Szpakowski bc12312f0f macOS: rename most internal uses of "macosx" to "macos".
--HG--
branch : minor
2019-12-22 17:54:20 -04:00
Alex Szpakowski 8e5b71e8e7 Improve automatic batching performance slightly on AMD gpus by removing some redundant/useless opengl calls (there is no mapped buffer to flush). 2019-06-01 15:58:42 -03:00
Alex Szpakowski ddef70e141 Potentially improve automatic batching performance slightly on nvidia/intel GPUs. 2019-06-01 15:06:19 -03:00
Alex Szpakowski 0752f27bdf Update copyright year for 2019 2019-01-03 21:09:05 -04:00
Alex Szpakowski 3af66da51e Automatic batching: improve the consistency of performance and draw calls for the vertex buffer upload approach taken on older Windows and Linux GPUs which are only capable of GL3. 2018-12-27 23:52:54 -04:00
Alex Szpakowski 43ee232897 macOS: Use a (non-persistent) map/sync approach for stream buffers, instead of glBufferSubData. This usually won't affect performance either way, but avoids some worst-case performance cliffs on my Intel GPU in my testing. 2018-12-16 15:15:32 -04:00
Alex Szpakowski bcc5e77632 Simplify OpenGL 3+ stream buffer syncing code used with automatic batching. 2018-12-12 17:51:03 -04:00
Alex Szpakowski 535be96f03 Optimize StreamBuffer::getUsableSize to not be a virtual method. 2018-09-29 14:50:49 -03:00
Alex Szpakowski 3857d09132 Don't use persistently mapped buffers on Intel Ivy Bridge GPUs on Windows. glClientWaitSync can hang with those drivers, apparently. 2018-01-06 00:42:16 -04:00
Bart van Strien e80247c191 Happy new year! 2018-01-03 19:47:35 +01:00
Alex Szpakowski 8672ff2272 Use a more efficient method of streaming automatically batched vertices on AMD Windows and Linux systems.
--HG--
branch : minor
2017-11-11 20:48:02 -04:00
Alex Szpakowski b4f8f08b70 Enable (when available) and improve performance of persistently mapped buffer path for the vertex/index buffers used with automatic batching.
--HG--
branch : minor
2017-09-03 18:23:54 -03:00
Alex Szpakowski f2597168a2 Fix text object drawing and a bug in stream buffers used in autobatching
--HG--
branch : minor
2017-01-30 22:11:26 -04:00
Alex Szpakowski 7d7f8e0a92 Mark classes as ‘final’
--HG--
branch : minor
2017-01-29 02:06:17 -04:00
Alex Szpakowski 13af754d3d Move most of Text and Video love.graphics classes out of the opengl subfolder.
--HG--
branch : minor
2017-01-28 21:37:09 -04:00
Alex Szpakowski 731b5d5cf0 Added support for GLSL 3 shaders (GLSL 3.30 and GLSL ES 3.00).
To use GLSL 3 in a shader, the first line of the shader has to be: #pragma language glsl3

glsl1 is the default language.

Added “glsl3” graphics feature as part of the table returned by love.graphics.getSupported().

Added love.graphics.validateShader(boolean gles, shadercode). It returns a boolean along with an error string if the shader code has errors for its target language and platform (gles or desktop).

Implemented support for Core Profile OpenGL 3.3 in love.graphics.

--HG--
branch : minor
2017-01-22 18:54:04 -04:00