niki
fb44ddb546
vulkan: document change in changes.txt
2022-09-13 13:09:57 +02:00
niki
faeca1c4bc
vulkan: fix wrong image layout validation warnings
2022-09-12 13:46:03 +02:00
niki
6d9f855bf4
Merge remote-tracking branch 'origin/12.0-development' into vulkan
2022-09-11 17:49:43 +02:00
niki
76199688f6
vulkan: implement discard
2022-09-11 17:09:38 +02:00
niki
fd951909c0
vulkan: add more optional extensions
...
VK_KHR_dedicated_allocation, VK_KHR_buffer_device_address,
and VK_EXT_memory_budget can get used by VMA.
VK_KHR_spirv_1_4 can get used by the Shader.
VK_KHR_spirv_1_4 depends on VK_KHR_shader_float_controls.
VK_KHR_dedicated_allocation depends on VK_KHR_get_memory_requirements2
2022-09-11 15:03:40 +02:00
niki
ef80e11b4d
vulkan: add support for uniform texture arrays
2022-09-11 13:02:38 +02:00
niki
294761713f
vulkan: fix bug: incorrect uniform values
2022-09-11 04:20:45 +02:00
slime
9c46b75138
ImageData:encode now supports saving exr image files.
...
Also add support for loading uint exr image files, and fix a memory leak in the exr loading code.
Resolves #1813 .
2022-09-10 23:17:42 -03:00
niki
1658c89f3d
vulkan: add support for custom depth/stencil tex
2022-09-11 01:57:23 +02:00
niki
816e3f01a2
vulkan: correctly order gpu commands
2022-09-10 19:21:31 +02:00
niki
a93d153792
vulkan: adjust code styling
2022-09-10 17:40:46 +02:00
niki
57207606c0
vulkan: implement Shader::getVertexAttributeIndex
2022-09-10 15:27:45 +02:00
niki
2010675bff
vulkan: fix typo
2022-09-09 23:42:28 +02:00
niki
8807c3dd37
vulkan: fix case where msaa = 1
2022-09-09 23:14:44 +02:00
niki
9025631231
vulkan: modify descriptor set allocation
...
Setting the size of each descriptor pool to one
was a hack introduced to make the code work on android.
Changing the code to now allocate all descriptor sets at once
should fix the previous crash.
Not tested yet.
2022-09-09 12:02:30 +02:00
slime
bba1717130
metal: fix love.graphics.captureScreenshot
2022-09-02 10:53:52 -03:00
nikeinikei
502c1e83ab
vulkan: more reserved usage flags of texture
2022-09-01 16:10:10 +02:00
nikeinikei
adc02a4939
vulkan: optionally use VK_KHR_PUSH_DESCRIPTOR
2022-09-01 15:01:40 +02:00
niki
7185d7356f
vulkan: fix enabling extensions
2022-08-31 19:50:03 +02:00
niki
b28d2df6f8
vulkan: fix crash
2022-08-31 02:35:56 +02:00
niki
a0ee9f7b9b
vulkan: implement compute shaders
...
A lot of stuff probably isn't implemented yet, however the
following code already works:
```lua
local shader = love.graphics.newComputeShader [[
layout (local_size_x = 1, local_size_y = 1) in;
layout(r32f) uniform highp image2D out_tex;
uniform float time;
void computemain() {
imageStore(out_tex, ivec2(love_GlobalThreadID.xy), vec4(time, 1.0, 1.0, 1.0));
}
]]
local tex = love.graphics.newTexture(64, 64, {computewrite = true,format = "r32f"})
function love.draw()
shader:send("out_tex", tex)
shader:send("time", love.timer.getTime() % 1)
love.graphics.dispatchThreadgroups(shader, 64, 64, 1)
love.graphics.print("compute shader test")
love.graphics.draw(tex, 25, 25)
end
```
2022-08-31 02:07:46 +02:00
niki
e409770be1
vulkan: fix some validation warnings
2022-08-30 20:28:18 +02:00
niki
ec5a3a50f9
vulkan: implement graphics readback
2022-08-30 17:11:59 +02:00
niki
a69d4a38dd
vulkan: optionally use extended dynamic state
...
This should cut down on the number of pipeline permutations
needed when this extension is available.
2022-08-30 03:20:33 +02:00
niki
d123021e26
vulkan: fix canvas rendering (on android)
...
Before this patch, sometimes rendering a texture
on an android device would result in random things
appearing in the canvas, apart from the stuff
that has been drawn properly.
With these changes this does not seem to appear anymore.
2022-08-29 17:43:54 +02:00
niki
4047cc9d3a
Merge remote-tracking branch 'origin/12.0-development' into vulkan
2022-08-28 03:43:08 +02:00
niki
c5a2e47714
vulkan: implement multi canvas rendering
2022-08-28 03:35:06 +02:00
niki
748f2676d5
vulkan: fix mip maps
2022-08-27 22:20:33 +02:00
niki
18221beb25
vulkan: fix canvas rendering on android
2022-08-27 20:58:17 +02:00
Klonan
7595bc7edb
whitespace micro
2022-08-27 17:37:30 +02:00
niki
7a67983b3d
vulkan: fix some crashes relating to memory mngmt
2022-08-27 17:37:02 +02:00
Klonan
4e81a31cd1
Code style (tabs)
2022-08-27 17:35:41 +02:00
Klonan
03939299db
Added World:getFixturesInArea()
2022-08-27 17:16:51 +02:00
Miku AuahDark
822d363dfa
Remove test #undef from previous commit.
2022-08-26 11:48:46 +08:00
Miku AuahDark
3c2b1b888e
Properly pause all audio processing in Android when minimized.
...
This uses ALC_SOFT_pause_device extension which is available since
OpenAL-soft 1.16. We guarantee almost 100% availability of this extension
since we've been using OpenAL-soft in Android since beginning.
Fixes #1828
2022-08-26 11:45:25 +08:00
slime
bded15ff2a
Decoders failing to allocate their buffer will cause a Lua error instead of crashing.
2022-08-25 19:44:10 -03:00
slime
db1bf4707c
Workaround for built-in shaders on some ES2 devices which don't support highp in pixel shaders.
2022-08-25 19:25:01 -03:00
slime
96820749ad
Potential optimization for built-in uniform access in shader code.
...
Assigning to and accessing extra shader variables can increase VGPR / wave-variant register usage in shaders, which is often a limiting factor for performance in non-trivial shaders. Accessing the uniforms directly should bypass that.
2022-08-25 18:17:31 -03:00
niki
77f75648e8
vulkan: default renderpass and framebuffers
...
Since these objects basically get used every frame
we shouldn't store them in a hashmap with potentially
worse performance.
Instead storing them in member variables should be better.
2022-08-25 18:15:18 +02:00
niki
a577be8a6d
vulkan: fix a few bugs in Shader
2022-08-23 01:38:47 +02:00
niki
a08395e12d
vulkan: implement msaa
2022-08-22 23:09:21 +02:00
niki
62148790a8
vulkan: fix scissor on android
2022-08-22 17:40:27 +02:00
niki
7cc6ed40be
vulkan: implement depth and stencil
2022-08-21 17:42:39 +02:00
nikeinikei
dfa9b7da34
vulkan: fix build on machines without vulkan 1.3
2022-08-21 02:08:01 +02:00
niki
665614b9b9
vulkan: fix crash when recreating swapchain
2022-08-20 21:33:09 +02:00
niki
5f2fdc0dd0
vulkan: android: fix display orientation
2022-08-20 21:03:49 +02:00
niki
23666b1fde
vulkan: fix android build
...
It compiles now, but it's not working correctly yet
2022-08-20 19:38:59 +02:00
Er2
53b20b1341
some fixes
...
Fixed duration and love naming conventions.
2022-08-20 19:05:56 +03:00
niki
3e762c9772
vulkan: remove dynamic rendering (part 2)
2022-08-20 16:38:13 +02:00
niki
4660466887
vulkan: don't use dynamic rendering
2022-08-20 15:49:09 +02:00