Commit Graph

3447 Commits

Author SHA1 Message Date
Alex Szpakowski 8d3730361b Add love.dropbegan and love.dropcompleted callbacks.
Resolves #1346
2022-04-16 16:47:31 -03:00
Miku AuahDark 321397d1dd Add love.keyboard.isModifierActive. 2022-04-16 11:15:01 +08:00
Alex Szpakowski 0b6722ea0e Merge branch 'main' into 12.0-development 2022-04-15 23:47:28 -03:00
Alex Szpakowski b3b1317f61 linux: fix issues if certain codepaths are hit while signal handlers are temporarily off. 2022-04-15 23:43:30 -03:00
Alex Szpakowski e512eff37b Fix love.threaderror when the error message is empty.
Fixes #1775
2022-04-15 23:31:57 -03:00
Alex Szpakowski 34f036f2e1 Rename 'display' field to 'displayindex' in setMode and love.conf.
Fixes #1711.
2022-04-15 23:16:13 -03:00
Alex Szpakowski 941fe51ba6 Merge pull request #1782 from MikuAuahDark/dotrequire
Show deprecation notice when slashes is passed to require.
2022-04-02 21:19:59 -03:00
niki 6dc12be45d fix crash on resizing 2022-03-22 14:32:41 +01:00
niki 158052c52c implement basic per frame uniform variables 2022-03-22 14:31:50 +01:00
niki 157c8f8a20 include custom vulkan shader in love source 2022-03-21 15:26:27 +01:00
Miku AuahDark 730cb08acf Minor fix to love.localechanged callback.
Wrong callback placement.
2022-03-18 10:30:31 +08:00
Miku AuahDark 75b1098572 Add love.localechanged callback. 2022-03-17 23:39:54 +08:00
Miku AuahDark c2104f896a Add love.system.getPreferredLocales() 2022-03-17 23:38:25 +08:00
Yan 09725dd3b9 Windows: Fix compile error: cast from 'HINSTANCE' to 'int' loses precision 2022-03-13 00:26:04 +08:00
Miku AuahDark 405e33a689 Use int instead of PixelFormatUsageFlags for isPixelFormatSupported. 2022-03-05 13:42:20 +08:00
Miku AuahDark 00e4ec1e04 Show deprecation notice when slashes is passed to require.
Closes #1773
2022-03-02 08:01:59 +08:00
Alex Szpakowski 0fa00e0bdc love.graphics.newShader: add a compile options table parameter.
The only field currently read from the table is 'defines', which can contain either an array of define names, or name-value pairs.
For example: newShader(file, {defines={"MYFEATURE_ENABLED", MYSETTING=1}})

Fixes #1577
2022-02-20 12:23:41 -04:00
Alex Szpakowski bc1c38d361 improve logic for detecting when Texture:generateMipmaps is supported 2022-02-19 16:34:52 -04:00
Alex Szpakowski 6e35ffe2d8 metal: fix window pixel size when resizing 2022-02-19 14:17:37 -04:00
Alex Szpakowski 171533dbf8 Another shader fix for metal+iOS 2022-02-15 21:16:55 -04:00
Alex Szpakowski caf89998cc iOS: fix shader compilation with metal 2022-02-15 21:12:13 -04:00
Alex Szpakowski c28731ea80 opengl: fix love's internal quad index buffer failing to populate 2022-02-12 09:37:30 -04:00
niki 197dfb9738 start implementing vulkan Shader type 2022-02-06 22:56:24 +01:00
Alex Szpakowski d4c1025070 Merge branch 'main' into 12.0-development 2022-02-05 21:40:24 -04:00
niki 4692a0490c basic functionality for indexed draw in vulkan 2022-02-06 02:11:20 +01:00
niki 7d680838b6 restructure to not hardcore draw vk commands 2022-02-05 20:44:36 +01:00
Alex Szpakowski 7216a022f9 metal: remove unused internal code 2022-02-04 22:09:50 -04:00
niki f39d01e940 Merge branch 'vulkan' of https://github.com/nikeinikei/love into vulkan 2022-02-05 01:53:05 +01:00
niki 8694655edd use shaderc instead of glslang to compile shader 2022-02-04 23:48:36 +01:00
niki 7b8fcfb919 fix vulkan::StreamBuffer::unmap 2022-02-04 23:48:36 +01:00
niki 4e583c8cf8 make vulkan::ShaderStage non abstract 2022-02-04 23:48:36 +01:00
niki 1267f2a7bb make vulkan::Shder non abstract 2022-02-04 23:48:36 +01:00
niki 4d7fe75001 add vulkan streambuffer implementation 2022-02-04 23:48:36 +01:00
niki d09f834bf3 first draft of vulkan buffer implementation 2022-02-04 23:48:36 +01:00
niki b80ef89e8d handle resizing correctly 2022-02-04 23:48:32 +01:00
niki 65074dae15 hello world triangle 2022-02-04 23:45:58 +01:00
niki cc56c79606 use shaderc instead of glslang to compile shader 2022-02-04 20:07:27 +01:00
niki 867766dafe fix vulkan::StreamBuffer::unmap 2022-02-04 20:03:41 +01:00
niki 9b176cbcde make vulkan::ShaderStage non abstract 2022-02-04 20:03:23 +01:00
niki 829b33a77e make vulkan::Shder non abstract 2022-02-04 20:01:59 +01:00
Alex Szpakowski 5549279eb1 Use metal by default on supported systems.
There are still issues to fix with the Metal backend, but it's more easily testable now at least.
2022-01-31 21:27:59 -04:00
Alex Szpakowski 6e49b1f901 metal: fix texture sampler changes not affecting draws using shaders. 2022-01-31 21:25:49 -04:00
Alex Szpakowski d7522c88af Add HTTPS Lua module.
It can be loaded via https = require("https").
Basic API is responsecode, body = https.request(url).
Slightly more advanced API is responsecode, body, headers = https.request(url, {method="post" or "get", data=str, headers={}}).
2022-01-30 13:21:33 -04:00
Alex Szpakowski f4a85f42df metal: Apple Silicon macs also support rgba4 / rgb5a1 / rgb565. 2022-01-24 21:19:40 -04:00
Alex Szpakowski b3d37e5fc2 metal: Apple Silicon macs support PVRTC/ETC/ASTC textures. 2022-01-24 21:09:33 -04:00
Alex Szpakowski e4020e439a metal: lowdpi on macOS uses nearest instead of linear upscaling.
Matches the behaviour of the OpenGL backend on macOS.
2022-01-23 12:55:06 -04:00
Alex Szpakowski a5351e5046 metal: improve detection of rgba32f format filter and MSAA support. 2022-01-23 11:28:09 -04:00
Alex Szpakowski 6dbb7fa5de Add love.graphics.setStencilMode. Remove old stencil API.
- Add setStencilMode(drawaction, comparemode, value = 0, readmask = 0xFF, writemask = 0xFF).
- Add getStencilMode.
- Remove love.graphics.stencil.
- Remove love.graphics.set/getStencilTest.

Note that the new setStencilMode API does not clear the stencil buffer, and does not turn off color writes (it can still be done manually), unlike love.graphics.stencil.

Fixes #1161.
Fixes #1251.
2022-01-22 23:36:07 -04:00
Alex Szpakowski 173fe3dab5 Add a love.graphics.setColorMask variant which accepts a single bool.
Remove the variant which accepted no args - it would be too confusing because setColorMask(false) does the opposite of what setColorMask(nil) used to do.
2022-01-22 23:27:53 -04:00
Alex Szpakowski c26f6ed94f metal: improve performance of auto depth/stencil in setCanvas. 2022-01-22 23:12:42 -04:00