X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali-toolkit%2Finternal%2Fcontrols%2Fscene3d-view%2Fgltf-loader.cpp;h=b1cd70d44cd42b74a4635a37bda4bdeb443c4cc2;hb=HEAD;hp=66f7677fc70e078158ba44c7c5691c438bd921d5;hpb=72c50266669b227509735ba9d1d8da24c0335a6b;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/dali-toolkit/internal/controls/scene3d-view/gltf-loader.cpp b/dali-toolkit/internal/controls/scene3d-view/gltf-loader.cpp index 66f7677..b1cd70d 100644 --- a/dali-toolkit/internal/controls/scene3d-view/gltf-loader.cpp +++ b/dali-toolkit/internal/controls/scene3d-view/gltf-loader.cpp @@ -38,6 +38,8 @@ namespace Gltf { namespace { +constexpr float MIN_DURATION_SECONDS = 1e-2f; + // Utility functions const TreeNode* Tidx(const TreeNode* node, uint32_t index) { @@ -434,7 +436,7 @@ float LoadKeyFrames(const AnimationSamplerInfo& currentSampler, const Property:: LoadDataFromAccessor(currentSampler.output, outputBufferData, path, accessorArray, bufferViewArray, bufferArray); uint32_t keyframeNum = inputBufferData.Size(); - float lengthAnimation = inputBufferData[inputBufferData.Size() - 1]; + float lengthAnimation = std::max((inputBufferData.Size() > 0u ? inputBufferData[inputBufferData.Size() - 1] : MIN_DURATION_SECONDS), MIN_DURATION_SECONDS); for(uint32_t i = 0; i < keyframeNum; i++) { if(propIndex == Dali::Actor::Property::ORIENTATION)