summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorseungho <sbsh.baek@samsung.com>2022-06-16 18:16:22 +0900
committerseungho <sbsh.baek@samsung.com>2022-07-18 15:17:44 +0900
commitba6f393434a64215d9879f982ebfac0ac0ab2025 (patch)
tree5f103cabf038f640260dbabda17f4fc47d6918ad
parentaf599038d0b1ce8d95ae912133e5ce2b249de74c (diff)
downloaddali-demo-ba6f393434a64215d9879f982ebfac0ac0ab2025.tar.gz
dali-demo-ba6f393434a64215d9879f982ebfac0ac0ab2025.tar.bz2
dali-demo-ba6f393434a64215d9879f982ebfac0ac0ab2025.zip
Change Scene3dView to ModelView
Change-Id: I0245be90e350f74bac1f2e0a3461077aa00bfa82 Signed-off-by: seungho <sbsh.baek@samsung.com>
-rw-r--r--com.samsung.dali-demo.xml4
-rw-r--r--demo/dali-demo.cpp2
-rw-r--r--examples/scene3d-model-view/scene3d-model-view-example.cpp (renamed from examples/scene3d-view/scene3d-view-example.cpp)138
-rw-r--r--resources/models/beer_modelView.dli186
-rwxr-xr-xresources/po/as.po4
-rwxr-xr-xresources/po/de.po4
-rwxr-xr-xresources/po/en_GB.po4
-rwxr-xr-xresources/po/en_US.po4
-rwxr-xr-xresources/po/es.po4
-rwxr-xr-xresources/po/fi.po4
-rwxr-xr-xresources/po/ko.po4
-rwxr-xr-xresources/po/ml.po4
-rwxr-xr-xresources/po/ur.po4
-rwxr-xr-xresources/po/zn_CH.po4
-rw-r--r--shared/dali-demo-strings.h4
15 files changed, 280 insertions, 94 deletions
diff --git a/com.samsung.dali-demo.xml b/com.samsung.dali-demo.xml
index fde96a58..d17aba3e 100644
--- a/com.samsung.dali-demo.xml
+++ b/com.samsung.dali-demo.xml
@@ -274,8 +274,8 @@
<ui-application appid="rendering-triangle.example" exec="/usr/apps/com.samsung.dali-demo/bin/rendering-triangle.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
<label>Rendering Triangle</label>
</ui-application>
- <ui-application appid="scene3d-view.example" exec="/usr/apps/com.samsung.dali-demo/bin/scene3d-view.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
- <label>Scene3d View</label>
+ <ui-application appid="scene3d-model-view.example" exec="/usr/apps/com.samsung.dali-demo/bin/scene3d-model-view.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+ <label>Model View</label>
</ui-application>
<ui-application appid="scene3d.example" exec="/usr/apps/com.samsung.dali-demo/bin/scene3d.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
<label>Scene3D</label>
diff --git a/demo/dali-demo.cpp b/demo/dali-demo.cpp
index 0dd09b9d..9e82e0ea 100644
--- a/demo/dali-demo.cpp
+++ b/demo/dali-demo.cpp
@@ -58,8 +58,8 @@ int DALI_EXPORT_API main(int argc, char** argv)
demo.AddExample(Example("renderer-stencil.example", DALI_DEMO_STR_TITLE_RENDERER_STENCIL));
demo.AddExample(Example("rendering-skybox.example", DALI_DEMO_STR_TITLE_SKYBOX));
demo.AddExample(Example("rendering-basic-pbr.example", DALI_DEMO_STR_TITLE_PBR));
- demo.AddExample(Example("scene3d-view.example", DALI_DEMO_STR_TITLE_SCENE3D_VIEW));
#ifdef DALI_SCENE3D_AVAILABLE
+ demo.AddExample(Example("scene3d-model-view.example", DALI_DEMO_STR_TITLE_SCENE3D_MODEL_VIEW));
demo.AddExample(Example("scene3d.example", DALI_DEMO_STR_TITLE_SCENE3D));
#endif //DALI_SCENE3D_AVAILABLE
demo.AddExample(Example("shadows-and-lights.example", DALI_DEMO_STR_TITLE_LIGHTS_AND_SHADOWS));
diff --git a/examples/scene3d-view/scene3d-view-example.cpp b/examples/scene3d-model-view/scene3d-model-view-example.cpp
index 6accbf1b..a257f562 100644
--- a/examples/scene3d-view/scene3d-view-example.cpp
+++ b/examples/scene3d-model-view/scene3d-model-view-example.cpp
@@ -16,7 +16,6 @@
*/
#include <dali-toolkit/dali-toolkit.h>
-#include <dali-toolkit/devel-api/controls/scene3d-view/scene3d-view.h>
#include <dali/dali.h>
#include <dali/devel-api/adaptor-framework/file-loader.h>
#include <dali/devel-api/adaptor-framework/file-stream.h>
@@ -25,12 +24,14 @@
#include <dali/public-api/actors/camera-actor.h>
#include <cstring>
+#include <dali-scene3d/public-api/controls/model-view/model-view.h>
+
using namespace Dali;
using namespace Dali::Toolkit;
/*
- * This example shows how to create and display a Scene3dView control.
- * The application can load 5 different glTF model to Scene3dView control.
+ * This example shows how to create and display a ModelView control.
+ * The application can load 5 different glTF model to ModelView control.
* Each model has diffirent material. BoomBox shows glossy or matt plastic material.
* DamagedHelmet shows a kind of reflective glass and metallic object.
* Microphone shows a roughness of metallic objects.
@@ -41,17 +42,10 @@ using namespace Dali::Toolkit;
namespace
{
-enum GLTF_MODEL_LIST
-{
- GLTF_ANIMATED_BOX = 0,
- GLTF_LANTERN,
- GLTF_BOOMBOX,
- GLTF_DAMAGED_HELMET,
- GLTF_MICROPHONE,
- NUM_OF_GLTF_MODELS
-};
-const char* gltf_list[6] =
+static constexpr int32_t NUM_OF_GLTF_MODELS = 7;
+
+const char* gltf_list[7] =
{
/**
* For the BoxAnimated.gltf and its Assets
@@ -86,15 +80,17 @@ const char* gltf_list[6] =
* Creative Commons Attribution-NonCommercial license
* https://sketchfab.com/models/5172dbe9281a45f48cee8c15bdfa1831
*/
- "microphone.gltf"};
-
-Vector3 camera_position_list[6] =
- {
- Vector3(-6.00, -8.00, 12.00),
- Vector3(-30.0, -40.0, 60.0),
- Vector3(-0.03, -0.04, 0.06),
- Vector3(-3.00, -4.00, 6.00),
- Vector3(-0.00, -3.00, 4.00)};
+ "microphone.gltf",
+ /**
+ * For the beer_modelView.dli and its Assets
+ * This model includes a bottle of beer and cube box.
+ */
+ "beer_modelView.dli",
+ /**
+ * For the exercise_modelView.dli and its Assets
+ * This model includes a sportsman
+ */
+ "exercise_modelView.dli"};
/**
* For the diffuse and specular cube map texture.
@@ -124,8 +120,9 @@ Vector3 camera_position_list[6] =
const std::string modeldir = DEMO_MODEL_DIR;
const std::string imagedir = DEMO_IMAGE_DIR;
-const std::string uri_diffuse_texture(imagedir + "forest_diffuse_cubemap.png");
-const std::string uri_specular_texture(imagedir + "forest_specular_cubemap.png");
+const std::string uri_cube_diffuse_texture(imagedir + "forest_diffuse_cubemap.png");
+const std::string uri_diffuse_texture(imagedir + "Studio/Irradiance.ktx");
+const std::string uri_specular_texture(imagedir + "Studio/Radiance.ktx");
const int32_t cubeMap_index_x[6] = {2, 0, 1, 1, 1, 3};
const int32_t cubeMap_index_y[6] = {1, 1, 0, 2, 1, 1};
@@ -191,25 +188,25 @@ Shader LoadShaders(const std::string& shaderVertexFileName, const std::string& s
} // namespace
/**
- * This example shows how to render glTF model with Scene3dView
+ * This example shows how to render glTF model with ModelView
* How to test
* - Input UP or DOWN key to make the model rotate or stop.
* - Input LEFT or RIGHT key to change glTF model
* - Double Touch also changes glTF model.
*/
-class Scene3dViewController : public ConnectionTracker
+class Scene3DModelViewExample : public ConnectionTracker
{
public:
- Scene3dViewController(Application& application)
+ Scene3DModelViewExample(Application& application)
: mApplication(application),
mModelOrientation(),
mAnimationStop(false)
{
// Connect to the Application's Init signal
- mApplication.InitSignal().Connect(this, &Scene3dViewController::Create);
+ mApplication.InitSignal().Connect(this, &Scene3DModelViewExample::Create);
}
- ~Scene3dViewController()
+ ~Scene3DModelViewExample()
{
mAnimation.Stop();
}
@@ -225,20 +222,20 @@ public:
RenderTask renderTask = mWindow.GetRenderTaskList().GetTask(0);
renderTask.SetCullMode(false);
- mCurrentGlTF = GLTF_ANIMATED_BOX;
- CreateSceneFromGLTF(gltf_list[mCurrentGlTF]);
+ mCurrentGlTF = 0u;
+ CreateSceneFromGLTF(mCurrentGlTF);
SetCameraActor();
CreateSkybox();
SetAnimation();
// Respond to a click anywhere on the mWindow
- mWindow.GetRootLayer().TouchedSignal().Connect(this, &Scene3dViewController::OnTouch);
- mWindow.KeyEventSignal().Connect(this, &Scene3dViewController::OnKeyEvent);
- mWindow.GetRootLayer().WheelEventSignal().Connect(this, &Scene3dViewController::OnWheel);
+ mWindow.GetRootLayer().TouchedSignal().Connect(this, &Scene3DModelViewExample::OnTouch);
+ mWindow.KeyEventSignal().Connect(this, &Scene3DModelViewExample::OnKeyEvent);
+ mWindow.GetRootLayer().WheelEventSignal().Connect(this, &Scene3DModelViewExample::OnWheel);
mDoubleTap = false;
mDoubleTapTime = Timer::New(150);
- mDoubleTapTime.TickSignal().Connect(this, &Scene3dViewController::OnDoubleTapTime);
+ mDoubleTapTime.TickSignal().Connect(this, &Scene3DModelViewExample::OnDoubleTapTime);
}
bool OnWheel(Actor actor, const WheelEvent& wheelEvent)
@@ -247,9 +244,9 @@ public:
mWheelDelta = std::max(0.5f, mWheelDelta);
mWheelDelta = std::min(2.0f, mWheelDelta);
- if(mScene3dView)
+ if(mModelView)
{
- mScene3dView.SetProperty(Actor::Property::SCALE, mWheelDelta);
+ mModelView.SetProperty(Actor::Property::SCALE, mWheelDelta);
}
return true;
@@ -261,32 +258,46 @@ public:
return true;
}
- void CreateSceneFromGLTF(std::string modelName)
+ void CreateSceneFromGLTF(uint32_t index)
{
- if(mScene3dView)
+ if(mModelView)
{
- mWindow.GetRootLayer().Remove(mScene3dView);
+ mWindow.GetRootLayer().Remove(mModelView);
}
std::string gltfUrl = modeldir;
- gltfUrl += modelName;
- mScene3dView = Scene3dView::New(gltfUrl, uri_diffuse_texture, uri_specular_texture, Vector4::ONE);
-
- mScene3dView.SetLight(Scene3dView::LightType::POINT_LIGHT, Vector3(-5, -5, 5), Vector3(1, 1, 1));
+ gltfUrl += gltf_list[index];
- mWindow.Add(mScene3dView);
- mScene3dView.PlayAnimations();
+ mModelView = Dali::Scene3D::ModelView::New(gltfUrl);
+ if(index == 0u)
+ {
+ mModelView.SetProperty(Dali::Actor::Property::SIZE, Vector2(300, 300));
+ mModelView.SetProperty(Dali::Actor::Property::POSITION_Y, 100);
+ }
+ else
+ {
+ mModelView.SetProperty(Dali::Actor::Property::SIZE, Vector2(600, 600));
+ }
+ mModelView.SetProperty(Dali::Actor::Property::ANCHOR_POINT, AnchorPoint::CENTER);
+ mModelView.SetProperty(Dali::Actor::Property::PARENT_ORIGIN, ParentOrigin::CENTER);
+ mModelView.SetImageBasedLightSource(uri_diffuse_texture, uri_specular_texture, 0.6f);
+ mModelView.FitSize(true);
+ mModelView.FitCenter(true);
+
+ mWindow.Add(mModelView);
+ if(mModelView.GetAnimationCount()>0)
+ {
+ Animation animation = (index == 0u) ? mModelView.GetAnimation(0u) : mModelView.GetAnimation("idleToSquatClip_0");
+ animation.Play();
+ animation.SetLoopCount(0);
+ }
}
void SetCameraActor()
{
- mCameraPosition = camera_position_list[mCurrentGlTF];
mCameraActor = mWindow.GetRenderTaskList().GetTask(0).GetCameraActor();
- mCameraActor.SetProperty(Dali::Actor::Property::PARENT_ORIGIN, ParentOrigin::CENTER);
- mCameraActor.SetProperty(Dali::Actor::Property::ANCHOR_POINT, AnchorPoint::CENTER);
- mCameraActor.SetProperty(Dali::Actor::Property::POSITION, mCameraPosition);
+ mCameraPosition = mCameraActor.GetProperty<Vector3>(Dali::Actor::Property::POSITION);
mCameraActor.SetType(Dali::Camera::LOOK_AT_TARGET);
- mCameraActor.SetNearClippingPlane(0.01);
}
void CreateSkybox()
@@ -359,7 +370,7 @@ public:
mSkyboxGeometry.SetType(Geometry::TRIANGLES);
// Diffuse Cube Map
- Devel::PixelBuffer diffusePixelBuffer = LoadImageFromFile(uri_diffuse_texture);
+ Devel::PixelBuffer diffusePixelBuffer = LoadImageFromFile(uri_cube_diffuse_texture);
int32_t diffuseFaceSize = diffusePixelBuffer.GetWidth() / 4;
Texture texture = Texture::New(TextureType::TEXTURE_CUBE, diffusePixelBuffer.GetPixelFormat(), diffuseFaceSize, diffuseFaceSize);
for(int32_t i = 0; i < 6; ++i)
@@ -405,7 +416,7 @@ public:
{
keyframes.Add(i * lengthAnimation, Quaternion(Degree(i * 90.0), Vector3::YAXIS));
}
- mAnimation.AnimateBetween(Property(mScene3dView, Dali::Actor::Property::ORIENTATION), keyframes, Animation::Interpolation::LINEAR);
+ mAnimation.AnimateBetween(Property(mModelView, Dali::Actor::Property::ORIENTATION), keyframes, Animation::Interpolation::LINEAR);
mAnimation.SetLooping(true);
mAnimation.Play();
}
@@ -465,18 +476,7 @@ public:
{
mCurrentGlTF = NUM_OF_GLTF_MODELS - 1;
}
- CreateSceneFromGLTF(gltf_list[mCurrentGlTF]);
- mCameraPosition = camera_position_list[mCurrentGlTF];
- mCameraActor.SetProperty(Dali::Actor::Property::POSITION, mCameraPosition);
- if(mCurrentGlTF == GLTF_LANTERN)
- {
- mCameraActor.SetTargetPosition(Vector3(0.0, -15.0, 0.0));
- }
- else
- {
- mCameraActor.SetTargetPosition(Vector3::ZERO);
- }
- mSkyboxActor.SetProperty(Dali::Actor::Property::POSITION, mCameraPosition);
+ CreateSceneFromGLTF(mCurrentGlTF);
SetAnimation();
mAnimationStop = false;
mWheelDelta = 1.0f;
@@ -604,8 +604,8 @@ private:
CameraActor mCameraActor;
Dali::Timer mTimer;
- Vector3 mCameraPosition;
- Scene3dView mScene3dView;
+ Vector3 mCameraPosition;
+ Dali::Scene3D::ModelView mModelView;
Vector2 mPointZ;
Quaternion mModelOrientation;
@@ -630,8 +630,8 @@ private:
int32_t DALI_EXPORT_API main(int32_t argc, char** argv)
{
- Application application = Application::New(&argc, &argv);
- Scene3dViewController test(application);
+ Application application = Application::New(&argc, &argv);
+ Scene3DModelViewExample test(application);
application.MainLoop();
return 0;
}
diff --git a/resources/models/beer_modelView.dli b/resources/models/beer_modelView.dli
new file mode 100644
index 00000000..3a647a30
--- /dev/null
+++ b/resources/models/beer_modelView.dli
@@ -0,0 +1,186 @@
+{
+ "asset": { "version": "1.0" },
+ "scene": 0,
+ "scenes": [ { "nodes": [ 0 ] } ],
+ "nodes": [
+ {
+ "name": "Scene",
+ "matrix": [ 1, 0, 0, 0, 0, 0, -1, 0, 0, 1, 0, 0, 0, 0, 0, 1 ],
+ "children": [ 1, 2 ]
+ },
+ {
+ "name": "Cube",
+ "matrix": [ 2.5, 0, 0, 0, 0, 2.5, 0, 0, 0, 0, 2.5, 0, 0, 0, 0, 1 ],
+ "model": {
+ "mesh": 0,
+ "material": 0,
+ "shader": 0
+ }
+ },
+ {
+ "name": "bottle",
+ "matrix": [ 0.125, 0, 0, 0, 0, -0, 0.125, 0, 0, -0.125, -0, 0, -0, 0, -1.5, 1 ],
+ "children": [ 3, 4, 5, 6 ]
+ },
+ {
+ "name": "bottle-cap",
+ "model": {
+ "mesh": 3,
+ "material": 3,
+ "shader": 1
+ }
+ },
+ {
+ "name": "bottle-alpha-front",
+ "model": {
+ "mesh": 1,
+ "material": 1,
+ "shader": 2
+ }
+ },
+ {
+ "name": "bottle-alpha-back",
+ "model": {
+ "mesh": 1,
+ "material": 1,
+ "shader": 3
+ }
+ },
+ {
+ "name": "bottle-label",
+ "model": {
+ "mesh": 2,
+ "material": 2,
+ "shader": 4
+ }
+ }
+ ],
+ "meshes": [
+ {
+ "uri": "beer/cube.bin",
+ "attributes": 31,
+ "primitive": "TRIANGLES",
+ "indices": { "byteOffset": 0, "byteLength": 72 },
+ "positions": { "byteOffset": 72, "byteLength": 288 },
+ "normals": { "byteOffset": 360, "byteLength": 288 },
+ "textures": { "byteOffset": 648, "byteLength": 192 },
+ "tangents": { "byteOffset": 840, "byteLength": 288 }
+ },
+ {
+ "uri": "beer/beer.bin",
+ "attributes": 31,
+ "primitive": "TRIANGLES",
+ "indices": { "byteOffset": 0, "byteLength": 19920 },
+ "positions": { "byteOffset": 19920, "byteLength": 54792 },
+ "normals": { "byteOffset": 74712, "byteLength": 54792 },
+ "textures": { "byteOffset": 129504, "byteLength": 36528 },
+ "tangents": { "byteOffset": 166032, "byteLength": 54792 }
+ },
+ {
+ "uri": "beer/beer.bin",
+ "attributes": 31,
+ "primitive": "TRIANGLES",
+ "indices": { "byteOffset": 220824, "byteLength": 13200 },
+ "positions": { "byteOffset": 234024, "byteLength": 14628 },
+ "normals": { "byteOffset": 248652, "byteLength": 14628 },
+ "textures": { "byteOffset": 263280, "byteLength": 9752 },
+ "tangents": { "byteOffset": 273032, "byteLength": 14628 }
+ },
+ {
+ "uri": "beer/beer.bin",
+ "attributes": 31,
+ "primitive": "TRIANGLES",
+ "indices": { "byteOffset": 287660, "byteLength": 31440 },
+ "positions": { "byteOffset": 319100, "byteLength": 121032 },
+ "normals": { "byteOffset": 440132, "byteLength": 121032 },
+ "textures": { "byteOffset": 561164, "byteLength": 80688 },
+ "tangents": { "byteOffset": 641852, "byteLength": 121032 }
+ }
+ ],
+ "skeletons": [
+ ],
+ "cameras": [
+ {
+ "fov": 60,
+ "near": 0.1,
+ "far": 100,
+ "matrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 3.5, 1 ]
+ }
+ ],
+ "lights": [
+ ],
+ "materials": [
+ {
+ "color": [ 1.0, 0.95, 0.5 ],
+ "metallic": 0.25,
+ "roughness": 1.0,
+ "environment": 1
+ },
+ {
+ "color": [ 0.1, 0.4, 0.0, 0.6 ],
+ "metallic": 0.4,
+ "roughness": 0.0,
+ "environment": 1
+ },
+ {
+ "albedoMap": "../images/beer/etiqueta.jpg",
+ "roughness": 0.5,
+ "environment": 1
+ },
+ {
+ "color": [ 0.5, 0.5, 0.5 ],
+ "metallic": 1.0,
+ "roughness": 0.0,
+ "environment": 1
+ }
+ ],
+ "environment": [
+ {
+ },
+ {
+ "cubeSpecular": "../images/Studio/Radiance.ktx",
+ "cubeDiffuse": "../images/Studio/Irradiance.ktx",
+ "iblIntensity": 0.75
+ }
+ ],
+ "shaders": [
+ {
+ "vertex": "../shaders/dli_pbr.vsh",
+ "fragment": "../shaders/dli_pbr.fsh",
+ "rendererState": "DEPTH_TEST|CULL_FRONT",
+ "uCubeMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1 ],
+ "uMaxLOD": 6
+ },
+ {
+ "vertex": "../shaders/dli_pbr.vsh",
+ "fragment": "../shaders/dli_pbr.fsh",
+ "rendererState": "DEPTH_TEST|DEPTH_WRITE",
+ "uCubeMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1 ],
+ "uMaxLOD": 6
+ },
+ {
+ "vertex": "../shaders/dli_pbr.vsh",
+ "fragment": "../shaders/dli_pbr.fsh",
+ "defines": [ "THREE_TEX" ],
+ "rendererState": "ALPHA_BLEND|DEPTH_TEST|CULL_FRONT",
+ "uCubeMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1 ],
+ "uMaxLOD": 6
+ },
+ {
+ "vertex": "../shaders/dli_pbr.vsh",
+ "fragment": "../shaders/dli_pbr.fsh",
+ "defines": [ "THREE_TEX" ],
+ "rendererState": "ALPHA_BLEND|DEPTH_TEST|CULL_BACK",
+ "uCubeMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1 ],
+ "uMaxLOD": 6
+ },
+ {
+ "vertex": "../shaders/dli_pbr.vsh",
+ "fragment": "../shaders/dli_pbr.fsh",
+ "defines": [ "FLIP_V" ],
+ "rendererState": "DEPTH_TEST|DEPTH_WRITE|CULL_BACK",
+ "uCubeMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1 ],
+ "uMaxLOD": 6
+ }
+ ]
+}
diff --git a/resources/po/as.po b/resources/po/as.po
index f7e0d764..dfd476fe 100755
--- a/resources/po/as.po
+++ b/resources/po/as.po
@@ -178,5 +178,5 @@ msgstr "Skybox"
msgid "DALI_DEMO_STR_TITLE_PBR"
msgstr "PBR"
-msgid "DALI_DEMO_STR_TITLE_SCENE3D_VIEW"
-msgstr "Scene3D View glTF"
+msgid "DALI_DEMO_STR_TITLE_SCENE3D_MODEL_VIEW"
+msgstr "Scene3D Model View"
diff --git a/resources/po/de.po b/resources/po/de.po
index fe85fd18..9f9fef74 100755
--- a/resources/po/de.po
+++ b/resources/po/de.po
@@ -178,5 +178,5 @@ msgstr "Skybox"
msgid "DALI_DEMO_STR_TITLE_PBR"
msgstr "PBR"
-msgid "DALI_DEMO_STR_TITLE_SCENE3D_VIEW"
-msgstr "Scene3D View glTF"
+msgid "DALI_DEMO_STR_TITLE_SCENE3D_MODEL_VIEW"
+msgstr "Scene3D Model View"
diff --git a/resources/po/en_GB.po b/resources/po/en_GB.po
index 81f75ced..c8a1c5e1 100755
--- a/resources/po/en_GB.po
+++ b/resources/po/en_GB.po
@@ -309,5 +309,5 @@ msgstr "Web View"
msgid "DALI_DEMO_STR_TITLE_ANIMATED_VECTOR_IMAGES"
msgstr "Animated Vector Images"
-msgid "DALI_DEMO_STR_TITLE_SCENE3D_VIEW"
-msgstr "Scene3D View glTF"
+msgid "DALI_DEMO_STR_TITLE_SCENE3D_MODEL_VIEW"
+msgstr "Scene3D Model View"
diff --git a/resources/po/en_US.po b/resources/po/en_US.po
index 0e4341e5..b50e32f7 100755
--- a/resources/po/en_US.po
+++ b/resources/po/en_US.po
@@ -324,5 +324,5 @@ msgstr "Text Bitmap Font"
msgid "DALI_DEMO_STR_TITLE_WAVES"
msgstr "Waves"
-msgid "DALI_DEMO_STR_TITLE_SCENE3D_VIEW"
-msgstr "Scene3D View glTF"
+msgid "DALI_DEMO_STR_TITLE_SCENE3D_MODEL_VIEW"
+msgstr "Scene3D Model View"
diff --git a/resources/po/es.po b/resources/po/es.po
index 7b5fd6d6..265ba8c4 100755
--- a/resources/po/es.po
+++ b/resources/po/es.po
@@ -178,5 +178,5 @@ msgstr "Skybox"
msgid "DALI_DEMO_STR_TITLE_PBR"
msgstr "PBR"
-msgid "DALI_DEMO_STR_TITLE_SCENE3D_VIEW"
-msgstr "Scene3D View glTF"
+msgid "DALI_DEMO_STR_TITLE_SCENE3D_MODEL_VIEW"
+msgstr "Scene3D Model View"
diff --git a/resources/po/fi.po b/resources/po/fi.po
index f34fc340..b87f9c87 100755
--- a/resources/po/fi.po
+++ b/resources/po/fi.po
@@ -178,5 +178,5 @@ msgstr "Skybox"
msgid "DALI_DEMO_STR_TITLE_PBR"
msgstr "PBR"
-msgid "DALI_DEMO_STR_TITLE_SCENE3D_VIEW"
-msgstr "Scene3D View glTF"
+msgid "DALI_DEMO_STR_TITLE_SCENE3D_MODEL_VIEW"
+msgstr "Scene3D Model View"
diff --git a/resources/po/ko.po b/resources/po/ko.po
index e870f72e..db44bf72 100755
--- a/resources/po/ko.po
+++ b/resources/po/ko.po
@@ -198,5 +198,5 @@ msgstr "PBR"
msgid "DALI_DEMO_STR_TITLE_ANIMATED_VECTOR_IMAGES"
msgstr "애니메이션 벡터 이미지"
-msgid "DALI_DEMO_STR_TITLE_SCENE3D_VIEW"
-msgstr "Scene3D View glTF"
+msgid "DALI_DEMO_STR_TITLE_SCENE3D_MODEL_VIEW"
+msgstr "Scene3D Model View"
diff --git a/resources/po/ml.po b/resources/po/ml.po
index 7773a67d..ec16f331 100755
--- a/resources/po/ml.po
+++ b/resources/po/ml.po
@@ -178,5 +178,5 @@ msgstr "Skybox"
msgid "DALI_DEMO_STR_TITLE_PBR"
msgstr "PBR"
-msgid "DALI_DEMO_STR_TITLE_SCENE3D_VIEW"
-msgstr "Scene3D View glTF"
+msgid "DALI_DEMO_STR_TITLE_SCENE3D_MODEL_VIEW"
+msgstr "Scene3D Model View"
diff --git a/resources/po/ur.po b/resources/po/ur.po
index 529a1824..a32349e4 100755
--- a/resources/po/ur.po
+++ b/resources/po/ur.po
@@ -178,5 +178,5 @@ msgstr "Skybox"
msgid "DALI_DEMO_STR_TITLE_PBR"
msgstr "PBR"
-msgid "DALI_DEMO_STR_TITLE_SCENE3D_VIEW"
-msgstr "Scene3D View glTF"
+msgid "DALI_DEMO_STR_TITLE_SCENE3D_MODEL_VIEW"
+msgstr "Scene3D Model View"
diff --git a/resources/po/zn_CH.po b/resources/po/zn_CH.po
index 38132dbb..d5fb0328 100755
--- a/resources/po/zn_CH.po
+++ b/resources/po/zn_CH.po
@@ -181,5 +181,5 @@ msgstr "Skybox"
msgid "DALI_DEMO_STR_TITLE_PBR"
msgstr "PBR"
-msgid "DALI_DEMO_STR_TITLE_SCENE3D_VIEW"
-msgstr "Scene3D View glTF"
+msgid "DALI_DEMO_STR_TITLE_SCENE3D_MODEL_VIEW"
+msgstr "Scene3D Model View"
diff --git a/shared/dali-demo-strings.h b/shared/dali-demo-strings.h
index 8639183a..5f7bb98e 100644
--- a/shared/dali-demo-strings.h
+++ b/shared/dali-demo-strings.h
@@ -115,7 +115,7 @@ extern "C"
#define DALI_DEMO_STR_TITLE_RENDERING_RADIAL_PROGRESS dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_RENDERING_RADIAL_PROGRESS")
#define DALI_DEMO_STR_TITLE_RENDERING_RAY_MARCHING dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_RENDERING_RAY_MARCHING")
#define DALI_DEMO_STR_TITLE_RENDERER_STENCIL dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_RENDERER_STENCIL")
-#define DALI_DEMO_STR_TITLE_SCENE3D_VIEW dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_SCENE3D_VIEW")
+#define DALI_DEMO_STR_TITLE_SCENE3D_MODEL_VIEW dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_SCENE3D_MODEL_VIEW")
#define DALI_DEMO_STR_TITLE_SCENE3D dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_SCENE3D")
#define DALI_DEMO_STR_TITLE_SCRIPT_BASED_UI dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_SCRIPT_BASED_UI")
#define DALI_DEMO_STR_TITLE_SCROLL_VIEW dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_SCROLL_VIEW")
@@ -227,7 +227,7 @@ extern "C"
#define DALI_DEMO_STR_TITLE_RENDERING_RAY_MARCHING "Ray Marching"
#define DALI_DEMO_STR_TITLE_RENDERING_RADIAL_PROGRESS "Radial Progress"
#define DALI_DEMO_STR_TITLE_RENDERER_STENCIL "Renderer Stencils"
-#define DALI_DEMO_STR_TITLE_SCENE3D_VIEW "Scene3D View glTF"
+#define DALI_DEMO_STR_TITLE_SCENE3D_MODEL_VIEW "Scene3D Model View"
#define DALI_DEMO_STR_TITLE_SCENE3D "Scene3D"
#define DALI_DEMO_STR_TITLE_SCRIPT_BASED_UI "Script Based UI"
#define DALI_DEMO_STR_TITLE_SCROLL_VIEW "Scroll View"