Richard Huang [Wed, 28 May 2025 10:43:41 +0000 (11:43 +0100)]
Destory the semaphore when Vulkan render target dies
Change-Id: I57dba6f941caa54f04c6f55a3b79d91094aee300
Wonsik Jung [Tue, 27 May 2025 08:42:29 +0000 (08:42 +0000)]
Merge "Replace the exception case in tizen backend." into devel/master
Wonsik Jung [Sat, 24 May 2025 23:56:28 +0000 (08:56 +0900)]
Replace the exception case in tizen backend.
Replace the excepption case in tizen backend when display server does not work.
When display server does not work, then ecore_wl2_display_connect() does not work and crash occurs in application size.
To handle the failure case where the display server does not work in the Tizen backend, you can modify the ecore_wl2_display_connect() function to avoid crashing the application.
Specifically, replace the exit() call with a more graceful error handling mechanism.
Change-Id: Ice83d181fe468bc0b9bdcca48f2fcc6496d855f1
Wonsik Jung [Fri, 23 May 2025 08:57:20 +0000 (17:57 +0900)]
Fix the bug about window resize/move completed signal.
Fix the bug about window resize/move completed signal.
When the window resize/move completed signal work,
application can not get the changed window geometry in the related signal callbacks.
This patch is to fix the related bug.
Change-Id: I3d0a6cc9eb7a97ee92a17d63b68512d651959e8f
Adeel Kazmi [Fri, 23 May 2025 12:10:38 +0000 (12:10 +0000)]
Merge "Ensuring shader cache on android is not /home/owner" into devel/master
Adeel Kazmi [Fri, 23 May 2025 11:30:57 +0000 (12:30 +0100)]
DALi Version 2.4.20
Change-Id: Ia8cfa9b75e0905a7e96bc43d5bc1967b508dba57
Richard Huang [Thu, 22 May 2025 14:19:12 +0000 (15:19 +0100)]
Make sure the handle of RenderPass is properly destroyed
Change-Id: I49aeda5049319cb0d9b8d45fa8c4a7415a35f576
David Steele [Fri, 16 May 2025 13:29:54 +0000 (14:29 +0100)]
DALi Version 2.4.19
Change-Id: I1718b7c2e12535af237ba62bb30649f1faa4aed8
David Steele [Wed, 7 May 2025 16:06:23 +0000 (17:06 +0100)]
Ensuring shader cache on android is not /home/owner
Change-Id: I0f4613f2c9a28cd582b41d10cd1dadcc85a20662
Adeel Kazmi [Fri, 9 May 2025 06:31:21 +0000 (07:31 +0100)]
DALi Version 2.4.18
Change-Id: I32617bd9bea554a14fabd394c688f00bd3b2c245
joogab.yun [Thu, 8 May 2025 06:05:52 +0000 (15:05 +0900)]
Hover events should also be interrupted when reset.
Change-Id: I4fbccfaa358afe41255b3c41934e92d319336537
Bowon Ryu [Thu, 8 May 2025 03:24:07 +0000 (03:24 +0000)]
Merge "Fix svace issue in face manager" into devel/master
sunghyun kim [Tue, 11 Feb 2025 07:23:53 +0000 (16:23 +0900)]
Add version checker
Change-Id: I71a54ecac503d77f7653ef9cc24dbd51a297a103
Bowon Ryu [Thu, 8 May 2025 00:51:35 +0000 (09:51 +0900)]
Fix svace issue in face manager
Change-Id: I5cc87b24e04b8052a3fa3220192d1afd92b8a2fd
Signed-off-by: Bowon Ryu <bowon.ryu@samsung.com>
Bowon Ryu [Wed, 7 May 2025 03:26:14 +0000 (03:26 +0000)]
Merge "Fix clear cache bug in face manager" into devel/master
Eunki Hong [Wed, 7 May 2025 01:38:41 +0000 (01:38 +0000)]
Merge "Ensure render target is nullptr or not, and print logs" into devel/master
Bowon Ryu [Wed, 7 May 2025 01:16:28 +0000 (10:16 +0900)]
Fix clear cache bug in face manager
If we want to use remain count in ClearCache,
we should also properly clear face, size, and index.
But it is difficult to support it now.
And since there is no use for remain count, we will remove this feature for now.
Change-Id: I67bddd7ec695b5b724d45c1e6886492c3cd4eb7d
Signed-off-by: Bowon Ryu <bowon.ryu@samsung.com>
Adeel Kazmi [Fri, 2 May 2025 10:31:14 +0000 (10:31 +0000)]
Merge "(Android) Updated polling technique as previous way was deprecated" into devel/master
Richard Huang [Fri, 2 May 2025 09:59:17 +0000 (10:59 +0100)]
DALi Version 2.4.17
Change-Id: I20805006fb59026d06f68e0ef4ce9a1dd6d00dd7
Eunki Hong [Fri, 2 May 2025 06:58:06 +0000 (15:58 +0900)]
Ensure render target is nullptr or not, and print logs
Change-Id: I04f0278065c0356cf56590220b0d558d936aa735
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
Adeel Kazmi [Thu, 1 May 2025 12:46:53 +0000 (12:46 +0000)]
Merge "Removed unnecessary fomat file as it breaks some clang builds" into devel/master
Adeel Kazmi [Wed, 30 Apr 2025 22:51:39 +0000 (23:51 +0100)]
(Android) Updated polling technique as previous way was deprecated
Change-Id: I9442d36fd1e8513c51792bd8f8857ec75d03f1a3
Adeel Kazmi [Wed, 30 Apr 2025 22:49:59 +0000 (23:49 +0100)]
Removed unnecessary fomat file as it breaks some clang builds
Change-Id: I5862009434dfe734583ea943a5c1db8f7b51289a
Adeel Kazmi [Wed, 30 Apr 2025 15:56:07 +0000 (15:56 +0000)]
Merge "Fix memory leak and validaiton errors caused by Vulkan::Program" into devel/master
Adeel Kazmi [Wed, 30 Apr 2025 15:28:57 +0000 (15:28 +0000)]
Merge "Reduce the memory allocation per draw call during Vulkan resource binding" into devel/master
Richard Huang [Wed, 30 Apr 2025 12:45:35 +0000 (13:45 +0100)]
Reduce the memory allocation per draw call during Vulkan resource binding
Change-Id: I604d9ccdb204dc9a6ed7bc9b773988e28553c682
Bowon Ryu [Wed, 30 Apr 2025 11:45:16 +0000 (11:45 +0000)]
Merge "Refactor: font face cache" into devel/master
Richard Huang [Fri, 21 Mar 2025 15:55:24 +0000 (15:55 +0000)]
Fix memory leak and validaiton errors caused by Vulkan::Program
Change-Id: I6d0e609f80ab7dec342c696e6093f50963bff664
Richard Huang [Tue, 29 Apr 2025 10:54:56 +0000 (11:54 +0100)]
Fix the error of link test with Vulkan library
Change-Id: Ie96fa47c3ab29378cf3c0b25fa3dd71e96aad00f
Bowon Ryu [Tue, 15 Apr 2025 09:22:46 +0000 (18:22 +0900)]
Refactor: font face cache
The core change in this patch is to create 1 freetype face per font file.
Previously, we created as many faces as font-face-cache-items.
This was fine for static (seldom changing) apps, but when using a wide variety of point sizes,
it would create a face every time, which used too much memory.
Now we reuse 1 face.
Instead of faces, freetype sizes are cached and activated on demand,
which uses significantly less memory than the previous face cache.
In static apps, the memory usage difference may not be significant,
but in extreme cases where point sizes exceed thousands, it is incomparably efficient.
And now, we can use pre-loaded memory fonts in async text as well via the font file manager!
TODO: Optimize font-face-cache-item.
Change-Id: I38f44e641e00ae7bfcf16891f92ba14d74c9bff9
Signed-off-by: Bowon Ryu <bowon.ryu@samsung.com>
Eunki Hong [Tue, 29 Apr 2025 07:54:22 +0000 (07:54 +0000)]
Merge changes Ieb7e9b87,I017b729c into devel/master
* changes:
Make gl interface pointer use case with DALI_LIKELY
Cache BindBufferRange call + Reduce cache clear call if we can
Wonsik Jung [Mon, 28 Apr 2025 02:06:07 +0000 (02:06 +0000)]
Merge "Adds to get window rotation's angle and screen rotation." into devel/master
Eunki, Hong [Thu, 24 Apr 2025 08:44:03 +0000 (17:44 +0900)]
Make gl interface pointer use case with DALI_LIKELY
Since most of cases will use valid gl objects.
So let we ensure the gl validation by DALI_LIKELY markers.
Change-Id: Ieb7e9b8734ab0ac353b8b33422b776dd88007972
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Eunki, Hong [Thu, 24 Apr 2025 01:31:57 +0000 (10:31 +0900)]
Cache BindBufferRange call + Reduce cache clear call if we can
Change-Id: I017b729ca8f6cc93214165ecf47e4f22697c6ec5
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
dongsug song [Mon, 28 Apr 2025 01:27:02 +0000 (01:27 +0000)]
Merge "Add OverScrolled in WebView" into devel/master
David Steele [Fri, 25 Apr 2025 10:33:25 +0000 (11:33 +0100)]
DALi Version 2.4.16
Change-Id: I22ac7002af4ab1a89d902cb38846ca364dcb5e22
Wonsik Jung [Fri, 25 Apr 2025 08:22:14 +0000 (17:22 +0900)]
Adds to get window rotation's angle and screen rotation.
Adds to get window rotation's angle and screen rotation for Dnd.
Change-Id: I8d95c4ab6e981875ebbf93ac9cd7ff2d134397e6
dongsug.song [Fri, 25 Apr 2025 05:02:36 +0000 (14:02 +0900)]
Add OverScrolled in WebView
Change-Id: Ie4b3b4d33c42d19507a620f48876279e3a534157
Eunki Hong [Thu, 24 Apr 2025 08:20:50 +0000 (08:20 +0000)]
Merge "(GLES) Ensure gles framebuffer bound at shared context" into devel/master
Eunki Hong [Wed, 23 Apr 2025 23:25:22 +0000 (23:25 +0000)]
Merge "Ignore UniformBlocks for GLES3" into devel/master
Eunki Hong [Wed, 23 Apr 2025 04:25:56 +0000 (04:25 +0000)]
Merge "(GLES) Match the binded target and matched target" into devel/master
sunghyun kim [Wed, 23 Apr 2025 04:18:06 +0000 (04:18 +0000)]
Merge "Add flag for precompile shader" into devel/master
Eunki Hong [Fri, 11 Apr 2025 17:09:47 +0000 (02:09 +0900)]
(GLES) Ensure gles framebuffer bound at shared context
gles-context have framebuffer dependency cache objects.
But now, it looks that we only allow to Create/Bind the framebuffers
at shared context.
Since we cant destroy the framebuffer at another context,
we should ensure to remove the cache objects at shared conetext.
Change-Id: I4da09e30644488dcb2f217cee1fcf2d7213b1202
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
Eunki, Hong [Mon, 21 Apr 2025 08:05:04 +0000 (17:05 +0900)]
(GLES) Match the binded target and matched target
Until now, we use GL_COPY_WRITE_BUFFER for mapping the buffers.
This target usually be used for glCopyBufferSubData.
Since we have specific destination target per each GLES::Buffer, let we
ensure the matched buffer target and generate them.
Change-Id: I6cf2a9ff41b84dd82499bdba57792da2c9aa87d6
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Eunki, Hong [Tue, 22 Apr 2025 08:38:43 +0000 (17:38 +0900)]
Ignore UniformBlocks for GLES3
Since ResolveUniformBuffers() time doubled after we use UniformBlock at shader,
let we don't use it and use standalone block instead.
It will be changed after we can keep ther performance.
Change-Id: I3adde5ed295f0a9b621f94f4ebcab5b4bf6f64d2
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
sunghyun kim [Mon, 14 Apr 2025 04:31:22 +0000 (13:31 +0900)]
Add flag for precompile shader
Change-Id: If48a07ac3943fd82f8c316bb68ff4d49701ff405
Eunki, Hong [Fri, 18 Apr 2025 06:50:27 +0000 (15:50 +0900)]
(Gles) Minor optimize UBOBinding
1.
std::vector<bool> is specialize for bitfields, which has less memory
and might have overhead at get/set. Let we avoid this panalty if possible.
2.
Remove unused member values for UniformBufferBindingDescriptor.
Change-Id: Ic09d0130cb103e9e6cbde843486c752c3e7abb1a
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Richard Huang [Thu, 17 Apr 2025 07:44:59 +0000 (08:44 +0100)]
DALi Version 2.4.15
Change-Id: Icdb0a705fff5d39fb100868bb841b91cd0246324
Eunki, Hong [Fri, 11 Apr 2025 08:13:27 +0000 (17:13 +0900)]
Use ResizeUnitialize for UBO and texture bindings
Let we reserve the memory for some bindings - texture and UBO.
At ClearState() phase, we always clear all container, and re-allocate next draw.
It will less allocate, and less touch the count area memory. frequency.
Change-Id: I50f677b8ab530f03e0b22343fa4d18cad958f31c
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Adeel Kazmi [Fri, 11 Apr 2025 07:27:07 +0000 (08:27 +0100)]
DALi Version 2.4.14
Change-Id: I46ebe5569848b07c79abdcdee2899a0c407009bb
Eunki, Hong [Thu, 10 Apr 2025 01:12:16 +0000 (10:12 +0900)]
Fix coverity issue : Do not use FILE* after fclose()
Change-Id: I31caf37588300bf1ec2096b1bc7a01d82635a3ca
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
David Steele [Wed, 9 Apr 2025 15:26:46 +0000 (15:26 +0000)]
Merge "Reserving descriptor write vector to known size" into devel/master
Adeel Kazmi [Wed, 9 Apr 2025 11:09:10 +0000 (11:09 +0000)]
Merge "Reduce memory consumption by tweaking VMA preferred heap block size" into devel/master
Adeel Kazmi [Wed, 9 Apr 2025 09:47:52 +0000 (09:47 +0000)]
Merge "(MacOS) Fix for startup error on recent mac builds" into devel/master
David Steele [Wed, 9 Apr 2025 09:20:49 +0000 (09:20 +0000)]
Merge "Use swap for some cases instead move assign. + UpdateOnce for TextureManager" into devel/master
Adeel Kazmi [Wed, 9 Apr 2025 09:10:05 +0000 (10:10 +0100)]
(MacOS) Fix for startup error on recent mac builds
Change-Id: I8f78ff9c8ec81a1169f46b89af236e0ff7603dcb
Eunki, Hong [Wed, 9 Apr 2025 07:20:25 +0000 (16:20 +0900)]
Use swap for some cases instead move assign. + UpdateOnce for TextureManager
Change-Id: Ib2de780fb1bc3348a1f3a6984818869ca1628d98
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Eunki, Hong [Fri, 4 Apr 2025 04:49:36 +0000 (13:49 +0900)]
Add more SystemError print logs + Do not use DALI_LOG_WARNING
Print some more system error logs where using fread / fseek / ftell.
+
DALI_LOG_WARNINGS print some logs only for debug modes.
Let we print some critical logs as error level, and verbose logs as debug level.
Change-Id: I3e7c87882ee1bd72a123b71435e8861c6ad3949b
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Eunki Hong [Tue, 8 Apr 2025 22:38:57 +0000 (22:38 +0000)]
Merge "(Vulkan) Make we get UniformBlock's type_name for vulkan" into devel/master
David Steele [Tue, 8 Apr 2025 17:00:33 +0000 (18:00 +0100)]
Reserving descriptor write vector to known size
Change-Id: I3c10c5a5415eb0ac6a78f8901fb43479e13c777c
Eunki Hong [Tue, 8 Apr 2025 14:11:50 +0000 (14:11 +0000)]
Merge "(Vulkan) Vulkan setup documents for Ubuntu at README.md" into devel/master
Eunki Hong [Tue, 8 Apr 2025 12:36:33 +0000 (21:36 +0900)]
(WebEngine) Fix doxygen 1.9.3 error
Change-Id: I98cb83592dc06b8ee4c2c2b4979dc646e9733c72
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
dongsug song [Tue, 8 Apr 2025 12:26:21 +0000 (12:26 +0000)]
Merge "(WebView) Update and sync all the latest patches related to WebView that have been modified so far" into devel/master
Eunki Hong [Tue, 8 Apr 2025 11:50:06 +0000 (11:50 +0000)]
Merge "Check key is null for UngrabKeyList" into devel/master
David Steele [Tue, 8 Apr 2025 09:45:02 +0000 (09:45 +0000)]
Merge "Inverted samplers/bound textures in descriptor binding" into devel/master
dongsug.song [Thu, 3 Apr 2025 12:22:56 +0000 (21:22 +0900)]
(WebView) Update and sync all the latest patches related to WebView that have been modified so far
- Fix for UserMediaPermissionRequest object to be maintained by user
- Add WebView FeedMouseWheel as hidden api
- Add SetVideoHole() for EFL window
- Add WebView DeviceListGet,SetDefaultAudio
- Add APIs for setting IME position, cursor theme name.
Change-Id: I2670d74b9f04a620119bd4fd38ee7fcca0be650c
Eunki, Hong [Wed, 2 Apr 2025 02:14:07 +0000 (11:14 +0900)]
ClearScene if previous frame presented + Present if dirty rect not empty
Their was some error if rendererAdded, but render instruction is empty.
If then, we don't swap the presented buffer. So latest rendered scene
don't cleared.
To fix this issue, let we acquire next frame if previous scene had some render
instructions to scene, but not now.
Also (for gles case) if we call eglSetDamageRegionKHR, we should call eglSwapBuffer.
If not, 0x3002 error occured.
Change-Id: Icf55be6fe92ab98def0e631b0205939c16a8f4e6
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Eunki Hong [Tue, 8 Apr 2025 04:54:36 +0000 (04:54 +0000)]
Merge "Let we allow to throw exception at LRUCacheContainer::InternalReserve" into devel/master
Eunki, Hong [Tue, 8 Apr 2025 02:03:21 +0000 (11:03 +0900)]
Check key is null for UngrabKeyList
We check key is null or not at GrabKeyList API.
Let's follow the logic pairwise.
Change-Id: I5d4b8a5d92dfe9d1c5a3d9b61a418d243209c0c6
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Eunki, Hong [Fri, 28 Mar 2025 06:56:22 +0000 (15:56 +0900)]
(Vulkan) Make we get UniformBlock's type_name for vulkan
Until now, due to some unknown reason, the name of uniform block didn't loaded well.
To fix this issue, let vulkan-reflection use type_name instead of it's name.
Change-Id: Iefc677abaa1832ed579797a3b2e69691151f6408
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Richard Huang [Mon, 7 Apr 2025 14:57:18 +0000 (15:57 +0100)]
Reduce memory consumption by tweaking VMA preferred heap block size
Change-Id: I53d21b0e758de494b9eb9f1c97951bda945e59d0
David Steele [Mon, 7 Apr 2025 10:38:43 +0000 (11:38 +0100)]
DALi Version 2.4.13
Change-Id: I3bd709990da9dd42903a4f5e1413f438e858f61e
Eunki, Hong [Mon, 7 Apr 2025 01:12:11 +0000 (10:12 +0900)]
Let we allow to throw exception at LRUCacheContainer::InternalReserve
Coverity said std::vector constructor can throw exception.
We don't need to control those exception cases detail but,
let we just avoid useless exception check for it.
Change-Id: I1adec4c01849b4800ba8227b63e6e70cbbc1ffa3
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Eunki, Hong [Fri, 28 Mar 2025 04:53:37 +0000 (13:53 +0900)]
(Vulkan) Vulkan setup documents for Ubuntu at README.md
Change-Id: I6fdbe2b44737dbf2bac0f935caba60dfe403d99d
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Richard Huang [Wed, 2 Apr 2025 10:44:23 +0000 (11:44 +0100)]
Revert the previous SVACE fix for VMA null termination issue
The previous fix is try to fix the SVACE error to ensure null
termination in VmaStringBuilder::Add by resizing the buffer
and appending '\0' after copying. It's noticed that VMA
statistics string is broken after this fix.
We realised that such fix is wrong, because the data is only
used as an input to the function VmaCreateStringCopy, which
takes explicit length and adds null terminator to the created
copy.
We should ignore this SVACE error, as advised by the author
of VMA:
https://github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator/pull/463
Change-Id: I5027a4ebe07a102c05a07108cc0108bcf1d73fc1
Adeel Kazmi [Fri, 28 Mar 2025 12:13:35 +0000 (12:13 +0000)]
Merge "DALi Version 2.4.12" into devel/master
Adeel Kazmi [Fri, 28 Mar 2025 11:46:58 +0000 (11:46 +0000)]
DALi Version 2.4.12
Change-Id: If2031bb3a6e791aae30925bd97f0ea568dd970c2
Hosang Kim [Mon, 24 Mar 2025 06:10:46 +0000 (15:10 +0900)]
Add appname and path to Dumptree
This reverts commit
e47f563929f6b85fb81b96091a87a746073316d4.
Change-Id: Idfd37fb4ca3dee896693ae9111435e677ae2d5b3
David Steele [Tue, 25 Mar 2025 14:53:08 +0000 (14:53 +0000)]
Inverted samplers/bound textures in descriptor binding
Change-Id: I1c3d57b0a79d11d6118271ba38b1d5948b1dafe3
Eunki Hong [Tue, 25 Mar 2025 07:37:15 +0000 (07:37 +0000)]
Merge "Skip rendering if renderer never been added" into devel/master
Chihun Jeong [Tue, 25 Mar 2025 06:46:44 +0000 (06:46 +0000)]
Merge "Fix Svace issue about font variations." into devel/master
ANZ1217 [Tue, 25 Mar 2025 02:10:13 +0000 (11:10 +0900)]
Fix Svace issue about font variations.
Change-Id: Ib022243ffd5d8d56e062ab0e1e58e65580f25f5d
Eunki, Hong [Mon, 24 Mar 2025 04:42:27 +0000 (13:42 +0900)]
Skip rendering if renderer never been added
Change-Id: Ia499b8b8f040503be1f47f913bb4910916f4a8fd
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Eunki Hong [Tue, 25 Mar 2025 01:22:51 +0000 (01:22 +0000)]
Merge "Consume exception during DBusServer destruct" into devel/master
David Steele [Mon, 24 Mar 2025 15:02:13 +0000 (15:02 +0000)]
Merge changes I549d2fd5,I5348dcc1,Ic3fb46fa,I05c8b768,I8e0b2555 into devel/master
* changes:
Ensure that RenderScene actually renders something.
Fixing swapchain buffer count and cmd buffer allocs
Reworking pre-render/post-render
Debug extra
Ensure empty render instruction doesn't swap buffers
Bowon Ryu [Mon, 24 Mar 2025 11:11:22 +0000 (11:11 +0000)]
Merge "Add Font variations to font client" into devel/master
Eunki, Hong [Mon, 24 Mar 2025 06:16:40 +0000 (15:16 +0900)]
Consume exception during DBusServer destruct
Change-Id: Ifd513a2f38975268b33611ebcfe0923e943084ed
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
David Steele [Fri, 21 Mar 2025 17:02:08 +0000 (17:02 +0000)]
Ensure that RenderScene actually renders something.
RenderScene should only get called if there is something to
present and nothing prevents a renderer being drawn.
The only early-out that's allowed now is null scene handle.
ClearScene will only get called if RenderScene did not present
when we expected it to have actually drawn something.
If there are no renderers, but we set the background color of
the window; currently, FullSwapNextFrame is set. If this is not
desired behaviour, it should be changed in
SceneHolder::SetBackgroundColor.
Change-Id: I549d2fd5a25f6a182d89c8c2cc5abfaa07f985c6
Signed-off-by: David Steele <david.steele@samsung.com>
David Steele [Thu, 20 Mar 2025 19:32:59 +0000 (19:32 +0000)]
Fixing swapchain buffer count and cmd buffer allocs
Number of swapchain buffers should be based on minImageCount
from surfaceCapabilities, rather than the current number of
images that getSwapchainImagesKHR returns.
Currently, it is possible for the swapchain to get invalidated,
and the new swapchain can be generated with more images than
min. We only need to sync the min number; so we double or triple
buffer based on this count.
(number of CommandBuffers / SwapchainBuffers is based on this min count,
not total image count)
Changed this to only reallocate command buffers in Reset(), rather than
breaking any outstanding sequence.
Change-Id: I5348dcc1762426e5370a35cd7f48d4612a3b5114
David Steele [Thu, 13 Mar 2025 17:22:45 +0000 (17:22 +0000)]
Reworking pre-render/post-render
Changed main render loop to check if there is a full-swap
without any rendering (usually caused by having no render-task
yet, but resizing or setting the background color of the window).
If so, we need to ensure that an empty scene can be correctly
rendered. Added a ClearScene to Core API.
This is more pertinent to Vulkan renderer, which has to ensure
that the window's render surface is properly acquired _before_
drawing to it, and presenting that surface needs the right
sync primitives.
Modified VulkanGraphicsController::PresentRenderTarget() to also call
Surface->PostRender(), in the same way that EglGraphicsController does.
(Prelude to other re-work for PartialRendering).
Change-Id: Ic3fb46faa17b3ec67053cfc4fbd48f6a31cc414c
David Steele [Tue, 11 Mar 2025 18:38:28 +0000 (18:38 +0000)]
Debug extra
Change-Id: I05c8b768acfdebfce8fa661ff69e6e13d6412a53
David Steele [Mon, 3 Mar 2025 19:00:01 +0000 (19:00 +0000)]
Ensure empty render instruction doesn't swap buffers
If we aren't going to draw anything to the surface, then
don't acquire next image or render anything.
SwapBuffers is handled through Swapchain::Present, which maintains
it's own framecount; The current buffer index is retrieved from the
main window's swapchain.
Updated VulkanGraphicsController::PresentRenderTarget to also call
WindowSurface::PostRender; this has a load of handling for partial
rendering that we may need in the future.
Will keep rendering framebuffers, regardless of whether they are drawn
or not.
Change-Id: I8e0b2555647e2ce74d425c9632246f19ea295470
David Steele [Fri, 21 Mar 2025 10:50:24 +0000 (10:50 +0000)]
Merge "DALi Version 2.4.11" into devel/master
Richard Huang [Fri, 21 Mar 2025 10:46:40 +0000 (10:46 +0000)]
DALi Version 2.4.11
Change-Id: Ic63a2f9489f166a4d2640f32a881da674223df6d
Eunki, Hong [Fri, 21 Mar 2025 06:15:03 +0000 (15:15 +0900)]
Fix UNSAFE DirectRendering flush EndRenderPass well
Since Context::ResetGLESState() reset current renderpass and render target info,
it might not worsk well for EndRenderPass stage.
Change-Id: If3223d784fa865565c457986acdfc1fdb40b92fb
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
ANZ1217 [Tue, 26 Nov 2024 09:37:31 +0000 (18:37 +0900)]
Add Font variations to font client
Change-Id: Ia48dc13f08135650f29fcb811b77e52ffddbd6c7
Eunki Hong [Thu, 20 Mar 2025 21:21:38 +0000 (21:21 +0000)]
Merge "Make move operation as noexcept" into devel/master
Eunki Hong [Thu, 20 Mar 2025 21:18:58 +0000 (21:18 +0000)]
Merge "Fix ISOLATE DirectRenderingGlView didn't show texture" into devel/master
Eunki, Hong [Thu, 20 Mar 2025 11:18:57 +0000 (20:18 +0900)]
Revert "Add appname and path to Dumptree"
This reverts commit
928399d10fbc0f1bc32248a6ab907f7b8a8ff9f8.
Change-Id: I3f395482ef9bdd09dfa45ad18473c31322c82713
Eunki, Hong [Thu, 20 Mar 2025 08:35:32 +0000 (17:35 +0900)]
Fix ISOLATE DirectRenderingGlView didn't show texture
We didn't use native renderer's context even we use ISOLATE mode.
It just breakdown normal dali pipeline codes and textures
Change-Id: I8d3c2f7e9f88a186a8f24c6beaccc4d1a42a21ed
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>