Alex Szpakowski
7a18190c5c
Restructure SpriteBatch internal vertex data
2020-11-03 22:12:56 -04:00
Alex Szpakowski
5031cb5f56
Images don't hold on to RAM copies of their contents anymore
2020-11-02 18:17:07 -04:00
Alex Szpakowski
7e0c7e3a67
Fix the default mipmap filter for textures.
2020-10-26 18:25:40 -03:00
Alex Szpakowski
99875d83b3
Fix explicit texture MSAA of 1 or 0 not being treated the same as the default
2020-10-26 17:11:50 -03:00
Alex Szpakowski
e10444c21f
Move Texture:generateMipmaps error handling out of backend code
2020-10-25 23:13:50 -03:00
Alex Szpakowski
442f37e0a1
Fix a potential bug in captureScreenshot on some older systems
2020-10-25 23:00:12 -03:00
Alex Szpakowski
7934ce0a66
Handle backbuffer MSAA manually in love.graphics code
...
Previously love would use SDL APIs to make the system (WGL etc) handle it, which meant the OpenGL context had to be recreated whenever MSAA changed.
2020-10-25 22:24:07 -03:00
Alex Szpakowski
2b0f8495bf
Fix a crash in Text:set. Fixes issue #1639
2020-10-16 21:19:50 -03:00
Alex Szpakowski
d083c87d74
Update glslang
2020-10-12 17:29:08 -03:00
Alex Szpakowski
365387150e
Merge branch 'master' into 12.0-development
2020-08-09 12:25:07 -03:00
Alex Szpakowski
5f4d2f3323
Fix love.graphics.newVolumeImage when explicit mipmaps are given
...
Fixes issue #1602
2020-08-09 12:12:28 -03:00
Alex Szpakowski
aa219c0d7a
Simplify some boilerplate internal code
2020-08-02 16:00:08 -03:00
Alex Szpakowski
f168333938
Simplify Buffer APIs.
...
Remove Buffer:set/getElement, Buffer:isCPUReadable, and the cpureadable flag in newBuffer's settings parameter.
2020-08-01 21:51:37 -03:00
Alex Szpakowski
b011487a3e
Add new texel buffer type.
...
GLSL 3+ shaders can read from texel buffers by declaring a uniform samplerBuffer variable and calling texelFetch with a 0-based index, in the shader code. All attributes in a texel buffer's format array must have the same data format (e.g. all 'floatvec4' formats).
Shader:send accepts a texel Buffer for samplerBuffer uniforms.
Added 'texelbuffer' to love.graphics.getSupported (requires GLSL 3+ and desktop OpenGL).
Added 'texelbuffersize' to love.graphics.getSystemLimits. Returns the max number of values in a texel buffer (array length multiplied by the number of attributes declared in the buffer's format array).
2020-07-28 20:44:36 -03:00
Alex Szpakowski
3c65d5ae41
love.graphics.newIndexBuffer uses 0-based index values.
...
It can't be consistent with other buffer types or Buffer methods if it's 1-based.
2020-07-27 17:35:16 -03:00
Alex Szpakowski
de370beb68
Remove deprecation notices from newImage for now
2020-07-26 16:59:09 -03:00
Alex Szpakowski
2d7267a428
Add Buffer:isBufferType and Buffer:isCPUReadable.
2020-07-26 16:43:40 -03:00
Alex Szpakowski
36b0394afc
Add love.graphics.newVertexBuffer and love.graphics.newBuffer.
2020-07-26 16:32:18 -03:00
Alex Szpakowski
d75f5df80d
Add Buffer methods
...
flush, setArrayData, setElement, getElement, getElementCount, getElementStride, getSize, getFormat
2020-07-25 19:48:54 -03:00
Alex Szpakowski
1d087cc5c2
Fix Mesh/Buffer:flush uploading more data than it needs to, sometimes.
2020-07-21 21:56:47 -03:00
Alex Szpakowski
7ad5e5a21a
Fix newMesh(format, ...). Fix Mesh:attachAttribute.
...
Deprecate the mesh argument variant of attachAttribute in favor of the buffer argument variant.
2020-07-21 21:46:45 -03:00
Alex Szpakowski
c2be89f130
Fix crashes when creating a Buffer.
2020-07-21 20:50:49 -03:00
Alex Szpakowski
77834d8e6c
Add a Data object variant of love.graphics.newIndexBuffer
2020-07-21 19:09:13 -03:00
Alex Szpakowski
3b67db4672
Add love.graphics.newIndexBuffer
2020-07-21 18:57:50 -03:00
Alex Szpakowski
834cddc34c
Add Mesh:getVertexBuffer.
2020-07-20 22:13:30 -03:00
Alex Szpakowski
e60736f5a6
Add Mesh:set/getIndexBuffer.
2020-07-20 22:10:08 -03:00
Alex Szpakowski
3f4161dd5d
Merge branch '12.0-development' into GraphicsBuffer
2020-07-20 18:13:27 -03:00
Alex Szpakowski
0c7793e195
Fix detection of #pragma language glsl3 in shaders
2020-07-19 15:41:04 -03:00
Alex Szpakowski
f848b201ae
Merge branch 'master' into 12.0-development
2020-07-18 21:29:36 -03:00
Alex Szpakowski
dde3db3006
Apply Image:replacePixels/missing text workaround to more ATI drivers
...
issue #1563
2020-07-12 18:25:55 -03:00
Alex Szpakowski
d60d8867f4
Possible workaround for an Intel driver bug with readable depth buffers
...
https://github.com/love2d/love/issues/1592
2020-07-11 17:21:26 -03:00
Alex Szpakowski
50eeed7bb1
Fix Shader:send's Data variant when a matrix layout arg is used.
...
Also add a second more consistent Data+matrix layout variant of Shader:send which matches the argument order of the table+matrix layout variant - Shader:send(name, matrixlayout, data, ...).
2020-07-10 22:52:23 -03:00
Alex Szpakowski
96b8d29a5c
Clean up code for computing smooth line vertex colors.
2020-06-28 21:58:13 -03:00
Alex Szpakowski
2c4bfab1de
Merge branch '12.0-development' into GraphicsBuffer
2020-05-23 20:29:38 -03:00
Alex Szpakowski
0fae32706d
Fix a crash on Windows. Resolves #1570 .
2020-05-23 15:19:28 -03:00
Alex Szpakowski
d13e97fd83
Merge branch 'master' into 12.0-development
2020-03-15 19:25:48 -03:00
Alex Szpakowski
8fac08809a
Eliminate redundant glActiveTexture calls when shaders are used.
...
The redundant calls were introduced with the previous commit.
2020-03-15 19:24:49 -03:00
Alex Szpakowski
c5b6cc3228
Merge branch 'master' into 12.0-development
2020-03-15 19:17:04 -03:00
Alex Szpakowski
9c2454816f
Fix the active GL texture unit not always being set properly.
...
Fixes issues where texture methods wouldn't have any effect, depending on the current internal opengl state.
2020-03-15 01:29:33 -03:00
Alex Szpakowski
e0ff593d09
Fix love.graphics.newTexture(imagedata, {canvas=true}) not using an sRGB format when it should
2020-03-04 20:37:41 -04:00
Alex Szpakowski
10fbdf68f4
Fix love.graphics.newCanvas(w, h) not creating a canvas-capable texture
2020-03-04 20:36:06 -04:00
Alex Szpakowski
2cff535eb1
Move shader parsing code from Lua to C++.
2020-03-03 19:30:22 -04:00
Alex Szpakowski
bbdadcba8a
Fix build
2020-02-28 23:12:22 -04:00
Alex Szpakowski
7fbb68e90e
Merge branch '12.0-development' into GraphicsBuffer
2020-02-28 23:10:21 -04:00
Alex Szpakowski
d77dabaa6b
Add Mesh:getAttachedAttributes.
2020-02-28 23:01:35 -04:00
Alex Szpakowski
b95788c104
Shader:send now returns false if the uniform doesn't exist
...
It also returns false if the uniform exists but was optimized out by the shader compiler. Previously it would cause a Lua error in both situations.
2020-02-27 20:19:55 -04:00
Alex Szpakowski
9425c9224b
Rename internal batched draw code to be more clear
2020-02-27 20:08:50 -04:00
Alex Szpakowski
4197a364fd
Internal restructuring of some Mesh code
2020-02-23 22:39:18 -04:00
Alex Szpakowski
2c90ccabb3
Avoid some hardcoded strings
2020-02-23 16:49:38 -04:00
Alex Szpakowski
1ddfcd4cc8
Always use explicitly typed buffers, even in internal code
2020-02-23 16:30:55 -04:00