Eunki Hong [Fri, 9 Jun 2023 15:58:14 +0000 (00:58 +0900)]
[Tizen] Fix logical error for dli animation duration
There was some code mistakes for dli loader parsing of animation duration.
Change-Id: I877cb44369a5f72b2a1064c7b8ea816bdbe806f1
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
Eunki Hong [Mon, 22 May 2023 14:32:59 +0000 (23:32 +0900)]
[Tizen] Lock model cache manager access for thread safety
Since we can access to mModelCache by ModelCacheManager,
and also we can create new items (== change container itself)
Add a global mutex lock for cache manager API.
And also, add some comment why we use std::map for cache.
And also, do not open conditional wait object out of cache.
And also, increase reference count of model so we can run this function
more thread safety.
TODO : We MUST not access into model cache manager from worker thread.
(Since worker thread can Process even main thread shutdown.)
MUST be refactorize.
Change-Id: I81e95a5f5df8c16dbaf6b84b6ddd3cd4809121d0
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
Eunki, Hong [Wed, 31 May 2023 23:56:45 +0000 (08:56 +0900)]
[Tizen] Add dali-scene3d.h for increase app developer convenience
Follow dali/dali.h, dali-toolkit/dali-toolkit.h,
Let we make dali-scene3d/dali-scene3d.h which contain all kind of
public-api of dali-scene3d.
So even if we refactorize dali-scene3d directory system,
let other application didn't got effort.
Change-Id: I22b8bca67177280d04f6d5c2db7ecdec6b0b9484
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Eunki, Hong [Tue, 30 May 2023 03:54:26 +0000 (12:54 +0900)]
[Tizen] Let we use integer uniform for shader
Since we cannot believe float to integer convertor,
Let we use integer uniform value register without float conversion
Change-Id: Idf740687b51b73a00db77eb4a784f0acef73f5df
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Eunki, Hong [Fri, 4 Aug 2023 09:08:34 +0000 (18:08 +0900)]
[Tizen] Fix unload svg file error.
When we create Svg Visual -> SceneOn & SceneOff very fast during all rasterize
threads are fully busy,
It will remove SvgLoadingTask who is in mResterizeTasks.
After we re-sceneon that visual again, it will be broken :
mLoadingFail is not true, but we didn't load file.
This patch make we don't remove SvgLoadingTask when we call RemoveTasks
Change-Id: I40582ebb2512e56e96eed64caff4b1070b4bd9c2
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
seungho baek [Fri, 16 Jun 2023 11:57:21 +0000 (20:57 +0900)]
[Tizen] Fix Gradient Visual texturing issue
Change-Id: I6b0318cfb8716f5a8a08e1e96e4ca256f00af12e
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
Bowon Ryu [Fri, 9 Jun 2023 05:00:14 +0000 (14:00 +0900)]
[Tizen] Apply font size scale to markup text
Change-Id: I1c6467a1ebb42b4604497db12b12052fc7deba80
Signed-off-by: Bowon Ryu <bowon.ryu@samsung.com>
Heeyong Song [Fri, 2 Jun 2023 02:22:31 +0000 (11:22 +0900)]
[Tizen](SceneView) Reset the removed RenderTask
Change-Id: I29a1d8ae306f49d0dd9b13842ba2f1d95190690d
sunghyun kim [Thu, 4 May 2023 02:13:14 +0000 (11:13 +0900)]
[Tizen] Masking support for external textures
Masking support for external textures as well.
For masking, only GPU masking is available.
Support for both asynchronous/synchronous.
Change-Id: Ifdd18f0d90911ba849b5ff9cf1d8255f40ce12e9
Artur Świgoń [Thu, 25 May 2023 12:59:41 +0000 (14:59 +0200)]
[Tizen][AT-SPI] Remove Text{Editor,Field}::mStencil from the tree
These objects are not interesting to the Screen Reader.
Change-Id: I764ca04999114ca7f14a3e9a04442c1971b79ad7
Eunki, Hong [Wed, 17 May 2023 08:14:38 +0000 (17:14 +0900)]
[Tizen] Let ModelCache use std::map instead of unordered_map
If mModelCache become rehashed during some model-load-task lock the process,
It might make some crash.
To keep the validation of ModelCacheManager::ModelCache data, let we use
the cache container as std::map, instead of std::unordered_map
Change-Id: Ied52a7cd8fcf805eb18d5563df1da821f4d3c655
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Richard [Thu, 18 May 2023 14:09:13 +0000 (15:09 +0100)]
[Tizen] Fix the normalization factor calculation for blendshapes
This patch fixes two issue:
1. Fix the calculation of the blendshape normalization factor so that it can
handle smaller maximum distance between the original mesh and the deformed
mesh.
2. Apply the min and max properties of the accessor to all the elements in the
accessor, not just the elements in the sparse storage.
Change-Id: Iea90cbacf91fc7311242d9a47454b06afee82200
Heeyong Song [Thu, 18 May 2023 08:38:24 +0000 (17:38 +0900)]
[Tizen] Sync test harness
Change-Id: I1bb2bd71ae9133e165cace85e6e8da283b47b6e8
Bowon Ryu [Fri, 19 May 2023 07:38:40 +0000 (16:38 +0900)]
[Tizen] Fix initial white space issue in text
Current logic does not send text and cursor position for initial white space to IME.
I don't know the exact history of this logic.
But in case of efl, it is sending information about initial white space to IME.
Change behavior for consistency.
Change-Id: I86bc7ecfece9f02c2eb670c3359efc31d79daabb
Signed-off-by: Bowon Ryu <bowon.ryu@samsung.com>
Adam Bialogonski [Tue, 16 May 2023 15:53:24 +0000 (16:53 +0100)]
[Tizen] Blendshapes fix
When using sparse accessors, the gltf loader loads data correctly
but the blendshapes generator (texture and data) always assumes that
morph targets contain all the vertices which isn't a case.
Fix makes sure that for sparse access only indexed vertices are
affected by the blendshape. It still generate full vertex data
(for whole mesh) so it's compatible with current shader.
Change-Id: I1f36c1d9d24dec0eb194d0aaf1b93488b61b1d58
Signed-off-by: Adam Bialogonski <adam.b@samsung.com>
seungho baek [Thu, 11 May 2023 08:36:55 +0000 (17:36 +0900)]
[Tizen] Support model size change
Change-Id: I78a7aa569ae164d07a7809bc7dd7106531face29
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
Eunki Hong [Tue, 16 May 2023 16:27:31 +0000 (01:27 +0900)]
[Tizen] Set AnimatedVectorVisual play range by single marker
Previously, we only accept when we insert array as PLAY_RANGE.
Now let we allow to insert single stirng value.
Change-Id: I3afbbf30cb5bdc211a06aeb0654c5359b28bc147
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
Artur Świgoń [Thu, 11 May 2023 10:54:27 +0000 (12:54 +0200)]
[Tizen][AT-SPI] Map Actor::Property::SENSITIVE to Accessibility::State::SENSITIVE
Change-Id: I3e4bf575b257e8020dbf5c68111b4219beec39e3
Eunki, Hong [Wed, 10 May 2023 01:35:07 +0000 (10:35 +0900)]
[Tizen] Fix normal vector error when we use skin
Since dali's world matrix use left-hand-coordinate,
the constrainted world matrix value in uBone need to be multiply negative Y.
To apply this information, let we use uYDirection value if we use skin.
Also, we need to use same precision if we use same uniform both vertex and
fragment shaders. To specify the precision, make uYDirection as mediump.
Change-Id: Ibf6ca7ee0cc88fba1214b4a68a0eea7a4805f7e5
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Eunki, Hong [Thu, 4 May 2023 08:03:01 +0000 (17:03 +0900)]
[Tizen] Fix multiple primitive skinning error
Since we didn't check indivisual primitive with
same shader + same skeletone id,
some renderer didn't applied Constraint.
Now we make multiple primitive also apply bone constraints
Change-Id: I7ccf7257108f9e4d05914c70bb437eee488b7b3f
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
seungho baek [Tue, 9 May 2023 05:04:48 +0000 (14:04 +0900)]
[Tizen] Change mediump to highp of corner radius
Change-Id: Ide32bf0b33cf6c495d4c9f7d38c46289788f53ab
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
Eunki, Hong [Thu, 4 May 2023 00:40:04 +0000 (09:40 +0900)]
[Tizen] Revert "[Tizen] Use Renderer to register skinning property"
This reverts commit
fcb91da58739795d0289a9d1e50b838092165e40.
Change-Id: Ia92651b28438dcf1f610d8448a0178cf666d854a
Eunki, Hong [Thu, 27 Apr 2023 02:07:46 +0000 (11:07 +0900)]
[Tizen] Let we allow to change AnimationDefinition property
Change-Id: Id6e0a345bb5b4213191f56f94f5c5b20bf2d2020
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
seungho baek [Tue, 2 May 2023 05:55:13 +0000 (14:55 +0900)]
[Tizen] Use Renderer to register skinning property
Change-Id: If4f9e0d9b4fb454e02666694ea24ec8fd31c8482
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
seungho baek [Tue, 2 May 2023 01:44:30 +0000 (10:44 +0900)]
[Tizen] Remove unused code
- We don't need to reset renderer properties when shader is generated
Change-Id: I42b9a5cb1a252ecda753d5221c02f542a1d7f99b
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
Richard [Thu, 27 Apr 2023 15:47:58 +0000 (16:47 +0100)]
[Tizen] Blendshape properties should be registered per renderer instead of per shader
Change-Id: I38c6a191e37212720fa603f82cb2ef04c6b18a17
seungho baek [Mon, 24 Apr 2023 10:55:06 +0000 (19:55 +0900)]
[Tizen] Support Short and Byte weight of gltf skinning
Change-Id: I4817c40b049e5b3984b66cc9fabe731ae0bc4582
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
Eunki, Hong [Fri, 21 Apr 2023 11:13:40 +0000 (20:13 +0900)]
[Tizen] Reduce prediction error for blendshape
1. Let we use highp integer for vertex shader. (since some device's
mediump int only use 16bit signed integer, so it might not allow
to use more than 32768 vertex id)
2. Do not use divide and sqrtf operator if we can
Change-Id: Ib76d1ff6095f07aad9f797b96be93d0dc8dd8188
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
seungho baek [Wed, 19 Apr 2023 09:20:00 +0000 (18:20 +0900)]
[Tizen] Remove model-node-data-impl
Change-Id: Iba64ae2ecbc67d42093affbc364693ff163551b6
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
Bowon Ryu [Thu, 10 Nov 2022 02:54:59 +0000 (11:54 +0900)]
[Tizen] New with additional behaviour flag for text controls
Add new "New" function that we can append additional ControlBehaviour
This code works in TextField and TextEditor
Change-Id: I28df965491bf6e6abff95ed3dc1a2a83f03588a5
Signed-off-by: Bowon Ryu <bowon.ryu@samsung.com>
huayong.xu [Wed, 1 Mar 2023 10:18:13 +0000 (18:18 +0800)]
[Tizen] Load bvh and facial animations from buffer
This is a combination of 2 commits.
Make sure that global variables are initialized lazily in scene3d.
Global variables are initialized when scene3d so is loaded firstly.
This would allocate more memory in some cases.
This patch is to make the variables be initialized lazily.
Load bvh and facial animations from buffer
Let we allow to load bvh and facial animation from raw buffer stream.
Change-Id: I679539ce10e631101571dab95615404c41b9b2f3
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Eunki Hong [Sat, 18 Feb 2023 10:22:52 +0000 (19:22 +0900)]
[Tizen] Allow to load uint32_t as indices
Dali's default indices use uint16_t. But if heavy 3D model who need more than
65536 indexes loaded, It will break index.
This patch make Scene3D can allow to use uint32_t type indeces load
and generete Geometry by it.
Change-Id: I6b8096df3fcf855443e6b407342121b9374d9ff8
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
Heeyong Song [Fri, 29 Jul 2022 02:39:01 +0000 (11:39 +0900)]
[Tizen] Sync test util
Backporting of GLView direct rendering feature
Change-Id: I92102ab838a43792fd3022f775ab67fd5fdeb23f
Heeyong Song [Thu, 28 Jul 2022 10:32:47 +0000 (19:32 +0900)]
[Tizen] (GlView) Add BindTextureResources method
Backporting of GLView direct rendering feature
Change-Id: I9f73d158bb13afaa2413105b4da5afeede0d1f7b
Eunki Hong [Wed, 19 Apr 2023 06:42:42 +0000 (06:42 +0000)]
Merge "[Tizen] Let we allow to seek empty buffer when read blob" into tizen_7.0
seungho baek [Tue, 18 Apr 2023 05:47:24 +0000 (14:47 +0900)]
[Tizen] Fix transform issue of skinned mesh
Change-Id: I5acd990e1e1ae586a0b6c66af3aefc99c991e206
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
Eunki, Hong [Wed, 19 Apr 2023 03:17:43 +0000 (12:17 +0900)]
[Tizen] Let we allow to seek empty buffer when read blob
The model can "skip" non-meanful data at end of blob.
Let we allow to read that case.
Change-Id: Id98f6bbb788b3f542ee543f20b16c6982c2a7f68
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Eunki, Hong [Tue, 18 Apr 2023 03:52:06 +0000 (12:52 +0900)]
[Tizen] Delete callback memory when rasterize callback not processed
When Rasterize callback register into VectorAnimationManager, and
visual was destroyed, the callback base memory might not be deleted.
Change-Id: Ia2d09856e989ac29f8c39cd5cabb2af29d1ed80d
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
huayong.xu [Mon, 20 Mar 2023 11:08:48 +0000 (19:08 +0800)]
[Tizen] Backport 7.5 Scene3D for use ModelNode
This is a combination of 10 commits.
Make sure that global variables are initialized lazily in scene3d.
Fix coverity issue (no POSITION attribute + use after move)
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Change namings of gltf-util
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
Remove Duplicated code in gltf2-util using template
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
Enable automated tests that load the exercise DLI model
Replace std::string global variables with C-style string.
A std::string global variable would allocate a memory in heap,
then copy the string from .text section to the heap.
This patch may reduce loading time & memory a little.
Use ModelNode / ModelPrimitive / Material instead of Actor / Renderer
- This patch is based on the previous patch
https://review.tizen.org/gerrit/#/c/platform/core/uifw/dali-toolkit/+/288075/
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
Fix svace/coverity issue (initialize value at Material)
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Change public member variable to private
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
Allow to use premultiplied external texture
FrameBuffer result colortexture is premultiplied always.
So make we always use premultiplied texture.
And make a way to user determine native image source is premultiplied or not.
+
Since FBO texture always premultiplied, revert scene view's trick
https://review.tizen.org/gerrit/c/platform/core/uifw/dali-toolkit/+/285486
Change-Id: Idfec7ea5a26dcc827953ce268c32adc8f89247bd
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
Artur Świgoń [Thu, 13 Apr 2023 09:31:54 +0000 (11:31 +0200)]
[Tizen][AT-SPI] Implement Value::GetValueText()
Change-Id: I9a2eb40aced763bc74542b5f8c448445089ed67c
dongsug song [Thu, 6 Apr 2023 11:42:36 +0000 (11:42 +0000)]
Merge "[Tizen] Use c-style string when webview loads contents." into tizen_7.0
seungho baek [Tue, 4 Apr 2023 08:19:51 +0000 (17:19 +0900)]
[Tizen] Fix skybox type auto issue
Change-Id: I5e59773428f598393d3b30070dbdeb1067f71448
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
huayong.xu [Tue, 4 Apr 2023 07:49:47 +0000 (15:49 +0800)]
[Tizen] Use c-style string when webview loads contents.
Change-Id: I541be6fddab140561f16af339adfe82bf05ecd2e
Bowon Ryu [Tue, 21 Mar 2023 02:15:12 +0000 (11:15 +0900)]
[Tizen] Add a condition to ensure FontClient
https://review.tizen.org/gerrit/#/c/platform/core/uifw/dali-adaptor/+/290153/
Change-Id: Ic67e9d870a12456fe4023d23377d90b753b1e431
Signed-off-by: Bowon Ryu <bowon.ryu@samsung.com>
Eunki, Hong [Thu, 23 Mar 2023 07:31:45 +0000 (16:31 +0900)]
[Tizen] Make equirectangular environment also use mipmap + Fix brdf error
Change-Id: Iaa303a31c4223197b295a6f722dee3c0ebaa6216
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
joogab.yun [Mon, 20 Mar 2023 10:41:13 +0000 (19:41 +0900)]
[Tizen] Revert "Adjust text fit condition"
This reverts commit
52b3a0d3057c239c2ca75321864d687d09a9f01f.
Change-Id: Ibfda60c4f6a509a9febf63fa9ed3752b6758ffcb
Hosang Kim [Mon, 6 Mar 2023 10:24:39 +0000 (19:24 +0900)]
[Tizen] remove logic for comparing clipped state.
A child can be visible even if clip mode outside of parent.
So a object is actually shown on screen but SHOWING state is false.
Change-Id: I74b59f99783c6ade8029a3be5166cf9a8de36011
Bowon Ryu [Wed, 15 Mar 2023 11:02:05 +0000 (20:02 +0900)]
[Tizen] Add trace log to check text performance
Change-Id: Id001ff9d537794c8f1a0fce125d71be6566378b2
Signed-off-by: Bowon Ryu <bowon.ryu@samsung.com>
Eunki Hong [Sat, 18 Mar 2023 08:43:35 +0000 (08:43 +0000)]
Merge "[Tizen] Let we can use emissiveFactor without Texture" into tizen_7.0
seungho baek [Fri, 17 Mar 2023 14:02:17 +0000 (23:02 +0900)]
[Tizen] Use Mipmap level to sample specular texture
Change-Id: If1f4346b22571600d490150bd05bf851eefe1a24
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
seungho baek [Wed, 8 Mar 2023 06:23:52 +0000 (15:23 +0900)]
[Tizen] Let we can use emissiveFactor without Texture
This is a combination of 4 commits.
Make safe conversion from uint32_t to streamsize
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
Change namings of gltf-util
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
Ignore non-exist property reanimated
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Let we can use emissiveFactor without Texture
Change-Id: I27c7585675375d19d5e326e21e9d504c3edbde46
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
joogab.yun [Tue, 14 Mar 2023 01:01:34 +0000 (10:01 +0900)]
[Tizen] When TextFit operates, it operates based on the initially set LineSize.
You may need to add LineSize to TextFit items.
It is currently based on the TextLabel LineSize at the time the TextFit property is set.
Change-Id: I0d4661da7b653e8e765c2b029ce06749e01c8bd4
Eunki, Hong [Tue, 7 Mar 2023 16:17:01 +0000 (01:17 +0900)]
[Tizen] Clean up Scene3D namespace and header definition
Change-Id: I28f91a4fb9af661ff61a12f00c1f6fd900cbdeec
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
seungho baek [Fri, 24 Feb 2023 01:40:25 +0000 (10:40 +0900)]
[Tizen] Add glb-loader to load gltf2-binary
- extract gltf2-util to share it in gltf2-loader and glb-loader
Change-Id: I048d8903d27fea47a322dcf4d4cc56a16c10acec
seungho baek [Mon, 20 Feb 2023 08:19:39 +0000 (17:19 +0900)]
[Tizen] Add model-loader to abstract gltf2-loader and dli-loader
- Like glb, we need to add some new type of model.
- This abstraction can make easy to add new model file format.
Change-Id: Ib84dd28c082903295ff1295a5c2d4da9a74ef8ca
Richard [Thu, 2 Feb 2023 15:07:37 +0000 (15:07 +0000)]
[Tizen] Cache manager for 3D models
Change-Id: I6cd522b2ee5c2dc33fa7740d2421d9220ee058de
seungho baek [Mon, 20 Feb 2023 06:57:09 +0000 (15:57 +0900)]
[Tizen] Generate Camera from loaded model
This is a combination of 2 commits.
Refactoring model-impl.cpp
- Extract some method to reduce duplicated code.
- Reduce braces depth
- Use return early for easy understanding
- Separate too long method
Generate Camera from loaded model
Add API to generete (or apply) the camera what 3D model has.
Note that model cannot have ownership of camera
since we have to add camera into SceneView or whatever we want.
So GenerateCamera create new CameraActor everytime.
Or ApplyCamera into already created CameraActor.
TODO : Should we change all Scene3D::Loader used demo who use camera parameter?
Change-Id: I3900090fc52487c03ce9c66bfc79b31ae8b9e27e
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
joogab.yun [Thu, 23 Feb 2023 09:38:06 +0000 (18:38 +0900)]
[Tizen] Fix space font validation condition
when character is 0x20, there are various cases of font validation.
but if it is a default font or cached font, or
if a glyph exists in the current font when it is contiguous with the prev char,
it is natural to load current font.
this is same behaviour as before.. and the process of finding fonts can slightly reduced.
Change-Id: I017db2ec38e86642a83a44739a0d2c7af072e14a
Bowon Ryu [Mon, 20 Feb 2023 06:38:25 +0000 (15:38 +0900)]
[Tizen] Fix multiline text size issue in label
When font validation in the relayout process, if text update info is initialized,
font data should be cleared before UpdateModel() to ensure the number of characters removed and added.
Without this condition, incorrect text updates will occur due to incorrect number of characters.
Change-Id: Ic0a56dc355b746b2e718aa87ae61c507ade427b5
Signed-off-by: Bowon Ryu <bowon.ryu@samsung.com>
Eunki Hong [Mon, 20 Feb 2023 04:49:07 +0000 (04:49 +0000)]
Merge "[Tizen] Make SceneView's default camera is 3D camera" into tizen_7.0
Eunki, Hong [Fri, 17 Feb 2023 06:36:35 +0000 (15:36 +0900)]
[Tizen] Make SceneView's default camera is 3D camera
Since SceneView used camera don't care about the Dali::Scene size,
Let we use 3D engine style camera. It will not change the property
automatically, and also will looks good to 3D object.
Change-Id: I31d9d0fc042cdbf8b33bc4d87a912ca149e248fe
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Eunki, Hong [Thu, 16 Feb 2023 09:10:10 +0000 (18:10 +0900)]
[Tizen] Fix gltf animation's 0 frame behavior.
Current dali animation's KeyFrame didn't determine when the time is out of frame.
But gltf 2.0 spec say that we must clamp the time as input range.
To match the spec, make the 0 frame's animation keyframe value.
Change-Id: I2831d9f44c2e21ad12b40fa4b52c1d4e4b1d8e9a
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Eunki Hong [Thu, 16 Feb 2023 09:14:18 +0000 (09:14 +0000)]
Merge "[Tizen] Backport tizen_7.5 for Scene3D" into tizen_7.0
Bowon Ryu [Wed, 15 Feb 2023 08:21:19 +0000 (17:21 +0900)]
[Tizen] Fix the valid condition of text update
Even when numberOfCharacters is 0u,
mParagraphCharacterIndex and mRequestedNumberOfCharacters cannot be greater than numberOfCharacters.
But in this case(text is empty), normal operation can be guaranteed by clear of update info.
Change-Id: Iad714d19598943492bae5eb51f1904a22d57b66c
Signed-off-by: Bowon Ryu <bowon.ryu@samsung.com>
Eunki, Hong [Tue, 7 Feb 2023 06:59:51 +0000 (15:59 +0900)]
[Tizen] Backport tizen_7.5 for Scene3D
This is a combination of 54 commits.
Revert "[Tizen] Texture size reduction on the fly for 3D model using metadata"
This reverts commit
bd8d3703a1147e323aafca88a8a774495cc1e56c.
Revert "[Tizen] Make API to set MultiSampling level for SceneView"
This reverts commit
59df57f1a5ebfefd81ba56e44c918e41e5c452d5.
Revert "[Tizen] Able to load uint8_t type Joint + Able to animate 0 duration animation"
This reverts commit
95d8d0192701e1127293955308f67845a309b228.
Revert "[Tizen] inherit parent color in 3D model."
This reverts commit
780ee74b53272bfcf3b26e6ca9b0c74aa0e84c0b.
Revert "[Tizen] Support Fade animation when UseFrameBuffer is true in SceneView."
This reverts commit
8cf0d351b5ec71b456a0ce6565047a34233019e9.
Revert "[Tizen] Use AnimatedProperty instead of name for getActor."
This reverts commit
b74811f29389151fba6870c8bcf19d4e96b8474a.
Revert "[Tizen] Make FBO visual use premultiplied alpha (2)"
This reverts commit
d3d7e9f9f8e1555e6ce9de3a8496a9af11188009.
Revert "[Tizen] Make FBO visual use premultiplied alpha"
This reverts commit
280dc16b205e696bc652baaf90361a176f331f0a.
Revert "[Tizen] Fix opacity animation issue in 3D"
This reverts commit
f5d4d324ddb013f67fe21367027ab7425bd0fdb8.
Revert "[Tizen] Do not name check to add node"
This reverts commit
37a0481c17b7083f8a28d5274bd47a7d43290ed0.
Revert "[Tizen] Fix Scene3D shader cache miss"
This reverts commit
cae8c5dee904d34aaad8343d33c54e152d80f6b4.
Revert "[Tizen] Fix Scene3d::Loader bugs"
This reverts commit
c2d880b6505e40da7324195c9e2e3ee1cb40a0c4.
Revert "[Tizen] Fix 3D blend issue"
This reverts commit
16874136b5ffc785c05dbe2ab878a28792f5a07f.
Revert "[Tizen] Make Scene3D controls also applied actor color"
This reverts commit
089ff5baf1e75b911225806238570302b1ef184a.
Revert "[Tizen] Make SceneView FBO multisampling + Sync utc harness"
This reverts commit
e31bcb82f18b6117db091de8065c72e83a1efd33.
Revert "[Tizen] Support KHR_materials_specular and KHR_materials_ior extension of glTF"
This reverts commit
d63237ffbc775aa0328b802aed35d9da80874533.
Revert "[Tizen] Fix bug that didn't make nodes for child of multiple primitive"
This reverts commit
c12abcc2110b68497af5001671060182c491b207.
Revert "[Tizen] Remove SceneView RenderTask when destroied"
This reverts commit
6fa874b3ee5fc3da1a1f95e296a033ccefe3406f.
Revert "[Tizen](Scene3D) Change model's default behavior"
This reverts commit
a080be35b4960c8b7aee92c4df7cebfc9095274f.
Revert "[Tizen] Refactoring of SceneView and Model."
This reverts commit
cc7b2a7ebc1454b3a16db294d87fddb34b7a2995.
Revert "[Tizen] Fix Svace issue for 64bit"
This reverts commit
6b09321d0f01f06b199117f264a39e4af7beb4d1.
Revert "[Tizen] Fix build error"
This reverts commit
ff4ecf19c7d7d55af2c8750155c80c599afbc0e6.
Revert "[Tizen] Add Asynchronous loading for Model and SceneView"
This reverts commit
a557071870fe977361cb6d4316927f57ee3c8f60.
Add Skybox in SceneView
Signed-off-by: seungho <sbsh.baek@samsung.com>
Fix Svace issue for 64bit
Solve some convert from size_t to uint32_t case.
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Refactoring of SceneView and Model.
- Loosen the coupling between SceneView and Model using observer.
- Add Priority of IBL. Model IBL has higher priority than SceneView.
Signed-off-by: seungho <sbsh.baek@samsung.com>
(Scene3D) Change model's default behavior
1. Make mRootModel's KEYBOARD_FOCUSABLE as false in default.
2. Set ParentOrigin at Intialize timing, not ModelLoad completed
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Deprecate camera plane distance setter + Allow to setup OrthographicSize.
Set each Left/Right/Top/Bottom plane distance setter is deprecated.
Instead of that API, we make to use OrthographicSize.
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Make Scene3D controls also applied actor color
Let we make PBR shader use our world color system.
TODO : We should change DepthWrite & AlphaBlend properties on coreside.
Since the model might has 32bit image as texture, we cannot make
DepthWrite / BlendMode as AUTO.
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Creates RenderTask when it connects on Scene and Remove it when it is disconnected.
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
Enable multiple primitives in a mesh(glTF)
Signed-off-by: seunghobaek <sbsh.baek@samsung.com>
Support KHR_materials_specular and KHR_materials_ior extension of glTF
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
Make SceneView FBO multisampling + Sync utc harness
Let we make SceneView's FBO usecase use multisampling as default.
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Texture size reduction on the fly for 3D model using metadata
Make FBO visual use premultiplied alpha
Since FBO result use Premultiplied alpha texture,
make sure that FBO image use premultiplied alpha during render.
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Equirectangular projection support for Skybox in SceneView
Fix Scene3d::Loader bugs
- Make Renderer translucent when AlphaMode is Blend
- Use discard for AlphaMode.Mask in shader
- Fixed ConvertSampler bug.
- Fixed crash when there isn't "scene" property in glTF
- Fixed wrong loading of buffer when the bufferView uses stride.
- Returns MeshDefinition::Blob::GetBufferSize() only mLength
This is because every use case of this method is to set real buffer size without considering stride.
- Fix texture order of Specular and Specular color.
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
Allow duplicated name and use Actor ID as a unique key to define animation.
- We don't need to make crash when multiple nodes had same name.
- DALi actor also allows duplicated name.
- Because name is not an unique key, make AnimationDefinition use Actor ID as a key.(for glTF)
- glTF don't use name as a key.
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
Fix Scene3D shader cache miss
1. Hash include THREE_TEX eash items.
It will reduce some shader hash collision.
2. Make vertex color use ifdef in shader level.
(Since we'd better skip to allocate vertex color attribs in usal case)
TODO : Current shader-define-factory.cpp implement has various problem.
We should refactorize this code, and re-open UTC soon
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Minor coverity issue fixed (scene3d only)
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Modify ColorMode Policy for SceneView and Model
- For Model, Use ColorMode::USE_OWN_MULTIPLY_PARENT_ALPHA for ColorMode
- Actor::Property::COLOR will affect its children Actors.
- For SceneView, Use ColorMode::USE_OWN_COLOR when mUseFrameBuffer is true.
- When Opacity of SceneView is animated, it looks natural.
- But, use ColorMode::USE_OWN_MULTIPLY_PARENT_ALPHA when mUseFrameBuffer is false.
- Then, Opacity animation is works (but slightly looks unnatural.)
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
Use Renderer::BlendMode::USE_ACTOR_OPACITY instead to use depth write mode
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
Bug fix to load animation of dli in Model
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
Asynchronous loading of Scene3D resources
Signed-off-by: seunghobaek <sbsh.baek@samsung.com>
Fix SVACE error in scene-view
Able to load uint8_t type Joint + Able to animate 0 duration animation
This patch try to resolve 2 kind of unsupported feature.
1. There was possible to set JOINT_0 accessor type as unsigend byte.
Make it supported.
2. If duration of gltf was 0, the keyframe's progress value become -nan.
It may occure some problems.
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Use EnvironmentMapLoadTask to load Equirectangular projection image.
- Changes SkymapType to EnvironmentMapType
- TODO: To make IBL image support Equirectangular projection
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
Fix default IBL env map type as Cube Map
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
Support embedded texture data for glTF + alpha
- Supports embedded gltf
- Supports data: iri for image.uri
- Supports data: iri for buffer.uri
- Supports image.bufferView.
- Additional Fix
- Changes default value of Sampler.wrapS, wrapT to Refeat
- Adds function to decode base64 to std::vector<uint_8>
- Fixes base64 decoder to do not cut end part.
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
Make API to set MultiSampling level for SceneView
Make new API to set FBO's multiSamplingLevel what this scene view will use.
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Fixed SVACE issue in gltf2-loader
Fix svace issue (uint32_t to long or std::streamsize)
To convert unsigned value into signed value safely,
we should convert as unsigned type with same size as signed type,
and after done, convert into signed type.
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Reduce decoding time of embedded gltf + Fix base64 encode bug
Let we don't copy the full string during decode base64.
+
Let we print '=' tags end of encoded base64 result, so
we can decode the encode result at common external library.
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Generate tangent as Vector4 for gltf
Since gltf use aTangent as Vector4 type, we seperate
the tangent load logic and shaders.
But dali auto generated aTangent used only for Vector3.
It mean Vector4's w value was ignored.
This patch branch whether we use Vector3 tangent or not.
Change-Id: I78c4e77b9322d997bfdf7cd3f0b548ed7a188666
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
Eunki, Hong [Wed, 8 Feb 2023 05:55:49 +0000 (14:55 +0900)]
[Tizen] Make default FBO MSAA level as 4
To keep backward behavior, make default value as 4.
Change-Id: I26b7d0d6c3c1a93f5d516dc7c1050bbfa625dda2
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Richard [Wed, 16 Nov 2022 14:56:40 +0000 (14:56 +0000)]
[Tizen] Texture size reduction on the fly for 3D model using metadata
Change-Id: Id07b93141797569bc99496c8baa9f72e6a4dde15
Eunki, Hong [Fri, 27 Jan 2023 07:42:52 +0000 (16:42 +0900)]
[Tizen] Make API to set MultiSampling level for SceneView
Change-Id: I8a3c61d8590d883b915a781ed5ab609e3394f771
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Bowon Ryu [Thu, 12 Jan 2023 08:20:10 +0000 (17:20 +0900)]
[Tizen] Remove unnecessray Clipboard creation in text controller
Change-Id: Ia6a3dcadaecefb3b5e835734338f5a8c37240f4f
Signed-off-by: Bowon Ryu <bowon.ryu@samsung.com>
Eunki, Hong [Wed, 4 Jan 2023 16:00:05 +0000 (01:00 +0900)]
[Tizen] Able to load uint8_t type Joint + Able to animate 0 duration animation
Change-Id: I7ac634d346f34e85947c9771437ed0bae266a3f3
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Bowon Ryu [Thu, 12 Jan 2023 03:17:39 +0000 (12:17 +0900)]
[Tizen] Change trace tag in Text
DALI_TRACE_PERFORMANCE_MARKER tag is outputting too many logs by default.
Separate tag for text : DALI_TRACE_TEXT_PERFORMANCE_MARKER
Change-Id: I2d771b2fc64dac052f6a9e6a20bbf1a72a1a22a9
Signed-off-by: Bowon Ryu <bowon.ryu@samsung.com>
dongsug song [Thu, 5 Jan 2023 09:04:12 +0000 (09:04 +0000)]
Merge "[Tizen] Add an API for 'create,window' event." into tizen_7.0
Eunki, Hong [Thu, 29 Dec 2022 13:28:01 +0000 (22:28 +0900)]
[Tizen][Text] Add some more trace marker for text
Change-Id: Id0d9161cce9af8cfcbeb891d9dee18d477be2b46
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Eunki, Hong [Thu, 29 Dec 2022 12:58:50 +0000 (21:58 +0900)]
[Tizen] Do not relayout if equal font family setted
Change-Id: I8dc263f129ebdadf54b7e17f7729eb922c54a915
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Lukasz Oleksak [Wed, 14 Dec 2022 13:34:20 +0000 (14:34 +0100)]
[ATSPI] Lazily embed the web content subtree
Delays necessity to make synchronous call on dbus, what reduces chances
for deadlock.
Change-Id: Ica669ca490619ca0906cc0c14c8f7dfde0925023
(cherry picked from commit
08137e93e1cab00962a917ac193d815be78eecca)
Artur Świgoń [Mon, 12 Dec 2022 10:24:13 +0000 (11:24 +0100)]
[Tizen][AT-SPI] Add child_bus attribute to parents having remote accessibility object child
This will allow AT-clients to query in a single dbus call (via collection iface) all busses used for UI embedding.
Result of such query may be used by AT-client to limit its dbus calls to:
a) active window process
b) processes that provide UIs embedded in active window
and avoid dbus calls to processes being in background, which respond very slowly.
Change-Id: Iacccb00087380e3f2e33cd8feb7b5120068922c7
seungho baek [Tue, 20 Dec 2022 06:36:24 +0000 (15:36 +0900)]
[Tizen] inherit parent color in 3D model.
Change-Id: I57ec36ecf3aa51ba7d1debc2df0e4c1539a5248b
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
tscholb [Thu, 15 Dec 2022 06:11:53 +0000 (15:11 +0900)]
[Tizen] Fix issue using broken image
when GetNaturalSize() is called after the image is already loaded,
we can't get proper broken image because mPlacementActor is null.
Change-Id: I9394c4447b46ee442056266e4be7f6c220a3ce4d
Bowon Ryu [Thu, 15 Dec 2022 06:33:30 +0000 (15:33 +0900)]
[Tizen] Add Filter in InputFilter
This patch enables filtering of strings from InsertText() by regex.
Change-Id: I1b28f0e24c782f94ee0453b1366d51ea08e45c36
Signed-off-by: Bowon Ryu <bowon.ryu@samsung.com>
Heeyong Song [Thu, 15 Dec 2022 09:12:23 +0000 (18:12 +0900)]
[Tizen] Change DebugPriority name
Change-Id: I6558c8cebec6a26119afd93d7b427490081de9fc
seungho baek [Fri, 16 Dec 2022 06:16:27 +0000 (15:16 +0900)]
[Tizen] Support Fade animation when UseFrameBuffer is true in SceneView.
Change-Id: I9be39db73b3b157e673415f6d5729654031f29d5
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
seungho baek [Wed, 14 Dec 2022 09:11:00 +0000 (18:11 +0900)]
[Tizen] Use AnimatedProperty instead of name for getActor.
- This allows AnimationDefinition can find target Actor by using node id
Change-Id: Ie827fb71c574b56f71cdc9ffeeb6ae11046e96e3
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
huayong.xu [Wed, 14 Dec 2022 07:40:25 +0000 (15:40 +0800)]
[Tizen] Add an API for 'create,window' event.
Change-Id: I1d653e4fad7ae80e157a2a53bf0b70471df63c82
Eunki, Hong [Tue, 13 Dec 2022 07:56:55 +0000 (16:56 +0900)]
[Tizen] Make FBO visual use premultiplied alpha (2)
Set release policy as DESTROYED so let we don't call
LoadTexture at SceneOn timming multiple times
Change-Id: I8d68cab136ab0809c0fd5592c81618d51b19bc0c
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Eunki Hong [Tue, 13 Dec 2022 06:58:33 +0000 (06:58 +0000)]
Merge "[Tizen] Make FBO visual use premultiplied alpha" into tizen_7.0
Seungho BAEK [Tue, 13 Dec 2022 06:48:24 +0000 (06:48 +0000)]
Merge "[Tizen] Fix opacity animation issue in 3D" into tizen_7.0
Eunki, Hong [Tue, 13 Dec 2022 06:43:47 +0000 (15:43 +0900)]
[Tizen] Make FBO visual use premultiplied alpha
Since FBO result use Premultiplied alpha texture,
make sure that FBO image use premultiplied alpha.
Change-Id: I53e957ac3e2311587f3b68c29e4ca967972ad24d
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
seungho baek [Mon, 12 Dec 2022 08:28:43 +0000 (17:28 +0900)]
[Tizen] Fix opacity animation issue in 3D
Change-Id: Ib46c120a62f10d846c43855691604145dc52c8ad
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
seungho baek [Mon, 12 Dec 2022 05:26:05 +0000 (14:26 +0900)]
[Tizen] Do not name check to add node
- We don't need to make crash when multiple nodes had same name.
- DALi actor also allows duplicated name.
Change-Id: Ibcb3e21640cf2a8124bb450b73159eeaf1cdf4f3
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
Eunki, Hong [Thu, 8 Dec 2022 09:53:01 +0000 (18:53 +0900)]
[Tizen] Fix Scene3D shader cache miss
Change-Id: I53858118dc98ae16ede4d48bd234ebc24e112933
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Heeyong Song [Tue, 29 Nov 2022 11:19:26 +0000 (20:19 +0900)]
[Tizen](Vector) Notify vector renderer that rendering is stopped
Change-Id: Ic40190fd905bac34cccc7555ad027e8b5b910ea0
seungho baek [Thu, 1 Dec 2022 10:21:49 +0000 (19:21 +0900)]
[Tizen] Fix Scene3d::Loader bugs
- Make Renderer translucent when AlphaMode is Blend
- Use discard for AlphaMode.Mask in shader
- Fixed ConvertSampler bug.
- Fixed crash when there isn't "scene" property in glTF
- Fixed wrong loading of buffer when the bufferView uses stride.
- Returns MeshDefinition::Blob::GetBufferSize() only mLength
This is because every use case of this method is to set real buffer size without considering stride.
- Fix texture order of Specular and Specular color.
Change-Id: Ie05108557ea25faa4865ce0e3903d7018f1db621
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
Bowon Ryu [Tue, 29 Nov 2022 10:48:44 +0000 (19:48 +0900)]
[Tizen] fix white space issue in hidden input
The calculated text size is used in atlas renderer.
When the text is all white space, partial render issue occurs because the width is 0.
To avoid issue, do not remove the white space size in hidden input mode.
Change-Id: Id92becdb0103fa6dee20c5cd272ee3d4314121c6
Signed-off-by: Bowon Ryu <bowon.ryu@samsung.com>
Bowon Ryu [Thu, 24 Nov 2022 10:56:16 +0000 (19:56 +0900)]
[Tizen] Fix hidden input issue
Fixed issues with SHOW_LAST_CHARACTER mode
- After all text is deleted, the first input character is not visible.
- The last character is always visible regardless of the position of the cursor.
Change-Id: I48689bf7e38b05c655d416c4e2df1d4553dca992
Signed-off-by: Bowon Ryu <bowon.ryu@samsung.com>
Eunki, Hong [Thu, 24 Nov 2022 07:41:44 +0000 (16:41 +0900)]
[Tizen] Fix 3D blend issue
Change-Id: Iec6fdc09fd028b2b8a4507da64b61d88014f27f3
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
Eunki Hong [Tue, 22 Nov 2022 10:45:41 +0000 (10:45 +0000)]
Merge "[Tizen] Make Scene3D controls also applied actor color" into tizen_7.0
Eunki Hong [Tue, 22 Nov 2022 06:55:44 +0000 (06:55 +0000)]
Merge "[Tizen] Make SceneView FBO multisampling + Sync utc harness" into tizen_7.0
Eunki Hong [Sun, 20 Nov 2022 07:07:18 +0000 (16:07 +0900)]
[Tizen] Make Scene3D controls also applied actor color
Let we make PBR shader use our world color system.
TODO : We should change DepthWrite & AlphaBlend properties on coreside.
Since the model might has 32bit image as texture, we cannot make
DepthWrite as AUTO.
Change-Id: I4e3371d940cdebc45c43d2cb9acc88018c111bf2
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
seungho baek [Thu, 17 Nov 2022 14:25:47 +0000 (23:25 +0900)]
[Tizen] Support KHR_materials_specular and KHR_materials_ior extension of glTF
Change-Id: Ieccdc7046bcc0e0a231d4d39526d610a9b7cf036
Signed-off-by: seungho baek <sbsh.baek@samsung.com>
seungho baek [Fri, 18 Nov 2022 05:56:31 +0000 (14:56 +0900)]
[Tizen] Fix bug that didn't make nodes for child of multiple primitive
- And add double sided property
Change-Id: I2ccb4977ff79782a5cb2ba154ea313517397ed2a
Signed-off-by: seungho baek <sbsh.baek@samsung.com>