Jeroen Bakker
a88b8e4ed6
Merge branch 'main' into vulkan-offscreen-rendering
2023-05-11 12:51:39 +02:00
Jeroen Bakker
3eef3532e2
Remove comment
2023-05-11 12:44:05 +02:00
Jeroen Bakker
206249039e
Remove unused VKDescriptorSet::unbind
2023-05-11 12:39:38 +02:00
Jeroen Bakker
b4d17737ac
Remove irrelevant comment
2023-05-11 12:38:21 +02:00
Jeroen Bakker
732990795e
Fix running test cases.
2023-05-11 12:35:12 +02:00
Jeroen Bakker
46d5b365b7
Merge branch 'main' into vulkan-offscreen-rendering
2023-05-11 12:30:40 +02:00
Jeroen Bakker
fcec2c9d11
Added comment why early exit is needed
2023-05-11 10:13:15 +02:00
Jeroen Bakker
772672ea9f
Merged vk_buffer_types with vk_buffer
2023-05-11 10:12:58 +02:00
Jeroen Bakker
e45014d142
Use more descriptive parameter names
2023-05-11 09:59:39 +02:00
Jeroen Bakker
82e2270e07
Removed VKTexture::unbind
2023-05-11 09:57:05 +02:00
Jeroen Bakker
d1e7a2d0fb
Remove testcases that don't perform tests
2023-05-11 09:05:05 +02:00
Jeroen Bakker
4679af9a84
Revert debug capturing
2023-05-11 09:00:42 +02:00
Jeroen Bakker
3fc7d631af
Merge branch 'main' into vulkan-offscreen-rendering
2023-05-11 08:58:19 +02:00
Jeroen Bakker
e6fcca9547
Merge branch 'main' into vulkan-offscreen-rendering
2023-05-08 09:48:52 +02:00
Jeroen Bakker
1cd7d97e0e
Reimplemented the swap chain to support blender main loop.
2023-05-05 14:54:07 +02:00
Jeroen Bakker
d3aebe0836
Merge branch 'main' into vulkan-offscreen-rendering
2023-05-05 14:04:14 +02:00
Jeroen Bakker
5fbff71cdb
Fix incorrect allocation streaming buffers.
2023-05-05 12:35:54 +02:00
Jeroen Bakker
f12796eea3
Use late binding for image/texture/uniform buffers
2023-05-05 12:12:59 +02:00
Jeroen Bakker
a40c2084dd
Fix correct uniform buffer names.
2023-05-05 10:29:11 +02:00
Jeroen Bakker
7c53d5eab0
Always allocate buffer with at least 1 byte.
2023-05-05 10:28:09 +02:00
Jeroen Bakker
f6fbe55733
Fix crash when during quit
2023-05-05 08:37:22 +02:00
Jeroen Bakker
2efc57cc2b
Add vertex attribute conversion for immediate mode
2023-05-05 08:37:03 +02:00
Jeroen Bakker
472bc491a3
Vertex buffer conversions
2023-05-04 16:00:18 +02:00
Jeroen Bakker
3f4f51b1cc
Merge branch 'main' into vulkan-offscreen-rendering
2023-05-04 10:24:53 +02:00
Jeroen Bakker
9ea63dac6b
Merge branch 'main' into vulkan-offscreen-rendering
2023-05-04 10:21:51 +02:00
Jeroen Bakker
dcf53b002d
Merge branch 'main' into vulkan-offscreen-rendering
2023-05-04 08:02:04 +02:00
Jeroen Bakker
65018d29ad
Revert unwanted change.
2023-05-02 15:28:03 +02:00
Jeroen Bakker
d7b5312b49
Cleanup: remove compilation warnings.
2023-05-02 14:57:09 +02:00
Jeroen Bakker
eee63f5eb8
Vulkan: Fix drawing to incorrect framebuffers.
2023-05-02 14:43:10 +02:00
Jeroen Bakker
4be885e3ad
Merge branch 'main' into vulkan-offscreen-rendering
2023-05-02 13:47:58 +02:00
Jeroen Bakker
d4bd0a3b7f
Vulkan: Specific texture support.
2023-05-02 13:42:58 +02:00
Jeroen Bakker
4b8c6b0ad5
Enable VMA assert macros
2023-05-01 14:45:53 +02:00
Jeroen Bakker
991c0772db
Updated license header with correct year.
2023-05-01 14:32:49 +02:00
Jeroen Bakker
112a662f9c
Use a shared device for all contexes
2023-05-01 14:25:14 +02:00
Jeroen Bakker
e0675f8047
Merge branch 'main' into vulkan-offscreen-rendering
2023-05-01 10:29:41 +02:00
Jeroen Bakker
2fd034585f
Tweaks
2023-04-26 15:06:56 +02:00
Jeroen Bakker
351f4fac2b
Use single texture when using immDrawPixels
2023-04-26 10:32:33 +02:00
Jeroen Bakker
25f026dd03
Merge branch 'main' into vulkan-offscreen-rendering
2023-04-26 09:29:15 +02:00
Jeroen Bakker
72e7b3bdcb
Enable highlight drawing
2023-04-26 09:22:57 +02:00
Jeroen Bakker
fb86c59735
Remove debug code
2023-04-26 08:26:24 +02:00
Jeroen Bakker
11be78d430
Remove VAO cache
2023-04-26 08:21:40 +02:00
Jeroen Bakker
1cc11ad9f6
Merge branch 'main' into vulkan-offscreen-rendering
2023-04-26 08:13:57 +02:00
Jeroen Bakker
ec91803abe
Remove debug code.
2023-04-25 14:24:01 +02:00
Jeroen Bakker
ef1bde3fb3
Make compute/graphics pipeline more consistent.
2023-04-25 14:13:14 +02:00
Jeroen Bakker
b66ef004d4
Remove debug code
2023-04-25 13:48:04 +02:00
Jeroen Bakker
01bbfafeaf
Allocate correct space for vertex buffers.
2023-04-25 13:31:49 +02:00
Jeroen Bakker
65f114e4aa
Do flipping on the onscreen framebuffer.
2023-04-25 12:57:06 +02:00
Jeroen Bakker
7645737113
Merge branch 'main' into vulkan-offscreen-rendering
2023-04-25 12:09:17 +02:00
Jeroen Bakker
33102c4303
Fix incorrect uploading of tightly packed arrays.
2023-04-25 12:02:41 +02:00
Jeroen Bakker
2099c92e49
Add instance based drawing
2023-04-25 11:16:18 +02:00
Jeroen Bakker
22d582cf2d
Fix blending issue
2023-04-25 10:07:11 +02:00
Jeroen Bakker
d74acb8476
Flip viewport
2023-04-25 09:44:43 +02:00
Jeroen Bakker
e9f4eadbde
Merge branch 'main' into vulkan-offscreen-rendering
2023-04-24 15:38:18 +02:00
Jeroen Bakker
258a612a9d
Don't clear framebuffer during binding.
2023-04-24 14:59:30 +02:00
Jeroen Bakker
b518006420
Framebuffer->blit_to
2023-04-24 13:41:00 +02:00
Jeroen Bakker
f1df6adcfc
Add support for GPU_texture_unpack_row_length
2023-04-24 10:42:51 +02:00
Jeroen Bakker
6428416840
Added more debug names
2023-04-21 15:44:33 +02:00
Jeroen Bakker
5d19d1e8d5
Instance buffers have more priority than vertex buffers.
2023-04-21 14:32:00 +02:00
Jeroen Bakker
35243e1d7c
Merge branch 'main' into vulkan-offscreen-rendering
2023-04-21 12:50:06 +02:00
Jeroen Bakker
a6094d8bdd
Load previous state of framebuffer.
2023-04-21 12:23:17 +02:00
Jeroen Bakker
dad516c975
First pixels (with custom startup.blend)
2023-04-21 10:10:00 +02:00
Jeroen Bakker
23bfac540d
Merge branch 'main' into vulkan-offscreen-rendering
2023-04-21 08:08:30 +02:00
Jeroen Bakker
e988dcb451
Change texture layout when binding texture to shader.
2023-04-20 16:34:52 +02:00
Jeroen Bakker
af621532d7
Merge branch 'main' into vulkan-offscreen-rendering
2023-04-20 15:53:29 +02:00
Jeroen Bakker
03ec6235d2
Use dummy sampler.
2023-04-20 15:53:00 +02:00
Jeroen Bakker
68becab5db
Binding uniform buffers.
2023-04-20 12:56:23 +02:00
Jeroen Bakker
0199793ea0
Geometry shaders.
2023-04-20 12:08:55 +02:00
Jeroen Bakker
6a66412833
Merge branch 'main' into vulkan-offscreen-rendering
2023-04-20 08:11:32 +02:00
Jeroen Bakker
33b9ae39fd
Commit beforr signing of for today.
2023-04-18 15:51:04 +02:00
Jeroen Bakker
3b631a6cab
Updated create and switching framebuffers.
...
GPU module should always have an active framebuffer by design.
2023-04-18 10:14:52 +02:00
Jeroen Bakker
e44b818c0c
Merge branch 'main' into vulkan-offscreen-rendering
2023-04-18 08:26:01 +02:00
Jeroen Bakker
c809c292c1
Don't record clear command when framebuffer cannot be cleared.
2023-04-17 16:13:49 +02:00
Jeroen Bakker
3d4d25033f
Small tweaks to Blender GL initialization.
2023-04-17 16:13:19 +02:00
Jeroen Bakker
bfdee523a6
Add support for large immediate buffers.
2023-04-17 15:25:03 +02:00
Jeroen Bakker
d15cb1e7ef
Fill previous immediate buffer.
2023-04-17 14:15:33 +02:00
Jeroen Bakker
2549b67280
Merge branch 'main' into vulkan-offscreen-rendering
2023-04-17 08:52:29 +02:00
Jeroen Bakker
b1ae7316fc
Merge branch 'vulkan-immediate' into vulkan-offscreen-rendering
2023-04-17 08:45:01 +02:00
Jeroen Bakker
c5e4e76008
Vulkan: Immediate mode emulation.
2023-04-14 15:48:04 +02:00
Jeroen Bakker
8fe177425e
Added test case for immediate mode drawing.
2023-04-14 11:43:09 +02:00
Jeroen Bakker
25873c4963
Fix state issue
2023-04-14 09:05:38 +02:00
Jeroen Bakker
6c407c94f4
Merge branch 'main' into vulkan-offscreen-rendering
2023-04-14 08:23:24 +02:00
Jeroen Bakker
a32ee85b51
Added all non-custom blending test cases.
2023-04-13 16:14:54 +02:00
Jeroen Bakker
d295aff40a
Merge branch 'gpu-offscreen-texture-usage' into vulkan-offscreen-rendering
2023-04-13 15:43:45 +02:00
Jeroen Bakker
a01991b538
Remove unneeded file.
2023-04-13 15:42:24 +02:00
Jeroen Bakker
36578ac4ee
Automatic add GPU_TEXTURE_USAGE_ATTACHMENT.
2023-04-13 15:40:21 +02:00
Jeroen Bakker
a5f7d44115
Track framebuffer state in command buffer.
2023-04-13 15:35:07 +02:00
Jeroen Bakker
9e83be5c40
Merge branch 'gpu-offscreen-texture-usage' into vulkan-offscreen-rendering
2023-04-13 13:44:18 +02:00
Jeroen Bakker
29cc37cf22
GPU: Add texture usage parameter to GPUOffscreen.
...
Currently the Textures used for offscreen rendering don't have
the `GPU_TEXTURE_USAGE_HOST_READ` flag. But some cases it is
needed. This PR adds a parameter when creating an offscreen
buffer.
Other solution could be to add this flag to all textures, but
we chose not to do this as that reduces the amount of fine-tuning
options for Metal/Vulkan backends. GPU can store textures
differently based on its actual usage.
This option isn't available in the python API as we don't expect
add-on developers to fine-tune texture usages to this extent.
2023-04-13 12:33:50 +02:00
Jeroen Bakker
c9a1be0fc9
Temp commit as changes to GPU api are needed to proceed.
2023-04-13 12:24:18 +02:00
Jeroen Bakker
8b8fb15430
Merge branch 'main' into vulkan-offscreen-rendering
2023-04-13 10:52:22 +02:00
Jeroen Bakker
560ba241fe
Fix overbind vbos.
2023-04-07 15:01:36 +02:00
Jeroen Bakker
21b49096d6
Fix issues with vertex attribute objects.
2023-04-07 14:14:02 +02:00
Jeroen Bakker
812217fb67
Remove unneeded changes.
2023-04-07 12:51:21 +02:00
Jeroen Bakker
3100807739
Revert unneeded change.
2023-04-07 12:14:34 +02:00
Jeroen Bakker
f00e82d5dc
Migrated to pipeline specific state manager.
2023-04-07 12:09:53 +02:00
Jeroen Bakker
1e0b6a4707
Use correct primitive topology
2023-04-07 09:04:26 +02:00
Jeroen Bakker
85ffcfb04f
Fix push constants and use VAO in pipeline
2023-04-07 08:22:36 +02:00
Jeroen Bakker
12e9e90b6c
Vertex buffer binding.
2023-04-06 16:21:39 +02:00
Jeroen Bakker
e3e3037a4d
Merge branch 'main' into vulkan-offscreen-rendering
2023-04-06 08:46:22 +02:00
Jeroen Bakker
2fe23a2f03
Merge branch 'main' into vulkan-offscreen-rendering
2023-04-04 14:13:15 +02:00
Jeroen Bakker
44aae51d41
Merge branch 'main' into vulkan-offscreen-rendering
2023-03-29 08:07:40 +02:00
Jeroen Bakker
2b4988b18d
Hardcoded graphics pipeline.
2023-03-28 16:01:04 +02:00
Jeroen Bakker
075790d69f
Merge branch 'main' into vulkan-offscreen-rendering
2023-03-28 11:57:31 +02:00
Jeroen Bakker
b0563f520e
Added test for offscreen rendering.
...
It doesn't validate anything yet, it should (for now) be used
with renderdoc.
2023-03-28 11:49:52 +02:00