seungho [Fri, 30 Sep 2022 10:30:47 +0000 (19:30 +0900)]
Fix Window Rotation issue
- Viewport was incorrectly computed when viewport is not fullscreen and window is rotated.
- Scissor rect was incorrectly computed when viewport is not fullscreen and window is rotated.
Change-Id: I44c64a2216f6364d2d29e0bcdd38c5e0cbc7467c
Signed-off-by: seungho <sbsh.baek@samsung.com>
Adeel Kazmi [Mon, 3 Oct 2022 16:53:55 +0000 (16:53 +0000)]
Merge "Calculrate screen position with RenderTask" into devel/master
Richard Huang [Fri, 30 Sep 2022 10:28:13 +0000 (11:28 +0100)]
DALi Version 2.1.42
Change-Id: I0f7ebbd5a33d3949c60995deb4af56c02ef20b25
Eunki, Hong [Mon, 5 Sep 2022 10:14:39 +0000 (19:14 +0900)]
Calculrate screen position with RenderTask
Previous ScreenPosition / ScreenExtents consider
only the scene's default camera.
Now we make a new API that consider Custom camera's
View/Projection matrix.
Calculate screen position & extents is quite heavy
operation. So we need to seperate it for
simple 2D layer or 3D layer.
So, we add mLayer3DParentsCount value in actor.
It will be generated when actor is scene on,
or some layer's behaviour changed during on scene.
Change-Id: I7a6162bea84965f70800a6e7cbf2332e9933e20d
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
David Steele [Tue, 27 Sep 2022 16:56:42 +0000 (16:56 +0000)]
Merge "Optimize transform level propagate" into devel/master
Heeyong Song [Tue, 27 Sep 2022 03:49:54 +0000 (03:49 +0000)]
Merge "Submit a empty command buffer when rendering is skipped to flush" into devel/master
David Steele [Mon, 26 Sep 2022 10:45:00 +0000 (10:45 +0000)]
Merge "Moved event side actor world calculation" into devel/master
Heeyong Song [Mon, 26 Sep 2022 02:24:37 +0000 (11:24 +0900)]
Submit a empty command buffer when rendering is skipped to flush
Change-Id: Id0be7a139f6b990a8c17212102a0619aaeb8ea80
David Steele [Fri, 23 Sep 2022 10:56:24 +0000 (11:56 +0100)]
DALi Version 2.1.41
Change-Id: Ib771ee6b62ff43b1d08feefc0f66918e0512eb9f
David Steele [Thu, 22 Sep 2022 15:10:47 +0000 (16:10 +0100)]
Moved event side actor world calculation
Transition effects used event side calculation of world
transform and color. These are more useful in devel core
than internally in toolkit.
Change-Id: I1a86cee588e3c7beecf5ba1665b1464c5e54939f
Signed-off-by: David Steele <david.steele@samsung.com>
Eunki, Hong [Thu, 22 Sep 2022 05:45:25 +0000 (14:45 +0900)]
Optimize transform level propagate
We can assume that if mIds[mParent[i]] < i,
then parent's mOrderedCompoents data validated.
So, if we can, we can use this valid parent value.
Change-Id: I464008a53d61258fcff846e07f92aee0a9d5cb8d
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Eunki, Hong [Tue, 20 Sep 2022 11:13:27 +0000 (20:13 +0900)]
Fix transform sceneId order issue
When mIds[mPanret[i]] is bigger then i,
mOrderedCOmponents[~~].sceneId become garbage.
To fix this issue, let we store sceneId first,
and propargate sceneId later.
Note : sceneId become the lastest parent's sceneId.
So, it always valid.
Change-Id: I27c6e51cda0ae696bf1ff5179ddb735f3e24aa65
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Heeyong Song [Mon, 19 Sep 2022 02:56:45 +0000 (11:56 +0900)]
Submit command buffer when rendering is skipped
Change-Id: I4b9be39763b82d96982454e9bad356a38aceb600
Adeel Kazmi [Fri, 16 Sep 2022 11:04:40 +0000 (12:04 +0100)]
DALi Version 2.1.40
Change-Id: I651c897ab226bc14064c9f4659550f9162e72c26
Heeyong Song [Thu, 15 Sep 2022 14:29:12 +0000 (14:29 +0000)]
Merge "(Partial Update) Fix window rotation issue" into devel/master
Heeyong Song [Thu, 15 Sep 2022 14:28:41 +0000 (14:28 +0000)]
Merge "Ensure the processor unregistered during the callback is not executed" into devel/master
Heeyong Song [Thu, 15 Sep 2022 05:25:34 +0000 (14:25 +0900)]
(Partial Update) Fix window rotation issue
Set the dirty flag of the root layer when the surface size is changed
Change-Id: I5347d11859dc3deb0830f3086012241eb0708882
seungho [Tue, 13 Sep 2022 05:36:11 +0000 (14:36 +0900)]
Do not reset properties when properties are explicitly set
+ Change property type of Camera::Type, Camera::ProjectionMode from string to integer
Change-Id: I312d5b2a29b7dcbe3c683189a8b5aa519b928933
Signed-off-by: seungho <sbsh.baek@samsung.com>
Heeyong Song [Wed, 14 Sep 2022 05:50:53 +0000 (14:50 +0900)]
Ensure the processor unregistered during the callback is not executed
Change-Id: I11215bc7bb6fdec892723f176ad6497bbf61f2a7
Adam Bialogonski [Fri, 9 Sep 2022 09:05:19 +0000 (10:05 +0100)]
DALi Version 2.1.39
Change-Id: I100376a31675d71920664e083f5bc09ebbacd0fe
Eunki, Hong [Fri, 2 Sep 2022 13:41:30 +0000 (22:41 +0900)]
Test harness sync (Framebuffer)
Change-Id: I8b6dcab39cd527230015d6721ebbe48d16c2571b
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Richard Huang [Fri, 2 Sep 2022 12:00:06 +0000 (13:00 +0100)]
DALi Version 2.1.38
Change-Id: I15c88f188621c7e8344c77549ae7913b3e3c6e53
David Steele [Fri, 26 Aug 2022 11:15:16 +0000 (12:15 +0100)]
DALi Version 2.1.37
Change-Id: Ieb1fa8b7eafaacd96718ede447468f33043783d7
Heeyong Song [Mon, 22 Aug 2022 05:55:48 +0000 (05:55 +0000)]
Merge "(Partial Update) Change damaged rect calcutation" into devel/master
Adam Bialogonski [Fri, 19 Aug 2022 10:07:44 +0000 (11:07 +0100)]
DALi Version 2.1.36
Change-Id: I82376a7d0b8bd5ddc897535d94cc64212a375307
Heeyong Song [Thu, 18 Aug 2022 04:49:13 +0000 (13:49 +0900)]
(Partial Update) Change damaged rect calcutation
Use only the previous frame's rect
The buffer age is considered by adaptor
Change-Id: Idba3977ba6987aba984d11141a3f45612f7e5cbe
seungho [Mon, 8 Aug 2022 14:13:14 +0000 (23:13 +0900)]
Add ViewportGuideActor to RenderTask
Change-Id: Ie33b8b1c9587649e6f173c664cc781d76d281b1a
Signed-off-by: seungho <sbsh.baek@samsung.com>
Adeel Kazmi [Fri, 12 Aug 2022 11:36:13 +0000 (11:36 +0000)]
Merge "DALi Version 2.1.35" into devel/master
Adeel Kazmi [Fri, 12 Aug 2022 11:22:46 +0000 (12:22 +0100)]
DALi Version 2.1.35
Change-Id: I47794cf71c5826ed8a3da25b1c29555ae75df5d5
seungho [Fri, 5 Aug 2022 07:24:29 +0000 (16:24 +0900)]
Unify the way to handle on/off screen render task hit test
Change-Id: I72e3eedb85f4697b64e617a39e7371027517c1c2
Signed-off-by: seungho <sbsh.baek@samsung.com>
David Steele [Fri, 5 Aug 2022 11:50:59 +0000 (12:50 +0100)]
DALi Version 2.1.34
Change-Id: I2417f70f60cfcaa1e36c37b48ffd1991db18bf1f
Eunki, Hong [Tue, 26 Jul 2022 10:21:40 +0000 (19:21 +0900)]
Add operator for Matirx3 * Vector3
We might need to multiply for some non-transition matrix.
Change-Id: I5a8aa02ce8c1e68b623aea07d9e7540f7074368f
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Richard Huang [Fri, 29 Jul 2022 11:11:57 +0000 (12:11 +0100)]
DALi Version 2.1.33
Change-Id: Id601d3c3c857d1c0fab7a14ca8c0cc79716b012d
Eunki Hong [Thu, 28 Jul 2022 03:15:33 +0000 (03:15 +0000)]
Merge "Remove std::vector dependency for dali-signal.h" into devel/master
Heeyong Song [Tue, 26 Jul 2022 09:01:06 +0000 (18:01 +0900)]
Add new header files to dali-core.h
Change-Id: Ib2e30ca1d715265b9b6f6727f18901a3717a266a
Heeyong Song [Mon, 25 Jul 2022 03:07:45 +0000 (12:07 +0900)]
(Partial Update) Change UPDATE_SIZE_HINT to UPDATE_AREA_HINT
Change the property name and the type to Vector4 to support offset also
Change-Id: I589855950cf158d833506a782d0983da9d0e97cc
Eunki, Hong [Tue, 26 Jul 2022 03:12:34 +0000 (12:12 +0900)]
Remove std::vector dependency for dali-signal.h
Change-Id: Ie76bfbb60cfdc2039adc83c14877bb7dd99645ab
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Adeel Kazmi [Fri, 22 Jul 2022 17:59:51 +0000 (17:59 +0000)]
Merge "Reduced the cyclomatic complexity of several functions" into devel/master
Adeel Kazmi [Thu, 21 Jul 2022 14:40:32 +0000 (15:40 +0100)]
Reduced the cyclomatic complexity of several functions
Change-Id: Iafbf6a58d9b152ad2c0a69db3f51fffefb6bcd93
Adeel Kazmi [Fri, 22 Jul 2022 13:30:31 +0000 (13:30 +0000)]
Merge "DALi Version 2.1.32" into devel/master
Eunki, Hong [Tue, 12 Jul 2022 13:46:45 +0000 (22:46 +0900)]
Upload PixelData's sub image to Texture
Add API to upload subimage of inputed PixelData.
It will be useful when we want to make multiple tiling textures
with one single big PixelData.
Change-Id: Ia07ddc96cdaf7006239a21a307dbb0995c755bb4
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Adam Bialogonski [Fri, 22 Jul 2022 09:27:05 +0000 (10:27 +0100)]
DALi Version 2.1.32
Change-Id: I4389984828fbe097cfa7ffcb9c7f10b1ca189c76
Heeyong Song [Fri, 22 Jul 2022 01:43:19 +0000 (10:43 +0900)]
(Partial Update) Fix renderer opacity issue
It was not detected when the renderer opacity is changed from the translucent value to another translucent value
Change-Id: If8448e03c0b106e5820c854e8878039ee93d9dc6
Adeel Kazmi [Wed, 20 Jul 2022 13:41:57 +0000 (14:41 +0100)]
Reduced the cyclomatic complexity of DecoratedVisualRenderer::SetDefaultProperty
Change-Id: I620c95d62b1f42a1ae50b19753fc11a3e8d000d2
Seungho BAEK [Mon, 18 Jul 2022 11:09:07 +0000 (11:09 +0000)]
Merge "Change dali-scene-loader to dali-scene3d" into devel/master
joogab yun [Mon, 18 Jul 2022 06:06:25 +0000 (06:06 +0000)]
Merge "Fix an issue where TapGesture Events are not being received." into devel/master
seungho [Thu, 14 Jul 2022 06:10:11 +0000 (15:10 +0900)]
Change dali-scene-loader to dali-scene3d
Change-Id: I9215482e82be1093c7cd838c5463b2b2e3ab9e09
Signed-off-by: seungho <sbsh.baek@samsung.com>
Richard Huang [Fri, 15 Jul 2022 12:16:22 +0000 (13:16 +0100)]
DALi Version 2.1.31
Change-Id: Ic09a53977da5c19a49ebc0be6b87e4262573a337
joogab.yun [Fri, 15 Jul 2022 05:01:19 +0000 (14:01 +0900)]
Fix an issue where TapGesture Events are not being received.
If MaximumTapsRequired is greater than 1, TapEvent may not be received when mMaximumAllowedTime is checked in touch-up.
So, move the mMaximumAllowedTime check code to Touchdown.
And in touch-up, the time between previous touch-down and touch-up is checked.
Change-Id: Iec05c9c902fda5c04a8ddde54bec1d887224d5fe
Eunki, Hong [Fri, 8 Jul 2022 09:05:35 +0000 (18:05 +0900)]
Property::Value operator== for the same type.
Implement equal operator for the Property::Value.
It can be compare only for the same type.
NOTE : Property::Array and Property::Map don't support equal operator.
We always return false in that case.
Change-Id: Id474dbf403355b2f5d2375004694cfc18d3c8614
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
joogab yun [Mon, 11 Jul 2022 05:23:28 +0000 (05:23 +0000)]
Merge "Fix an issue where TapGesture Events are not being received." into devel/master
joogab.yun [Wed, 22 Jun 2022 07:52:58 +0000 (16:52 +0900)]
Add ALLOW_ONLY_OWN_TOUCH property.
It only receive for touch events that started from itself.
So if it's not a touch started by myself, actor doesn't receive a touch event.
Change-Id: I58151d7072a4f1dbae1a015e6b3fc0b298745773
Adeel Kazmi [Fri, 8 Jul 2022 05:47:39 +0000 (06:47 +0100)]
DALi Version 2.1.30
Change-Id: I61ee6970d3b31b7c511b82a4497d4183e2fc86e2
joogab.yun [Tue, 5 Jul 2022 05:29:22 +0000 (14:29 +0900)]
Fix an issue where TapGesture Events are not being received.
If multiple Tap GestureDetectors are registered, you may not receive gesture events depending on the setting of MaximumTapsRequired.
example)
TapGestureDetector detector1 = TapGestureDetector::New();
detector1.SetMaximumTapsRequired(1u);
detector1.Attach(actor1);
TapGestureDetector detector2 = TapGestureDetector::New();
detector2.SetMaximumTapsRequired(2u);
detector2.Attach(actor2);
When actor1 is tapped multiple times, I expect to receive a gesture event on every tap because MaximumTapsRequired is 1u, but I don't get the event every tap.
It is because the MaximumTapsRequred of detector2 is set to 2u, the MaximumTaps of the tap-gesture-recognizer is set to 2u.
So, if there is a double tap, the tap event is not delivered to detector1 because it exceeds the MaximumTaps of detector1.
For this reason, the check of MaximumTapsRequired is modified to be checked by each detector.
Change-Id: I297debdf7ff680affafc763d4af3db323f80a095
Adam Bialogonski [Wed, 6 Jul 2022 10:40:40 +0000 (11:40 +0100)]
DirectRendering with DrawableView support and list of used resources
- Added GLESNativeInfo inner struct (in NativeDrawInfo) to extract shared context
- The native draw can use list of textures and buffers that the callback will use
- The used resources are being passed into the callback so it can access DALi objects
Change-Id: I6b162c0741d95ab3698185d05e2a78f4b0ab02f7
David Steele [Fri, 1 Jul 2022 11:12:12 +0000 (11:12 +0000)]
Merge "DALi Version 2.1.29" into devel/master
David Steele [Fri, 1 Jul 2022 11:06:54 +0000 (12:06 +0100)]
DALi Version 2.1.29
Change-Id: Icb5bea910e30730302e73906f873469afb3146f4
joogab.yun [Mon, 27 Jun 2022 09:18:20 +0000 (18:18 +0900)]
Add InterceptKeyEvent
Intercepts KeyEvents in the window before dispatching KeyEvents to the control.
If a KeyEvent is consumed, no KeyEvent is delivered to the control.
Change-Id: If6ee2b2fb03d936a7840b4c984129a31bb8b948d
Heeyong Song [Mon, 27 Jun 2022 09:32:09 +0000 (18:32 +0900)]
Add GetPixelFormat to Texture
Change-Id: Ib9cf0b03f409c909e7c7187d8ea19661296d36d5
David Steele [Fri, 24 Jun 2022 13:26:05 +0000 (13:26 +0000)]
Merge "DALi Version 2.1.28" into devel/master
Adeel Kazmi [Fri, 24 Jun 2022 13:08:24 +0000 (14:08 +0100)]
DALi Version 2.1.28
Change-Id: I7cea4233901b6d16f8edba3eb3be48317ae49e23
Heeyong Song [Fri, 17 Jun 2022 07:11:11 +0000 (16:11 +0900)]
Add default logs in key event processor
Change-Id: I3b8352cb57afe5b6de381f6285d7020786df0578
Heeyong Song [Fri, 17 Jun 2022 06:22:36 +0000 (15:22 +0900)]
Enable ENABLE_BACKTRACE
Change-Id: Ib992346a029132000b2558b41a934c2b6115b647
Adeel Kazmi [Mon, 20 Jun 2022 09:58:06 +0000 (10:58 +0100)]
Fixed SVACE error in pan-gesture-processor.cpp
Change-Id: Ia4b8d58e4dcffd1f4da85a0a5a4c8fd077693532
Eunki, Hong [Mon, 20 Jun 2022 01:23:51 +0000 (10:23 +0900)]
Fix logical bug on Pan MotionEventAge
Fix incorrect operation direction of age check-up.
Change-Id: Ia76f9cdda639c0417da1002906e63a02f97d1b67
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
David Steele [Fri, 17 Jun 2022 10:40:03 +0000 (10:40 +0000)]
Merge "DALi Version 2.1.27" into devel/master
David Steele [Fri, 17 Jun 2022 10:27:55 +0000 (11:27 +0100)]
DALi Version 2.1.27
Change-Id: I079653c71810ddbf0469601c0e2f594c23fb630a
Eunki, Hong [Wed, 15 Jun 2022 12:57:34 +0000 (21:57 +0900)]
Discard some motion during pan gesture
When event spend so long time, a lot of events are queued.
Ecore cannot skip these event, so we make some heuristic
threshold of discard motion events on pan gesture.
We can setup this value by PanGestuerDetector's member vaule.
The name is "MaximumMotionEventAge".
the time scale is millisecond.
Default age is UINT_MAX ms (~= 49 days)
That mean, we will not discard every motion events.
(Ecore event callback also use uint32_t type in ms.)
Change-Id: Ib721e81d690327dcbc6c6c58383b33c7d5560922
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Heeyong Song [Mon, 13 Jun 2022 09:27:58 +0000 (18:27 +0900)]
Make mScene nullptr when the Actor is disconnected from Scene recursively
Change-Id: I2ef30d3ba471d87baae32d082e91426990d46463
Adam Bialogonski [Fri, 10 Jun 2022 08:53:22 +0000 (09:53 +0100)]
DALi Version 2.1.26
Change-Id: Ie428ca744a9fbb266251cb3cdc36eafa3022214b
Eunki, Hong [Fri, 3 Jun 2022 12:30:57 +0000 (21:30 +0900)]
Minor optimize during iterate of uniform map
Dali::Vector.End() operation is heavy.
We don't need to calculate this value every iteration. So just precalculate
the end-of-iterate. It will increase performance.
Change-Id: I475d01367348943f0f4b12a6aeb870c413db0dfc
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Richard Huang [Wed, 1 Jun 2022 10:14:51 +0000 (11:14 +0100)]
DALi Version 2.1.25
Change-Id: Ia40d6c528558b1c2b7223acf67240ef63e43a91a
Adeel Kazmi [Fri, 27 May 2022 12:19:14 +0000 (12:19 +0000)]
Merge "DALi Version 2.1.24" into devel/master
Adeel Kazmi [Fri, 27 May 2022 12:00:48 +0000 (13:00 +0100)]
DALi Version 2.1.24
Change-Id: I8fe305f73b9987fd87366d06cb3c9225d3375231
Eunki, Hong [Thu, 26 May 2022 16:46:38 +0000 (01:46 +0900)]
Revrert "Enable assert alwayd in Dali::Vector"
Due to the DALI_ASSERT_ALWAYS, Dali::Vector try to check
the range of index every times.
It might make some performance reducing.
Change-Id: I2fdcf435bda147f9ea102c3106cb44f0772a4899
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Adeel Kazmi [Fri, 20 May 2022 12:26:26 +0000 (12:26 +0000)]
Merge "DALi Version 2.1.23" into devel/master
Adam Bialogonski [Fri, 20 May 2022 10:16:21 +0000 (11:16 +0100)]
DALi Version 2.1.23
Change-Id: Ie34538906bedaf4a85e012130fe9c11a0ca78fb0
Eunki, Hong [Tue, 17 May 2022 11:52:00 +0000 (20:52 +0900)]
Fix when shader changeness not applied issue
If RenderList was reused, SG::Renderer::UpdateUniformMap didn't called.
So Render::Renderer will render with not-updated uniform-map
(But uniform map change counter is updated.)
This patch make sure that renderer's uniformMap changeness in Prepare time.
So it will be applied well before render call.
Change-Id: I06618e99f38fecd19d263afd7eaff2c30f241cc3
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Eunki Hong [Wed, 18 May 2022 09:09:12 +0000 (09:09 +0000)]
Merge "base-signal connect and disconnect in O(1)" into devel/master
Eunki, Hong [Mon, 16 May 2022 09:43:39 +0000 (18:43 +0900)]
Minor optimize during build uniform index maps
If node don't have any uniform properies,
we don't need to create about that node's index map.
Because that mean, this node will use only for renderItem's uniform.
Change-Id: Ife3bd0fc35293945786e52755ddaed49d31ae177
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Eunki, Hong [Mon, 16 May 2022 17:00:41 +0000 (02:00 +0900)]
Keyframe->GetValue works on O(log n)
Previous code iterate whole key-frame to get interpolated progress value.
This patch make this job in O(log n).
So we can run animation faster even it have near 500 key-frames.
Change-Id: I14ee07db7aa75142aaaf323af7cfde9522d3851d
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Eunki, Hong [Tue, 3 May 2022 14:24:22 +0000 (23:24 +0900)]
base-signal connect and disconnect in O(1)
Make base-signal control the connection in O(1)
by std::unordered_map and std::list<>::iterator.
and make connection-tracker control the connection in O(1)
by std::unordered_map
std::unordered_map can found duplicated value fast
and std::list<>::iterator can access & remove value fast.
And also, std::list can keep ordered by inputed time.
TODO : Remove the dependency of std::vector header in dali-signal.h
is quite big process. Will be done in other patch
Change-Id: I940d33c46b1470973219c7a9fb10ac89dd70f1ff
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
David Steele [Fri, 13 May 2022 15:10:41 +0000 (15:10 +0000)]
Merge "Apply Visual's transform + borderline properties for partial update" into devel/master
Richard Huang [Fri, 13 May 2022 11:01:03 +0000 (12:01 +0100)]
DALi Version 2.1.22
Change-Id: I4f1ac3a9a654f2b1469d6d8a1f189e646df30ebc
Eunki, Hong [Fri, 22 Apr 2022 10:02:47 +0000 (19:02 +0900)]
Apply Visual's transform + borderline properties for partial update
Previously, PartialUpdate cannot know the vertex positions
after transform the visual.
But now, we can use VisualRender's animatable properties.
This patch re-calculate the partial update size
so we can consider Visual Transform.
And more, We make DecoratedVisualRenderer so we can use
CornerRadius + etc as default property
and also can re-calculate update size consider with BorderlineWidth or BlurRadius
Change-Id: I99962f7cda3fb51defc439cf5f1517278aa0daa4
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Heeyong Song [Thu, 12 May 2022 07:16:07 +0000 (16:16 +0900)]
Delete Renderers before Shaders
Change-Id: Ib7744acb7f4bed8032c50f7a388f74027afb55b2
Heeyong Song [Thu, 12 May 2022 07:13:59 +0000 (16:13 +0900)]
Remove duplicated scene object deletion from VisualRenderer
Change-Id: I50ef48dd8d5253360f2bc0b564ad6e84395f329a
Heeyong Song [Mon, 9 May 2022 00:59:19 +0000 (00:59 +0000)]
Merge "Add API to UpdateProxy" into devel/master
David Steele [Fri, 6 May 2022 11:37:06 +0000 (12:37 +0100)]
DALi Version 2.1.21
Change-Id: I87bb688c0b7635d23bc6f0d85237ba14549dfb34
Heeyong Song [Mon, 25 Apr 2022 09:39:06 +0000 (18:39 +0900)]
Add API to UpdateProxy
Change-Id: Icd9ef2011a6381ccad62a9f3edea750e392500ae
Adeel Kazmi [Fri, 29 Apr 2022 12:23:01 +0000 (12:23 +0000)]
Merge "DALi Version 2.1.20" into devel/master
David Steele [Fri, 29 Apr 2022 11:13:33 +0000 (11:13 +0000)]
Merge "Simplifying UniformMap updating" into devel/master
Adam Bialogonski [Fri, 29 Apr 2022 09:52:34 +0000 (10:52 +0100)]
DALi Version 2.1.20
Change-Id: I1c92a82a41be6d385c7ab307b24edc04b25b730e
Eunki, Hong [Thu, 28 Apr 2022 01:54:47 +0000 (10:54 +0900)]
Fix memory leak of visual renderer
SceneGraph::Renderer didn't remove the memory of
ANimatableVisualProperties.
This patch make AnimatableVIsualProperties as OwnerPointer
so SceneGraph::Renderer will delete it's memory well.
Change-Id: I85f0c40af0fc594b86bd0b9f93f13c24e93b9f8e
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
David Steele [Mon, 12 Jul 2021 18:18:25 +0000 (19:18 +0100)]
Simplifying UniformMap updating
Removed scene-graph ConnectionChangePropagator - now only need to know
if shader is attached to renderer, and that is already done through a
different mechanism.
Changed CollectedUniformMap into it's own struct. Now has a change
counter that increments any time the map is altered.
Instead of having lots of flags indicating if uniform maps have
changed, UniformMap now updates it's change counter whenever a
property is registered with the PropertyOwner (e.g. Node, Renderer or
Shader).
During Update, SceneGraph::Renderer collects the uniform maps into one
only if the renderer is added to a RenderList, i.e. if it's going to
be rendered. At this point, the change counter is updated.
Nothing is done if the renderer is not visible.
During Render, the Render::Renderer checks if the node uniform map
change counter or the renderer data provider's uniform map change
counter are different, if so, then it knows it needs to update the
uniform locations for newly registered properties.
Change-Id: I0ff861a7e97736dae059d94f54618195d0471343
Eunki, Hong [Mon, 25 Apr 2022 03:36:10 +0000 (12:36 +0900)]
Calculate hash by Dali::Vector<std::uint8_t>
Change-Id: Ic5b640856c8e1f5710d3c0eb961612428e893990
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
David Steele [Fri, 22 Apr 2022 13:10:21 +0000 (13:10 +0000)]
Merge "DALi Version 2.1.19" into devel/master
Adeel Kazmi [Fri, 22 Apr 2022 12:54:08 +0000 (13:54 +0100)]
DALi Version 2.1.19
Change-Id: I9be4ce8eef03b28d4e208cd648e1210446967801
Heeyong Song [Fri, 22 Apr 2022 00:30:20 +0000 (00:30 +0000)]
Merge "Relayout only if the actor is on Scene" into devel/master
Eunki, Hong [Tue, 29 Mar 2022 06:09:08 +0000 (15:09 +0900)]
Lock uniform buffer only 1 times per each render + minor fixup of uniforms
1. Don't lock-unlock Graphics::Memory for each properties.
This patch lock stand-alone uniform buffer map and unlock only few times during rendering.
(We called this API as ReadyToLockUniformBuffer and UnlockUniformBuffer)
It will reduce Renderer::Render time near 6%
2. Don't convert from std::string_vew to std::string
when we get uniform map info from shader
3. Make BufferPropertiesFlags as input of UniformBuffer Constructor
Change-Id: I50055a24c1aad59e2a29b8c50485254b71ea5b73
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>