X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali-toolkit%2Finternal%2Fcontrols%2Fmodel3d-view%2Fmodel3d-view-impl.cpp;h=d395fb2e628a221d02b0d369bce3c1d478826826;hb=05a1190b737889e3602c3c492fa8ec703c62c918;hp=be409da1e5f1381a6c1e981350d51553fff7052b;hpb=1bc820d549c05404f8aabdbeec61d403a72ef0ac;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/dali-toolkit/internal/controls/model3d-view/model3d-view-impl.cpp b/dali-toolkit/internal/controls/model3d-view/model3d-view-impl.cpp index be409da..d395fb2 100644 --- a/dali-toolkit/internal/controls/model3d-view/model3d-view-impl.cpp +++ b/dali-toolkit/internal/controls/model3d-view/model3d-view-impl.cpp @@ -247,6 +247,21 @@ const char* NRMMAP_FRAGMENT_SHADER = MAKE_SHADER( using namespace Dali; +void LookAt(Matrix& result, const Vector3& eye, const Vector3& target, const Vector3& up) +{ + Vector3 vZ = target - eye; + vZ.Normalize(); + + Vector3 vX = up.Cross(vZ); + vX.Normalize(); + + Vector3 vY = vZ.Cross(vX); + vY.Normalize(); + + result.SetInverseTransformComponents(vX, vY, vZ, eye); +} + + Model3dView::Model3dView() : Control( ControlBehaviour( ACTOR_BEHAVIOUR_NONE ) ) {