platform/core/uifw/dali-core.git
16 months ago[dali_2.2.34] Merge branch 'devel/master' 67/295467/1
David Steele [Fri, 7 Jul 2023 11:01:18 +0000 (12:01 +0100)]
[dali_2.2.34] Merge branch 'devel/master'

Change-Id: I72ad9aca219f670198a5ec76725daea23c31e203

16 months agoDALi Version 2.2.34 61/295461/1 dali_2.2.34
David Steele [Fri, 7 Jul 2023 11:00:49 +0000 (12:00 +0100)]
DALi Version 2.2.34

Change-Id: Ib6ffa4a2bd581fd64da525584da7379d6efda74b

16 months agoMerge "Updated FrameCallback to return value to specify whether we should keep render...
David Steele [Thu, 6 Jul 2023 16:18:58 +0000 (16:18 +0000)]
Merge "Updated FrameCallback to return value to specify whether we should keep rendering" into devel/master

16 months agoUpdated FrameCallback to return value to specify whether we should keep rendering 00/295400/3
Richard [Thu, 6 Jul 2023 09:39:37 +0000 (10:39 +0100)]
Updated FrameCallback to return value to specify whether we should keep rendering

Change-Id: If1e53ef0291074dcb53116cc05f2fd69dcc3da87

16 months agoFix ToolChain update issue 34/295234/4
seungho baek [Tue, 4 Jul 2023 05:17:20 +0000 (14:17 +0900)]
Fix ToolChain update issue

Change-Id: If1e6c7e549120703115c0577a17994592632b285
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
16 months agoMerge "Fix build error for toolchain upgrade" into devel/master
Heeyong Song [Tue, 4 Jul 2023 23:55:50 +0000 (23:55 +0000)]
Merge "Fix build error for toolchain upgrade" into devel/master

16 months agoAdd InterceptWheelEvent 32/295232/2
joogab.yun [Tue, 4 Jul 2023 05:08:46 +0000 (14:08 +0900)]
Add InterceptWheelEvent

The Wheel event calls the WheelEvent callback by going back from the last child actor to the parent via hitTest.
InterceptWheelEvent checks the wheel event in the parent first.
Returning false from InterceptWheelEvent allows child actors to receive WheelEvents.
If it returns true, the actor will receive a WheelEvent.

for example

  Actor parent = Actor::New();
  Actor actor = Actor::New();
  parent.Add(actor);
  actor.WheelEventSignal().Connect(&application, functor);
  parent.WheelEventSignal().Connect(&application, parentFunctor);

The callbacks are called in the order functor -> parentFunctor.

If you connect InterceptWheelSignal to parentActor.

  Dali::DevelActor::InterceptWheelSignal(parent).Connect(&application, interceptFunctor);

When interceptFunctor returns false, it is called in the same order functor -> parentFunctor.
If it returns true, it means that the WheelEvent was intercepted.
So the child actor will not be able to receive wheel events.
Only the parentFunctor is called.

Change-Id: I8ec2c70ca148565e6e899cedb9a997b2f851b0b8

16 months agoFix build error for toolchain upgrade 86/295086/1
Heeyong Song [Mon, 3 Jul 2023 01:13:00 +0000 (10:13 +0900)]
Fix build error for toolchain upgrade

Change-Id: Ib9640d9c7dbdf6bfdac6baf722a050a6d9deb873

16 months ago[dali_2.2.33] Merge branch 'devel/master' 57/295057/1
Adeel Kazmi [Fri, 30 Jun 2023 13:17:43 +0000 (14:17 +0100)]
[dali_2.2.33] Merge branch 'devel/master'

Change-Id: I1bc5afd395409ced14378b5fef942c4b981b5373

16 months agoDALi Version 2.2.33 51/295051/1 dali_2.2.33
Adeel Kazmi [Fri, 30 Jun 2023 13:16:43 +0000 (14:16 +0100)]
DALi Version 2.2.33

Change-Id: Iad5f75fd13582a729204189ff782d328cca8948f

16 months agoFix SVACE issue 99/294799/1
Heeyong Song [Tue, 27 Jun 2023 01:17:06 +0000 (10:17 +0900)]
Fix SVACE issue

Change-Id: I48683251f336e1f171c98296aaa03425f7ec227a

16 months agoRemoved repeated logic in UniformBufferManager 76/294776/1
David Steele [Mon, 26 Jun 2023 11:17:17 +0000 (12:17 +0100)]
Removed repeated logic in UniformBufferManager

Change-Id: I7f05429ba5ad390319e88de6a508f18cc3515467

16 months agoAdd SetPartialUpdateEnabled to Scene 34/294634/3
Heeyong Song [Thu, 22 Jun 2023 02:49:43 +0000 (11:49 +0900)]
Add SetPartialUpdateEnabled to Scene

Support enabling/disabling partial update at runtime

Change-Id: I7854d0f7ad0efb526da864456eb9b5672e1ef4d2

16 months agoMerge "Refactored Uniform Buffer support" into devel/master
Adeel Kazmi [Sat, 24 Jun 2023 14:02:41 +0000 (14:02 +0000)]
Merge "Refactored Uniform Buffer support" into devel/master

16 months agoRefactored Uniform Buffer support 58/290958/18
David Steele [Wed, 21 Jun 2023 12:07:41 +0000 (13:07 +0100)]
Refactored Uniform Buffer support

Uniform blocks in GLES3 shaders are now supported by GPU buffer.
Fixed up test harness to handle CPU buffers properly
Fixed up test cases with wrong buffer counts

Added method to get uniform block alignment from the
backend - this is slightly more complicated than it
needs to be, because of the Vulkan-like API we have.

Enhanced test harness to enable testing of UBOs.
Adding reflection & test cases for uniform blocks

Ensured that multi-pass of draw commands doesn't
generate multiple blocks.

Ensured GPU uniform buffers are double-buffered

Ensured size of CPU/GPU for offscreen vs onscreen
buffers is correct.

Added test cases to ensure that large enough buffers
are allocated, and that properties are written
into the relevant uniform block areas within the buffers.

Change-Id: Id551d56ecea228320af3896afef49790d5ceec6d

16 months ago[dali_2.2.32] Merge branch 'devel/master' 03/294703/1
Adam Bialogonski [Fri, 23 Jun 2023 10:04:03 +0000 (11:04 +0100)]
[dali_2.2.32] Merge branch 'devel/master'

Change-Id: Ib047b97804fcd2ddf18a65f0c335d9966c6e15c9

16 months agoDALi Version 2.2.32 97/294697/1 dali_2.2.32
Adam Bialogonski [Fri, 23 Jun 2023 10:03:02 +0000 (11:03 +0100)]
DALi Version 2.2.32

Change-Id: I936fc05badce1f4c855a51b4f68b064cce94989f

16 months agoMerge "Fix some keyframes devel api crash issue" into devel/master
Eunki Hong [Thu, 22 Jun 2023 10:18:13 +0000 (10:18 +0000)]
Merge "Fix some keyframes devel api crash issue" into devel/master

16 months agoMerge "(Partial Update) Fix animation delay issue" into devel/master
Heeyong Song [Thu, 22 Jun 2023 00:50:02 +0000 (00:50 +0000)]
Merge "(Partial Update) Fix animation delay issue" into devel/master

16 months agoMerge "Added lockless synchronization to VertexBufferUpdateCallback" into devel/master
Adeel Kazmi [Wed, 21 Jun 2023 11:27:08 +0000 (11:27 +0000)]
Merge "Added lockless synchronization to VertexBufferUpdateCallback" into devel/master

16 months ago(Partial Update) Fix animation delay issue 72/294572/1
Heeyong Song [Wed, 21 Jun 2023 08:49:07 +0000 (17:49 +0900)]
(Partial Update) Fix animation delay issue

Set updated flag when the animator is changed to the delayed state

Change-Id: I83bc23f19c7ca255f1c7e670c1afe306919b4e8c

16 months agoFix some keyframes devel api crash issue 35/294535/2
Eunki, Hong [Wed, 21 Jun 2023 03:27:49 +0000 (12:27 +0900)]
Fix some keyframes devel api crash issue

There was some nullptr error for some DevelKeyFrames API.

1. Let we allow to call GetKeyFrameCount even we never call Add.
2. Let we only change value if keyframe type is same as SetKeyFrameValue type.

Change-Id: I6a53648df3e19556c8462fbd4fd39340dc593373
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
16 months agoMerge "Calculate ScreenExtents and ScreenPosition only with event side properties...
Eunki Hong [Wed, 21 Jun 2023 01:10:21 +0000 (01:10 +0000)]
Merge "Calculate ScreenExtents and ScreenPosition only with event side properties." into devel/master

16 months agoAdded lockless synchronization to VertexBufferUpdateCallback 14/294514/2
Adam Bialogonski [Tue, 20 Jun 2023 11:23:55 +0000 (12:23 +0100)]
Added lockless synchronization to VertexBufferUpdateCallback

Change-Id: I3ae62318868840403b9619c02e5c98fbcd7c9766

17 months agoMerge "DALi Version 2.2.31" into devel/master
David Steele [Fri, 16 Jun 2023 14:27:24 +0000 (14:27 +0000)]
Merge "DALi Version 2.2.31" into devel/master

17 months ago[dali_2.2.31] Merge branch 'devel/master' 76/294376/1
Richard Huang [Fri, 16 Jun 2023 13:49:19 +0000 (14:49 +0100)]
[dali_2.2.31] Merge branch 'devel/master'

Change-Id: Iae315ca677ef6613839d9d951a2d8ec9518d1a73

17 months agoDALi Version 2.2.31 70/294370/1 dali_2.2.31
Richard Huang [Fri, 16 Jun 2023 13:48:20 +0000 (14:48 +0100)]
DALi Version 2.2.31

Change-Id: Ief9367f95d5267dabea7a7a2ebcaf1933d53efd1

17 months agoMerge "Change the naming of RenderPass to RenderPassTag for Shader and RenderTask...
Seungho BAEK [Fri, 16 Jun 2023 11:21:40 +0000 (11:21 +0000)]
Merge "Change the naming of RenderPass to RenderPassTag for Shader and RenderTask" into devel/master

17 months agoChange the naming of RenderPass to RenderPassTag for Shader and RenderTask 61/294361/2
seungho baek [Fri, 16 Jun 2023 09:05:49 +0000 (18:05 +0900)]
Change the naming of RenderPass to RenderPassTag for Shader and RenderTask

Change-Id: I7c4f7f24fdb7d13f202be317899e915e73f979cd
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
17 months agoRemove unsued member variable 07/294307/1
Heeyong Song [Fri, 16 Jun 2023 02:47:09 +0000 (11:47 +0900)]
Remove unsued member variable

Change-Id: If4125c2e39bd97890a470ea6b1a6056e70f835d2

17 months agoSupport multi pass shading with different shaders 11/294011/10
seungho baek [Fri, 9 Jun 2023 13:00:09 +0000 (22:00 +0900)]
Support multi pass shading with different shaders

Change-Id: I34ac0d2dd0d63b316816bfa58954c739e7460e55
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
17 months agoCalculate ScreenExtents and ScreenPosition only with event side properties. 39/292839/11
Eunki Hong [Mon, 15 May 2023 14:38:54 +0000 (23:38 +0900)]
Calculate ScreenExtents and ScreenPosition only with event side properties.

Let we seperate CalculateCurrentScreenExtents and CalculateScreenExtents.
Since ScreenPosition was used by update-side values, we cannot use
this values during Relayout.
Now, let we make devel api so user can get values only by event-thread
side properties.

Change-Id: I52ee19be1bea172743f97cfef7c03b57de8b5778
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
17 months agoMerge "Modify so that unnecessary hover events do not occur when the device is touch...
joogab yun [Wed, 14 Jun 2023 01:52:28 +0000 (01:52 +0000)]
Merge "Modify so that unnecessary hover events do not occur when the device is touch." into devel/master

17 months agoModify so that unnecessary hover events do not occur when the device is touch. 08/294108/3
joogab.yun [Tue, 13 Jun 2023 07:56:37 +0000 (16:56 +0900)]
Modify so that unnecessary hover events do not occur when the device is touch.

On touch down the MOTION -> STARTED event received at the same time.
In this case, unnecessary hoverEvent may be triggered by the MOTION event.
So, in case of touch device, it is ignored.

Change-Id: Idad7ba7e890c85180772f244b6ca42da2591ba85

17 months agoAdd DevelActor::Property::USE_TEXTURE_UPDATE_AREA 60/293460/5
Heeyong Song [Fri, 26 May 2023 09:31:44 +0000 (18:31 +0900)]
Add DevelActor::Property::USE_TEXTURE_UPDATE_AREA

Change-Id: I34a465ee79663c8a3a037639dfd24a566f8465d0

17 months agoUse Dali::KeyFrames during AnimateBetween 46/293946/3
Eunki, Hong [Fri, 9 Jun 2023 02:19:29 +0000 (11:19 +0900)]
Use Dali::KeyFrames during AnimateBetween

Since KeyFrames is already BaseHandle, we don't need to use
reference of BaseHandle. So let we make BaseHandle instead of
Internal::KeyFrames.

Change-Id: I32d79aa382dde45af07bb3ded376c37fcdbfe629
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
17 months ago[dali_2.2.30] Merge branch 'devel/master' 92/293992/1
David Steele [Fri, 9 Jun 2023 09:50:35 +0000 (10:50 +0100)]
[dali_2.2.30] Merge branch 'devel/master'

Change-Id: Ia687d2ae897272a5bbbeee4568b4f61c4822832d

17 months agoDALi Version 2.2.30 85/293985/1 dali_2.2.30
David Steele [Fri, 9 Jun 2023 09:50:06 +0000 (10:50 +0100)]
DALi Version 2.2.30

Change-Id: I1f5e65ef4a9291a8ec05f1a9a8550641f9663094

17 months agoReduce overhead of notification (like AnimationFinished, PropertyNotify) 44/290144/44
Eunki Hong [Mon, 20 Mar 2023 16:19:21 +0000 (01:19 +0900)]
Reduce overhead of notification (like AnimationFinished, PropertyNotify)

Previously, we check existed all animations are finished, and send signal.
We can reduce this kind of iteration.

Now, send specific scenegraph notify id, and send signal for this.
It will reduce NotificationManager::ProcessMessage running time on event side.

And, refactorize notifier-interface.
Previously, we use scene-graph object's pointer to check whether this object
is valid or not. But it has some logical problem when we destroy and create
continously.

Now we define NotifyId to specify the notify required item.
So we can expect SceneGraph items to excute notify process.

TODO : Make RenderTaskList also keep hashing... or just ignore this case

Change-Id: Ied35d018d1da854ef0e61343710230461d76c67a
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
17 months agoMerge "Check whether the scene-graph RenderTask object is valid" into devel/master
Heeyong Song [Mon, 5 Jun 2023 07:49:51 +0000 (07:49 +0000)]
Merge "Check whether the scene-graph RenderTask object is valid" into devel/master

17 months agoMerge changes I8d35c74c,I4785021d into devel/master
David Steele [Fri, 2 Jun 2023 17:18:18 +0000 (17:18 +0000)]
Merge changes I8d35c74c,I4785021d into devel/master

* changes:
  Test sync with adaptor
  Adding instance count and vertex range to Renderer

17 months ago[dali_2.2.29] Merge branch 'devel/master' 55/293755/1
Richard Huang [Fri, 2 Jun 2023 10:37:34 +0000 (11:37 +0100)]
[dali_2.2.29] Merge branch 'devel/master'

Change-Id: I656cf25a50b7d7d1a2ab302d84a39ce6ff1f30d2

17 months agoDALi Version 2.2.29 49/293749/1 dali_2.2.29
Richard Huang [Fri, 2 Jun 2023 10:36:46 +0000 (11:36 +0100)]
DALi Version 2.2.29

Change-Id: Icf79fcf84c805f8574cfd9a7e86007051bb815a3

17 months agoCheck whether the scene-graph RenderTask object is valid 71/293671/1
Heeyong Song [Fri, 2 Jun 2023 02:25:30 +0000 (11:25 +0900)]
Check whether the scene-graph RenderTask object is valid

Change-Id: I444479a472c76ca96c36db39f7e3b1eab4be84c3

17 months agoMake Ubuntu use MSAA level 4 as default 97/293597/1
Eunki, Hong [Wed, 31 May 2023 23:52:05 +0000 (08:52 +0900)]
Make Ubuntu use MSAA level 4 as default

Change-Id: I116b05deac366c47533d4e232d42ad3a1c06c785
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
17 months agoTest sync with adaptor 01/293201/6
David Steele [Mon, 22 May 2023 16:28:25 +0000 (17:28 +0100)]
Test sync with adaptor

Change-Id: I8d35c74c95c83f7b4f155fdfd02a4d1bc5df44c4

17 months agoAdding instance count and vertex range to Renderer 52/292052/8
David Steele [Wed, 26 Apr 2023 18:18:47 +0000 (19:18 +0100)]
Adding instance count and vertex range to Renderer

VertexRange devel properties map onto the index range properties,
we just use the same storage internally, and figure it out in
the render side.

InstanceCount is used to trigger instanced drawing (it no longer
happens automatically if divisor is set).

Change-Id: I4785021dee97ce9587f6e39bff2a2af8c41a3f16

17 months agoAdd KeepRendering method to Scene 81/293381/3
Heeyong Song [Thu, 25 May 2023 09:04:50 +0000 (18:04 +0900)]
Add KeepRendering method to Scene

Change-Id: I71e79a9a54e589f269f066cd93b13c57637b239c

17 months agoMerge "(Partial Update) Set updated when rendering behavior is continously" into...
Heeyong Song [Tue, 30 May 2023 01:08:01 +0000 (01:08 +0000)]
Merge "(Partial Update) Set updated when rendering behavior is continously" into devel/master

17 months ago[dali_2.2.28] Merge branch 'devel/master' 32/293432/1
Adeel Kazmi [Fri, 26 May 2023 11:40:22 +0000 (12:40 +0100)]
[dali_2.2.28] Merge branch 'devel/master'

Change-Id: Ideee90d491a980fce0b05ba5d7472ad801d86ef7

17 months agoDALi Version 2.2.28 26/293426/1 dali_2.2.28
Adeel Kazmi [Fri, 26 May 2023 11:39:34 +0000 (12:39 +0100)]
DALi Version 2.2.28

Change-Id: Ic78e04c08b7f42c7c42aeff2c61c9becd74615bb

17 months ago(Partial Update) Set updated when rendering behavior is continously 83/293283/2
Heeyong Song [Wed, 24 May 2023 01:08:49 +0000 (10:08 +0900)]
(Partial Update) Set updated when rendering behavior is continously

Change-Id: I3e7f8dc68b1eb27498662f0898dba31b4cf29dda

17 months agoAppendix log for ttrace + Print keycode and timestamp 82/293282/5
Eunki, Hong [Wed, 24 May 2023 00:32:05 +0000 (09:32 +0900)]
Appendix log for ttrace + Print keycode and timestamp

Since we need to know the state of key event and timestamp, let we print it
only if performance check state enabled

And also, we need to print the additional informations in same line.
(Since third-party performance profile tools requirements)

Change-Id: I9b1b176fcba76e5997b09136b2d634ad493dcf5f
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
17 months agoMerge "Fix a clipping mode bug" into devel/master
Heeyong Song [Mon, 22 May 2023 08:54:26 +0000 (08:54 +0000)]
Merge "Fix a clipping mode bug" into devel/master

17 months agoMerge "Fix error when RenderTask is not matched with consumed layer" into devel/master
Eunki Hong [Mon, 22 May 2023 06:06:42 +0000 (06:06 +0000)]
Merge "Fix error when RenderTask is not matched with consumed layer" into devel/master

17 months agoFix a clipping mode bug 88/293088/3
Heeyong Song [Fri, 19 May 2023 10:02:59 +0000 (19:02 +0900)]
Fix a clipping mode bug

Clipping had a bug when it is used with the DrawMode::OVERLAY_2D.
The node should be added to the overlayRenderables.

Change-Id: I2464ec54551927249cdf8d23ed4e6ebf2a79615f

17 months agoRemove forceProcess and forceUpdate flag 31/293031/2
Heeyong Song [Thu, 18 May 2023 08:30:03 +0000 (17:30 +0900)]
Remove forceProcess and forceUpdate flag

We don't need them now because we change to process events regardless of state

Change-Id: I0416a79c4fdbb8aa12b2be5cabeb3da525216a6c

17 months agoMerge "Add more description to VisibilityChangedSignal" into devel/master
Heeyong Song [Mon, 22 May 2023 00:06:38 +0000 (00:06 +0000)]
Merge "Add more description to VisibilityChangedSignal" into devel/master

17 months agoMerge "DALi Version 2.2.27" into devel/master
Adeel Kazmi [Fri, 19 May 2023 14:32:22 +0000 (14:32 +0000)]
Merge "DALi Version 2.2.27" into devel/master

17 months ago[dali_2.2.27] Merge branch 'devel/master' 01/293101/1
David Steele [Fri, 19 May 2023 14:26:56 +0000 (15:26 +0100)]
[dali_2.2.27] Merge branch 'devel/master'

Change-Id: I352cc666df45e63c450b1cd6c32dd57c9d90533e

17 months agoDALi Version 2.2.27 95/293095/1 dali_2.2.27
David Steele [Fri, 19 May 2023 14:26:28 +0000 (15:26 +0100)]
DALi Version 2.2.27

Change-Id: Ie9269813ce00abe0880fbbbcc17c3f338d614af0

17 months agoFix error when RenderTask is not matched with consumed layer 73/293073/2
Eunki, Hong [Fri, 19 May 2023 06:35:09 +0000 (15:35 +0900)]
Fix error when RenderTask is not matched with consumed layer

Change-Id: I6f3dfefdbf04025c1dfd87f5a9945ba392663fe7
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
17 months agoDecrease Render::Renderer index map if detached 48/293048/6
Eunki Hong [Thu, 18 May 2023 15:59:33 +0000 (00:59 +0900)]
Decrease Render::Renderer index map if detached

Render::Renderer keep all nodes uniform index map per each nodes.
Since there was no signal to remove that renderer detached from node,
that uniform index map might increase long times.

To avoid that kind of memory leak, let we send messages
whenever renderer is detached from node.

Change-Id: I0fcbeb34fe90e8d4b502e06dce645e37360b66ad
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
18 months agoAdd more description to VisibilityChangedSignal 41/292941/2
Heeyong Song [Wed, 17 May 2023 08:53:11 +0000 (17:53 +0900)]
Add more description to VisibilityChangedSignal

Change-Id: I8b767955abefa26723c97be1fbaf1caecf31ada5

18 months agoMerge "Add extra padding for decorated visual renderer" into devel/master
Eunki Hong [Thu, 18 May 2023 05:07:27 +0000 (05:07 +0000)]
Merge "Add extra padding for decorated visual renderer" into devel/master

18 months agobug fixed mMinimumTouchEventsAfterStart to mMinimumTouchEvents 00/293000/1
joogab.yun [Thu, 18 May 2023 02:23:04 +0000 (11:23 +0900)]
bug fixed mMinimumTouchEventsAfterStart to mMinimumTouchEvents

Change-Id: I62e4d181e8bf847e57b84757f2ec3083c4c4061d

18 months agoAdd extra padding for decorated visual renderer 98/292998/1
Eunki, Hong [Thu, 18 May 2023 01:37:47 +0000 (10:37 +0900)]
Add extra padding for decorated visual renderer

Since we did some anti-alias in shader area,
we need to extent update area for that anti-alias rendering

Change-Id: I8bb61b64d9f06e02ddef6d8f4809bbd53819444a
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
18 months agoMerge "Fix pipeline hash" into devel/master
Eunki Hong [Sat, 13 May 2023 02:33:42 +0000 (02:33 +0000)]
Merge "Fix pipeline hash" into devel/master

18 months agoAdded VertexBufferUpdateCallback 61/290561/8
Adam Bialogonski [Tue, 28 Mar 2023 20:52:18 +0000 (21:52 +0100)]
Added VertexBufferUpdateCallback

Added the callback invoked when the vertex buffer needs to be updated.
The callback passes pointer and maximum size that should be written.

The callback returns number of valid elements to draw.

In case there are more than 1 vertex buffers attached, the render geometry iterates and looks for lowest number of elements to render (so we won't go out of boundaries of any of attached buffers).

The update of VertexBuffer through the callback takes place on the update/render thread and it's up to the user to ensure explicit synchronization. Event side DALi objects must not be accessed (most likely, that will fail) so alternative way of
passing data should be added by developers.

Change-Id: I4db7812cf6d6579c8cd05bcc5c25d966f6ae1aad

18 months agoAdded GpuBuffer::WritePolicy 81/290281/10
Adam Bialogonski [Thu, 20 Apr 2023 10:31:36 +0000 (11:31 +0100)]
Added GpuBuffer::WritePolicy

The write policy tells the GpuBuffer what to do with the Graphics::Buffer object
during updating buffer content. It's possible to:

- RETAIN the content
- DISCARD the content

Both options have performance implications. Retaining the content may cause blocking the access to the buffer by the GPU driver in case the buffer is currently in use by the GPU. Frequent buffer updates may cause a massive performance hit. This policy allows writing a partial updates into the buffer.

Discarding the content means orphaning an underlying memory and allocating new buffer storage so it can be accessed immediately while GPU may be finishing work with the old content. The downside of it is no partial updates are possible. Area of buffer which isn't updated stays undefined. This policy is made for frequent updates (every frame).

Change-Id: Ic0e80d7b23208a455129c16fb3e23a4020791b50

18 months agoMerge "Fix invalidated PipelineCacheL2 pointer problem" into devel/master
Eunki Hong [Fri, 12 May 2023 10:50:46 +0000 (10:50 +0000)]
Merge "Fix invalidated PipelineCacheL2 pointer problem" into devel/master

18 months ago[dali_2.2.26] Merge branch 'devel/master' 64/292764/1
Richard Huang [Fri, 12 May 2023 09:48:21 +0000 (10:48 +0100)]
[dali_2.2.26] Merge branch 'devel/master'

Change-Id: I86910c6e8e473c0249882f317032bb639bb5f87a

18 months agoDALi Version 2.2.26 58/292758/1 dali_2.2.26
Richard Huang [Fri, 12 May 2023 09:47:33 +0000 (10:47 +0100)]
DALi Version 2.2.26

Change-Id: Ic6839a0e903864c58cc8a9489f8533304a997652

18 months agoFix pipeline hash 81/292481/3
Heeyong Song [Tue, 9 May 2023 01:03:33 +0000 (10:03 +0900)]
Fix pipeline hash

The hash of L0 cache needs to check information that L0 cache has

Change-Id: I17f3cb44b35965e547a3bfc09435afec705e543b

18 months agoFix invalidated PipelineCacheL2 pointer problem 32/292732/6
Eunki, Hong [Fri, 12 May 2023 04:15:13 +0000 (13:15 +0900)]
Fix invalidated PipelineCacheL2 pointer problem

Let we keep std::list<PipelineCacheL2>::iterator instead of PipelineCacheL2*.

So, the pointer of pipeline what render-renderer has should be valid even
if cache container size changed.

And also, for safe issue, let we keep the pipeline container as std::list.

Change-Id: I5a0572f040ff3304876bdb2483af85ff26fbccbb
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
18 months agoMerge "Fix culling issue with scale" into devel/master
Seungho BAEK [Thu, 11 May 2023 06:29:59 +0000 (06:29 +0000)]
Merge "Fix culling issue with scale" into devel/master

18 months agoFix culling issue with scale 53/292653/3
seungho baek [Thu, 11 May 2023 01:07:41 +0000 (10:07 +0900)]
Fix culling issue with scale

Change-Id: Ibd07450e6fdd39d15cd5e90b8c8c0994cde3d589
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
18 months agoSupport Animation Blend for AnimateBetween 46/292046/14
seungho baek [Wed, 26 Apr 2023 13:01:15 +0000 (22:01 +0900)]
Support Animation Blend for AnimateBetween

Change-Id: Ifa53a54742239d8c2913499de2e29757bf8e9f72
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
18 months agoMerge "Reduce Bezier Curve AlphaFunction's tolerance" into devel/master
Eunki Hong [Wed, 10 May 2023 02:51:12 +0000 (02:51 +0000)]
Merge "Reduce Bezier Curve AlphaFunction's tolerance" into devel/master

18 months agoMerge "Remove old pipeline caches" into devel/master
Heeyong Song [Wed, 10 May 2023 01:15:56 +0000 (01:15 +0000)]
Merge "Remove old pipeline caches" into devel/master

18 months agoReduce Bezier Curve AlphaFunction's tolerance 43/292543/1
Eunki, Hong [Wed, 10 May 2023 00:07:31 +0000 (09:07 +0900)]
Reduce Bezier Curve AlphaFunction's tolerance

Previously, we use the tolerance of T value as 0.001f.
That mean, In 4K system, the error range of result can be ~2 pixels.

Let we squeeze the tolerance so reduce the numeric error.

Change-Id: I7d08de0bce8f2bac3441cb8a0bd4e5b55a31b989
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
18 months agoAdd Touch source type for gesture 03/292503/1
joogab.yun [Tue, 9 May 2023 06:37:02 +0000 (15:37 +0900)]
Add Touch source type for gesture

Change-Id: Ib3782eb3e7125e045b469b314641de4cec7901c6

18 months agoRemove old pipeline caches 55/292455/1
Heeyong Song [Mon, 8 May 2023 05:59:15 +0000 (14:59 +0900)]
Remove old pipeline caches

Change-Id: I17290e72f05cecedfce82dc665217c38a99a8470

18 months ago[dali_2.2.25] Merge branch 'devel/master' 00/292400/1
Adam Bialogonski [Fri, 5 May 2023 10:21:14 +0000 (11:21 +0100)]
[dali_2.2.25] Merge branch 'devel/master'

Change-Id: I2b9cc959f72384dbf5e89e86746a50115f62aaf0

18 months agoDALi Version 2.2.25 94/292394/1 dali_2.2.25
Adam Bialogonski [Fri, 5 May 2023 10:20:25 +0000 (11:20 +0100)]
DALi Version 2.2.25

Change-Id: I7eba404c528d7f70ee2ddc6e4107320bad6f334b

18 months agoMerge "Set KeyFrame's frame value" into devel/master
Eunki Hong [Tue, 2 May 2023 08:03:38 +0000 (08:03 +0000)]
Merge "Set KeyFrame's frame value" into devel/master

18 months ago[dali_2.2.24] Merge branch 'devel/master' 85/292185/1
Richard Huang [Fri, 28 Apr 2023 10:08:43 +0000 (11:08 +0100)]
[dali_2.2.24] Merge branch 'devel/master'

Change-Id: I7a5eb731dbc573831a97dd6e89d8b5063796022c

18 months agoDALi Version 2.2.24 79/292179/1 dali_2.2.24
Richard Huang [Fri, 28 Apr 2023 10:07:55 +0000 (11:07 +0100)]
DALi Version 2.2.24

Change-Id: Id9259813c74a3d5654b2cf34cb37710f9739f150

18 months agoSet KeyFrame's frame value 66/292066/2
Eunki, Hong [Thu, 27 Apr 2023 02:37:18 +0000 (11:37 +0900)]
Set KeyFrame's frame value

Let we make the API to change the value of specific KeyFrame data

Change-Id: Iecd9cb3b9118083dfa6d4ab812bf31dac4e1d38a
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
18 months agoAdd SetTapRecognizerTime 71/291871/9
joogab.yun [Mon, 24 Apr 2023 09:13:38 +0000 (18:13 +0900)]
Add SetTapRecognizerTime

This is the time from touch down to touch up to recognize a tap gesture.

If set to 300ms, a touch up after a touch down must occur within 300ms to be recognized as a tap gesture.

Change-Id: I1b7be723938a32f4009232553671bda17503c782

18 months agoMerge "Added element_count for sampler uniform arrays." into devel/master
David Steele [Fri, 21 Apr 2023 09:18:23 +0000 (09:18 +0000)]
Merge "Added element_count for sampler uniform arrays." into devel/master

18 months ago[dali_2.2.23] Merge branch 'devel/master' 18/291718/1
Adeel Kazmi [Thu, 20 Apr 2023 13:08:49 +0000 (14:08 +0100)]
[dali_2.2.23] Merge branch 'devel/master'

Change-Id: If161365ae264db95d2d3e042fe9a7cf5cacffaae

18 months agoDALi Version 2.2.23 12/291712/1 dali_2.2.23
Adeel Kazmi [Thu, 20 Apr 2023 13:08:00 +0000 (14:08 +0100)]
DALi Version 2.2.23

Change-Id: I59908a09c58024c9869a183e25deb3f7b59c44df

18 months agoAdded element_count for sampler uniform arrays. 39/291639/2
David Steele [Wed, 19 Apr 2023 16:22:19 +0000 (17:22 +0100)]
Added element_count for sampler uniform arrays.

Graphics interface didn't differentiate between non-array uniforms
and uniform array elements. Added element_count to show that.

(Used mainly in graphics backend implementation).

Change-Id: I7f3d9eead85dc029e93337c88bb38de1ce3e2fa5

18 months agoMerge "Add Post Constraint that works after transform" into devel/master
David Steele [Wed, 19 Apr 2023 13:00:39 +0000 (13:00 +0000)]
Merge "Add Post Constraint that works after transform" into devel/master

18 months agoAdd Post Constraint that works after transform 74/291574/6
seungho baek [Tue, 18 Apr 2023 11:05:14 +0000 (20:05 +0900)]
Add Post Constraint that works after transform

Change-Id: I90a7b2d731623691915ed5c01500ac6928d25112
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
18 months agoVertexBuffer instancing 55/291355/5
David Steele [Thu, 13 Apr 2023 19:02:27 +0000 (20:02 +0100)]
VertexBuffer instancing

Added a SetDivisor() API to Vertex buffer.
This will enable instancing on that buffer - when this is
drawn, it will use DrawArraysInstanced or DrawElementsInstanced,
with all the attributes in this vertex buffer having the same
input rate.

Currently, only an input rate of 1 is supported - this will be changed
in a future patch.

Requires an update to dali-adaptor too.

Change-Id: I5c7461cc3e2cb72c6257d3093afa95116a6dc6c1

19 months agoVertexBuffer can now be created from Property::Map by initializer list 53/290953/4
David Steele [Wed, 5 Apr 2023 11:00:21 +0000 (12:00 +0100)]
VertexBuffer can now be created from Property::Map by initializer list

VertexBuffer constructor takes a vertex format as it's argument, which
is a PropertyMap of key value pairs. Previously, it assumes that the
value is a property type enumeration cast to an INTEGER type.

However, if the Property::Map is instantiated using initializer lists,
e.g.

  Property::Map format { {"aPosition", Property::VECTOR2},
                         {"aColor", Property::VECTOR4}};
  VertexBuffer vertexBuffer(format);

then the enum is promoted to a Property::Value of that type, so the
vertex buffer doesn't see INTEGER type and asserts.

Modified the VertexBuffer constructor to utilize the value type
if it's not an INTEGER.

Change-Id: I85bc1d08603c31726eb06d786f44f0ca27a62ce9
Signed-off-by: David Steele <david.steele@samsung.com>
19 months ago[dali_2.2.22] Merge branch 'devel/master' 02/291402/1
Adam Bialogonski [Fri, 14 Apr 2023 09:26:03 +0000 (10:26 +0100)]
[dali_2.2.22] Merge branch 'devel/master'

Change-Id: Id2c92bb731464d141bcb5dab62c9f232217fb1dc

19 months agoDALi Version 2.2.22 96/291396/1 dali_2.2.22
Adam Bialogonski [Fri, 14 Apr 2023 09:25:04 +0000 (10:25 +0100)]
DALi Version 2.2.22

Change-Id: I88d096d7ebf9c28448f670ed869b1eab5e484e72