platform/core/uifw/dali-core.git
10 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

10 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>
10 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

11 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

11 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

11 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

11 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>
11 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

11 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

11 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

11 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

11 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

11 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

11 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>
11 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

11 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

11 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

11 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

11 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

11 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

11 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

11 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>
11 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>
11 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

11 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

11 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

11 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>
11 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

11 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

11 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

11 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

11 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

11 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

11 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>
11 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

11 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>
11 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>
11 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

11 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

11 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>
11 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

11 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

11 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

12 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

12 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

12 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>
12 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

12 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

12 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

12 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

12 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

12 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>
12 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

12 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>
12 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

12 months agoAdd some performace trace logs 21/291221/1
Heeyong Song [Wed, 12 Apr 2023 05:18:50 +0000 (14:18 +0900)]
Add some performace trace logs

Change-Id: Ib99c88e4420d0c6bc200de4c65f75e2294f30a36

12 months agoCheck validation of texture when we send Updated 73/291173/1
Eunki, Hong [Tue, 11 Apr 2023 06:06:53 +0000 (15:06 +0900)]
Check validation of texture when we send Updated

Change-Id: I743ea27f57e5c3c524171b8379293cb0dde3cb49
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
12 months agoDALi Version 2.2.21 29/291029/1 dali_2.2.21
David Steele [Thu, 6 Apr 2023 13:47:40 +0000 (14:47 +0100)]
DALi Version 2.2.21

Change-Id: I0926ca205247155a1d87f72e3d5fadc501618311

12 months agoMerge "LookAt API for actor" into devel/master
Eunki Hong [Wed, 5 Apr 2023 05:50:17 +0000 (05:50 +0000)]
Merge "LookAt API for actor" into devel/master

12 months agoAdd trace log for touch, wheel and gesture 09/290909/2
joogab.yun [Wed, 5 Apr 2023 02:20:53 +0000 (11:20 +0900)]
Add trace log for touch, wheel and gesture

Change-Id: Iaf3a78103d123d4c81a9668497663cc14947ed44

12 months agoLookAt API for actor 32/290532/7
Eunki, Hong [Tue, 28 Mar 2023 08:04:39 +0000 (17:04 +0900)]
LookAt API for actor

Make LookAt API for common Actor.
Note, this isn't follow target position. Just calculate Quaternion
and apply instancely.

Change-Id: I0fb107f954034fb5aa410cc607122b4e61988e9b
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
13 months agoMinor code cleans for render task 83/290683/3
Eunki Hong [Thu, 30 Mar 2023 16:59:07 +0000 (01:59 +0900)]
Minor code cleans for render task

1. Ensure the overlayTask removal
2. Now SceneGraph::Camera is node. We can reduce useless duplicated codes.
3. mActive false if object destroyed when scene on

Change-Id: I392acf79a22b5a1b68f382126e751575914529e8
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
13 months agoMerge "DALi Version 2.2.20" into devel/master
Adeel Kazmi [Fri, 31 Mar 2023 13:02:42 +0000 (13:02 +0000)]
Merge "DALi Version 2.2.20" into devel/master

13 months agoDALi Version 2.2.20 32/290732/1 dali_2.2.20
Adam Bialogonski [Fri, 31 Mar 2023 09:19:25 +0000 (10:19 +0100)]
DALi Version 2.2.20

Change-Id: I80512f4cd985e2724d13f6728a2f4550f076d4ab

13 months agoMerge "The hover event now starts in the STARTED state when a new actor is encountere...
joogab yun [Fri, 31 Mar 2023 07:01:18 +0000 (07:01 +0000)]
Merge "The hover event now starts in the STARTED state when a new actor is encountered." into devel/master

13 months agoThe hover event now starts in the STARTED state when a new actor is encountered. 86/290486/16
joogab.yun [Mon, 27 Mar 2023 09:56:08 +0000 (18:56 +0900)]
The hover event now starts in the STARTED state when a new actor is encountered.

When hover event is registered, only motion comes. You can't know that the hover has started on that actor.
So, when the hover starts on the new actor, set it to STARTED state.

Change-Id: If25595536bce2279529847056ed962c515632165

13 months agoAdd missing noexcept tag 80/290680/1
Eunki, Hong [Thu, 30 Mar 2023 13:31:41 +0000 (22:31 +0900)]
Add missing noexcept tag

Make Dali::Vector also make as noexcept. Now we can use
std::vector use move operator for Dali::Vector.

Change-Id: Ic60897ba0b7c6ca7c60377bfc254e207333c8069
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
13 months agoMove visual renderer updateArea calculation code 18/290518/1
Eunki, Hong [Tue, 28 Mar 2023 04:02:18 +0000 (13:02 +0900)]
Move visual renderer updateArea calculation code

scene-graph-renderer.cpp already have a lots of jobs to do.
To reduce complexity of code readability, move calculation ownership
into AnimatableVisualProoperties

+

Make UpdateArea calculate more exact size

Change-Id: I5814f45ad457e5c10caae307e647b49d306ea0d9
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
13 months agoFix svace issue (initialize render task list membervalue) 11/290511/1
Eunki, Hong [Tue, 28 Mar 2023 01:55:53 +0000 (10:55 +0900)]
Fix svace issue (initialize render task list membervalue)

Change-Id: I42efa0ad0ddad615fb6a963473b445442c61e885
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
13 months agoMerge "Add initialize resetter to reduce AnimatableProperty life" into devel/master
David Steele [Mon, 27 Mar 2023 14:42:01 +0000 (14:42 +0000)]
Merge "Add initialize resetter to reduce AnimatableProperty life" into devel/master

13 months agoMark as do not skip rendering if SceneGraphRenderer dirty 57/290457/3
Eunki Hong [Sun, 26 Mar 2023 07:08:30 +0000 (16:08 +0900)]
Mark as do not skip rendering if SceneGraphRenderer dirty

Previously, when we change textureset into renderer,
RenderTaskProcessor didn't process, and mark as "SkipRendering".

To avoid this bug, mark rendererUpdated if mDirtyFlag true,
so let we make mImpl->renderingRequired as true.

Change-Id: Ibace1fbddb7ba46f3cefca6d3e475ce34d414123
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
13 months agoMerge "Add updated texture list to RenderManager" into devel/master
Heeyong Song [Mon, 27 Mar 2023 00:20:29 +0000 (00:20 +0000)]
Merge "Add updated texture list to RenderManager" into devel/master

13 months agoMerge "DALi Version 2.2.19" into devel/master
David Steele [Fri, 24 Mar 2023 11:27:17 +0000 (11:27 +0000)]
Merge "DALi Version 2.2.19" into devel/master

13 months agoDALi Version 2.2.19 27/290427/1 dali_2.2.19
Adeel Kazmi [Fri, 24 Mar 2023 10:54:18 +0000 (10:54 +0000)]
DALi Version 2.2.19

Change-Id: I911589996cbf0911bceff903ad7aaa42d5d59dba

13 months agoAdd updated texture list to RenderManager 09/289909/3
Heeyong Song [Wed, 15 Mar 2023 09:00:54 +0000 (18:00 +0900)]
Add updated texture list to RenderManager

Then we don't need to iterate all textures in PostRender

Change-Id: I4dbe227941505da4d1f38c4a7745f090797f86f1

13 months agoAdd some more noexcept tag (devel-api, internal) 27/289927/3
Eunki Hong [Wed, 15 Mar 2023 16:50:30 +0000 (01:50 +0900)]
Add some more noexcept tag (devel-api, internal)

Change-Id: I01b0fc6080da4aa91dc3dd50fc2650ab7f18d45d
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
13 months agoAdd initialize resetter to reduce AnimatableProperty life 90/289690/13
Eunki, Hong [Mon, 13 Mar 2023 12:41:11 +0000 (21:41 +0900)]
Add initialize resetter to reduce AnimatableProperty life

To ensure each PropertyOwner's animatable properties lifecycle,
send BakeResetter message when they are created.

And also, to reduce the number of resetter, make RendererResetter.
Now we can control all VisualRenderer properties by single resetter.

Change-Id: I36b97c90bb5a843803e7bfa2441d90a7aee4cb28
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
13 months agoMerge "Make sure that global variables are initialized lazily." into devel/master
David Steele [Wed, 22 Mar 2023 15:22:00 +0000 (15:22 +0000)]
Merge "Make sure that global variables are initialized lazily." into devel/master

13 months agoMake sure that global variables are initialized lazily. 56/290156/1
huayong.xu [Tue, 21 Mar 2023 03:11:43 +0000 (11:11 +0800)]
Make sure that global variables are initialized lazily.

Change-Id: Ieaa1becb79f59ef6ec9109d3d6d09fd1c38efad1

13 months agoSend PixelData instead of raw buffer 76/290076/7
Eunki, Hong [Mon, 20 Mar 2023 05:11:50 +0000 (14:11 +0900)]
Send PixelData instead of raw buffer

Since we cannot control the Flush timming of texture,
just send referenced PixelData object and
control it's lifecycle at GraphicsController side.

+

We don't need to release PixelData as public.
Make it as integration-api area.

Change-Id: Icc9589d2c412f0cac7b5a632fbaaa1146dbd6d78
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
13 months agoMerge "DALi Version 2.2.18" into devel/master
Adeel Kazmi [Fri, 17 Mar 2023 12:49:22 +0000 (12:49 +0000)]
Merge "DALi Version 2.2.18" into devel/master

13 months agoDALi Version 2.2.18 37/290037/1 dali_2.2.18
David Steele [Fri, 17 Mar 2023 12:43:26 +0000 (12:43 +0000)]
DALi Version 2.2.18

Change-Id: Ie9e24ca49e79833eed833c9ce0ba803051a1fe76

13 months agoMerge "Fix a heap-buffer-overflow issue." into devel/master
dongsug song [Fri, 17 Mar 2023 05:35:01 +0000 (05:35 +0000)]
Merge "Fix a heap-buffer-overflow issue." into devel/master

13 months agoMerge "Add BuildPickingRay to devel api" into devel/master
David Steele [Thu, 16 Mar 2023 17:47:29 +0000 (17:47 +0000)]
Merge "Add BuildPickingRay to devel api" into devel/master

13 months agoMerge "Remove uniform hash" into devel/master
Heeyong Song [Wed, 15 Mar 2023 00:37:16 +0000 (00:37 +0000)]
Merge "Remove uniform hash" into devel/master

13 months agoMerge "Reuse latest pipeline if possible" into devel/master
Eunki Hong [Tue, 14 Mar 2023 16:08:48 +0000 (16:08 +0000)]
Merge "Reuse latest pipeline if possible" into devel/master

13 months agoReuse latest pipeline if possible 71/289371/9
Eunki Hong [Mon, 6 Mar 2023 18:54:48 +0000 (03:54 +0900)]
Reuse latest pipeline if possible

Search pipeline cache is quite heay operation.
So if we can re-use pipeline, It will be helpful
if we use equal shader continously.

It will give power for 3D layer who did depth test, so
rendering order is determined by shader, texture and geometry.

Change-Id: I3bf9abab125b6adebad5ecc6bb04463d7e3db972
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
13 months agoMake relayout temperal vector as member. 50/289750/2
Eunki, Hong [Tue, 14 Mar 2023 06:37:38 +0000 (15:37 +0900)]
Make relayout temperal vector as member.

To avoid multiple times of size reversing,
Let we just keep static vector in relayout controller member value.

RequestRelayout API called very frequency. So it can reduce update time minor

Change-Id: Ifea9029831eb7e9fb63ea94fbe051cc39ffcbc00
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
13 months agoRemove uniform hash 37/289537/4
Heeyong Song [Thu, 9 Mar 2023 08:27:27 +0000 (17:27 +0900)]
Remove uniform hash

Use BakerResetter instead of hash

Change-Id: I48cf6b8b4446c3e66e8329bfb1a90d2ab1052fbd

13 months agoFix a heap-buffer-overflow issue. 26/289326/5
huayong.xu [Tue, 14 Mar 2023 06:06:54 +0000 (14:06 +0800)]
Fix a heap-buffer-overflow issue.

Change-Id: I1699b29fcf2b0b5badc8a8e5eebc745527683b78

13 months agoCalculate VisualRenderer coefficient only if updated. 02/289702/3
Eunki Hong [Mon, 13 Mar 2023 17:41:06 +0000 (02:41 +0900)]
Calculate VisualRenderer coefficient only if updated.

Calculate UpdateArea need to be calculated for each RenderItems.

Since we were check the each properties changeness by Hash function,
The PreRender time was increased.

This patch make we change the coefficient only if the
AnimatableProperty was changed.

Change-Id: I9d86ab21de9f361cac652314b328d0ba5c6ab3d5
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
13 months agoMerge "Ensure BaseHandle class move noexcept (core public-api)" into devel/master
Eunki Hong [Mon, 13 Mar 2023 16:16:37 +0000 (16:16 +0000)]
Merge "Ensure BaseHandle class move noexcept (core public-api)" into devel/master

13 months agoDALi Version 2.2.17 17/289617/1 dali_2.2.17
Adeel Kazmi [Fri, 10 Mar 2023 10:29:29 +0000 (10:29 +0000)]
DALi Version 2.2.17

Change-Id: I45e1c2db3e4d997f4d9922a74d186fdb90eb2fe3

13 months agoEnsure BaseHandle class move noexcept (core public-api) 62/289562/1
Eunki Hong [Thu, 9 Mar 2023 17:13:37 +0000 (02:13 +0900)]
Ensure BaseHandle class move noexcept (core public-api)

Change-Id: I3fab491948f51ffcc2905c3340452d585d23553a
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
13 months agoGet world scale more faster 38/289438/2
Eunki, Hong [Tue, 7 Mar 2023 18:53:10 +0000 (03:53 +0900)]
Get world scale more faster

Change-Id: Ifb580a830a4798d72da7537cedce83d577ae60d6
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
13 months agoSkip duplicated vertex binding 88/289288/5
Eunki Hong [Sun, 5 Mar 2023 14:42:00 +0000 (23:42 +0900)]
Skip duplicated vertex binding

Let we skip some useless commands for vertex attributes binding.
If latest rendered geometry is same as previous, we don't need to
re-bind vertex attributes.

For hueristic way, Most of Visuals, like image and text, are used
simplest QUAD geometry. So for real world app are use only 1 geometry.
We can reduce for this case's rendering time.

Change-Id: I3643bdb728964365f42284dec3ff0ab77819f42b
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
13 months agoAdd BuildPickingRay to devel api 70/289370/1
David Steele [Mon, 6 Mar 2023 18:54:41 +0000 (18:54 +0000)]
Add BuildPickingRay to devel api

Change-Id: I93874e9b546c9f56f90a0cf11e8c4dbc3b7e7b6a

14 months agoDALi Version 2.2.16 63/289263/1 dali_2.2.16
Adam Bialogonski [Fri, 3 Mar 2023 10:25:28 +0000 (10:25 +0000)]
DALi Version 2.2.16

Change-Id: I43a4f13e1f54891c3c47b4bb36cc0bd5e153f44e

14 months agoMerge "Make mTargetSizeDirtyFlag true when Animation changes Actor's Size" into devel...
Seungho BAEK [Mon, 27 Feb 2023 23:08:32 +0000 (23:08 +0000)]
Merge "Make mTargetSizeDirtyFlag true when Animation changes Actor's Size" into devel/master

14 months agoSort Animator only if required. 38/289038/7
Eunki, Hong [Mon, 27 Feb 2023 13:09:34 +0000 (22:09 +0900)]
Sort Animator only if required.

Previously, we sort mConnectorTargetValues every Play() API.
Even if we don't need to sort it.

Now, make we sort that container only if last inserted value is bigger than
latest thing, and reset the flag if we sort.

Change-Id: Ia2ba07df3db5a2a0d6d89b0ef2854c5fc655fb2a
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>