Sasha Szpakowski
f6cdbdc868
Merge branch 'main' into 12.0-development
2022-12-31 22:46:34 -04:00
niki
a93d153792
vulkan: adjust code styling
2022-09-10 17:40:46 +02:00
niki
4c415479c0
Merge remote-tracking branch 'origin/12.0-development' into vulkan
2022-06-11 01:22:29 +02:00
Alex Szpakowski
3a5c3df02f
Add sync and async texture and buffer readback APIs.
...
- Add imagedata = love.graphics.readbackTexture(texture, [slice, mipmap, x, y, w, h, [dest, destx, desty]]).
- Add readback = love.graphics.readbackTextureAsync(texture, [slice, mipmap, x, y, w, h, [dest, destx, desty]]).
- Add bytedata = love.graphics.readbackBuffer(buffer, [offset, size, [dest, destoffset]]).
- Add readback = ove.graphics.readbackBufferAsync(buffer, [offset, size, [dest, destoffset]]).
- Deprecate Texture:newImageData.
The async variants return a new GraphicsReadback object. It has the following methods:
- isComplete()
- hasError()
- wait()
- getBufferData()
- getImageData()
- update() (called automatically every frame by love, not normally needed).
Support notes:
- readbackBuffer and readbackBufferAsync require buffer copying support.
- readbackTexture with a render target (canvas) is always supported. readbackTexture with a non-render-target requires copy-texture-to-buffer support.
- readbackTextureAsync with a render target requires copy-render-target-to-buffer support. readbackTextureAsync with a non-render-target requires copy-texture-to-buffer support.
2022-05-30 21:53:55 -03:00
niki
4e8304255d
first draft of vulkan texture impl
2022-05-06 16:06:09 +02:00
Alex Szpakowski
d51e012812
Merge branch '12.0-development' into metal
2022-01-05 21:12:22 -04:00
Alex Szpakowski
7f3538d2ba
Merge branch 'main' into 12.0-development
2022-01-05 21:10:27 -04:00
Alex Szpakowski
40aa50662a
Merge branch '12.0-development' into metal
2022-01-01 15:36:57 -04:00
Alex Szpakowski
52101b2563
Add love.graphics.copyTextureToBuffer and copyBufferToTexture.
2021-12-28 12:46:56 -04:00
Alex Szpakowski
e63025b74f
Merge branch '12.0-development' into metal
2021-12-24 15:34:05 -04:00
Alex Szpakowski
21f5ba86d3
Merge branch 'master' into 12.0-development
2021-04-07 20:33:44 -03:00
Alex Szpakowski
52d4a5c679
metal: initial shader texture binding implementation.
...
rework metal shader compilation/parsing.
2021-03-31 18:35:57 -03:00
Alex Szpakowski
2d2918a254
Merge branch '12.0-development' into metal
2021-03-26 21:42:08 -03:00
Alex Szpakowski
2e2ebe95cd
Clean up some obsolete internal graphics code
2021-01-17 16:50:44 -04:00
Alex Szpakowski
20a92a4106
Merge branch '12.0-development' into metal
2020-12-22 22:37:17 -04:00
Alex Szpakowski
e10444c21f
Move Texture:generateMipmaps error handling out of backend code
2020-10-25 23:13:50 -03:00
Alex Szpakowski
9d2dca5740
metal: nogame and error screens work.
...
- implement love.graphics.setColor
- implement default textures
- hacky implementation of default uniform data
- use texture swizzles to set up LA8 (text) texture data
- shader reflection work
2020-06-13 20:29:23 -03:00
Alex Szpakowski
4ec9cafdea
Better error checking in the GL texture backend
2020-02-12 22:57:13 -04:00
Alex Szpakowski
12c90b3dca
Merge Image and Canvas GL backend classes into new common Texture class.
2020-02-07 20:29:21 -04:00
Alex Szpakowski
3830a0969c
Moved the Texture and Quad Lua wrapper files out of the opengl graphics implementation folder.
...
--HG--
branch : minor
2015-03-01 03:51:44 -04:00
Alex Szpakowski
8067d42df2
Canvases now have OpenGL ES support, updated Texture:setWrap to return false for repeat wrap modes in non-power-of-two textures if OpenGL ES 2 is used and the implementation doesn't have support for repeat on NPOT textures.
...
--HG--
branch : minor
2015-01-20 15:13:59 -04:00
Alex Szpakowski
c7b45b3505
Updated copyright for the new year
2014-12-31 19:32:43 -04:00
Alex Szpakowski
7556fde5e6
Added antialiasing (MSAA) support to Canvases via a new optional parameter. Added Canvas:getFSAA.
2014-01-27 01:31:41 -04:00
Alex Szpakowski
3120a0e650
Goodbye 2013, hello 2014!
2014-01-03 17:28:58 -04:00
Alex Szpakowski
aa69a695d3
Canvases can now be used in SpriteBatches, ParticleSystems, and Meshes (resolves issue #782 ).
...
Canvases and Images are now subclasses of the new Texture class.
Added setTexture and getTexture methods for Meshes, ParticleSystems, and SpriteBatches (the old set/getImage methods are deprecated but not removed.)
Canvas texture coordinates are no longer flipped.
2014-01-03 17:07:12 -04:00