From: György Straub Date: Wed, 23 Dec 2020 15:12:18 +0000 (+0000) Subject: Added an example to demonstrate the usage of the Dali Scene Loader library. X-Git-Tag: dali_2.0.8~8 X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-demo.git;a=commitdiff_plain;h=6167bcd2ebbbf6831b36057baebcf4f3ced76169 Added an example to demonstrate the usage of the Dali Scene Loader library. Change-Id: I2cbd4814fbb3238c188a10900f98b5285da8dc98 Signed-off-by: György Straub --- diff --git a/build/tizen/CMakeLists.txt b/build/tizen/CMakeLists.txt index aea3cd2..75c6528 100644 --- a/build/tizen/CMakeLists.txt +++ b/build/tizen/CMakeLists.txt @@ -113,32 +113,51 @@ ELSE() SET(DEMO_DATA_PUBLIC_RW_DIR \\"/tmp/\\") ENDIF() -FILE(GLOB LOCAL_IMAGES_PNG RELATIVE "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.png") -FILE(GLOB LOCAL_IMAGES_JPG RELATIVE "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.jpg") -FILE(GLOB LOCAL_IMAGES_GIF RELATIVE "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.gif") -FILE(GLOB LOCAL_IMAGES_WEBP RELATIVE "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.webp") -FILE(GLOB LOCAL_IMAGES_BMP RELATIVE "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.bmp") -FILE(GLOB LOCAL_IMAGES_ICO RELATIVE "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.ico") -FILE(GLOB LOCAL_IMAGES_WBMP RELATIVE "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.wbmp") -FILE(GLOB LOCAL_IMAGES_KTX RELATIVE "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.ktx") -FILE(GLOB LOCAL_IMAGES_ASTC RELATIVE "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.astc") -FILE(GLOB LOCAL_IMAGES_SVG RELATIVE "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.svg") -FILE(GLOB LOCAL_IMAGES_JSON RELATIVE "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.json") - -SET(LOCAL_IMAGES_LIST ${LOCAL_IMAGES_PNG};${LOCAL_IMAGES_JPG};${LOCAL_IMAGES_GIF};${LOCAL_IMAGES_WEBP};${LOCAL_IMAGES_BMP};${LOCAL_IMAGES_ICO};${LOCAL_IMAGES_WBMP};${LOCAL_IMAGES_KTX};${LOCAL_IMAGES_ASTC};${LOCAL_IMAGES_SVG};${LOCAL_IMAGES_JSON}) -FOREACH(flag ${LOCAL_IMAGES_LIST}) - INSTALL(FILES ${LOCAL_IMAGES_DIR}/${flag} DESTINATION ${IMAGES_DIR}) -ENDFOREACH(flag) +# Gets all sub-directories of SRC_DIR into the list RESULT, which will first be reset to empty. +MACRO(GET_TREE RESULT SRC_DIR) + FILE(GLOB_RECURSE LOCAL_LIST RELATIVE ${SRC_DIR} "${SRC_DIR}/*") + SET(${RESULT} "/") # N.B. we need the contents of the root directory as well, and we can't have an empty string in a list in CMake. + FOREACH(LOCAL_ENTRY ${LOCAL_LIST}) + GET_FILENAME_COMPONENT(DIR ${LOCAL_ENTRY} DIRECTORY) + LIST(APPEND ${RESULT} ${DIR}) + ENDFOREACH() + LIST(REMOVE_DUPLICATES ${RESULT}) +ENDMACRO() + +# Installs files from each subdirectory of ROOT specified in TREE, matching FILTER, to DESTINATION, +# while keeping the structure, up to (excluding) ROOT. +MACRO(INSTALL_TREE_FILES ROOT TREE FILTER DESTINATION) + FOREACH(LOCAL_DIR ${TREE}) + SET(SRC_DIR "${ROOT}/${LOCAL_DIR}") + FILE(GLOB FILES + LIST_DIRECTORIES false + RELATIVE ${SRC_DIR} "${SRC_DIR}/${FILTER}") + FOREACH(LOCAL_FILE ${FILES}) + INSTALL(FILES "${SRC_DIR}/${LOCAL_FILE}" DESTINATION "${DESTINATION}/${LOCAL_DIR}") + ENDFOREACH() + ENDFOREACH() +ENDMACRO() + +GET_TREE(LOCAL_IMAGES_TREE "${LOCAL_IMAGES_DIR}") +INSTALL_TREE_FILES(${LOCAL_IMAGES_DIR} "${LOCAL_IMAGES_TREE}" "*.png" ${IMAGES_DIR}) +INSTALL_TREE_FILES(${LOCAL_IMAGES_DIR} "${LOCAL_IMAGES_TREE}" "*.jpg" ${IMAGES_DIR}) +INSTALL_TREE_FILES(${LOCAL_IMAGES_DIR} "${LOCAL_IMAGES_TREE}" "*.gif" ${IMAGES_DIR}) +INSTALL_TREE_FILES(${LOCAL_IMAGES_DIR} "${LOCAL_IMAGES_TREE}" "*.webp" ${IMAGES_DIR}) +INSTALL_TREE_FILES(${LOCAL_IMAGES_DIR} "${LOCAL_IMAGES_TREE}" "*.bmp" ${IMAGES_DIR}) +INSTALL_TREE_FILES(${LOCAL_IMAGES_DIR} "${LOCAL_IMAGES_TREE}" "*.ico" ${IMAGES_DIR}) +INSTALL_TREE_FILES(${LOCAL_IMAGES_DIR} "${LOCAL_IMAGES_TREE}" "*.wbmp" ${IMAGES_DIR}) +INSTALL_TREE_FILES(${LOCAL_IMAGES_DIR} "${LOCAL_IMAGES_TREE}" "*.ktx" ${IMAGES_DIR}) +INSTALL_TREE_FILES(${LOCAL_IMAGES_DIR} "${LOCAL_IMAGES_TREE}" "*.astc" ${IMAGES_DIR}) +INSTALL_TREE_FILES(${LOCAL_IMAGES_DIR} "${LOCAL_IMAGES_TREE}" "*.svg" ${IMAGES_DIR}) +INSTALL_TREE_FILES(${LOCAL_IMAGES_DIR} "${LOCAL_IMAGES_TREE}" "*.json" ${IMAGES_DIR}) FILE(GLOB LOCAL_VIDEOS_LIST RELATIVE "${LOCAL_VIDEOS_DIR}" "${LOCAL_VIDEOS_DIR}/*") FOREACH(flag ${LOCAL_VIDEOS_LIST}) INSTALL(FILES ${LOCAL_VIDEOS_DIR}/${flag} DESTINATION ${VIDEOS_DIR}) ENDFOREACH(flag) -FILE(GLOB LOCAL_MODELS_LIST RELATIVE "${LOCAL_MODELS_DIR}" "${LOCAL_MODELS_DIR}/*") -FOREACH(flag ${LOCAL_MODELS_LIST}) - INSTALL(FILES ${LOCAL_MODELS_DIR}/${flag} DESTINATION ${MODELS_DIR}) -ENDFOREACH(flag) +GET_TREE(LOCAL_MODELS_TREE "${LOCAL_MODELS_DIR}") +INSTALL_TREE_FILES(${LOCAL_MODELS_DIR} "${LOCAL_MODELS_TREE}" "*" ${MODELS_DIR}) FILE(GLOB LOCAL_SCRIPTS_LIST RELATIVE "${LOCAL_SCRIPTS_DIR}" "${LOCAL_SCRIPTS_DIR}/*.json") FOREACH(flag ${LOCAL_SCRIPTS_LIST}) @@ -189,6 +208,21 @@ IF( ENABLE_PKG_CONFIGURE ) FOREACH(flag ${REQUIRED_PKGS_CFLAGS}) SET(REQUIRED_CFLAGS "${REQUIRED_CFLAGS} ${flag}") ENDFOREACH(flag) + + pkg_check_modules(DALI_SCENE_LOADER dali2-scene-loader) + IF( DALI_SCENE_LOADER_FOUND ) + FOREACH(flag ${DALI_SCENE_LOADER_CFLAGS}) + SET(REQUIRED_CFLAGS "${REQUIRED_CFLAGS} ${flag}") + ENDFOREACH(flag) + + SET( REQUIRED_CFLAGS "${REQUIRED_CFLAGS} -DDALI_SCENE_LOADER_AVAILABLE" ) + + FOREACH(flag ${DALI_SCENE_LOADER_LDFLAGS}) + SET(REQUIRED_PKGS_LDFLAGS "${REQUIRED_PKGS_LDFLAGS} ${flag}") + ENDFOREACH(flag) + + SET( ENABLE_SCENE_LOADER "ON" ) + ENDIF() ENDIF() SET( VCPKG_INCLUDE_DIR "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/include") @@ -219,6 +253,8 @@ IF( WIN32 ) # WIN32 includes x64 as well according to the cmake doc. FIND_PACKAGE( dali2-adaptor REQUIRED ) FIND_PACKAGE( dali2-toolkit REQUIRED ) + FIND_PACKAGE( dali2-scene-loader ) + # Set up the include dir SET( INCLUDE_DIR $ENV{includedir} ) IF( NOT INCLUDE_DIR ) @@ -259,6 +295,11 @@ IF( WIN32 ) # WIN32 includes x64 as well according to the cmake doc. dali2-adaptor::dali2-adaptor dali2-toolkit::dali2-toolkit ) + + IF (dali2_scene_loader_FOUND) + SET( REQUIRED_LIBS "${REQUIRED_LIBS} dali2-scene-loader::dali2-scene-loader" ) + SET( ENABLE_SCENE_LOADER "ON" ) + ENDIF() ELSEIF( UNIX ) SET( REQUIRED_LIBS ${REQUIRED_PKGS_LDFLAGS} @@ -272,6 +313,10 @@ IF( ENABLE_DEBUG ) SET(DALI_DEMO_CFLAGS "${DALI_DEMO_CFLAGS} -DDEBUG_ENABLED") ENDIF() +IF( ENABLE_SCENE_LOADER ) + SET(DALI_DEMO_CFLAGS "${DALI_DEMO_CFLAGS} -DDALI_SCENE_LOADER_AVAILABLE") +ENDIF() + IF( UNIX ) IF( NOT ${ENABLE_EXPORTALL} ) ADD_DEFINITIONS( "-DHIDE_DALI_INTERNALS" ) diff --git a/build/tizen/examples/CMakeLists.txt b/build/tizen/examples/CMakeLists.txt index e84235c..ed65080 100644 --- a/build/tizen/examples/CMakeLists.txt +++ b/build/tizen/examples/CMakeLists.txt @@ -13,6 +13,13 @@ MACRO(SUBDIRLIST result curdir) ENDMACRO() SUBDIRLIST(SUBDIRS ${EXAMPLES_SRC_DIR}) +SET(SCENE_LOADER_DIR "scene-loader") +IF (NOT "${ENABLE_SCENE_LOADER}" ) + IF ( ${SCENE_LOADER_DIR} IN_LIST SUBDIRS ) + LIST( REMOVE_ITEM SUBDIRS ${SCENE_LOADER_DIR} ) + ENDIF() +ENDIF() + FOREACH(EXAMPLE ${SUBDIRS}) FILE(GLOB SRCS "${EXAMPLES_SRC_DIR}/${EXAMPLE}/*.cpp") SET(SRCS ${SRCS} "${ROOT_SRC_DIR}/shared/resources-location.cpp") diff --git a/com.samsung.dali-demo.xml b/com.samsung.dali-demo.xml index 552cefd..0671f04 100644 --- a/com.samsung.dali-demo.xml +++ b/com.samsung.dali-demo.xml @@ -232,6 +232,9 @@ + + + diff --git a/demo/dali-demo.cpp b/demo/dali-demo.cpp index 1ca0894..20ba080 100644 --- a/demo/dali-demo.cpp +++ b/demo/dali-demo.cpp @@ -58,6 +58,9 @@ 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)); +#ifdef DALI_SCENE_LOADER_AVAILABLE + demo.AddExample(Example("scene-loader.example", DALI_DEMO_STR_TITLE_SCENE_LOADER)); +#endif //DALI_SCENE_LOADER_AVAILABLE demo.AddExample(Example("shadows-and-lights.example", DALI_DEMO_STR_TITLE_LIGHTS_AND_SHADOWS)); demo.AddExample(Example("sparkle.example", DALI_DEMO_STR_TITLE_SPARKLE)); demo.AddExample(Example("waves.example", DALI_DEMO_STR_TITLE_WAVES)); diff --git a/examples/scene-loader/main.cpp b/examples/scene-loader/main.cpp new file mode 100644 index 0000000..a0c8158 --- /dev/null +++ b/examples/scene-loader/main.cpp @@ -0,0 +1,29 @@ +/* + * Copyright (c) 2020 Samsung Electronics Co., Ltd. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ +#include "scene-loader-example.h" + +#include "dali/dali.h" + +using namespace Dali; + +int main(int argc, char** argv) +{ + auto app = Application::New(&argc, &argv, DEMO_THEME_PATH); + SceneLoaderExample sceneLoader(app); + app.MainLoop(); + return 0; +} diff --git a/examples/scene-loader/scene-loader-example.cpp b/examples/scene-loader/scene-loader-example.cpp new file mode 100644 index 0000000..64b31a5 --- /dev/null +++ b/examples/scene-loader/scene-loader-example.cpp @@ -0,0 +1,454 @@ +/* + * Copyright (c) 2020 Samsung Electronics Co., Ltd. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ +#include "scene-loader-example.h" +#include "dali-scene-loader/public-api/gltf2-loader.h" +#include "dali-scene-loader/public-api/shader-definition-factory.h" +#include "dali-scene-loader/public-api/light-parameters.h" +#include "dali-scene-loader/public-api/dli-loader.h" +#include "dali-scene-loader/public-api/load-result.h" +#include "dali/public-api/adaptor-framework/key.h" +#include "dali/public-api/events/key-event.h" +#include "dali/public-api/actors/layer.h" +#include "dali/public-api/render-tasks/render-task-list.h" +#include "dali/public-api/object/property-array.h" +#include "dali-toolkit/public-api/controls/scrollable/item-view/item-factory.h" +#include "dali-toolkit/public-api/controls/scrollable/item-view/default-item-layout.h" +#include "dali-toolkit/public-api/controls/text-controls/text-label.h" +#include "dali-toolkit/public-api/visuals/gradient-visual-properties.h" +#include +#include +#include + +using namespace Dali; +using namespace Dali::Toolkit; +using namespace Dali::SceneLoader; + +namespace +{ + +const float ROTATION_SCALE = 0.05f; + +const float ITEM_HEIGHT = 50.f; + +const Vector3 CAMERA_DEFAULT_POSITION(0.0f, 0.0f, 3.5f); + +const std::string_view DLI_EXTENSION = ".dli"; +const std::string_view GLTF_EXTENSION = ".gltf"; + +const std::string RESOURCE_TYPE_DIRS[]{ + "images/", + "shaders/", + "models/", + "images/", +}; + +using StringVector = std::vector; + +StringVector ListFiles(const std::string& path, bool(*predicate)(const char*) = [](const char*) { return true; }) +{ + StringVector results; + + if (auto dirp = opendir(path.c_str())) + { + std::unique_ptr dir(dirp, closedir); + + struct dirent* ent; + while ((ent = readdir(dir.get())) != nullptr) + { + if (ent->d_type == DT_REG && predicate(ent->d_name)) + { + results.push_back(ent->d_name); + } + } + } + return results; +} + +TextLabel MakeLabel(std::string msg) +{ + TextLabel label = TextLabel::New(msg); + label.SetResizePolicy(ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS); + label.SetProperty(TextLabel::Property::TEXT_COLOR, Color::WHITE); + label.SetProperty(TextLabel::Property::PIXEL_SIZE, ITEM_HEIGHT * 4 / 7); + SetActorCentered(label); + return label; +} + +struct ItemFactoryImpl : Dali::Toolkit::ItemFactory +{ + const std::vector& mSceneNames; + TapGestureDetector mTapDetector; + + ItemFactoryImpl(const std::vector& sceneNames, TapGestureDetector tapDetector) + : mSceneNames(sceneNames), + mTapDetector(tapDetector) + {} + + unsigned int GetNumberOfItems() override + { + return mSceneNames.size(); + } + + Actor NewItem(unsigned int itemId) override + { + auto label = MakeLabel(mSceneNames[itemId]); + mTapDetector.Attach(label); + return label; + } +}; + +Actor CreateErrorMessage(std::string msg) +{ + auto label = MakeLabel(msg); + label.SetProperty(TextLabel::Property::MULTI_LINE, true); + label.SetProperty(TextLabel::Property::HORIZONTAL_ALIGNMENT, HorizontalAlignment::LEFT); + label.SetProperty(TextLabel::Property::VERTICAL_ALIGNMENT, VerticalAlignment::TOP); + return label; +} + +void ConfigureCamera(const CameraParameters& params, CameraActor camera) +{ + if (params.isPerspective) + { + camera.SetProjectionMode(Camera::PERSPECTIVE_PROJECTION); + camera.SetNearClippingPlane(params.zNear); + camera.SetFarClippingPlane(params.zFar); + camera.SetFieldOfView(Radian(Degree(params.yFov))); + } + else + { + camera.SetProjectionMode(Camera::ORTHOGRAPHIC_PROJECTION); + camera.SetOrthographicProjection(params.orthographicSize.x, + params.orthographicSize.y, + params.orthographicSize.z, + params.orthographicSize.w, + params.zNear, + params.zFar); + } + + // model + Vector3 camTranslation; + Vector3 camScale; + Quaternion camOrientation; + params.CalculateTransformComponents(camTranslation, camOrientation, camScale); + + SetActorCentered(camera); + camera.SetInvertYAxis(true); + camera.SetProperty(Actor::Property::POSITION, camTranslation); + camera.SetProperty(Actor::Property::ORIENTATION, camOrientation); + camera.SetProperty(Actor::Property::SCALE, camScale); + + camOrientation.Conjugate(); +} + +void ConfigureBlendShapeShaders(ResourceBundle& resources, const SceneDefinition& scene, Actor root, + std::vector&& requests) +{ + std::vector errors; + auto onError = [&errors](const std::string& msg) { + errors.push_back(msg); + }; + if (!scene.ConfigureBlendshapeShaders(resources, root, std::move(requests), onError)) + { + ExceptionFlinger flinger(ASSERT_LOCATION); + for (auto& msg : errors) + { + flinger << msg << '\n'; + } + } +} + +Actor LoadScene(std::string sceneName, CameraActor camera) +{ + ResourceBundle::PathProvider pathProvider = [](ResourceType::Value type) { + return Application::GetResourcePath() + RESOURCE_TYPE_DIRS[type]; + }; + + auto path = pathProvider(ResourceType::Mesh) + sceneName; + + ResourceBundle resources; + SceneDefinition scene; + std::vector animGroups; + std::vector cameraParameters; + std::vector lights; + std::vector animations; + + LoadResult output{ + resources, + scene, + animations, + animGroups, + cameraParameters, + lights + }; + + if (sceneName.rfind(DLI_EXTENSION) == sceneName.size() - DLI_EXTENSION.size()) + { + DliLoader loader; + DliLoader::InputParams input{ + pathProvider(ResourceType::Mesh), + nullptr, + {}, + {}, + nullptr, + }; + DliLoader::LoadParams loadParams{ input, output }; + if (!loader.LoadScene(path, loadParams)) + { + ExceptionFlinger(ASSERT_LOCATION) << "Failed to load scene from '" << path << "': " << loader.GetParseError(); + } + } + else + { + ShaderDefinitionFactory sdf; + sdf.SetResources(resources); + LoadGltfScene(path, sdf, output); + + resources.mEnvironmentMaps.push_back({}); + } + + if (cameraParameters.empty()) + { + cameraParameters.push_back(CameraParameters()); + cameraParameters[0].matrix.SetTranslation(CAMERA_DEFAULT_POSITION); + } + ConfigureCamera(cameraParameters[0], camera); + + ViewProjection viewProjection = cameraParameters[0].GetViewProjection(); + Transforms xforms{ + MatrixStack{}, + viewProjection + }; + NodeDefinition::CreateParams nodeParams{ + resources, + xforms + }; + Customization::Choices choices; + + Actor root = Actor::New(); + SetActorCentered(root); + + for (auto iRoot : scene.GetRoots()) + { + auto resourceRefs = resources.CreateRefCounter(); + scene.CountResourceRefs(iRoot, choices, resourceRefs); + resources.CountEnvironmentReferences(resourceRefs); + + resources.LoadResources(resourceRefs, pathProvider); + + if (auto actor = scene.CreateNodes(iRoot, choices, nodeParams)) + { + scene.ConfigureSkeletonJoints(iRoot, resources.mSkeletons, actor); + scene.ConfigureSkinningShaders(resources, actor, std::move(nodeParams.mSkinnables)); + ConfigureBlendShapeShaders(resources, scene, actor, std::move(nodeParams.mBlendshapeRequests)); + + scene.ApplyConstraints(actor, std::move(nodeParams.mConstrainables)); + + root.Add(actor); + } + } + + if (!animations.empty()) + { + auto getActor = [&root](const std::string& name) { + return root.FindChildByName(name); + }; + + animations[0].ReAnimate(getActor).Play(); + } + + return root; +} + +} // nonamespace + +SceneLoaderExample::SceneLoaderExample(Dali::Application& app) +: mApp(app) +{ + if (!std::getenv("DALI_APPLICATION_PACKAGE")) + { + if (auto desktopPrefix = std::getenv("DESKTOP_PREFIX")) + { + std::stringstream sstr; + sstr << desktopPrefix << "/share/com.samsung.dali-demo/res/"; + + auto daliApplicationPackage = sstr.str(); + setenv("DALI_APPLICATION_PACKAGE", daliApplicationPackage.c_str(), 0); + } + } + + app.InitSignal().Connect(this, &SceneLoaderExample::OnInit); + app.TerminateSignal().Connect(this, &SceneLoaderExample::OnTerminate); +} + +void SceneLoaderExample::OnInit(Application& app) +{ + // get scenes + auto resPath = Application::GetResourcePath(); + auto scenePath = resPath + RESOURCE_TYPE_DIRS[ResourceType::Mesh]; + auto sceneNames = ListFiles(scenePath, [](const char* name) { + auto len = strlen(name); + return (len > DLI_EXTENSION.size() && DLI_EXTENSION.compare(name + (len - DLI_EXTENSION.size())) == 0) || + (len > GLTF_EXTENSION.size() && GLTF_EXTENSION.compare(name + (len - GLTF_EXTENSION.size())) == 0); + }); + mSceneNames = sceneNames; + + // create Dali objects + auto window = app.GetWindow(); + + // navigation view + auto navigationView = NavigationView::New(); + navigationView.SetResizePolicy(ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS); + SetActorCentered(navigationView); + + // Set up the background gradient. + Property::Array stopOffsets; + stopOffsets.PushBack(0.0f); + stopOffsets.PushBack(1.0f); + Property::Array stopColors; + stopColors.PushBack(Color::BLACK); + stopColors.PushBack(Vector4(0.45f, 0.7f, 0.8f, 1.f)); // Medium bright, pastel blue + const float percentageWindowHeight = window.GetSize().GetHeight() * 0.6f; + + navigationView.SetProperty(Toolkit::Control::Property::BACKGROUND, Dali::Property::Map(). + Add(Toolkit::Visual::Property::TYPE, Dali::Toolkit::Visual::GRADIENT). + Add(Toolkit::GradientVisual::Property::STOP_OFFSET, stopOffsets). + Add(Toolkit::GradientVisual::Property::STOP_COLOR, stopColors). + Add(Toolkit::GradientVisual::Property::START_POSITION, Vector2(0.f, -percentageWindowHeight)). + Add(Toolkit::GradientVisual::Property::END_POSITION, Vector2(0.f, percentageWindowHeight)). + Add(Toolkit::GradientVisual::Property::UNITS, Toolkit::GradientVisual::Units::USER_SPACE)); + window.Add(navigationView); + mNavigationView = navigationView; + + // item view + auto tapDetector = TapGestureDetector::New(); + mItemFactory.reset(new ::ItemFactoryImpl(mSceneNames, tapDetector)); + + auto items = ItemView::New(*mItemFactory); + SetActorCentered(items); + items.SetResizePolicy(ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS); + items.SetProperty(Actor::Property::KEYBOARD_FOCUSABLE, true); + + Vector3 windowSize(window.GetSize()); + auto itemLayout = DefaultItemLayout::New(DefaultItemLayout::LIST); + itemLayout->SetItemSize(Vector3(windowSize.x, ITEM_HEIGHT, 1.f)); + items.AddLayout(*itemLayout); + navigationView.Push(items); + + mItemLayout = itemLayout; + mItemView = items; + + // camera + auto camera = CameraActor::New(); + camera.SetInvertYAxis(true); + window.Add(camera); + mSceneCamera = camera; + + // event handling + window.KeyEventSignal().Connect(this, &SceneLoaderExample::OnKey); + + tapDetector.DetectedSignal().Connect(this, &SceneLoaderExample::OnTap); + mTapDetector = tapDetector; + + // activate layout + mItemView.ActivateLayout(0, windowSize, 1.f); +} + +void SceneLoaderExample::OnTerminate(Application& app) +{ + mTapDetector.Reset(); + mPanDetector.Reset(); + + auto window = app.GetWindow(); + auto renderTasks = window.GetRenderTaskList(); + renderTasks.RemoveTask(mSceneRender); + mSceneRender.Reset(); + + UnparentAndReset(mNavigationView); + UnparentAndReset(mSceneCamera); + + mItemFactory.reset(); +} + +void SceneLoaderExample::OnKey(const KeyEvent& e) +{ + if (e.GetState() == KeyEvent::UP) + { + if (IsKey(e, DALI_KEY_ESCAPE) || IsKey(e, DALI_KEY_BACK)) + { + if (mScene) + { + mPanDetector.Reset(); + + mNavigationView.Pop(); + mScene.Reset(); + } + else + { + mApp.Quit(); + } + } + } +} + +void SceneLoaderExample::OnPan(Actor actor, const PanGesture& pan) +{ + auto windowSize = mApp.GetWindow().GetSize(); + Vector2 size{ float(windowSize.GetWidth()), float(windowSize.GetHeight()) }; + float aspect = size.y / size.x; + + size *= ROTATION_SCALE; + + Vector2 rotation{ pan.GetDisplacement().x / size.x, pan.GetDisplacement().y / size.y * aspect }; + + Quaternion q = Quaternion(Radian(rotation.y), Radian(rotation.x), Radian(0.f)); + Quaternion q0 = mScene.GetProperty(Actor::Property::ORIENTATION).Get(); + + mScene.SetProperty(Actor::Property::ORIENTATION, q * q0); +} + +void SceneLoaderExample::OnTap(Dali::Actor actor, const Dali::TapGesture& tap) +{ + auto id = mItemView.GetItemId(actor); + + try + { + auto window = mApp.GetWindow(); + auto renderTasks = window.GetRenderTaskList(); + renderTasks.RemoveTask(mSceneRender); + + auto scene = LoadScene(mSceneNames[id], mSceneCamera); + + auto sceneRender = renderTasks.CreateTask(); + sceneRender.SetCameraActor(mSceneCamera); + sceneRender.SetSourceActor(scene); + sceneRender.SetExclusive(true); + + mScene = scene; + mSceneRender = sceneRender; + + mPanDetector = PanGestureDetector::New(); + mPanDetector.DetectedSignal().Connect(this, &SceneLoaderExample::OnPan); + mPanDetector.Attach(mNavigationView); + } + catch (const DaliException& e) + { + mScene = CreateErrorMessage(e.condition); + } + + mNavigationView.Push(mScene); +} diff --git a/examples/scene-loader/scene-loader-example.h b/examples/scene-loader/scene-loader-example.h new file mode 100644 index 0000000..e7183d8 --- /dev/null +++ b/examples/scene-loader/scene-loader-example.h @@ -0,0 +1,69 @@ +#ifndef SCENE_LAUNCHER_H_ +#define SCENE_LAUNCHER_H_ +/* + * Copyright (c) 2020 Samsung Electronics Co., Ltd. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ +#include "dali-scene-loader/public-api/animation-definition.h" +#include "dali-scene-loader/public-api/scene-definition.h" +#include "dali-scene-loader/public-api/node-definition.h" +#include "dali-scene-loader/public-api/camera-parameters.h" +#include "dali/public-api/common/vector-wrapper.h" +#include "dali/public-api/events/pan-gesture-detector.h" +#include "dali/public-api/actors/camera-actor.h" +#include "dali/public-api/render-tasks/render-task.h" +#include "dali/public-api/signals/connection-tracker.h" +#include "dali/public-api/adaptor-framework/application.h" +#include "dali-toolkit/public-api/controls/scrollable/item-view/item-view.h" +#include "dali-toolkit/public-api/controls/scrollable/item-view/item-layout.h" +#include "dali-toolkit/public-api/controls/scrollable/item-view/item-factory.h" +#include "dali-toolkit/devel-api/controls/navigation-view/navigation-view.h" + +class SceneLoaderExample : public Dali::ConnectionTracker +{ +public: + SceneLoaderExample(Dali::Application& app); + ~SceneLoaderExample() = default; + +private: // data + Dali::Application& mApp; + + std::vector mSceneNames; + + Dali::Toolkit::NavigationView mNavigationView; + + std::unique_ptr mItemFactory; + Dali::Toolkit::ItemLayoutPtr mItemLayout; + Dali::Toolkit::ItemView mItemView; + + Dali::CameraActor mSceneCamera; + Dali::RenderTask mSceneRender; + Dali::Actor mScene; + + Dali::Quaternion mCameraOrientationInv; + + Dali::TapGestureDetector mTapDetector; + Dali::PanGestureDetector mPanDetector; + +private: // methods + void OnInit(Dali::Application& app); + void OnTerminate(Dali::Application& app); + + void OnKey(const Dali::KeyEvent& e); + void OnPan(Dali::Actor actor, const Dali::PanGesture& pan); + void OnTap(Dali::Actor actor, const Dali::TapGesture& tap); +}; + +#endif //SCENE_LAUNCHER_H_ diff --git a/packaging/com.samsung.dali-demo.spec b/packaging/com.samsung.dali-demo.spec index 8428c2c..648dfa7 100755 --- a/packaging/com.samsung.dali-demo.spec +++ b/packaging/com.samsung.dali-demo.spec @@ -21,6 +21,7 @@ BuildRequires: gettext-tools BuildRequires: pkgconfig(dali2-core) BuildRequires: pkgconfig(dali2-adaptor) BuildRequires: pkgconfig(dali2-toolkit) +BuildRequires: pkgconfig(dali2-scene-loader) BuildRequires: pkgconfig(libtzplatform-config) %description diff --git a/resources/images/Studio/Irradiance.ktx b/resources/images/Studio/Irradiance.ktx new file mode 100644 index 0000000..df24c05 Binary files /dev/null and b/resources/images/Studio/Irradiance.ktx differ diff --git a/resources/images/Studio/Radiance.ktx b/resources/images/Studio/Radiance.ktx new file mode 100644 index 0000000..51aa681 Binary files /dev/null and b/resources/images/Studio/Radiance.ktx differ diff --git a/resources/images/beer/etiqueta.jpg b/resources/images/beer/etiqueta.jpg new file mode 100644 index 0000000..5464ffa Binary files /dev/null and b/resources/images/beer/etiqueta.jpg differ diff --git a/resources/images/exercise/Icons/Icon_Idle.png b/resources/images/exercise/Icons/Icon_Idle.png new file mode 100644 index 0000000..ee10734 Binary files /dev/null and b/resources/images/exercise/Icons/Icon_Idle.png differ diff --git a/resources/images/exercise/Icons/Icon_JJ.png b/resources/images/exercise/Icons/Icon_JJ.png new file mode 100644 index 0000000..1c690f5 Binary files /dev/null and b/resources/images/exercise/Icons/Icon_JJ.png differ diff --git a/resources/images/exercise/Icons/Icon_Lunge.png b/resources/images/exercise/Icons/Icon_Lunge.png new file mode 100644 index 0000000..8853b14 Binary files /dev/null and b/resources/images/exercise/Icons/Icon_Lunge.png differ diff --git a/resources/images/exercise/Icons/Icon_Squat.png b/resources/images/exercise/Icons/Icon_Squat.png new file mode 100644 index 0000000..f4f8ce3 Binary files /dev/null and b/resources/images/exercise/Icons/Icon_Squat.png differ diff --git a/resources/images/exercise/Textures/BG_AlbedoMetallic.png b/resources/images/exercise/Textures/BG_AlbedoMetallic.png new file mode 100644 index 0000000..45489d2 Binary files /dev/null and b/resources/images/exercise/Textures/BG_AlbedoMetallic.png differ diff --git a/resources/images/exercise/Textures/BG_NormalRoughness.png b/resources/images/exercise/Textures/BG_NormalRoughness.png new file mode 100644 index 0000000..52cb66d Binary files /dev/null and b/resources/images/exercise/Textures/BG_NormalRoughness.png differ diff --git a/resources/images/exercise/Textures/Body_AlbedoMetallic.png b/resources/images/exercise/Textures/Body_AlbedoMetallic.png new file mode 100644 index 0000000..d8211a6 Binary files /dev/null and b/resources/images/exercise/Textures/Body_AlbedoMetallic.png differ diff --git a/resources/images/exercise/Textures/Body_Female_Asian_Adult_SubsurfaceColor.png b/resources/images/exercise/Textures/Body_Female_Asian_Adult_SubsurfaceColor.png new file mode 100644 index 0000000..8df1878 Binary files /dev/null and b/resources/images/exercise/Textures/Body_Female_Asian_Adult_SubsurfaceColor.png differ diff --git a/resources/images/exercise/Textures/Body_NormalRoughness.png b/resources/images/exercise/Textures/Body_NormalRoughness.png new file mode 100644 index 0000000..91d02cb Binary files /dev/null and b/resources/images/exercise/Textures/Body_NormalRoughness.png differ diff --git a/resources/images/exercise/Textures/Eye_AlbedoMetallic.png b/resources/images/exercise/Textures/Eye_AlbedoMetallic.png new file mode 100644 index 0000000..0137f24 Binary files /dev/null and b/resources/images/exercise/Textures/Eye_AlbedoMetallic.png differ diff --git a/resources/images/exercise/Textures/Eye_NormalRoughness.png b/resources/images/exercise/Textures/Eye_NormalRoughness.png new file mode 100644 index 0000000..9d5971b Binary files /dev/null and b/resources/images/exercise/Textures/Eye_NormalRoughness.png differ diff --git a/resources/images/exercise/Textures/FitBot_AlbedoMetallic.png b/resources/images/exercise/Textures/FitBot_AlbedoMetallic.png new file mode 100644 index 0000000..d70a3de Binary files /dev/null and b/resources/images/exercise/Textures/FitBot_AlbedoMetallic.png differ diff --git a/resources/images/exercise/Textures/FitBot_NormalRoughness.png b/resources/images/exercise/Textures/FitBot_NormalRoughness.png new file mode 100644 index 0000000..fd47924 Binary files /dev/null and b/resources/images/exercise/Textures/FitBot_NormalRoughness.png differ diff --git a/resources/images/exercise/Textures/FitTop_AlbedoMetallic.png b/resources/images/exercise/Textures/FitTop_AlbedoMetallic.png new file mode 100644 index 0000000..f19e93c Binary files /dev/null and b/resources/images/exercise/Textures/FitTop_AlbedoMetallic.png differ diff --git a/resources/images/exercise/Textures/FitTop_NormalRoughness.png b/resources/images/exercise/Textures/FitTop_NormalRoughness.png new file mode 100644 index 0000000..6c3e743 Binary files /dev/null and b/resources/images/exercise/Textures/FitTop_NormalRoughness.png differ diff --git a/resources/images/exercise/Textures/Hair_AlbedoMetallic.png b/resources/images/exercise/Textures/Hair_AlbedoMetallic.png new file mode 100644 index 0000000..8b96834 Binary files /dev/null and b/resources/images/exercise/Textures/Hair_AlbedoMetallic.png differ diff --git a/resources/images/exercise/Textures/Hair_NormalRoughness.png b/resources/images/exercise/Textures/Hair_NormalRoughness.png new file mode 100644 index 0000000..9d643ab Binary files /dev/null and b/resources/images/exercise/Textures/Hair_NormalRoughness.png differ diff --git a/resources/images/exercise/Textures/Head_AlbedoMetallic.png b/resources/images/exercise/Textures/Head_AlbedoMetallic.png new file mode 100644 index 0000000..568a115 Binary files /dev/null and b/resources/images/exercise/Textures/Head_AlbedoMetallic.png differ diff --git a/resources/images/exercise/Textures/Head_Female_SubsurfaceColor.png b/resources/images/exercise/Textures/Head_Female_SubsurfaceColor.png new file mode 100644 index 0000000..609ce5b Binary files /dev/null and b/resources/images/exercise/Textures/Head_Female_SubsurfaceColor.png differ diff --git a/resources/images/exercise/Textures/Head_NormalRoughness.png b/resources/images/exercise/Textures/Head_NormalRoughness.png new file mode 100644 index 0000000..b2eb952 Binary files /dev/null and b/resources/images/exercise/Textures/Head_NormalRoughness.png differ diff --git a/resources/images/exercise/Textures/Shoe_AlbedoMetallic.png b/resources/images/exercise/Textures/Shoe_AlbedoMetallic.png new file mode 100644 index 0000000..6bf07f9 Binary files /dev/null and b/resources/images/exercise/Textures/Shoe_AlbedoMetallic.png differ diff --git a/resources/images/exercise/Textures/Shoe_NormalRoughness.png b/resources/images/exercise/Textures/Shoe_NormalRoughness.png new file mode 100644 index 0000000..f953ec0 Binary files /dev/null and b/resources/images/exercise/Textures/Shoe_NormalRoughness.png differ diff --git a/resources/models/arc.dli b/resources/models/arc.dli new file mode 100644 index 0000000..ccc634f --- /dev/null +++ b/resources/models/arc.dli @@ -0,0 +1,35 @@ +{ + "scene": 0, + "scenes": [ { "nodes": [ 0 ] } ], + "nodes": [ { + "name": "root", + "children": [ 1 ] + }, { + "name": "arc", + "size": [ 2.0, 2.0 ], + "color": [ 0.5, 1.0, 0.5, 0.5 ], + "arc": { + "shader": 0, + "mesh": 0, + "startAngle" : -45.0, + "endAngle" : 135.0, + "radius" : -0.75, + "arcCaps": 3 + } + } ], + "environment": [ { + } ], + "meshes": [ { + "uri": "quad", + "attributes": 0 + } ], + "materials": [ { + } ], + "shaders": [ { + "vertex": "dli_arc.vsh", + "fragment": "dli_arc.fsh", + "rendererState" : "ALPHA_BLEND", + "startAngle": [ -1.0, 0.0 ], + "endAngle": [ 1.0, 0.0 ] + } ] +} diff --git a/resources/models/beer.dli b/resources/models/beer.dli new file mode 100644 index 0000000..86e9eb3 --- /dev/null +++ b/resources/models/beer.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": "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": "Studio/Radiance.ktx", + "cubeDiffuse": "Studio/Irradiance.ktx", + "iblIntensity": 0.75 + } + ], + "shaders": [ + { + "vertex": "dli_pbr.vsh", + "fragment": "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": "dli_pbr.vsh", + "fragment": "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": "dli_pbr.vsh", + "fragment": "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": "dli_pbr.vsh", + "fragment": "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": "dli_pbr.vsh", + "fragment": "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/models/beer/beer.bin b/resources/models/beer/beer.bin new file mode 100644 index 0000000..08571fd Binary files /dev/null and b/resources/models/beer/beer.bin differ diff --git a/resources/models/beer/cube.bin b/resources/models/beer/cube.bin new file mode 100644 index 0000000..f5bd426 Binary files /dev/null and b/resources/models/beer/cube.bin differ diff --git a/resources/models/error.dli b/resources/models/error.dli new file mode 100644 index 0000000..f7b7c89 --- /dev/null +++ b/resources/models/error.dli @@ -0,0 +1,3 @@ +{ + "scene": 0, +} \ No newline at end of file diff --git a/resources/models/exercise.dli b/resources/models/exercise.dli new file mode 100644 index 0000000..c2cbba4 --- /dev/null +++ b/resources/models/exercise.dli @@ -0,0 +1,11701 @@ +{ + "metadata" : [ { + "key" : "clock-type", + "value" : "com.samsung.watchface-01" + }, { + "key" : "tickpersecond", + "value" : "1" + }, { + "key" : "preview_time", + "value" : "10:08:32" + }, { + "key" : "tilt-mode", + "value" : "light" + }, { + "key" : "depth-sorted-3d", + "value" : "false" + } ], + "asset" : { + "version" : "1.0" + }, + "scene" : 1, + "scenes" : [ { + "nodes" : [ 0 ] + }, { + "nodes" : [ 95 ] + } ], + "nodes" : [ { + "name" : "ExerciseDemo", + "matrix" : [ 0.01, 0.0, 0.0, 0.0, 0.0, 0.01, 0.0, 0.0, 0.0, 0.0, 0.01, 0.0, 0.0, 0.0, 0.0, 1.0 ], + "children" : [ 1, 79, 88, 91, 92, 93, 94 ], + "behavior" : [ 4 ], + "visible" : true, + "lightingMode" : "lit" + }, { + "name" : "ReferenceShape_JNT", + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0 ], + "children" : [ 2 ], + "visible" : true + }, { + "name" : "hips_JNT", + "matrix" : [ 0.984536, 0.175182, 0.0, 0.0, -0.175122, 0.984198, 0.026198, 0.0, 0.004589, -0.025793, 0.999657, 0.0, 5.27538, 78.6471, -1.41421, 1.0 ], + "children" : [ 3, 69, 74 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.013219, -80.0521, 1.41421, 1.0 ] + }, { + "name" : "spine_JNT", + "matrix" : [ 0.984536, -0.175122, 0.004589, 0.0, 0.174502, 0.982682, 0.062338, 0.0, -0.015426, -0.060573, 0.998044, 0.0, 0.015846, 4.13037, 0.166239, 1.0 ], + "children" : [ 4 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, -0.002627, -84.1824, 1.24797, 1.0 ] + }, { + "name" : "spine1_JNT", + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 0.998172, -0.06044, 0.0, 0.0, 0.06044, 0.998172, 0.0, 0.005973, 10.694, 0.968772, 1.0 ], + "children" : [ 5 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, -0.0086, -94.8764, 0.279197, 1.0 ] + }, { + "name" : "spine2_JNT", + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 0.998172, -0.06044, 0.0, 0.0, 0.06044, 0.998172, 0.0, 0.0, 10.1532, -0.580362, 1.0 ], + "children" : [ 6, 30, 54 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, -0.008557, -105.03, 0.859559, 1.0 ] + }, { + "name" : "l_shoulder_JNT", + "matrix" : [ 0.949195, 0.273744, -0.155217, 0.0, -0.201691, 0.907824, 0.367663, 0.0, 0.241555, -0.317678, 0.916914, 0.0, 2.88666, 12.5391, -0.534974, 1.0 ], + "children" : [ 7 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, -2.89521, -117.569, 1.39453, 1.0 ] + }, { + "name" : "l_arm_JNT", + "matrix" : [ 0.421571, -0.904401, -0.065849, 0.0, 0.517137, 0.180132, 0.836733, 0.0, -0.744881, -0.386795, 0.543638, 0.0, 10.2653, 0.0, 0.0, 1.0 ], + "children" : [ 8 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, -13.1738, -116.164, 1.39451, 1.0 ] + }, { + "name" : "l_forearm_JNT", + "matrix" : [ -0.073871, 0.0, 0.997268, 0.0, -3.91E-4, 1.0, 0.0, 0.0, -0.997268, -3.93E-4, -0.073871, 0.0, 25.5729, 0.0, 0.0, 1.0 ], + "children" : [ 9 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, -38.7466, -116.164, 1.39451, 1.0 ] + }, { + "name" : "l_hand_JNT", + "matrix" : [ 0.738915, 0.444766, -0.506149, 0.0, -0.59918, 0.777334, -0.191665, 0.0, 0.308201, 0.444898, 0.840879, 0.0, 19.8068, -0.345714, 1.00359, 1.0 ], + "children" : [ 10, 14, 18, 22, 26 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, -58.5534, -115.818, 0.390923, 1.0 ] + }, { + "name" : "l_handThumb1_JNT", + "matrix" : [ 0.782913, -0.117863, 0.610865, 0.0, 0.011962, 0.984561, 0.174635, 0.0, -0.622017, -0.129417, 0.772235, 0.0, 2.27648, -1.65194, 3.31969, 1.0 ], + "children" : [ 11 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 0.707107, 0.0, -0.707107, 0.0, 0.0, 1.0, 0.0, 0.0, 0.707107, 0.0, 0.707107, 0.0, -45.0842, -114.166, 40.9423, 1.0 ] + }, { + "name" : "l_handThumb2_JNT", + "matrix" : [ 0.830425, -0.487404, -0.269872, 0.0, 0.464771, 0.873169, -0.146844, 0.0, 0.307216, -0.003486, 0.951633, 0.0, 3.0735, 0.0, 0.0, 1.0 ], + "children" : [ 12 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 0.707107, 0.0, -0.707108, 0.0, 0.0, 1.0, 0.0, 0.0, 0.707108, 0.0, 0.707107, 0.0, -48.1577, -114.166, 40.9423, 1.0 ] + }, { + "name" : "l_handThumb3_JNT", + "matrix" : [ 0.98882, -0.149117, 0.0, 0.0, 0.149117, 0.98882, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 3.37693, 0.0, 0.0, 1.0 ], + "children" : [ 13 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 0.707107, 0.0, -0.707108, 0.0, 0.0, 1.0, 0.0, 0.0, 0.707107, 0.0, 0.707107, 0.0, -51.5344, -114.166, 40.9423, 1.0 ] + }, { + "name" : "l_handThumb4_JNT", + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 3.92326, 0.0, 0.0, 1.0 ], + "visible" : true + }, { + "name" : "l_handIndex1_JNT", + "matrix" : [ 0.904938, -0.425377, 0.011949, 0.0, 0.425382, 0.905011, 0.002209, 0.0, -0.011754, 0.003084, 1.0, 0.0, 9.34022, -0.291901, 4.04881, 1.0 ], + "children" : [ 15 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, -67.8936, -115.526, -3.65789, 1.0 ] + }, { + "name" : "l_handIndex2_JNT", + "matrix" : [ 0.973047, -0.230606, 0.0, 0.0, 0.230606, 0.973047, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 4.09938, 0.0, 0.0, 1.0 ], + "children" : [ 16 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, -71.993, -115.526, -3.65788, 1.0 ] + }, { + "name" : "l_handIndex3_JNT", + "matrix" : [ 0.973047, -0.230606, 0.0, 0.0, 0.230606, 0.973047, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 2.57415, 0.0, 0.0, 1.0 ], + "children" : [ 17 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, -74.5672, -115.526, -3.65788, 1.0 ] + }, { + "name" : "l_handIndex4_JNT", + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 2.56603, 0.0, 0.0, 1.0 ], + "visible" : true + }, { + "name" : "l_handPinky1_JNT", + "matrix" : [ 0.996226, -0.081261, -0.030513, 0.0, 0.081431, 0.996669, 0.004384, 0.0, 0.030055, -0.006852, 0.999525, 0.0, 8.45263, -1.52385, -3.88068, 1.0 ], + "children" : [ 19 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, -67.0061, -114.294, 4.2716, 1.0 ] + }, { + "name" : "l_handPinky2_JNT", + "matrix" : [ 0.973047, -0.230606, 0.0, 0.0, 0.230606, 0.973047, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 3.07304, 0.0, 0.0, 1.0 ], + "children" : [ 20 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, -70.0791, -114.294, 4.2716, 1.0 ] + }, { + "name" : "l_handPinky3_JNT", + "matrix" : [ 0.973047, -0.230606, 0.0, 0.0, 0.230606, 0.973047, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 1.96712, 0.0, 0.0, 1.0 ], + "children" : [ 21 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, -72.0462, -114.294, 4.27159, 1.0 ] + }, { + "name" : "l_handPinky4_JNT", + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 2.8257, 0.0, 0.0, 1.0 ], + "visible" : true + }, { + "name" : "l_handRing1_JNT", + "matrix" : [ 0.980994, -0.191551, 0.030976, 0.0, 0.19168, 0.981457, -0.001225, 0.0, -0.030167, 0.007139, 0.999519, 0.0, 9.86254, -0.583908, -1.401, 1.0 ], + "children" : [ 23 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, -68.416, -115.234, 1.79193, 1.0 ] + }, { + "name" : "l_handRing2_JNT", + "matrix" : [ 0.973047, -0.230606, 0.0, 0.0, 0.230606, 0.973047, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 3.90873, 0.0, 0.0, 1.0 ], + "children" : [ 24 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, -72.3247, -115.234, 1.79192, 1.0 ] + }, { + "name" : "l_handRing3_JNT", + "matrix" : [ 0.973047, -0.230606, 0.0, 0.0, 0.230606, 0.973047, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 2.36478, 0.0, 0.0, 1.0 ], + "children" : [ 25 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, -74.6895, -115.234, 1.79192, 1.0 ] + }, { + "name" : "l_handRing4_JNT", + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 2.88243, 0.0, 0.0, 1.0 ], + "visible" : true + }, { + "name" : "l_handMiddle1_JNT", + "matrix" : [ 0.953413, -0.301668, 0.0, 0.0, 0.301668, 0.953413, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 10.0737, -0.408325, 1.31404, 1.0 ], + "children" : [ 27 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, -68.6272, -115.41, -0.923121, 1.0 ] + }, { + "name" : "l_handMiddle2_JNT", + "matrix" : [ 0.973047, -0.230606, 0.0, 0.0, 0.230606, 0.973047, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 4.2249, 0.0, 0.0, 1.0 ], + "children" : [ 28 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, -72.8521, -115.41, -0.923118, 1.0 ] + }, { + "name" : "l_handMiddle3_JNT", + "matrix" : [ 0.973047, -0.230606, 0.0, 0.0, 0.230606, 0.973048, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 2.46916, 0.0, 0.0, 1.0 ], + "children" : [ 29 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, -75.3213, -115.41, -0.923117, 1.0 ] + }, { + "name" : "l_handMiddle4_JNT", + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 3.28131, 0.0, 0.0, 1.0 ], + "visible" : true + }, { + "name" : "r_shoulder_JNT", + "matrix" : [ 0.999696, 0.01745, -0.017452, 0.0, -0.017145, 0.999701, 0.01745, 0.0, 0.017751, -0.017145, 0.999696, 0.0, -2.88677, 12.5391, -0.53497, 1.0 ], + "children" : [ 31 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 2.87821, -117.569, 1.39453, 1.0 ] + }, { + "name" : "r_arm_JNT", + "matrix" : [ 0.148671, 0.988778, -0.014664, 0.0, -0.988733, 0.14837, -0.019851, 0.0, -0.017453, 0.01745, 0.999695, 0.0, -10.2653, 0.0, 0.0, 1.0 ], + "children" : [ 32 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 13.1303, -116.164, 1.39455, 1.0 ] + }, { + "name" : "r_forearm_JNT", + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 4.01E-4, 0.0, 0.0, -4.01E-4, 1.0, 0.0, -25.5729, 0.0, 0.0, 1.0 ], + "children" : [ 33 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 38.7032, -116.164, 1.39456, 1.0 ] + }, { + "name" : "r_hand_JNT", + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, -4.01E-4, 0.0, 0.0, 4.01E-4, 1.0, 0.0, -19.807, -0.346, 1.00358, 1.0 ], + "children" : [ 34, 38, 42, 46, 50 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 58.5102, -115.818, 0.390979, 1.0 ] + }, { + "name" : "r_handThumb1_JNT", + "matrix" : [ 0.653433, 0.24549, -0.716073, 0.0, -0.244838, 0.963648, 0.106945, 0.0, 0.716296, 0.105441, 0.689785, 0.0, -2.27647, -1.65195, 3.31969, 1.0 ], + "children" : [ 35 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 0.707106, 0.0, 0.707106, 0.0, 0.0, 1.0, 0.0, 0.0, -0.707106, 0.0, 0.707106, 0.0, 45.0536, -114.166, 40.9117, 1.0 ] + }, { + "name" : "r_handThumb2_JNT", + "matrix" : [ 0.867302, 0.0, 0.497783, 0.0, 0.0, 1.0, 0.0, 0.0, -0.497783, 0.0, 0.867301, 0.0, -3.0735, 0.0, 0.0, 1.0 ], + "children" : [ 36 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 0.707106, 0.0, 0.707106, 0.0, 0.0, 1.0, 0.0, 0.0, -0.707106, 0.0, 0.707106, 0.0, 48.127, -114.166, 40.9117, 1.0 ] + }, { + "name" : "r_handThumb3_JNT", + "matrix" : [ 0.996311, 0.0, 0.085813, 0.0, 0.0, 1.0, 0.0, 0.0, -0.085813, 0.0, 0.996311, 0.0, -3.37693, 0.0, 0.0, 1.0 ], + "children" : [ 37 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 0.707106, 0.0, 0.707107, 0.0, 0.0, 1.0, 0.0, 0.0, -0.707106, 0.0, 0.707107, 0.0, 51.504, -114.166, 40.9117, 1.0 ] + }, { + "name" : "r_handThumb4_JNT", + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, -3.923, 0.0, 0.0, 1.0 ], + "visible" : true + }, { + "name" : "r_handRing1_JNT", + "matrix" : [ 0.915131, 0.400047, -0.049976, 0.0, -0.400717, 0.916194, -0.003754, 0.0, 0.044286, 0.023462, 0.998743, 0.0, -9.86253, -0.583984, -1.40101, 1.0 ], + "children" : [ 39 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 68.3727, -115.234, 1.79199, 1.0 ] + }, { + "name" : "r_handRing2_JNT", + "matrix" : [ 0.94204, 0.335501, 0.0, 0.0, -0.335501, 0.94204, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, -3.90872, 0.0, 0.0, 1.0 ], + "children" : [ 40 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 72.2814, -115.234, 1.79199, 1.0 ] + }, { + "name" : "r_handRing3_JNT", + "matrix" : [ 0.94204, 0.335501, 0.0, 0.0, -0.335501, 0.94204, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, -2.36478, 0.0, 0.0, 1.0 ], + "children" : [ 41 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 74.6462, -115.234, 1.792, 1.0 ] + }, { + "name" : "r_handRing4_JNT", + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, -2.882, 0.0, 0.0, 1.0 ], + "visible" : true + }, { + "name" : "r_handPinky1_JNT", + "matrix" : [ 0.863063, 0.499949, -0.071924, 0.0, -0.501878, 0.864874, -0.010555, 0.0, 0.056928, 0.045207, 0.997354, 0.0, -8.45262, -1.52391, -3.88068, 1.0 ], + "children" : [ 43 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 66.9628, -114.294, 4.27166, 1.0 ] + }, { + "name" : "r_handPinky2_JNT", + "matrix" : [ 0.94204, 0.335501, 0.0, 0.0, -0.335501, 0.94204, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, -3.07304, 0.0, 0.0, 1.0 ], + "children" : [ 44 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 70.0358, -114.294, 4.27167, 1.0 ] + }, { + "name" : "r_handPinky3_JNT", + "matrix" : [ 0.94204, 0.335501, 0.0, 0.0, -0.335501, 0.94204, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, -1.96712, 0.0, 0.0, 1.0 ], + "children" : [ 45 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 72.0029, -114.294, 4.27168, 1.0 ] + }, { + "name" : "r_handPinky4_JNT", + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, -2.826, 0.0, 0.0, 1.0 ], + "visible" : true + }, { + "name" : "r_handMiddle1_JNT", + "matrix" : [ 0.944916, 0.327312, 0.0, 0.0, -0.327312, 0.944916, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, -10.0737, -0.408401, 1.31403, 1.0 ], + "children" : [ 47 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 68.5839, -115.409, -0.923056, 1.0 ] + }, { + "name" : "r_handMiddle2_JNT", + "matrix" : [ 0.94204, 0.335501, 0.0, 0.0, -0.335501, 0.94204, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, -4.2249, 0.0, 0.0, 1.0 ], + "children" : [ 48 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 72.8088, -115.409, -0.923044, 1.0 ] + }, { + "name" : "r_handMiddle3_JNT", + "matrix" : [ 0.94204, 0.335501, 0.0, 0.0, -0.335501, 0.94204, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, -2.46917, 0.0, 0.0, 1.0 ], + "children" : [ 49 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 75.278, -115.409, -0.92304, 1.0 ] + }, { + "name" : "r_handMiddle4_JNT", + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, -3.281, 0.0, 0.0, 1.0 ], + "visible" : true + }, { + "name" : "r_handIndex1_JNT", + "matrix" : [ 0.980248, 0.186022, 0.067154, 0.0, -0.186597, 0.982434, 0.002344, 0.0, -0.065538, -0.014828, 0.99774, 0.0, -9.34022, -0.291962, 4.0488, 1.0 ], + "children" : [ 51 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 67.8504, -115.526, -3.65782, 1.0 ] + }, { + "name" : "r_handIndex2_JNT", + "matrix" : [ 0.94204, 0.335501, 0.0, 0.0, -0.335501, 0.94204, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, -4.09938, 0.0, 0.0, 1.0 ], + "children" : [ 52 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 71.9498, -115.526, -3.65782, 1.0 ] + }, { + "name" : "r_handIndex3_JNT", + "matrix" : [ 0.94204, 0.335501, 0.0, 0.0, -0.335501, 0.94204, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, -2.57415, 0.0, 0.0, 1.0 ], + "children" : [ 53 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 74.5239, -115.526, -3.65782, 1.0 ] + }, { + "name" : "r_handIndex4_JNT", + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, -2.566, 0.0, 0.0, 1.0 ], + "visible" : true + }, { + "name" : "neck_JNT", + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 0.998172, -0.06044, 0.0, 0.0, 0.06044, 0.998172, 0.0, 0.0, 17.0656, -0.695395, 1.0 ], + "children" : [ 55 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, -0.008488, -122.095, 1.55495, 1.0 ] + }, { + "name" : "head_JNT", + "matrix" : [ 0.995828, 0.087837, -0.024703, 0.0, -0.081637, 0.978626, 0.188753, 0.0, 0.040755, -0.185949, 0.981714, 0.0, 0.0, 8.13757, 2.14518, 1.0 ], + "children" : [ 56, 59, 62, 65, 66, 67, 68 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, -0.021705, -128.828, -2.00444, 1.0 ] + }, { + "name" : "hair_01_JNT", + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 11.442, 24.1427, -1.69867, 1.0 ], + "children" : [ 57 ], + "visible" : true + }, { + "name" : "hair_01_01_JNT", + "matrix" : [ 0.0, 0.0, -1.0, 0.0, -0.093641, 0.995606, 0.0, 0.0, 0.995606, 0.093641, 0.0, 0.0, 0.0, -9.01569, 0.0, 1.0 ], + "children" : [ 58 ], + "visible" : true + }, { + "name" : "hair_01_02_JNT", + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, -11.0805, 0.0, 1.0 ], + "visible" : true + }, { + "name" : "hair_02_JNT", + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, -13.1304, 24.2143, -1.69866, 1.0 ], + "children" : [ 60 ], + "visible" : true + }, { + "name" : "hair_02_01_JNT", + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, -9.01563, 0.0, 1.0 ], + "children" : [ 61 ], + "visible" : true + }, { + "name" : "hair_02_02_JNT", + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, -11.0805, 0.0, 1.0 ], + "visible" : true + }, { + "name" : "hair_03_JNT", + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 24.2142, -13.2264, 1.0 ], + "children" : [ 63 ], + "visible" : true + }, { + "name" : "hair_03_01_JNT", + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, -9.01563, 0.0, 1.0 ], + "children" : [ 64 ], + "visible" : true + }, { + "name" : "hair_03_02_JNT", + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, -11.0805, 0.0, 1.0 ], + "visible" : true + }, { + "name" : "l_earring_accessory_JNT", + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 10.936, 6.972, 0.888, 1.0 ], + "visible" : true + }, { + "name" : "r_earring_accessory_JNT", + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, -11.0026, 6.74516, 0.187242, 1.0 ], + "visible" : true + }, { + "name" : "l_eye_JNT", + "matrix" : [ 0.997963, -0.003027, 0.063724, 0.0, -0.003026, 0.995503, 0.094684, 0.0, -0.063724, -0.094684, 0.993466, 0.0, 4.68487, 12.7498, 9.96268, 1.0 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, -4.74966, -141.45, -10.6596, 1.0 ] + }, { + "name" : "r_eye_JNT", + "matrix" : [ 0.997966, -0.002933, 0.063684, 0.0, -0.002932, 0.995772, 0.091809, 0.0, -0.063684, -0.091809, 0.993738, 0.0, -4.77108, 12.7498, 9.96268, 1.0 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 4.70629, -141.45, -10.6596, 1.0 ] + }, { + "name" : "r_upleg_JNT", + "matrix" : [ 0.927337, -0.198173, 0.317448, 0.0, 0.278028, 0.93264, -0.229963, 0.0, -0.250492, 0.301512, 0.919969, 0.0, -7.5159, 0.0, 0.0, 1.0 ], + "children" : [ 70 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, -0.002495, -1.16E-4, 0.0, 0.002493, 0.999837, -0.017917, 0.0, 1.61E-4, 0.017917, 0.99984, 0.0, 7.32992, -80.0324, 2.84741, 1.0 ] + }, { + "name" : "r_leg_JNT", + "matrix" : [ 0.997732, 0.060039, 0.030441, 0.0, -0.067243, 0.9099, 0.409341, 0.0, -0.003122, -0.41046, 0.911874, 0.0, -0.724057, -37.7363, 2.80023, 1.0 ], + "children" : [ 71 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.002998, 0.0, 0.0, -0.002998, 0.999857, 0.016638, 0.0, 0.0, -0.016638, 0.999862, 0.0, 8.28614, -42.2277, -1.41208, 1.0 ] + }, { + "name" : "r_foot_JNT", + "matrix" : [ 0.964557, 0.026598, 0.262529, 0.0, 0.024923, 0.981276, -0.190988, 0.0, -0.262693, 0.190762, 0.945834, 0.0, 1.26E-4, -34.5752, -1.6048, 1.0 ], + "children" : [ 72 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 9.09E-4, 0.0, 0.0, -9.09E-4, 1.0, 0.0, 8.26299, -7.67328, 0.312986, 1.0 ] + }, { + "name" : "r_toebase_JNT", + "matrix" : [ 0.0, -0.103501, 0.994629, 0.0, 0.0, 0.994629, 0.103501, 0.0, -1.0, 0.0, 0.0, 0.0, 0.0, -6.10491, 11.1619, 1.0 ], + "children" : [ 73 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 0.0, 0.0, -1.0, 0.0, -0.102591, 0.994724, 0.0, 0.0, 0.994724, 0.102591, 0.0, 0.0, -10.6284, -2.68276, -8.26298, 1.0 ] + }, { + "name" : "joint1", + "matrix" : [ 0.0, 0.0, -1.0, 0.0, -0.108623, 0.994083, 0.0, 0.0, 0.994083, 0.108623, 0.0, 0.0, 5.7477, 0.0, 0.0, 1.0 ], + "visible" : true + }, { + "name" : "l_upleg_JNT", + "matrix" : [ 0.969105, -0.243372, 0.040065, 0.0, 0.242338, 0.969759, 0.028984, 0.0, -0.045907, -0.018379, 0.998777, 0.0, 7.51591, 0.0, 0.0, 1.0 ], + "children" : [ 75 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 0.999881, -0.015441, 0.0, 0.0, 0.015441, 0.999881, 0.0, -7.50515, -80.0204, 2.6501, 1.0 ] + }, { + "name" : "l_leg_JNT", + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 0.993288, -0.115665, 0.0, 0.0, 0.115665, 0.993288, 0.0, 2.16E-4, -37.7436, 2.62906, 1.0 ], + "children" : [ 76 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 0.999822, 0.018881, 0.0, 0.0, -0.018881, 0.999822, 0.0, -7.50542, -42.2526, -1.42976, 1.0 ] + }, { + "name" : "l_foot_JNT", + "matrix" : [ 0.996936, 0.072648, -0.029003, 0.0, -0.070636, 0.995367, 0.065233, 0.0, 0.033608, -0.062984, 0.997448, 0.0, 0.0, -34.5752, -1.6048, 1.0 ], + "children" : [ 77 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 9.11E-4, 0.0, 0.0, -9.11E-4, 1.0, 0.0, -7.50523, -7.67329, 0.31298, 1.0 ] + }, { + "name" : "l_toebase_JNT", + "matrix" : [ 1.9E-4, -0.10218, 0.994766, 0.0, 0.0, 0.994766, 0.10218, 0.0, -1.0, 0.0, 1.81E-4, 0.0, 0.0, -6.10494, 11.1619, 1.0 ], + "children" : [ 78 ], + "visible" : true, + "inverseBindPoseMatrix" : [ 0.0, 0.0, -1.0, 0.0, -0.102591, 0.994724, 0.0, 0.0, 0.994724, 0.102591, 0.0, 0.0, -10.6284, -2.68276, 7.50523, 1.0 ] + }, { + "name" : "joint2", + "matrix" : [ 0.0, 0.0, -1.0, 0.0, -0.104271, 0.994549, 0.0, 0.0, 0.994549, 0.104271, 0.0, 0.0, 5.91715, 0.0, 0.0, 1.0 ], + "visible" : true + }, { + "name" : "Model", + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0 ], + "children" : [ 80, 81, 82, 83, 84, 85, 86, 87 ], + "visible" : true, + "lightingMode" : "lit-solid" + }, { + "name" : "R_New_Eye", + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, -1.0, 1.0 ], + "visible" : true, + "model" : { + "color" : [ 1.0, 1.0, 1.0, 1.0 ], + "material" : 8, + "mesh" : 0, + "shader" : 1 + } + }, { + "name" : "L_New_Eye", + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, -1.0, 1.0 ], + "visible" : true, + "model" : { + "color" : [ 1.0, 1.0, 1.0, 1.0 ], + "material" : 8, + "mesh" : 1, + "shader" : 1 + } + }, { + "name" : "newhair", + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0 ], + "visible" : true, + "model" : { + "color" : [ 1.0, 1.0, 1.0, 1.0 ], + "material" : 9, + "mesh" : 2, + "shader" : 1 + } + }, { + "name" : "OutFit_Bottom", + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0 ], + "visible" : true, + "model" : { + "color" : [ 1.0, 1.0, 1.0, 1.0 ], + "material" : 10, + "mesh" : 3, + "shader" : 1 + } + }, { + "name" : "OutFit_Top", + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0 ], + "visible" : true, + "model" : { + "color" : [ 1.0, 1.0, 1.0, 1.0 ], + "material" : 11, + "mesh" : 4, + "shader" : 1 + } + }, { + "name" : "Shoes_Shoes01_Female_Adult_Thumbnail_GEO", + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0 ], + "visible" : true, + "model" : { + "color" : [ 1.0, 1.0, 1.0, 1.0 ], + "material" : 12, + "mesh" : 5, + "shader" : 1 + } + }, { + "name" : "Head_GEO", + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0 ], + "visible" : true, + "model" : { + "color" : [ 1.0, 1.0, 1.0, 1.0 ], + "material" : 7, + "mesh" : 6, + "shader" : 2 + } + }, { + "name" : "Body_GEO", + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0 ], + "visible" : true, + "model" : { + "color" : [ 1.0, 1.0, 1.0, 1.0 ], + "material" : 6, + "mesh" : 9, + "shader" : 2 + } + }, { + "name" : "directionalLight1", + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 91.3751, 284.323, 1.0 ], + "visible" : true + }, { + "name" : "BackGround", + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0 ], + "visible" : true, + "model" : { + "color" : [ 1.0, 1.0, 1.0, 1.0 ], + "material" : 5, + "mesh" : 7, + "shader" : 4 + } + }, { + "name" : "Ground", + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0 ], + "visible" : true, + "model" : { + "color" : [ 1.0, 1.0, 1.0, 1.0 ], + "material" : 5, + "mesh" : 8, + "shader" : 4 + } + }, { + "name" : "Idle", + "size" : [ 30.0, 30.0 ], + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, -82.0, 64.0, -1.0, 1.0 ], + "behavior" : [ 0 ], + "visible" : true, + "model" : { + "color" : [ 1.0, 1.0, 1.0, 1.0 ], + "material" : 1, + "mesh" : 10, + "shader" : 3 + } + }, { + "name" : "Squat", + "size" : [ 30.0, 30.0 ], + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, -85.0, 94.0, 1.0, 1.0 ], + "behavior" : [ 1 ], + "visible" : true, + "model" : { + "color" : [ 1.0, 1.0, 1.0, 1.0 ], + "material" : 2, + "mesh" : 10, + "shader" : 3 + } + }, { + "name" : "JumpingJack", + "size" : [ 30.0, 30.0 ], + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, -75.0, 124.0, 0.0, 1.0 ], + "behavior" : [ 2 ], + "visible" : true, + "model" : { + "color" : [ 1.0, 1.0, 1.0, 1.0 ], + "material" : 3, + "mesh" : 10, + "shader" : 3 + } + }, { + "name" : "Lunge", + "size" : [ 30.0, 30.0 ], + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, -55.0, 154.0, 0.0, 1.0 ], + "behavior" : [ 3 ], + "visible" : true, + "model" : { + "color" : [ 1.0, 1.0, 1.0, 1.0 ], + "material" : 4, + "mesh" : 10, + "shader" : 3 + } + }, { + "name" : "Backdrop", + "matrix" : [ 0.01, 0.0, 0.0, 0.0, 0.0, 0.01, 0.0, 0.0, 0.0, 0.0, 0.01, 0.0, 0.0, 0.0, 0.0, 1.0 ], + "children" : [ 89, 90 ], + "visible" : true, + "lightingMode" : "lit" + } ], + "meshes" : [ { + "uri" : "exercise/model.dae.bin", + "attributes" : 223, + "primitive" : "TRIANGLES", + "indices" : { + "byteOffset" : 0, + "byteLength" : 2520 + }, + "positions" : { + "byteOffset" : 2520, + "byteLength" : 3168 + }, + "normals" : { + "byteOffset" : 5688, + "byteLength" : 3168 + }, + "textures" : { + "byteOffset" : 8856, + "byteLength" : 2112 + }, + "tangents" : { + "byteOffset" : 10968, + "byteLength" : 3168 + }, + "skeleton" : 0, + "joints0" : { + "byteOffset" : 14136, + "byteLength" : 4224 + }, + "weights0" : { + "byteOffset" : 18360, + "byteLength" : 4224 + } + }, { + "uri" : "exercise/model.dae.bin", + "attributes" : 223, + "primitive" : "TRIANGLES", + "indices" : { + "byteOffset" : 22584, + "byteLength" : 2520 + }, + "positions" : { + "byteOffset" : 25104, + "byteLength" : 3180 + }, + "normals" : { + "byteOffset" : 28284, + "byteLength" : 3180 + }, + "textures" : { + "byteOffset" : 31464, + "byteLength" : 2120 + }, + "tangents" : { + "byteOffset" : 33584, + "byteLength" : 3180 + }, + "skeleton" : 0, + "joints0" : { + "byteOffset" : 36764, + "byteLength" : 4240 + }, + "weights0" : { + "byteOffset" : 41004, + "byteLength" : 4240 + } + }, { + "uri" : "exercise/model.dae.bin", + "attributes" : 223, + "primitive" : "TRIANGLES", + "indices" : { + "byteOffset" : 45244, + "byteLength" : 25938 + }, + "positions" : { + "byteOffset" : 71182, + "byteLength" : 34092 + }, + "normals" : { + "byteOffset" : 105274, + "byteLength" : 34092 + }, + "textures" : { + "byteOffset" : 139366, + "byteLength" : 22728 + }, + "tangents" : { + "byteOffset" : 162094, + "byteLength" : 34092 + }, + "skeleton" : 0, + "joints0" : { + "byteOffset" : 196186, + "byteLength" : 45456 + }, + "weights0" : { + "byteOffset" : 241642, + "byteLength" : 45456 + } + }, { + "uri" : "exercise/model.dae.bin", + "attributes" : 223, + "primitive" : "TRIANGLES", + "indices" : { + "byteOffset" : 287098, + "byteLength" : 5988 + }, + "positions" : { + "byteOffset" : 293086, + "byteLength" : 8412 + }, + "normals" : { + "byteOffset" : 301498, + "byteLength" : 8412 + }, + "textures" : { + "byteOffset" : 309910, + "byteLength" : 5608 + }, + "tangents" : { + "byteOffset" : 315518, + "byteLength" : 8412 + }, + "skeleton" : 0, + "joints0" : { + "byteOffset" : 323930, + "byteLength" : 11216 + }, + "weights0" : { + "byteOffset" : 335146, + "byteLength" : 11216 + } + }, { + "uri" : "exercise/model.dae.bin", + "attributes" : 223, + "primitive" : "TRIANGLES", + "indices" : { + "byteOffset" : 346362, + "byteLength" : 3720 + }, + "positions" : { + "byteOffset" : 350082, + "byteLength" : 5004 + }, + "normals" : { + "byteOffset" : 355086, + "byteLength" : 5004 + }, + "textures" : { + "byteOffset" : 360090, + "byteLength" : 3336 + }, + "tangents" : { + "byteOffset" : 363426, + "byteLength" : 5004 + }, + "skeleton" : 0, + "joints0" : { + "byteOffset" : 368430, + "byteLength" : 6672 + }, + "weights0" : { + "byteOffset" : 375102, + "byteLength" : 6672 + } + }, { + "uri" : "exercise/model.dae.bin", + "attributes" : 223, + "primitive" : "TRIANGLES", + "indices" : { + "byteOffset" : 381774, + "byteLength" : 5520 + }, + "positions" : { + "byteOffset" : 387294, + "byteLength" : 7284 + }, + "normals" : { + "byteOffset" : 394578, + "byteLength" : 7284 + }, + "textures" : { + "byteOffset" : 401862, + "byteLength" : 4856 + }, + "tangents" : { + "byteOffset" : 406718, + "byteLength" : 7284 + }, + "skeleton" : 0, + "joints0" : { + "byteOffset" : 414002, + "byteLength" : 9712 + }, + "weights0" : { + "byteOffset" : 423714, + "byteLength" : 9712 + } + }, { + "uri" : "exercise/model.dae.bin", + "attributes" : 223, + "primitive" : "TRIANGLES", + "indices" : { + "byteOffset" : 433426, + "byteLength" : 34524 + }, + "positions" : { + "byteOffset" : 467950, + "byteLength" : 37824 + }, + "normals" : { + "byteOffset" : 505774, + "byteLength" : 37824 + }, + "textures" : { + "byteOffset" : 543598, + "byteLength" : 25216 + }, + "tangents" : { + "byteOffset" : 568814, + "byteLength" : 37824 + }, + "skeleton" : 0, + "joints0" : { + "byteOffset" : 606638, + "byteLength" : 50432 + }, + "weights0" : { + "byteOffset" : 657070, + "byteLength" : 50432 + } + }, { + "uri" : "exercise/model.dae.bin", + "attributes" : 31, + "primitive" : "TRIANGLES", + "indices" : { + "byteOffset" : 707502, + "byteLength" : 360 + }, + "positions" : { + "byteOffset" : 707862, + "byteLength" : 732 + }, + "normals" : { + "byteOffset" : 708594, + "byteLength" : 732 + }, + "textures" : { + "byteOffset" : 709326, + "byteLength" : 488 + }, + "tangents" : { + "byteOffset" : 709814, + "byteLength" : 732 + } + }, { + "uri" : "exercise/model.dae.bin", + "attributes" : 31, + "primitive" : "TRIANGLES", + "indices" : { + "byteOffset" : 710546, + "byteLength" : 12 + }, + "positions" : { + "byteOffset" : 710558, + "byteLength" : 48 + }, + "normals" : { + "byteOffset" : 710606, + "byteLength" : 48 + }, + "textures" : { + "byteOffset" : 710654, + "byteLength" : 32 + }, + "tangents" : { + "byteOffset" : 710686, + "byteLength" : 48 + } + }, { + "uri" : "exercise/model.dae.bin", + "attributes" : 223, + "primitive" : "TRIANGLES", + "indices" : { + "byteOffset" : 710734, + "byteLength" : 24312 + }, + "positions" : { + "byteOffset" : 735046, + "byteLength" : 33000 + }, + "normals" : { + "byteOffset" : 768046, + "byteLength" : 33000 + }, + "textures" : { + "byteOffset" : 801046, + "byteLength" : 22000 + }, + "tangents" : { + "byteOffset" : 823046, + "byteLength" : 33000 + }, + "skeleton" : 0, + "joints0" : { + "byteOffset" : 856046, + "byteLength" : 44000 + }, + "weights0" : { + "byteOffset" : 900046, + "byteLength" : 44000 + } + }, { + "uri" : "quad", + "attributes" : 0, + "primitive" : "TRIANGLES" + } ], + "cameras" : [ { + "near" : 2.5, + "far" : 1000.0, + "matrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.9138, 5.0, 1.0 ], + "fov" : 37.8492 + } ], + "lights" : [ { + "matrix" : [ 0.8950600624084473, 0.0914330929517746, 0.4364715814590454, 0.0, 0.3676385283470154, 0.4026888310909271, -0.8382623195648193, 0.0, -0.25240713357925415, 0.9107588529586792, 0.3268163800239563, 0.0, 0.0, 0.0, -1.0, 1.0 ], + "color" : [ 1.0, 1.0, 1.0 ], + "intensity" : 1.0, + "shadowMapSize" : 256, + "orthographicSize" : 4.2760005, + "shadowIntensity" : 1.0 + } ], + "materials" : [ { + "name" : "No name", + "color" : [ 1.0, 1.0, 1.0, 1.0 ], + "roughness" : 1.0, + "metallic" : 1.0, + "mipmap" : true, + "environment" : 1 + }, { + "name" : "Icons\\Icon_Idle.png", + "color" : [ 1.0, 1.0, 1.0, 1.0 ], + "roughness" : 1.0, + "metallic" : 1.0, + "mipmap" : false, + "albedoMap" : "exercise/Icons/Icon_Idle.png" + }, { + "name" : "Icons\\Icon_Squat.png", + "color" : [ 1.0, 1.0, 1.0, 1.0 ], + "roughness" : 1.0, + "metallic" : 1.0, + "mipmap" : false, + "albedoMap" : "exercise/Icons/Icon_Squat.png" + }, { + "name" : "Icons\\Icon_JJ.png", + "color" : [ 1.0, 1.0, 1.0, 1.0 ], + "roughness" : 1.0, + "metallic" : 1.0, + "mipmap" : false, + "albedoMap" : "exercise/Icons/Icon_JJ.png" + }, { + "name" : "Icons\\Icon_Lunge.png", + "color" : [ 1.0, 1.0, 1.0, 1.0 ], + "roughness" : 1.0, + "metallic" : 1.0, + "mipmap" : false, + "albedoMap" : "exercise/Icons/Icon_Lunge.png" + }, { + "name" : "Background", + "color" : [ 1.0, 1.0, 1.0, 1.0 ], + "normalRoughnessMap" : "exercise/Textures/BG_NormalRoughness.png", + "albedoMetallicMap" : "exercise/Textures/BG_AlbedoMetallic.png", + "roughness" : 1.0, + "metallic" : 1.0, + "mipmap" : true, + "environment" : 1 + }, { + "name" : "Body", + "color" : [ 1.0, 1.0, 1.0, 1.0 ], + "normalRoughnessMap" : "exercise/Textures/Body_NormalRoughness.png", + "albedoMetallicMap" : "exercise/Textures/Body_AlbedoMetallic.png", + "roughness" : 1.0, + "metallic" : 1.0, + "mipmap" : true, + "subsurfaceMap" : "exercise/Textures/Body_Female_Asian_Adult_SubsurfaceColor.png", + "environment" : 1 + }, { + "name" : "Head", + "color" : [ 1.0, 1.0, 1.0, 1.0 ], + "normalRoughnessMap" : "exercise/Textures/Head_NormalRoughness.png", + "albedoMetallicMap" : "exercise/Textures/Head_AlbedoMetallic.png", + "roughness" : 1.0, + "metallic" : 1.0, + "mipmap" : true, + "subsurfaceMap" : "exercise/Textures/Head_Female_SubsurfaceColor.png", + "environment" : 1 + }, { + "name" : "Eye", + "color" : [ 1.0, 1.0, 1.0, 1.0 ], + "normalRoughnessMap" : "exercise/Textures/Eye_NormalRoughness.png", + "albedoMetallicMap" : "exercise/Textures/Eye_AlbedoMetallic.png", + "roughness" : 1.0, + "metallic" : 1.0, + "mipmap" : true, + "environment" : 1 + }, { + "name" : "Hair", + "color" : [ 1.0, 1.0, 1.0, 1.0 ], + "normalRoughnessMap" : "exercise/Textures/Hair_NormalRoughness.png", + "albedoMetallicMap" : "exercise/Textures/Hair_AlbedoMetallic.png", + "roughness" : 1.0, + "metallic" : 1.0, + "mipmap" : true, + "environment" : 1 + }, { + "name" : "Bottom outfit", + "color" : [ 1.0, 1.0, 1.0, 1.0 ], + "normalRoughnessMap" : "exercise/Textures/FitBot_NormalRoughness.png", + "albedoMetallicMap" : "exercise/Textures/FitBot_AlbedoMetallic.png", + "roughness" : 1.0, + "metallic" : 1.0, + "mipmap" : true, + "environment" : 1 + }, { + "name" : "Top outfit", + "color" : [ 1.0, 1.0, 1.0, 1.0 ], + "normalRoughnessMap" : "exercise/Textures/FitTop_NormalRoughness.png", + "albedoMetallicMap" : "exercise/Textures/FitTop_AlbedoMetallic.png", + "roughness" : 1.0, + "metallic" : 1.0, + "mipmap" : true, + "environment" : 1 + }, { + "name" : "Shoe", + "color" : [ 1.0, 1.0, 1.0, 1.0 ], + "normalRoughnessMap" : "exercise/Textures/Shoe_NormalRoughness.png", + "albedoMetallicMap" : "exercise/Textures/Shoe_AlbedoMetallic.png", + "roughness" : 1.0, + "metallic" : 1.0, + "mipmap" : true, + "environment" : 1 + } ], + "environment" : [ { + "cubeInitialOrientation" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0 ], + "iblIntensity" : 1.0 + }, { + "cubeSpecular" : "Studio/Radiance.ktx", + "cubeDiffuse" : "Studio/Irradiance.ktx", + "cubeInitialOrientation" : [ 0.6716271638870239, 0.07979151606559753, -0.7365801334381104, 0.0, 0.07979151606559753, 0.9806114435195923, 0.17898204922676086, 0.0, 0.7365801334381104, -0.17898204922676086, 0.6522386074066162, 0.0, 0.0, 0.0, 0.0, 1.0 ], + "iblIntensity" : 0.75 + } ], + "shaders" : [ { + "vertex" : "dli_pbr.vsh", + "fragment" : "dli_pbr.fsh", + "rendererState" : "DEPTH_TEST|DEPTH_WRITE|CULL_BACK|DEPTH_FUNC:LESS_EQUAL", + "uCubeMatrix" : [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1 ], + "uMaxLOD" : 8 + }, { + "vertex" : "dli_pbr.vsh", + "fragment" : "dli_pbr.fsh", + "hints": [ "MODIFIES_GEOMETRY" ], + "defines" : [ "LIT", "SKINNING" ], + "rendererState" : "DEPTH_TEST|DEPTH_WRITE|CULL_BACK|DEPTH_FUNC:LESS_EQUAL", + "uCubeMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0 ], + "uMaxLOD" : 6 + }, { + "vertex" : "dli_pbr.vsh", + "fragment" : "dli_pbr.fsh", + "hints": [ "MODIFIES_GEOMETRY" ], + "defines" : [ "LIT", "SKINNING", "SSS" ], + "rendererState" : "DEPTH_TEST|DEPTH_WRITE|CULL_BACK|DEPTH_FUNC:LESS_EQUAL", + "uCubeMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0 ], + "uMaxLOD" : 6 + }, { + "vertex" : "dli_images.vsh", + "fragment" : "dli_images.fsh", + "rendererState" : "DEPTH_TEST|ALPHA_BLEND", + "uCubeMatrix" : [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1 ], + "uTilt" : [ 0.0, 0.0 ] + }, { + "vertex" : "dli_pbr.vsh", + "fragment" : "dli_pbr.fsh", + "defines" : [ "LIT", "SHADOW" ], + "rendererState" : "DEPTH_TEST|DEPTH_WRITE|CULL_BACK|DEPTH_FUNC:LESS_EQUAL", + "uCubeMatrix" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0 ], + "uMaxLOD" : 6 + } ], + "behaviors" : [ { + "url" : "on-tap-idle.lua", + "event" : "tap" + }, { + "url" : "on-tap-squat.lua", + "event" : "tap" + }, { + "url" : "on-tap-jumping-jack.lua", + "event" : "tap" + }, { + "url" : "on-tap-lunge.lua", + "event" : "tap" + }, { + "url" : "ExerciseDemo- behavior_1.lua", + "event" : "scene.loaded" + } ], + "stateMachines" : [ { + "name" : "ExerciseStateMachine", + "url" : "exercise-animations-state-machine.lua" + } ], + "animationFinishedActions" : [ { + "url" : "on-idle-to-squat-animation-finished.lua" + }, { + "url" : "on-squat-animation-finished.lua" + }, { + "url" : "on-squat-to-idle-animation-finished.lua" + }, { + "url" : "on-idle-to-jumping-jack-animation-finished.lua" + }, { + "url" : "on-jumping-jack-animation-finished.lua" + }, { + "url" : "on-jumping-jack-to-idle-animation-finished.lua" + }, { + "url" : "on-idle-to-lunge-animation-finished.lua" + }, { + "url" : "on-lunge-animation-finished.lua" + }, { + "url" : "on-lunge-to-idle-animation-finished.lua" + }, { + "url" : "on-jumping-jack-to-lunge-animation-finished.lua" + }, { + "url" : "on-jumping-jack-to-squat-animation-finished.lua" + }, { + "url" : "on-lunge-to-jumping-jack-animation-finished.lua" + }, { + "url" : "on-lunge-to-squat-animation-finished.lua" + }, { + "url" : "on-squat-to-jumping-jack-animation-finished.lua" + }, { + "url" : "on-squat-to-lunge-animation-finished.lua" + } ], + "animations" : [ { + "name" : "idleClip", + "loopCount" : 0, + "duration" : 0.0, + "endAction" : "BAKE", + "disconnectAction" : "BAKE", + "properties" : [ { + "node" : "hips_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-animation.ani", + "byteOffset" : 0, + "numKeys" : 144 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 6.0 + }, + "relative" : false + }, { + "node" : "spine_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-animation.ani", + "byteOffset" : 3024, + "numKeys" : 144 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 6.0 + }, + "relative" : false + }, { + "node" : "spine1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-animation.ani", + "byteOffset" : 6048, + "numKeys" : 144 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 6.0 + }, + "relative" : false + }, { + "node" : "spine2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-animation.ani", + "byteOffset" : 9072, + "numKeys" : 144 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 6.0 + }, + "relative" : false + }, { + "node" : "l_arm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-animation.ani", + "byteOffset" : 12096, + "numKeys" : 144 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 6.0 + }, + "relative" : false + }, { + "node" : "l_forearm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-animation.ani", + "byteOffset" : 15120, + "numKeys" : 144 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 6.0 + }, + "relative" : false + }, { + "node" : "r_shoulder_JNT", + "property" : "position", + "keyFramesBin" : { + "url" : "exercise/idle-animation.ani", + "byteOffset" : 18144, + "numKeys" : 144 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 6.0 + }, + "relative" : false + }, { + "node" : "r_arm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-animation.ani", + "byteOffset" : 20592, + "numKeys" : 144 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 6.0 + }, + "relative" : false + }, { + "node" : "neck_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-animation.ani", + "byteOffset" : 23616, + "numKeys" : 144 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 6.0 + }, + "relative" : false + }, { + "node" : "head_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-animation.ani", + "byteOffset" : 26640, + "numKeys" : 144 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 6.0 + }, + "relative" : false + }, { + "node" : "l_eye_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-animation.ani", + "byteOffset" : 29664, + "numKeys" : 144 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 6.0 + }, + "relative" : false + }, { + "node" : "r_eye_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-animation.ani", + "byteOffset" : 32688, + "numKeys" : 144 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 6.0 + }, + "relative" : false + }, { + "node" : "r_upleg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-animation.ani", + "byteOffset" : 35712, + "numKeys" : 144 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 6.0 + }, + "relative" : false + }, { + "node" : "r_leg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-animation.ani", + "byteOffset" : 38736, + "numKeys" : 144 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 6.0 + }, + "relative" : false + }, { + "node" : "r_foot_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-animation.ani", + "byteOffset" : 41760, + "numKeys" : 144 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 6.0 + }, + "relative" : false + }, { + "node" : "l_upleg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-animation.ani", + "byteOffset" : 44784, + "numKeys" : 144 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 6.0 + }, + "relative" : false + }, { + "node" : "l_leg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-animation.ani", + "byteOffset" : 47808, + "numKeys" : 144 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 6.0 + }, + "relative" : false + }, { + "node" : "l_foot_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-animation.ani", + "byteOffset" : 50832, + "numKeys" : 144 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 6.0 + }, + "relative" : false + }, { + "node" : "l_toebase_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-animation.ani", + "byteOffset" : 53856, + "numKeys" : 144 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 6.0 + }, + "relative" : false + } ] + }, { + "name" : "squatClip_0", + "loopCount" : 1, + "duration" : 0.0, + "endAction" : "BAKE", + "disconnectAction" : "BAKE", + "properties" : [ { + "node" : "hips_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-animation-0.ani", + "byteOffset" : 0, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "hips_JNT", + "property" : "position", + "keyFramesBin" : { + "url" : "exercise/squat-animation-0.ani", + "byteOffset" : 1764, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "spine_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-animation-0.ani", + "byteOffset" : 3192, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "spine1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-animation-0.ani", + "byteOffset" : 4956, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "spine2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-animation-0.ani", + "byteOffset" : 6720, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "neck_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-animation-0.ani", + "byteOffset" : 8484, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "head_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-animation-0.ani", + "byteOffset" : 10248, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "hair_02_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-animation-0.ani", + "byteOffset" : 12012, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "hair_03_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-animation-0.ani", + "byteOffset" : 13776, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + } ], + "finishedActions" : [ 1 ] + }, { + "name" : "squatClip_1", + "loopCount" : 1, + "duration" : 0.0, + "endAction" : "BAKE", + "disconnectAction" : "BAKE", + "properties" : [ { + "node" : "l_arm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-animation-1.ani", + "byteOffset" : 0, + "numKeys" : 76 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.16667 + }, + "relative" : false + }, { + "node" : "l_forearm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-animation-1.ani", + "byteOffset" : 1596, + "numKeys" : 76 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.16667 + }, + "relative" : false + }, { + "node" : "l_hand_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-animation-1.ani", + "byteOffset" : 3192, + "numKeys" : 76 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.16667 + }, + "relative" : false + }, { + "node" : "l_handThumb1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-animation-1.ani", + "byteOffset" : 4788, + "numKeys" : 76 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.16667 + }, + "relative" : false + }, { + "node" : "l_handThumb2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-animation-1.ani", + "byteOffset" : 6384, + "numKeys" : 76 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.16667 + }, + "relative" : false + }, { + "node" : "l_handIndex1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-animation-1.ani", + "byteOffset" : 7980, + "numKeys" : 76 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.16667 + }, + "relative" : false + }, { + "node" : "l_handPinky1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-animation-1.ani", + "byteOffset" : 9576, + "numKeys" : 76 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.16667 + }, + "relative" : false + }, { + "node" : "l_handRing1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-animation-1.ani", + "byteOffset" : 11172, + "numKeys" : 76 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.16667 + }, + "relative" : false + }, { + "node" : "l_handMiddle1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-animation-1.ani", + "byteOffset" : 12768, + "numKeys" : 76 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.16667 + }, + "relative" : false + }, { + "node" : "r_shoulder_JNT", + "property" : "position", + "keyFramesBin" : { + "url" : "exercise/squat-animation-1.ani", + "byteOffset" : 14364, + "numKeys" : 76 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.16667 + }, + "relative" : false + }, { + "node" : "r_arm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-animation-1.ani", + "byteOffset" : 15656, + "numKeys" : 76 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.16667 + }, + "relative" : false + }, { + "node" : "r_forearm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-animation-1.ani", + "byteOffset" : 17252, + "numKeys" : 76 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.16667 + }, + "relative" : false + }, { + "node" : "r_hand_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-animation-1.ani", + "byteOffset" : 18848, + "numKeys" : 76 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.16667 + }, + "relative" : false + }, { + "node" : "r_handThumb1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-animation-1.ani", + "byteOffset" : 20444, + "numKeys" : 76 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.16667 + }, + "relative" : false + }, { + "node" : "r_handThumb2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-animation-1.ani", + "byteOffset" : 22040, + "numKeys" : 76 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.16667 + }, + "relative" : false + }, { + "node" : "r_handRing1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-animation-1.ani", + "byteOffset" : 23636, + "numKeys" : 76 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.16667 + }, + "relative" : false + }, { + "node" : "r_handPinky1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-animation-1.ani", + "byteOffset" : 25232, + "numKeys" : 76 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.16667 + }, + "relative" : false + }, { + "node" : "r_handMiddle1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-animation-1.ani", + "byteOffset" : 26828, + "numKeys" : 76 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.16667 + }, + "relative" : false + }, { + "node" : "r_handIndex1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-animation-1.ani", + "byteOffset" : 28424, + "numKeys" : 76 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.16667 + }, + "relative" : false + }, { + "node" : "l_eye_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-animation-1.ani", + "byteOffset" : 30020, + "numKeys" : 76 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.16667 + }, + "relative" : false + }, { + "node" : "r_eye_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-animation-1.ani", + "byteOffset" : 31616, + "numKeys" : 76 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.16667 + }, + "relative" : false + }, { + "node" : "r_upleg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-animation-1.ani", + "byteOffset" : 33212, + "numKeys" : 76 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.16667 + }, + "relative" : false + }, { + "node" : "r_leg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-animation-1.ani", + "byteOffset" : 34808, + "numKeys" : 76 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.16667 + }, + "relative" : false + }, { + "node" : "r_foot_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-animation-1.ani", + "byteOffset" : 36404, + "numKeys" : 76 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.16667 + }, + "relative" : false + }, { + "node" : "r_toebase_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-animation-1.ani", + "byteOffset" : 38000, + "numKeys" : 76 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.16667 + }, + "relative" : false + }, { + "node" : "l_upleg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-animation-1.ani", + "byteOffset" : 39596, + "numKeys" : 76 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.16667 + }, + "relative" : false + }, { + "node" : "l_leg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-animation-1.ani", + "byteOffset" : 41192, + "numKeys" : 76 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.16667 + }, + "relative" : false + }, { + "node" : "l_foot_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-animation-1.ani", + "byteOffset" : 42788, + "numKeys" : 76 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.16667 + }, + "relative" : false + }, { + "node" : "l_toebase_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-animation-1.ani", + "byteOffset" : 44384, + "numKeys" : 76 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.16667 + }, + "relative" : false + } ] + }, { + "name" : "jumpingJackClip", + "loopCount" : 1, + "duration" : 0.0, + "endAction" : "BAKE", + "disconnectAction" : "BAKE", + "properties" : [ { + "node" : "hips_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 0, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "hips_JNT", + "property" : "position", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 630, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "spine_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 1140, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "spine1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 1770, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "spine2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 2400, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "l_arm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 3030, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "l_forearm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 3660, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "l_handThumb1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 4290, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "l_handThumb2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 4920, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "l_handThumb3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 5550, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "l_handIndex1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 6180, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "l_handIndex2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 6810, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "l_handIndex3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 7440, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "l_handPinky1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 8070, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "l_handPinky2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 8700, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "l_handPinky3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 9330, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "l_handRing1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 9960, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "l_handRing2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 10590, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "l_handRing3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 11220, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "l_handMiddle1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 11850, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "l_handMiddle2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 12480, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "l_handMiddle3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 13110, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "r_arm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 13740, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "r_forearm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 14370, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "r_hand_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 15000, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "r_handThumb1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 15630, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "r_handThumb2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 16260, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "r_handThumb3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 16890, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "r_handRing1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 17520, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "r_handRing2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 18150, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "r_handRing3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 18780, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "r_handPinky1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 19410, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "r_handPinky2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 20040, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "r_handPinky3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 20670, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "r_handMiddle1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 21300, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "r_handMiddle2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 21930, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "r_handMiddle3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 22560, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "r_handIndex1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 23190, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "r_handIndex2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 23820, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "r_handIndex3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 24450, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "neck_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 25080, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "head_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 25710, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "l_eye_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 26340, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "r_eye_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 26970, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "r_upleg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 27600, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "r_leg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 28230, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "r_foot_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 28860, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "r_toebase_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 29490, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "l_upleg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 30120, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "l_leg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 30750, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "l_foot_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 31380, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "l_toebase_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-animation.ani", + "byteOffset" : 32010, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + } ], + "finishedActions" : [ 4 ] + }, { + "name" : "lungeClip", + "loopCount" : 1, + "duration" : 0.0, + "endAction" : "BAKE", + "disconnectAction" : "BAKE", + "properties" : [ { + "node" : "hips_JNT", + "property" : "position", + "keyFramesBin" : { + "url" : "exercise/lunge-animation.ani", + "byteOffset" : 0, + "numKeys" : 97 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 4.04167 + }, + "relative" : false + }, { + "node" : "spine_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-animation.ani", + "byteOffset" : 1649, + "numKeys" : 97 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 4.04167 + }, + "relative" : false + }, { + "node" : "spine1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-animation.ani", + "byteOffset" : 3686, + "numKeys" : 97 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 4.04167 + }, + "relative" : false + }, { + "node" : "spine2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-animation.ani", + "byteOffset" : 5723, + "numKeys" : 97 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 4.04167 + }, + "relative" : false + }, { + "node" : "l_arm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-animation.ani", + "byteOffset" : 7760, + "numKeys" : 97 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 4.04167 + }, + "relative" : false + }, { + "node" : "l_forearm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-animation.ani", + "byteOffset" : 9797, + "numKeys" : 97 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 4.04167 + }, + "relative" : false + }, { + "node" : "l_hand_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-animation.ani", + "byteOffset" : 11834, + "numKeys" : 97 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 4.04167 + }, + "relative" : false + }, { + "node" : "l_handThumb1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-animation.ani", + "byteOffset" : 13871, + "numKeys" : 97 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 4.04167 + }, + "relative" : false + }, { + "node" : "l_handThumb2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-animation.ani", + "byteOffset" : 15908, + "numKeys" : 97 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 4.04167 + }, + "relative" : false + }, { + "node" : "l_handThumb3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-animation.ani", + "byteOffset" : 17945, + "numKeys" : 97 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 4.04167 + }, + "relative" : false + }, { + "node" : "l_handIndex1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-animation.ani", + "byteOffset" : 19982, + "numKeys" : 97 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 4.04167 + }, + "relative" : false + }, { + "node" : "l_handIndex2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-animation.ani", + "byteOffset" : 22019, + "numKeys" : 97 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 4.04167 + }, + "relative" : false + }, { + "node" : "l_handIndex3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-animation.ani", + "byteOffset" : 24056, + "numKeys" : 97 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 4.04167 + }, + "relative" : false + }, { + "node" : "l_handPinky1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-animation.ani", + "byteOffset" : 26093, + "numKeys" : 97 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 4.04167 + }, + "relative" : false + }, { + "node" : "l_handPinky2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-animation.ani", + "byteOffset" : 28130, + "numKeys" : 97 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 4.04167 + }, + "relative" : false + }, { + "node" : "l_handPinky3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-animation.ani", + "byteOffset" : 30167, + "numKeys" : 97 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 4.04167 + }, + "relative" : false + }, { + "node" : "l_handRing1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-animation.ani", + "byteOffset" : 32204, + "numKeys" : 97 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 4.04167 + }, + "relative" : false + }, { + "node" : "l_handRing2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-animation.ani", + "byteOffset" : 34241, + "numKeys" : 97 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 4.04167 + }, + "relative" : false + }, { + "node" : "l_handRing3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-animation.ani", + "byteOffset" : 36278, + "numKeys" : 97 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 4.04167 + }, + "relative" : false + }, { + "node" : "l_handMiddle1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-animation.ani", + "byteOffset" : 38315, + "numKeys" : 97 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 4.04167 + }, + "relative" : false + }, { + "node" : "l_handMiddle2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-animation.ani", + "byteOffset" : 40352, + "numKeys" : 97 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 4.04167 + }, + "relative" : false + }, { + "node" : "l_handMiddle3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-animation.ani", + "byteOffset" : 42389, + "numKeys" : 97 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 4.04167 + }, + "relative" : false + }, { + "node" : "r_shoulder_JNT", + "property" : "position", + "keyFramesBin" : { + "url" : "exercise/lunge-animation.ani", + "byteOffset" : 44426, + "numKeys" : 97 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 4.04167 + }, + "relative" : false + }, { + "node" : "r_arm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-animation.ani", + "byteOffset" : 46075, + "numKeys" : 97 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 4.04167 + }, + "relative" : false + }, { + "node" : "r_forearm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-animation.ani", + "byteOffset" : 48112, + "numKeys" : 97 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 4.04167 + }, + "relative" : false + }, { + "node" : "r_hand_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-animation.ani", + "byteOffset" : 50149, + "numKeys" : 97 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 4.04167 + }, + "relative" : false + }, { + "node" : "neck_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-animation.ani", + "byteOffset" : 52186, + "numKeys" : 97 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 4.04167 + }, + "relative" : false + }, { + "node" : "head_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-animation.ani", + "byteOffset" : 54223, + "numKeys" : 97 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 4.04167 + }, + "relative" : false + }, { + "node" : "r_eye_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-animation.ani", + "byteOffset" : 56260, + "numKeys" : 97 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 4.04167 + }, + "relative" : false + }, { + "node" : "r_upleg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-animation.ani", + "byteOffset" : 58297, + "numKeys" : 97 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 4.04167 + }, + "relative" : false + }, { + "node" : "r_leg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-animation.ani", + "byteOffset" : 60334, + "numKeys" : 97 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 4.04167 + }, + "relative" : false + }, { + "node" : "r_foot_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-animation.ani", + "byteOffset" : 62371, + "numKeys" : 97 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 4.04167 + }, + "relative" : false + }, { + "node" : "l_upleg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-animation.ani", + "byteOffset" : 64408, + "numKeys" : 97 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 4.04167 + }, + "relative" : false + }, { + "node" : "l_leg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-animation.ani", + "byteOffset" : 66445, + "numKeys" : 97 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 4.04167 + }, + "relative" : false + }, { + "node" : "l_foot_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-animation.ani", + "byteOffset" : 68482, + "numKeys" : 97 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 4.04167 + }, + "relative" : false + } ], + "finishedActions" : [ 7 ] + }, { + "name" : "idleToSquatClip_0", + "loopCount" : 1, + "duration" : 0.0, + "endAction" : "BAKE", + "disconnectAction" : "BAKE", + "properties" : [ { + "node" : "hips_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 0, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "hips_JNT", + "property" : "position", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 1932, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "spine_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 3496, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "spine_JNT", + "property" : "position", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 5428, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "spine1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 6992, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "spine2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 8924, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "l_shoulder_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 10856, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "l_arm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 12788, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "l_forearm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 14720, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "l_hand_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 16652, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "l_handThumb1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 18584, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "l_handThumb2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 20516, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "l_handThumb3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 22448, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "l_handIndex1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 24380, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "l_handIndex2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 26312, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "l_handIndex3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 28244, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "l_handPinky1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 30176, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "l_handPinky2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 32108, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "l_handPinky3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 34040, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "l_handRing1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 35972, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "l_handRing2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 37904, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "l_handRing3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 39836, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "l_handMiddle1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 41768, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "l_handMiddle2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 43700, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "l_handMiddle3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 45632, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "r_shoulder_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 47564, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "r_shoulder_JNT", + "property" : "position", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 49496, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "r_arm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 51060, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "r_forearm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 52992, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "r_hand_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 54924, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "r_handThumb1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 56856, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "r_handThumb2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 58788, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "r_handThumb3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 60720, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "r_handRing1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 62652, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "r_handRing2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 64584, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "r_handRing3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 66516, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "r_handPinky1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 68448, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "r_handPinky2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 70380, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "r_handPinky3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 72312, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "r_handMiddle1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 74244, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "r_handMiddle2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 76176, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "r_handMiddle3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 78108, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "r_handIndex1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 80040, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "r_handIndex2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 81972, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "r_handIndex3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 83904, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "neck_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 85836, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "head_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 87768, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "l_eye_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 89700, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "r_eye_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 91632, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "r_upleg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 93564, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "r_leg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 95496, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "r_foot_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 97428, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "r_toebase_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 99360, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "l_upleg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 101292, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "l_leg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 103224, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "l_foot_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 105156, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + }, { + "node" : "l_toebase_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-0.ani", + "byteOffset" : 107088, + "numKeys" : 92 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.83333 + }, + "relative" : false + } ], + "finishedActions" : [ 0 ] + }, { + "name" : "idleToSquatClip_1", + "loopCount" : 1, + "duration" : 0.0, + "endAction" : "BAKE", + "disconnectAction" : "BAKE", + "properties" : [ { + "node" : "hair_02_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-1.ani", + "byteOffset" : 0, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "hair_03_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-squat-animation-1.ani", + "byteOffset" : 1764, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + } ] + }, { + "name" : "squatToIdleClip", + "loopCount" : 1, + "duration" : 0.0, + "endAction" : "BAKE", + "disconnectAction" : "BAKE", + "properties" : [ { + "node" : "hips_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 0, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "hips_JNT", + "property" : "position", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 1806, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "spine_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 3268, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "spine1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 5074, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "spine2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 6880, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "l_shoulder_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 8686, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "l_arm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 10492, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "l_forearm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 12298, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "l_hand_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 14104, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "l_handThumb1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 15910, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "l_handThumb2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 17716, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "l_handThumb3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 19522, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "l_handIndex1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 21328, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "l_handIndex2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 23134, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "l_handIndex3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 24940, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "l_handPinky1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 26746, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "l_handPinky2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 28552, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "l_handPinky3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 30358, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "l_handRing1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 32164, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "l_handRing2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 33970, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "l_handRing3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 35776, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "l_handMiddle1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 37582, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "l_handMiddle2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 39388, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "l_handMiddle3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 41194, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "r_shoulder_JNT", + "property" : "position", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 43000, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "r_arm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 44462, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "r_forearm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 46268, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "r_hand_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 48074, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "r_handThumb1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 49880, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "r_handThumb2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 51686, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "r_handThumb3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 53492, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "r_handRing1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 55298, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "r_handRing2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 57104, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "r_handRing3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 58910, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "r_handPinky1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 60716, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "r_handPinky2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 62522, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "r_handPinky3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 64328, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "r_handMiddle1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 66134, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "r_handMiddle2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 67940, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "r_handMiddle3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 69746, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "r_handIndex1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 71552, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "r_handIndex2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 73358, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "r_handIndex3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 75164, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "neck_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 76970, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "head_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 78776, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "hair_02_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 80582, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "hair_03_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 82388, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "l_eye_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 84194, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "r_eye_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 86000, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "r_upleg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 87806, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "r_leg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 89612, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "r_foot_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 91418, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "r_toebase_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 93224, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "l_upleg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 95030, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "l_leg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 96836, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "l_foot_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 98642, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + }, { + "node" : "l_toebase_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-idle-animation.ani", + "byteOffset" : 100448, + "numKeys" : 86 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.58333 + }, + "relative" : false + } ], + "finishedActions" : [ 2 ] + }, { + "name" : "idleToJumpingJackClip", + "loopCount" : 1, + "duration" : 0.0, + "endAction" : "BAKE", + "disconnectAction" : "BAKE", + "properties" : [ { + "node" : "hips_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 0, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "hips_JNT", + "property" : "position", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 1365, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "spine_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 2470, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "spine1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 3835, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "spine2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 5200, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "l_shoulder_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 6565, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "l_arm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 7930, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "l_forearm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 9295, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "l_hand_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 10660, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "l_handThumb1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 12025, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "l_handThumb2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 13390, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "l_handThumb3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 14755, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "l_handIndex1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 16120, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "l_handIndex2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 17485, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "l_handIndex3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 18850, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "l_handPinky1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 20215, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "l_handPinky2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 21580, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "l_handPinky3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 22945, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "l_handRing1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 24310, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "l_handRing2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 25675, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "l_handRing3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 27040, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "l_handMiddle1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 28405, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "l_handMiddle2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 29770, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "l_handMiddle3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 31135, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "r_shoulder_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 32500, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "r_shoulder_JNT", + "property" : "position", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 33865, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "r_arm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 34970, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "r_forearm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 36335, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "r_hand_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 37700, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "r_handThumb1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 39065, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "r_handThumb2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 40430, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "r_handThumb3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 41795, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "r_handRing1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 43160, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "r_handRing2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 44525, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "r_handRing3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 45890, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "r_handPinky1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 47255, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "r_handPinky2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 48620, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "r_handPinky3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 49985, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "r_handMiddle1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 51350, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "r_handMiddle2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 52715, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "r_handMiddle3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 54080, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "r_handIndex1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 55445, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "r_handIndex2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 56810, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "r_handIndex3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 58175, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "neck_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 59540, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "head_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 60905, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "l_eye_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 62270, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "r_eye_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 63635, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "r_upleg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 65000, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "r_leg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 66365, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "r_foot_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 67730, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "r_toebase_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 69095, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "l_upleg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 70460, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "l_leg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 71825, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "l_foot_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 73190, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + }, { + "node" : "l_toebase_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-jumping-jack-animation.ani", + "byteOffset" : 74555, + "numKeys" : 65 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.70833 + }, + "relative" : false + } ], + "finishedActions" : [ 3 ] + }, { + "name" : "jumpingJackToIdleClip", + "loopCount" : 1, + "duration" : 0.0, + "endAction" : "BAKE", + "disconnectAction" : "BAKE", + "properties" : [ { + "node" : "hips_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 0, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "hips_JNT", + "property" : "position", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 1491, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "spine_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 2698, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "spine1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 4189, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "spine2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 5680, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "l_shoulder_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 7171, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "l_arm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 8662, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "l_forearm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 10153, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "l_hand_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 11644, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "l_handThumb1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 13135, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "l_handThumb2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 14626, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "l_handThumb3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 16117, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "l_handIndex1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 17608, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "l_handIndex2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 19099, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "l_handIndex3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 20590, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "l_handPinky1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 22081, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "l_handPinky2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 23572, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "l_handPinky3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 25063, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "l_handRing1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 26554, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "l_handRing2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 28045, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "l_handRing3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 29536, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "l_handMiddle1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 31027, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "l_handMiddle2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 32518, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "l_handMiddle3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 34009, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "r_shoulder_JNT", + "property" : "position", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 35500, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "r_arm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 36707, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "r_forearm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 38198, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "r_hand_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 39689, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "r_handThumb1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 41180, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "r_handThumb2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 42671, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "r_handThumb3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 44162, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "r_handRing1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 45653, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "r_handRing2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 47144, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "r_handRing3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 48635, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "r_handPinky1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 50126, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "r_handPinky2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 51617, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "r_handPinky3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 53108, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "r_handMiddle1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 54599, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "r_handMiddle2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 56090, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "r_handMiddle3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 57581, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "r_handIndex1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 59072, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "r_handIndex2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 60563, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "r_handIndex3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 62054, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "neck_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 63545, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "head_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 65036, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "l_eye_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 66527, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "r_eye_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 68018, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "r_upleg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 69509, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "r_leg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 71000, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "r_foot_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 72491, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "r_toebase_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 73982, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "l_upleg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 75473, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "l_leg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 76964, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "l_foot_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 78455, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + }, { + "node" : "l_toebase_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-idle-animation.ani", + "byteOffset" : 79946, + "numKeys" : 71 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 2.95833 + }, + "relative" : false + } ], + "finishedActions" : [ 5 ] + }, { + "name" : "idleToLungeClip", + "loopCount" : 1, + "duration" : 0.0, + "endAction" : "BAKE", + "disconnectAction" : "BAKE", + "properties" : [ { + "node" : "hips_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 0, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "hips_JNT", + "property" : "position", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 1764, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "spine_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 3192, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "spine_JNT", + "property" : "position", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 4956, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "spine1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 6384, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "spine2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 8148, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "l_shoulder_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 9912, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "l_arm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 11676, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "l_forearm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 13440, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "l_hand_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 15204, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "l_handThumb1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 16968, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "l_handThumb2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 18732, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "l_handThumb3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 20496, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "l_handIndex1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 22260, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "l_handIndex2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 24024, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "l_handIndex3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 25788, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "l_handPinky1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 27552, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "l_handPinky2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 29316, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "l_handPinky3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 31080, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "l_handRing1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 32844, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "l_handRing2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 34608, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "l_handRing3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 36372, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "l_handMiddle1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 38136, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "l_handMiddle2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 39900, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "l_handMiddle3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 41664, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "r_shoulder_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 43428, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "r_shoulder_JNT", + "property" : "position", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 45192, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "r_arm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 46620, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "r_forearm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 48384, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "r_hand_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 50148, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "r_handThumb1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 51912, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "r_handThumb2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 53676, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "r_handThumb3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 55440, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "r_handRing1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 57204, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "r_handRing2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 58968, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "r_handRing3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 60732, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "r_handPinky1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 62496, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "r_handPinky2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 64260, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "r_handPinky3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 66024, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "r_handMiddle1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 67788, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "r_handMiddle2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 69552, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "r_handMiddle3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 71316, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "r_handIndex1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 73080, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "r_handIndex2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 74844, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "r_handIndex3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 76608, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "neck_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 78372, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "head_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 80136, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "r_eye_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 81900, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "r_upleg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 83664, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "r_leg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 85428, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "r_foot_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 87192, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "r_toebase_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 88956, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "l_upleg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 90720, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "l_leg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 92484, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "l_foot_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 94248, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + }, { + "node" : "l_toebase_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/idle-to-lunge-animation.ani", + "byteOffset" : 96012, + "numKeys" : 84 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.5 + }, + "relative" : false + } ], + "finishedActions" : [ 6 ] + }, { + "name" : "lungeToIdleClip", + "loopCount" : 1, + "duration" : 0.0, + "endAction" : "BAKE", + "disconnectAction" : "BAKE", + "properties" : [ { + "node" : "hips_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 0, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "hips_JNT", + "property" : "position", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 1701, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "spine_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 3078, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "spine1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 4779, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "spine2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 6480, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "l_shoulder_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 8181, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "l_arm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 9882, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "l_forearm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 11583, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "l_hand_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 13284, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "l_handThumb1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 14985, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "l_handThumb2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 16686, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "l_handThumb3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 18387, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "l_handIndex1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 20088, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "l_handIndex2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 21789, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "l_handIndex3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 23490, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "l_handPinky1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 25191, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "l_handPinky2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 26892, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "l_handPinky3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 28593, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "l_handRing1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 30294, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "l_handRing2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 31995, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "l_handRing3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 33696, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "l_handMiddle1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 35397, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "l_handMiddle2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 37098, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "l_handMiddle3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 38799, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "r_shoulder_JNT", + "property" : "position", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 40500, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "r_arm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 41877, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "r_forearm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 43578, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "r_hand_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 45279, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "r_handThumb1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 46980, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "r_handThumb2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 48681, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "r_handThumb3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 50382, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "r_handRing1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 52083, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "r_handRing2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 53784, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "r_handRing3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 55485, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "r_handPinky1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 57186, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "r_handPinky2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 58887, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "r_handPinky3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 60588, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "r_handMiddle1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 62289, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "r_handMiddle2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 63990, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "r_handMiddle3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 65691, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "r_handIndex1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 67392, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "r_handIndex2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 69093, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "r_handIndex3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 70794, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "neck_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 72495, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "head_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 74196, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "r_eye_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 75897, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "r_upleg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 77598, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "r_leg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 79299, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "r_foot_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 81000, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "r_toebase_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 82701, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "l_upleg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 84402, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "l_leg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 86103, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "l_foot_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 87804, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + }, { + "node" : "l_toebase_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-idle-animation.ani", + "byteOffset" : 89505, + "numKeys" : 81 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 3.375 + }, + "relative" : false + } ], + "finishedActions" : [ 8 ] + }, { + "name" : "jumpingJackToLungeClip", + "loopCount" : 1, + "duration" : 0.0, + "endAction" : "BAKE", + "disconnectAction" : "BAKE", + "properties" : [ { + "node" : "hips_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 0, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "hips_JNT", + "property" : "position", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 756, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "spine_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 1368, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "spine_JNT", + "property" : "position", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 2124, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "spine1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 2736, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "spine2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 3492, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "l_arm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 4248, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "l_forearm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 5004, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "l_hand_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 5760, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "l_handThumb1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 6516, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "l_handThumb2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 7272, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "l_handThumb3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 8028, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "l_handIndex1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 8784, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "l_handIndex2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 9540, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "l_handIndex3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 10296, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "l_handPinky1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 11052, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "l_handPinky2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 11808, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "l_handPinky3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 12564, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "l_handRing1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 13320, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "l_handRing2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 14076, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "l_handRing3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 14832, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "l_handMiddle1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 15588, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "l_handMiddle2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 16344, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "l_handMiddle3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 17100, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "r_shoulder_JNT", + "property" : "position", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 17856, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "r_arm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 18468, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "r_forearm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 19224, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "r_hand_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 19980, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "r_handThumb1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 20736, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "r_handThumb2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 21492, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "r_handThumb3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 22248, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "r_handRing1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 23004, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "r_handRing2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 23760, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "r_handRing3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 24516, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "r_handPinky1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 25272, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "r_handPinky2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 26028, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "r_handPinky3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 26784, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "r_handMiddle1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 27540, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "r_handMiddle2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 28296, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "r_handMiddle3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 29052, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "r_handIndex1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 29808, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "r_handIndex2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 30564, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "r_handIndex3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 31320, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "neck_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 32076, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "head_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 32832, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "r_upleg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 33588, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "r_leg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 34344, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "r_foot_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 35100, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "r_toebase_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 35856, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "l_upleg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 36612, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "l_leg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 37368, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + }, { + "node" : "l_foot_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-lunge-animation.ani", + "byteOffset" : 38124, + "numKeys" : 36 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.5 + }, + "relative" : false + } ], + "finishedActions" : [ 9 ] + }, { + "name" : "jumpingJackToSquatClip", + "loopCount" : 1, + "duration" : 0.0, + "endAction" : "BAKE", + "disconnectAction" : "BAKE", + "properties" : [ { + "node" : "hips_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-squat-animation.ani", + "byteOffset" : 0, + "numKeys" : 25 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.04167 + }, + "relative" : false + }, { + "node" : "hips_JNT", + "property" : "position", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-squat-animation.ani", + "byteOffset" : 525, + "numKeys" : 25 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.04167 + }, + "relative" : false + }, { + "node" : "spine_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-squat-animation.ani", + "byteOffset" : 950, + "numKeys" : 25 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.04167 + }, + "relative" : false + }, { + "node" : "spine1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-squat-animation.ani", + "byteOffset" : 1475, + "numKeys" : 25 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.04167 + }, + "relative" : false + }, { + "node" : "spine2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-squat-animation.ani", + "byteOffset" : 2000, + "numKeys" : 25 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.04167 + }, + "relative" : false + }, { + "node" : "l_arm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-squat-animation.ani", + "byteOffset" : 2525, + "numKeys" : 25 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.04167 + }, + "relative" : false + }, { + "node" : "l_handIndex1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-squat-animation.ani", + "byteOffset" : 3050, + "numKeys" : 25 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.04167 + }, + "relative" : false + }, { + "node" : "l_handPinky1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-squat-animation.ani", + "byteOffset" : 3575, + "numKeys" : 25 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.04167 + }, + "relative" : false + }, { + "node" : "l_handRing1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-squat-animation.ani", + "byteOffset" : 4100, + "numKeys" : 25 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.04167 + }, + "relative" : false + }, { + "node" : "l_handMiddle1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-squat-animation.ani", + "byteOffset" : 4625, + "numKeys" : 25 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.04167 + }, + "relative" : false + }, { + "node" : "r_arm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-squat-animation.ani", + "byteOffset" : 5150, + "numKeys" : 25 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.04167 + }, + "relative" : false + }, { + "node" : "r_hand_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-squat-animation.ani", + "byteOffset" : 5675, + "numKeys" : 25 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.04167 + }, + "relative" : false + }, { + "node" : "r_handRing1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-squat-animation.ani", + "byteOffset" : 6200, + "numKeys" : 25 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.04167 + }, + "relative" : false + }, { + "node" : "r_handPinky1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-squat-animation.ani", + "byteOffset" : 6725, + "numKeys" : 25 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.04167 + }, + "relative" : false + }, { + "node" : "r_handMiddle1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-squat-animation.ani", + "byteOffset" : 7250, + "numKeys" : 25 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.04167 + }, + "relative" : false + }, { + "node" : "r_handIndex1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-squat-animation.ani", + "byteOffset" : 7775, + "numKeys" : 25 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.04167 + }, + "relative" : false + }, { + "node" : "neck_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-squat-animation.ani", + "byteOffset" : 8300, + "numKeys" : 25 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.04167 + }, + "relative" : false + }, { + "node" : "head_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-squat-animation.ani", + "byteOffset" : 8825, + "numKeys" : 25 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.04167 + }, + "relative" : false + }, { + "node" : "r_upleg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-squat-animation.ani", + "byteOffset" : 9350, + "numKeys" : 25 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.04167 + }, + "relative" : false + }, { + "node" : "r_leg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-squat-animation.ani", + "byteOffset" : 9875, + "numKeys" : 25 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.04167 + }, + "relative" : false + }, { + "node" : "r_foot_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-squat-animation.ani", + "byteOffset" : 10400, + "numKeys" : 25 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.04167 + }, + "relative" : false + }, { + "node" : "r_toebase_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-squat-animation.ani", + "byteOffset" : 10925, + "numKeys" : 25 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.04167 + }, + "relative" : false + }, { + "node" : "l_upleg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-squat-animation.ani", + "byteOffset" : 11450, + "numKeys" : 25 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.04167 + }, + "relative" : false + }, { + "node" : "l_leg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-squat-animation.ani", + "byteOffset" : 11975, + "numKeys" : 25 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.04167 + }, + "relative" : false + }, { + "node" : "l_foot_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/jumping-jack-to-squat-animation.ani", + "byteOffset" : 12500, + "numKeys" : 25 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.04167 + }, + "relative" : false + } ], + "finishedActions" : [ 10 ] + }, { + "name" : "lungeToJumpingJackClip", + "loopCount" : 1, + "duration" : 0.0, + "endAction" : "BAKE", + "disconnectAction" : "BAKE", + "properties" : [ { + "node" : "hips_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 0, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "hips_JNT", + "property" : "position", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 861, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "spine_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 1558, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "spine_JNT", + "property" : "position", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 2419, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "spine1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 3116, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "spine2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 3977, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "l_arm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 4838, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "l_forearm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 5699, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "l_hand_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 6560, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "l_handThumb1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 7421, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "l_handThumb2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 8282, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "l_handThumb3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 9143, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "l_handIndex1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 10004, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "l_handIndex2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 10865, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "l_handIndex3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 11726, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "l_handPinky1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 12587, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "l_handPinky2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 13448, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "l_handPinky3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 14309, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "l_handRing1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 15170, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "l_handRing2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 16031, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "l_handRing3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 16892, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "l_handMiddle1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 17753, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "l_handMiddle2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 18614, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "l_handMiddle3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 19475, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "r_shoulder_JNT", + "property" : "position", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 20336, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "r_arm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 21033, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "r_forearm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 21894, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "r_hand_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 22755, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "r_handThumb1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 23616, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "r_handThumb2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 24477, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "r_handThumb3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 25338, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "r_handRing1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 26199, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "r_handRing2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 27060, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "r_handRing3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 27921, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "r_handPinky1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 28782, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "r_handPinky2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 29643, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "r_handPinky3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 30504, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "r_handMiddle1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 31365, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "r_handMiddle2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 32226, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "r_handMiddle3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 33087, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "r_handIndex1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 33948, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "r_handIndex2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 34809, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "r_handIndex3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 35670, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "neck_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 36531, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "head_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 37392, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "r_upleg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 38253, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "r_leg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 39114, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "r_foot_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 39975, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "r_toebase_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 40836, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "l_upleg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 41697, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "l_leg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 42558, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + }, { + "node" : "l_foot_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-jumping-jack-animation.ani", + "byteOffset" : 43419, + "numKeys" : 41 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.70833 + }, + "relative" : false + } ], + "finishedActions" : [ 11 ] + }, { + "name" : "lungeToSquatClip", + "loopCount" : 1, + "duration" : 0.0, + "endAction" : "BAKE", + "disconnectAction" : "BAKE", + "properties" : [ { + "node" : "hips_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 0, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "hips_JNT", + "property" : "position", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 546, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "spine_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 988, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "spine_JNT", + "property" : "position", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 1534, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "spine1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 1976, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "spine2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 2522, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "l_arm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 3068, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "l_forearm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 3614, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "l_hand_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 4160, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "l_handThumb1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 4706, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "l_handThumb2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 5252, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "l_handThumb3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 5798, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "l_handIndex1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 6344, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "l_handIndex2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 6890, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "l_handIndex3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 7436, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "l_handPinky1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 7982, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "l_handPinky2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 8528, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "l_handPinky3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 9074, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "l_handRing1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 9620, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "l_handRing2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 10166, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "l_handRing3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 10712, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "l_handMiddle1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 11258, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "l_handMiddle2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 11804, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "l_handMiddle3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 12350, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "r_shoulder_JNT", + "property" : "position", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 12896, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "r_arm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 13338, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "r_forearm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 13884, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "r_hand_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 14430, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "r_handThumb1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 14976, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "r_handThumb2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 15522, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "r_handThumb3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 16068, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "r_handRing1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 16614, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "r_handRing2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 17160, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "r_handRing3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 17706, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "r_handPinky1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 18252, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "r_handPinky2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 18798, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "r_handPinky3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 19344, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "r_handMiddle1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 19890, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "r_handMiddle2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 20436, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "r_handMiddle3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 20982, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "r_handIndex1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 21528, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "r_handIndex2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 22074, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "r_handIndex3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 22620, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "neck_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 23166, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "head_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 23712, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "r_upleg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 24258, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "r_leg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 24804, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "r_foot_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 25350, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "r_toebase_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 25896, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "l_upleg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 26442, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "l_leg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 26988, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + }, { + "node" : "l_foot_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/lunge-to-squat-animation.ani", + "byteOffset" : 27534, + "numKeys" : 26 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.08333 + }, + "relative" : false + } ], + "finishedActions" : [ 12 ] + }, { + "name" : "squatToJumpingJackClip", + "loopCount" : 1, + "duration" : 0.0, + "endAction" : "BAKE", + "disconnectAction" : "BAKE", + "properties" : [ { + "node" : "hips_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-jumping-jack-animation.ani", + "byteOffset" : 0, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "hips_JNT", + "property" : "position", + "keyFramesBin" : { + "url" : "exercise/squat-to-jumping-jack-animation.ani", + "byteOffset" : 630, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "spine_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-jumping-jack-animation.ani", + "byteOffset" : 1140, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "spine1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-jumping-jack-animation.ani", + "byteOffset" : 1770, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "spine2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-jumping-jack-animation.ani", + "byteOffset" : 2400, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "l_arm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-jumping-jack-animation.ani", + "byteOffset" : 3030, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "l_handIndex1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-jumping-jack-animation.ani", + "byteOffset" : 3660, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "l_handPinky1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-jumping-jack-animation.ani", + "byteOffset" : 4290, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "l_handRing1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-jumping-jack-animation.ani", + "byteOffset" : 4920, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "l_handMiddle1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-jumping-jack-animation.ani", + "byteOffset" : 5550, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "r_shoulder_JNT", + "property" : "position", + "keyFramesBin" : { + "url" : "exercise/squat-to-jumping-jack-animation.ani", + "byteOffset" : 6180, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "r_arm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-jumping-jack-animation.ani", + "byteOffset" : 6690, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "r_hand_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-jumping-jack-animation.ani", + "byteOffset" : 7320, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "r_handRing1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-jumping-jack-animation.ani", + "byteOffset" : 7950, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "r_handPinky1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-jumping-jack-animation.ani", + "byteOffset" : 8580, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "r_handMiddle1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-jumping-jack-animation.ani", + "byteOffset" : 9210, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "r_handIndex1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-jumping-jack-animation.ani", + "byteOffset" : 9840, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "neck_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-jumping-jack-animation.ani", + "byteOffset" : 10470, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "head_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-jumping-jack-animation.ani", + "byteOffset" : 11100, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "r_upleg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-jumping-jack-animation.ani", + "byteOffset" : 11730, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "r_leg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-jumping-jack-animation.ani", + "byteOffset" : 12360, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "r_foot_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-jumping-jack-animation.ani", + "byteOffset" : 12990, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "r_toebase_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-jumping-jack-animation.ani", + "byteOffset" : 13620, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "l_upleg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-jumping-jack-animation.ani", + "byteOffset" : 14250, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "l_leg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-jumping-jack-animation.ani", + "byteOffset" : 14880, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "l_foot_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-jumping-jack-animation.ani", + "byteOffset" : 15510, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + }, { + "node" : "l_toebase_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-jumping-jack-animation.ani", + "byteOffset" : 16140, + "numKeys" : 30 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.25 + }, + "relative" : false + } ], + "finishedActions" : [ 13 ] + }, { + "name" : "squatToLungeClip", + "loopCount" : 1, + "duration" : 0.0, + "endAction" : "BAKE", + "disconnectAction" : "BAKE", + "properties" : [ { + "node" : "hips_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 0, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "hips_JNT", + "property" : "position", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 504, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "spine_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 912, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "spine1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 1416, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "spine2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 1920, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "l_arm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 2424, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "l_forearm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 2928, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "l_hand_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 3432, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "l_handThumb1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 3936, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "l_handThumb2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 4440, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "l_handThumb3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 4944, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "l_handIndex1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 5448, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "l_handIndex2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 5952, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "l_handIndex3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 6456, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "l_handPinky1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 6960, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "l_handPinky2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 7464, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "l_handPinky3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 7968, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "l_handRing1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 8472, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "l_handRing2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 8976, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "l_handRing3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 9480, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "l_handMiddle1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 9984, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "l_handMiddle2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 10488, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "l_handMiddle3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 10992, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "r_arm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 11496, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "r_forearm_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 12000, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "r_hand_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 12504, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "r_handThumb1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 13008, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "r_handThumb2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 13512, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "r_handThumb3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 14016, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "r_handRing1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 14520, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "r_handRing2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 15024, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "r_handRing3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 15528, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "r_handPinky1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 16032, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "r_handPinky2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 16536, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "r_handPinky3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 17040, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "r_handMiddle1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 17544, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "r_handMiddle2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 18048, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "r_handMiddle3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 18552, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "r_handIndex1_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 19056, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "r_handIndex2_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 19560, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "r_handIndex3_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 20064, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "neck_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 20568, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "head_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 21072, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "r_upleg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 21576, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "r_leg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 22080, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "r_foot_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 22584, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "r_toebase_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 23088, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "l_upleg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 23592, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "l_leg_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 24096, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + }, { + "node" : "l_foot_JNT", + "property" : "orientation", + "keyFramesBin" : { + "url" : "exercise/squat-to-lunge-animation.ani", + "byteOffset" : 24600, + "numKeys" : 24 + }, + "alphaFunction" : "DEFAULT", + "timePeriod" : { + "delay" : 0.0, + "duration" : 1.0 + }, + "relative" : false + } ], + "finishedActions" : [ 14 ] + } ], + "animationGroups" : [ { + "name" : "Idle", + "animations" : [ "idleClip" ] + }, { + "name" : "Squat", + "animations" : [ "squatClip_0", "squatClip_1" ] + }, { + "name" : "JumpingJack", + "animations" : [ "jumpingJackClip" ] + }, { + "name" : "Lunge", + "animations" : [ "lungeClip" ] + }, { + "name" : "IdleToSquat", + "animations" : [ "idleToSquatClip_0", "idleToSquatClip_1" ] + }, { + "name" : "SquatToIdle", + "animations" : [ "squatToIdleClip" ] + }, { + "name" : "IdleToJumpingJack", + "animations" : [ "idleToJumpingJackClip" ] + }, { + "name" : "JumpingJackToIdle", + "animations" : [ "jumpingJackToIdleClip" ] + }, { + "name" : "IdleToLunge", + "animations" : [ "idleToLungeClip" ] + }, { + "name" : "LungeToIdle", + "animations" : [ "lungeToIdleClip" ] + }, { + "name" : "JumpingJackToLunge", + "animations" : [ "jumpingJackToLungeClip" ] + }, { + "name" : "JumpingJackToSquat", + "animations" : [ "jumpingJackToSquatClip" ] + }, { + "name" : "LungeToJumpingJack", + "animations" : [ "lungeToJumpingJackClip" ] + }, { + "name" : "LungeToSquat", + "animations" : [ "lungeToSquatClip" ] + }, { + "name" : "SquatToJumpingJack", + "animations" : [ "squatToJumpingJackClip" ] + }, { + "name" : "SquatToLunge", + "animations" : [ "squatToLungeClip" ] + } ], + "skeletons" : [ { + "node" : "hips_JNT" + } ] +} diff --git a/resources/models/exercise/idle-animation.ani b/resources/models/exercise/idle-animation.ani new file mode 100644 index 0000000..02f76fd Binary files /dev/null and b/resources/models/exercise/idle-animation.ani differ diff --git a/resources/models/exercise/idle-to-jumping-jack-animation.ani b/resources/models/exercise/idle-to-jumping-jack-animation.ani new file mode 100644 index 0000000..74b8647 Binary files /dev/null and b/resources/models/exercise/idle-to-jumping-jack-animation.ani differ diff --git a/resources/models/exercise/idle-to-lunge-animation.ani b/resources/models/exercise/idle-to-lunge-animation.ani new file mode 100644 index 0000000..81743dd Binary files /dev/null and b/resources/models/exercise/idle-to-lunge-animation.ani differ diff --git a/resources/models/exercise/idle-to-squat-animation-0.ani b/resources/models/exercise/idle-to-squat-animation-0.ani new file mode 100644 index 0000000..f7d792c Binary files /dev/null and b/resources/models/exercise/idle-to-squat-animation-0.ani differ diff --git a/resources/models/exercise/idle-to-squat-animation-1.ani b/resources/models/exercise/idle-to-squat-animation-1.ani new file mode 100644 index 0000000..e0ec040 Binary files /dev/null and b/resources/models/exercise/idle-to-squat-animation-1.ani differ diff --git a/resources/models/exercise/jumping-jack-animation.ani b/resources/models/exercise/jumping-jack-animation.ani new file mode 100644 index 0000000..8bd679d Binary files /dev/null and b/resources/models/exercise/jumping-jack-animation.ani differ diff --git a/resources/models/exercise/jumping-jack-to-idle-animation.ani b/resources/models/exercise/jumping-jack-to-idle-animation.ani new file mode 100644 index 0000000..6d143e1 Binary files /dev/null and b/resources/models/exercise/jumping-jack-to-idle-animation.ani differ diff --git a/resources/models/exercise/jumping-jack-to-lunge-animation.ani b/resources/models/exercise/jumping-jack-to-lunge-animation.ani new file mode 100644 index 0000000..08c588b Binary files /dev/null and b/resources/models/exercise/jumping-jack-to-lunge-animation.ani differ diff --git a/resources/models/exercise/jumping-jack-to-squat-animation.ani b/resources/models/exercise/jumping-jack-to-squat-animation.ani new file mode 100644 index 0000000..ae66e77 Binary files /dev/null and b/resources/models/exercise/jumping-jack-to-squat-animation.ani differ diff --git a/resources/models/exercise/lunge-animation.ani b/resources/models/exercise/lunge-animation.ani new file mode 100644 index 0000000..3912665 Binary files /dev/null and b/resources/models/exercise/lunge-animation.ani differ diff --git a/resources/models/exercise/lunge-to-idle-animation.ani b/resources/models/exercise/lunge-to-idle-animation.ani new file mode 100644 index 0000000..d88c844 Binary files /dev/null and b/resources/models/exercise/lunge-to-idle-animation.ani differ diff --git a/resources/models/exercise/lunge-to-jumping-jack-animation.ani b/resources/models/exercise/lunge-to-jumping-jack-animation.ani new file mode 100644 index 0000000..118ffa1 Binary files /dev/null and b/resources/models/exercise/lunge-to-jumping-jack-animation.ani differ diff --git a/resources/models/exercise/lunge-to-squat-animation.ani b/resources/models/exercise/lunge-to-squat-animation.ani new file mode 100644 index 0000000..6d435de Binary files /dev/null and b/resources/models/exercise/lunge-to-squat-animation.ani differ diff --git a/resources/models/exercise/model.dae.bin b/resources/models/exercise/model.dae.bin new file mode 100644 index 0000000..c894ae9 Binary files /dev/null and b/resources/models/exercise/model.dae.bin differ diff --git a/resources/models/exercise/squat-animation-0.ani b/resources/models/exercise/squat-animation-0.ani new file mode 100644 index 0000000..435aaeb Binary files /dev/null and b/resources/models/exercise/squat-animation-0.ani differ diff --git a/resources/models/exercise/squat-animation-1.ani b/resources/models/exercise/squat-animation-1.ani new file mode 100644 index 0000000..6fd09cb Binary files /dev/null and b/resources/models/exercise/squat-animation-1.ani differ diff --git a/resources/models/exercise/squat-to-idle-animation.ani b/resources/models/exercise/squat-to-idle-animation.ani new file mode 100644 index 0000000..1bfef9a Binary files /dev/null and b/resources/models/exercise/squat-to-idle-animation.ani differ diff --git a/resources/models/exercise/squat-to-jumping-jack-animation.ani b/resources/models/exercise/squat-to-jumping-jack-animation.ani new file mode 100644 index 0000000..82316cb Binary files /dev/null and b/resources/models/exercise/squat-to-jumping-jack-animation.ani differ diff --git a/resources/models/exercise/squat-to-lunge-animation.ani b/resources/models/exercise/squat-to-lunge-animation.ani new file mode 100644 index 0000000..c967b9a Binary files /dev/null and b/resources/models/exercise/squat-to-lunge-animation.ani differ diff --git a/resources/models/flair.dli b/resources/models/flair.dli new file mode 100644 index 0000000..727b587 --- /dev/null +++ b/resources/models/flair.dli @@ -0,0 +1,828 @@ +{ + "asset": { "version": "1.0" }, + "scene": 0, + "scenes": [ { "nodes": [ 70 ] } ], + "nodes": [ + { + "name": "RootNode", + "matrix": [ 0.01, 0, 0, 0, 0, 0.01, 0, 0, 0, 0, 0.01, 0, 0, 0, 0, 1 ], + "children": [ 1, 68, 69 ] + }, + { + "name": "mixamorig_Hips", + "matrix": [ 0.993922, -0.109704, -0.009112, 0, -0.054715, -0.420492, -0.905645, 0, 0.095522, 0.900639, -0.423939, 0, 0.170038, 35.2548, -3.29966, 1 ], + "children": [ 2, 58, 63 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, -103.991, -2.07608, 1 ] + }, + { + "name": "mixamorig_Spine", + "matrix": [ 0.989792, -0.129223, 0.060106, 0, 0.027566, 0.587364, 0.808853, 0, -0.139826, -0.79894, 0.584931, 0, 0, 10.1816, 0.131521, 1 ], + "children": [ 3 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -0, -114.173, -2.2076, 1 ] + }, + { + "name": "mixamorig_Spine1", + "matrix": [ 0.997733, 0.038028, 0.055515, 0, -0.05063, 0.967672, 0.247078, 0, -0.044325, -0.249329, 0.967404, 0, 0, 10.0835, -1.0008, 1 ], + "children": [ 4 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -0, -124.257, -1.20679, 1 ] + }, + { + "name": "mixamorig_Spine2", + "matrix": [ 0.998271, 0.043996, 0.038981, 0, -0.052343, 0.96711, 0.248913, 0, -0.026747, -0.250523, 0.967741, 0, 0, 9.10001, -1.37342, 1 ], + "children": [ 5, 10, 34 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -0, -133.357, 0.166624, 1 ] + }, + { + "name": "mixamorig_Neck", + "matrix": [ 0.999713, 0.023967, 0.000629, 0, -0.023817, 0.989778, 0.140617, 0, 0.002747, -0.140592, 0.990064, 0, 0, 16.6717, -2.51617, 1 ], + "children": [ 6 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -0, -150.028, 2.68279, 1 ] + }, + { + "name": "mixamorig_Head", + "matrix": [ 0.992245, 0.124199, 0.005025, 0, -0.111747, 0.873599, 0.473643, 0, 0.054436, -0.470531, 0.880703, 0, 0, 9.61788, 1.68501, 1 ], + "children": [ 7, 8, 9 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -0, -159.646, 0.997784, 1 ] + }, + { + "name": "mixamorig_HeadTop_End", + "matrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -0, 17.8152, 2.58499, 1 ] + }, + { + "name": "mixamorig_LeftEye", + "matrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 3.06756, 6.40951, 9.28355, 1 ] + }, + { + "name": "mixamorig_RightEye", + "matrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -3.06755, 6.4095, 9.28355, 1 ] + }, + { + "name": "mixamorig_LeftShoulder", + "matrix": [ 0.998736, -0.015656, 0.047773, 0, 0.010721, 0.99474, 0.101866, 0, -0.049116, -0.101225, 0.99365, 0, 4.57045, 10.946, -2.62799, 1 ], + "children": [ 11 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -4.57046, -144.303, 2.79461, 1 ] + }, + { + "name": "mixamorig_LeftArm", + "matrix": [ -0.267645, -0.796531, -0.54213, 0, 0.956453, -0.151627, -0.249413, 0, 0.116463, -0.585276, 0.802427, 0, 10.5924, -0.524583, -2.23212, 1 ], + "children": [ 12 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -15.1628, -143.778, 5.02673, 1 ] + }, + { + "name": "mixamorig_LeftForeArm", + "matrix": [ 0.824786, -0, 0.565445, 0, 0, 1, 0, 0, -0.565445, 0, 0.824786, 0, 27.8415, -0, 0, 1 ], + "children": [ 13 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -43.0043, -143.778, 5.02669, 1 ] + }, + { + "name": "mixamorig_LeftHand", + "matrix": [ -0.023267, 0.942263, 0.334065, 0, -0.935231, -0.138595, 0.325783, 0, 0.353273, -0.304848, 0.884458, 0, 28.3288, -0, 0, 1 ], + "children": [ 14, 18, 22, 26, 30 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -71.3332, -143.778, 5.02666, 1 ] + }, + { + "name": "mixamorig_LeftHandThumb1", + "matrix": [ 0.923885, 0.37441, 0.079077, 0, -0.344295, 0.90349, -0.255276, 0, -0.167023, 0.20862, 0.963629, 0, 2.46614, -1.57505, 2.68241, 1 ], + "children": [ 15 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -73.7993, -142.203, 2.34424, 1 ] + }, + { + "name": "mixamorig_LeftHandThumb2", + "matrix": [ 0.975473, 0.04614, -0.215227, 0, -0.02286, 0.993732, 0.109429, 0, 0.218927, -0.101825, 0.970414, 0, 3.2298, -1.86469, 1.86468, 1 ], + "children": [ 16 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -77.0291, -140.338, 0.479562, 1 ] + }, + { + "name": "mixamorig_LeftHandThumb3", + "matrix": [ 0.973758, 0.22652, -0.02201, 0, -0.227471, 0.965605, -0.125954, 0, -0.007278, 0.127656, 0.991792, 0, 2.65257, -1.53149, 1.53147, 1 ], + "children": [ 17 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -79.6817, -138.807, -1.05191, 1 ] + }, + { + "name": "mixamorig_LeftHandThumb4", + "matrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1.95457, -1.1285, 1.12849, 1 ] + }, + { + "name": "mixamorig_LeftHandIndex1", + "matrix": [ 0.987986, -0.145331, -0.052565, 0, 0.145353, 0.989374, -0.003426, 0, 0.052505, -0.004256, 0.998612, 0, 9.1093, -0.517083, 2.26007, 1 ], + "children": [ 19 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -80.4425, -143.261, 2.76658, 1 ] + }, + { + "name": "mixamorig_LeftHandIndex2", + "matrix": [ 1, -0.000799, -0, 0, 0.000799, 1, 0, 0, 0, 0, 1, 0, 3.67641, -0, 0, 1 ], + "children": [ 20 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -84.1189, -143.261, 2.76655, 1 ] + }, + { + "name": "mixamorig_LeftHandIndex3", + "matrix": [ 1, 0.000494, 0, 0, -0.000494, 1, 0, 0, -0, 0, 1, 0, 2.88306, 0, -0, 1 ], + "children": [ 21 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -87.002, -143.261, 2.7666, 1 ] + }, + { + "name": "mixamorig_LeftHandIndex4", + "matrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 2.39272, 0, 0, 1 ] + }, + { + "name": "mixamorig_LeftHandMiddle1", + "matrix": [ 0.988358, -0.142802, -0.0525, 0, 0.142694, 0.98975, -0.005822, 0, 0.052793, -0.001737, 0.998604, 0, 9.5334, -0, 0, 1 ], + "children": [ 23 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -80.8666, -143.778, 5.02664, 1 ] + }, + { + "name": "mixamorig_LeftHandMiddle2", + "matrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 3.69824, 0, 0, 1 ], + "children": [ 24 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -84.5648, -143.778, 5.02663, 1 ] + }, + { + "name": "mixamorig_LeftHandMiddle3", + "matrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 2.95092, -0, 0, 1 ], + "children": [ 25 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -87.5157, -143.778, 5.02661, 1 ] + }, + { + "name": "mixamorig_LeftHandMiddle4", + "matrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 2.8339, -0, -0, 1 ] + }, + { + "name": "mixamorig_LeftHandRing1", + "matrix": [ 0.991315, -0.12141, -0.050532, 0, 0.12133, 0.992601, -0.004647, 0, 0.050722, -0.001524, 0.998712, 0, 9.10453, -0.04394, -1.86509, 1 ], + "children": [ 27 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -80.4377, -143.734, 6.89174, 1 ] + }, + { + "name": "mixamorig_LeftHandRing2", + "matrix": [ 1, -0.001159, -0.000118, 0, 0.001159, 1, 0, 0, 0.000118, 0, 1, 0, 3.15403, -0, 0, 1 ], + "children": [ 28 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -83.5917, -143.734, 6.89173, 1 ] + }, + { + "name": "mixamorig_LeftHandRing3", + "matrix": [ 1, 0.000679, 0, 0, -0.000679, 1, 0, 0, -0, 0, 1, 0, 2.93767, -0, -0, 1 ], + "children": [ 29 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -86.5294, -143.734, 6.89174, 1 ] + }, + { + "name": "mixamorig_LeftHandRing4", + "matrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 2.64745, -0, 0, 1 ] + }, + { + "name": "mixamorig_LeftHandPinky1", + "matrix": [ 0.994569, -0.092424, -0.047847, 0, 0.092359, 0.995719, -0.003583, 0, 0.047973, -0.000855, 0.998848, 0, 8.07778, -0.488668, -3.80607, 1 ], + "children": [ 31 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -79.411, -143.289, 8.83272, 1 ] + }, + { + "name": "mixamorig_LeftHandPinky2", + "matrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 3.60003, -0, -0, 1 ], + "children": [ 32 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -83.011, -143.289, 8.83275, 1 ] + }, + { + "name": "mixamorig_LeftHandPinky3", + "matrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 2.11421, 0, -0, 1 ], + "children": [ 33 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -85.1252, -143.289, 8.83275, 1 ] + }, + { + "name": "mixamorig_LeftHandPinky4", + "matrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1.97568, 0, -0, 1 ] + }, + { + "name": "mixamorig_RightShoulder", + "matrix": [ 0.999603, -0.028183, 0, 0, 0.028181, 0.999554, 0.009886, 0, -0.000351, -0.00988, 1, 0, -4.56997, 10.9462, -2.62802, 1 ], + "children": [ 35 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 4.56996, -144.303, 2.79464, 1 ] + }, + { + "name": "mixamorig_RightArm", + "matrix": [ -0.07137, 0.866873, 0.493394, 0, -0.984512, 0.018192, -0.174373, 0, -0.160135, -0.498197, 0.852148, 0, -10.5928, -0.524798, -2.2321, 1 ], + "children": [ 36 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 15.1628, -143.778, 5.02674, 1 ] + }, + { + "name": "mixamorig_RightForeArm", + "matrix": [ 0.747732, 0, -0.664001, 0, 0, 1, 0, 0, 0.664001, 0, 0.747732, 0, -27.8415, -0, 0, 1 ], + "children": [ 37 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 43.0043, -143.778, 5.02673, 1 ] + }, + { + "name": "mixamorig_RightHand", + "matrix": [ 0.207849, -0.829632, -0.51818, 0, 0.787387, -0.172405, 0.591861, 0, -0.580363, -0.531025, 0.617406, 0, -28.3288, 0, 0, 1 ], + "children": [ 38, 42, 46, 50, 54 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 71.3332, -143.778, 5.02667, 1 ] + }, + { + "name": "mixamorig_RightHandPinky1", + "matrix": [ 0.996074, 0.07568, 0.045921, 0, -0.075649, 0.997132, -0.002411, 0, -0.045972, -0.001073, 0.998942, 0, -8.07667, -0.488459, -3.80601, 1 ], + "children": [ 39 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 79.4098, -143.289, 8.83268, 1 ] + }, + { + "name": "mixamorig_RightHandPinky2", + "matrix": [ 1, 0.000864, 0, 0, -0.000864, 1, 0, 0, -0, 0, 1, 0, -3.60003, 0, 0, 1 ], + "children": [ 40 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 83.0099, -143.289, 8.83263, 1 ] + }, + { + "name": "mixamorig_RightHandPinky3", + "matrix": [ 1, -0.000491, -0, 0, 0.000491, 1, 0, 0, 0, 0, 1, 0, -2.11421, 0, 0, 1 ], + "children": [ 41 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 85.1241, -143.289, 8.83262, 1 ] + }, + { + "name": "mixamorig_RightHandPinky4", + "matrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -1.97568, -0, -0, 1 ] + }, + { + "name": "mixamorig_RightHandRing1", + "matrix": [ 0.991946, 0.116756, 0.049093, 0, -0.116683, 0.99316, -0.004371, 0, -0.049268, -0.001392, 0.998785, 0, -9.10359, -0.043914, -1.86507, 1 ], + "children": [ 43 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 80.4368, -143.734, 6.89175, 1 ] + }, + { + "name": "mixamorig_RightHandRing2", + "matrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -3.15403, 0, 0, 1 ], + "children": [ 44 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 83.5908, -143.734, 6.8917, 1 ] + }, + { + "name": "mixamorig_RightHandRing3", + "matrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -2.93767, -0, -0, 1 ], + "children": [ 45 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 86.5285, -143.734, 6.89174, 1 ] + }, + { + "name": "mixamorig_RightHandRing4", + "matrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -2.64745, 0, -0, 1 ] + }, + { + "name": "mixamorig_RightHandMiddle1", + "matrix": [ 0.991448, 0.120786, 0.049404, 0, -0.120708, 0.992678, -0.004571, 0, -0.049594, -0.001431, 0.998768, 0, -9.5325, -0, 0, 1 ], + "children": [ 47 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 80.8657, -143.778, 5.02666, 1 ] + }, + { + "name": "mixamorig_RightHandMiddle2", + "matrix": [ 1, 0.001033, 0, 0, -0.001033, 1, 0, 0, -0, 0, 1, 0, -3.69824, 0, -0, 1 ], + "children": [ 48 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 84.5639, -143.778, 5.02668, 1 ] + }, + { + "name": "mixamorig_RightHandMiddle3", + "matrix": [ 1, -0.000624, -0, 0, 0.000624, 1, 0, 0, 0, 0, 1, 0, -2.95092, 0, 0, 1 ], + "children": [ 49 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 87.5148, -143.778, 5.02668, 1 ] + }, + { + "name": "mixamorig_RightHandMiddle4", + "matrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -2.8339, 0, 0, 1 ] + }, + { + "name": "mixamorig_RightHandIndex1", + "matrix": [ 0.99114, 0.123217, 0.04959, 0, -0.123136, 0.992379, -0.004692, 0, -0.049791, -0.001456, 0.998759, 0, -9.10828, -0.516789, 2.26012, 1 ], + "children": [ 51 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 80.4414, -143.261, 2.76656, 1 ] + }, + { + "name": "mixamorig_RightHandIndex2", + "matrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -3.67641, 0, 0, 1 ], + "children": [ 52 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 84.1179, -143.261, 2.76652, 1 ] + }, + { + "name": "mixamorig_RightHandIndex3", + "matrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -2.88306, -0, 0, 1 ], + "children": [ 53 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 87.0009, -143.261, 2.76648, 1 ] + }, + { + "name": "mixamorig_RightHandIndex4", + "matrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -2.39272, 0, 0, 1 ] + }, + { + "name": "mixamorig_RightHandThumb1", + "matrix": [ 0.91586, -0.385245, -0.113079, 0, 0.347237, 0.901412, -0.258619, 0, 0.201562, 0.197594, 0.959338, 0, -2.46481, -1.57271, 2.68263, 1 ], + "children": [ 55 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 73.798, -142.205, 2.34405, 1 ] + }, + { + "name": "mixamorig_RightHandThumb2", + "matrix": [ 0.967728, -0.064145, 0.243697, 0, 0.035585, 0.992155, 0.119843, 0, -0.249472, -0.107303, 0.962419, 0, -3.22977, -1.86471, 1.86472, 1 ], + "children": [ 56 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 77.0277, -140.34, 0.479328, 1 ] + }, + { + "name": "mixamorig_RightHandThumb3", + "matrix": [ 0.962703, -0.243992, 0.116925, 0, 0.252902, 0.96507, -0.068421, 0, -0.096147, 0.09544, 0.990781, 0, -2.65261, -1.53145, 1.53145, 1 ], + "children": [ 57 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 79.6803, -138.809, -1.05212, 1 ] + }, + { + "name": "mixamorig_RightHandThumb4", + "matrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -1.95458, -1.12846, 1.12851, 1 ] + }, + { + "name": "mixamorig_LeftUpLeg", + "matrix": [ 0.543578, 0.357985, -0.75919, 0, -0.837166, 0.296569, -0.459565, 0, 0.060635, 0.885378, 0.460901, 0, 8.20778, -6.75171, -1.59956, 1 ], + "children": [ 59 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -8.20778, -97.2398, -0.476521, 1 ] + }, + { + "name": "mixamorig_LeftLeg", + "matrix": [ 0.996676, 0.023833, 0.0779, 0, -0.051564, 0.924871, 0.376768, 0, -0.063068, -0.379533, 0.923026, 0, 0, -44.3705, 0.284643, 1 ], + "children": [ 60 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -8.20778, -52.8693, -0.761164, 1 ] + }, + { + "name": "mixamorig_LeftFoot", + "matrix": [ 0.9999, -0.011862, -0.007738, 0, 0.014132, 0.871434, 0.490309, 0, 0.000928, -0.490369, 0.871514, 0, 0, -44.4279, -2.98219, 1 ], + "children": [ 61 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -8.20778, -8.44141, 2.22103, 1 ] + }, + { + "name": "mixamorig_LeftToeBase", + "matrix": [ 1, 0, 0, 0, 0, 1, 0.002531, 0, 0, -0.002531, 1, 0, -0, -8.72867, 10.7106, 1 ], + "children": [ 62 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -8.20778, 0.28726, -8.48953, 1 ] + }, + { + "name": "mixamorig_LeftToe_End", + "matrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -0, -0.000677, 9.27814, 1 ] + }, + { + "name": "mixamorig_RightUpLeg", + "matrix": [ 0.66381, -0.467129, 0.584078, 0, 0.745301, 0.47823, -0.464567, 0, -0.06231, 0.743698, 0.665606, 0, -8.2078, -6.75166, -1.59956, 1 ], + "children": [ 64 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 8.2078, -97.2398, -0.476517, 1 ] + }, + { + "name": "mixamorig_RightLeg", + "matrix": [ 0.981097, -0.106816, 0.161363, 0, 0.085276, 0.987171, 0.134985, 0, -0.173712, -0.118673, 0.97762, 0, 0, -44.3705, 0.286156, 1 ], + "children": [ 65 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 8.2078, -52.8693, -0.762674, 1 ] + }, + { + "name": "mixamorig_RightFoot", + "matrix": [ 0.933352, 0.230512, 0.275169, 0, -0.184264, 0.965533, -0.183829, 0, -0.308059, 0.120873, 0.943657, 0, 0, -44.4277, -2.98379, 1 ], + "children": [ 66 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 8.2078, -8.44154, 2.22112, 1 ] + }, + { + "name": "mixamorig_RightToeBase", + "matrix": [ 1, 0, 0, 0, 0, 0.997733, 0.067301, 0, 0, -0.067301, 0.997733, 0, -0, -8.72867, 10.7106, 1 ], + "children": [ 67 ], + "inverseBindPoseMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 8.2078, 0.287128, -8.48944, 1 ] + }, + { + "name": "mixamorig_RightToe_End", + "matrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -0, -0.000676, 9.27812, 1 ] + }, + { + "name": "Beta_Joints", + "model": { + "mesh": 0 + } + }, + { + "name": "Beta_Surface", + "model": { + "mesh": 1 + } + }, + { + "name": "Root", + "children": [ 0, 71 ] + }, + { + "name": "Cube", + "matrix": [ 40, 0, 0, 0, 0, 25, 0, 0, 0, 0, 40, 0, 0, 25, 0, 1 ], + "model": { + "mesh": 2, + "material": 1, + "shader": 1 + } + } + ], + "meshes": [ + { + "uri": "flair/Flair.bin", + "attributes": 223, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 0, "byteLength": 125040 }, + "positions": { "byteOffset": 125040, "byteLength": 152160 }, + "normals": { "byteOffset": 277200, "byteLength": 152160 }, + "textures": { "byteOffset": 429360, "byteLength": 101440 }, + "tangents": { "byteOffset": 530800, "byteLength": 152160 }, + "joints0": { "byteOffset": 682960, "byteLength": 202880 }, + "weights0": { "byteOffset": 885840, "byteLength": 202880 }, + "skeleton": 0 + }, + { + "uri": "flair/Flair.bin", + "attributes": 223, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 1088720, "byteLength": 169632 }, + "positions": { "byteOffset": 1258352, "byteLength": 192384 }, + "normals": { "byteOffset": 1450736, "byteLength": 192384 }, + "textures": { "byteOffset": 1643120, "byteLength": 128256 }, + "tangents": { "byteOffset": 1771376, "byteLength": 192384 }, + "joints0": { "byteOffset": 1963760, "byteLength": 256512 }, + "weights0": { "byteOffset": 2220272, "byteLength": 256512 }, + "skeleton": 0 + }, + { + "uri": "flair/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 } + } + ], + "skeletons": [ + { "node": "mixamorig_Hips" } + ], + "cameras": [ + { + "fov": 60, + "near": 0.1, + "far": 100, + "matrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 1.5, 3.5, 1 ] + } + ], + "lights": [ + ], + "materials": [ + { + "color": [ 0.0, 0.5, 1.0 ], + "metallic": 1.0, + "roughness": 0.0, + "mipmap": true, + "environment": 1 + }, + { + "color": [ 1.0, 1.0, 1.0 ], + "metallic": 0.0, + "roughness": 1.0, + "mipmap": true, + "environment": 1 + } + ], + "environment": [ + { + }, + { + "cubeSpecular": "Studio/Radiance.ktx", + "cubeDiffuse": "Studio/Irradiance.ktx" + } + ], + "shaders": [ + { + "vertex": "dli_pbr.vsh", + "fragment": "dli_pbr.fsh", + "hints": [ "MODIFIES_GEOMETRY" ], + "defines": [ "SKINNING" ], + "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 + }, + { + "vertex": "dli_pbr.vsh", + "fragment": "dli_pbr.fsh", + "rendererState": "DEPTH_TEST|DEPTH_WRITE|CULL_FRONT", + "uCubeMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1 ], + "uMaxLOD": 6 + } + ], + "animations": [ + { + "name": "autogenerated-name#1", + "properties": [ + { + "node": "mixamorig_Hips", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 0, "numKeys": 31 } + }, + { + "node": "mixamorig_Hips", + "property": "position", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 651, "numKeys": 31 } + }, + { + "node": "mixamorig_Spine", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 1178, "numKeys": 31 } + }, + { + "node": "mixamorig_Spine1", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 1829, "numKeys": 31 } + }, + { + "node": "mixamorig_Spine2", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 2480, "numKeys": 31 } + }, + { + "node": "mixamorig_Neck", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 3131, "numKeys": 31 } + }, + { + "node": "mixamorig_Head", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 3782, "numKeys": 31 } + }, + { + "node": "mixamorig_LeftShoulder", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 4433, "numKeys": 31 } + }, + { + "node": "mixamorig_LeftArm", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 5084, "numKeys": 31 } + }, + { + "node": "mixamorig_LeftForeArm", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 5735, "numKeys": 31 } + }, + { + "node": "mixamorig_LeftHand", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 6386, "numKeys": 31 } + }, + { + "node": "mixamorig_LeftHandThumb1", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 7037, "numKeys": 31 } + }, + { + "node": "mixamorig_LeftHandThumb2", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 7688, "numKeys": 31 } + }, + { + "node": "mixamorig_LeftHandThumb3", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 8339, "numKeys": 31 } + }, + { + "node": "mixamorig_LeftHandIndex1", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 8990, "numKeys": 31 } + }, + { + "node": "mixamorig_LeftHandIndex2", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 9641, "numKeys": 31 } + }, + { + "node": "mixamorig_LeftHandIndex3", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 10292, "numKeys": 31 } + }, + { + "node": "mixamorig_LeftHandMiddle1", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 10943, "numKeys": 31 } + }, + { + "node": "mixamorig_LeftHandMiddle2", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 11594, "numKeys": 31 } + }, + { + "node": "mixamorig_LeftHandMiddle3", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 12245, "numKeys": 31 } + }, + { + "node": "mixamorig_LeftHandRing1", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 12896, "numKeys": 31 } + }, + { + "node": "mixamorig_LeftHandRing2", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 13547, "numKeys": 31 } + }, + { + "node": "mixamorig_LeftHandRing3", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 14198, "numKeys": 31 } + }, + { + "node": "mixamorig_LeftHandPinky1", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 14849, "numKeys": 31 } + }, + { + "node": "mixamorig_LeftHandPinky2", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 15500, "numKeys": 31 } + }, + { + "node": "mixamorig_LeftHandPinky3", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 16151, "numKeys": 31 } + }, + { + "node": "mixamorig_RightShoulder", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 16802, "numKeys": 31 } + }, + { + "node": "mixamorig_RightArm", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 17453, "numKeys": 31 } + }, + { + "node": "mixamorig_RightForeArm", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 18104, "numKeys": 31 } + }, + { + "node": "mixamorig_RightHand", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 18755, "numKeys": 31 } + }, + { + "node": "mixamorig_RightHandPinky1", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 19406, "numKeys": 31 } + }, + { + "node": "mixamorig_RightHandPinky2", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 20057, "numKeys": 31 } + }, + { + "node": "mixamorig_RightHandPinky3", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 20708, "numKeys": 31 } + }, + { + "node": "mixamorig_RightHandRing1", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 21359, "numKeys": 31 } + }, + { + "node": "mixamorig_RightHandRing2", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 22010, "numKeys": 31 } + }, + { + "node": "mixamorig_RightHandRing3", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 22661, "numKeys": 31 } + }, + { + "node": "mixamorig_RightHandMiddle1", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 23312, "numKeys": 31 } + }, + { + "node": "mixamorig_RightHandMiddle2", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 23963, "numKeys": 31 } + }, + { + "node": "mixamorig_RightHandMiddle3", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 24614, "numKeys": 31 } + }, + { + "node": "mixamorig_RightHandIndex1", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 25265, "numKeys": 31 } + }, + { + "node": "mixamorig_RightHandIndex2", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 25916, "numKeys": 31 } + }, + { + "node": "mixamorig_RightHandIndex3", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 26567, "numKeys": 31 } + }, + { + "node": "mixamorig_RightHandThumb1", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 27218, "numKeys": 31 } + }, + { + "node": "mixamorig_RightHandThumb2", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 27869, "numKeys": 31 } + }, + { + "node": "mixamorig_RightHandThumb3", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 28520, "numKeys": 31 } + }, + { + "node": "mixamorig_LeftUpLeg", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 29171, "numKeys": 31 } + }, + { + "node": "mixamorig_LeftLeg", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 29822, "numKeys": 31 } + }, + { + "node": "mixamorig_LeftFoot", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 30473, "numKeys": 31 } + }, + { + "node": "mixamorig_LeftToeBase", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 31124, "numKeys": 31 } + }, + { + "node": "mixamorig_RightUpLeg", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 31775, "numKeys": 31 } + }, + { + "node": "mixamorig_RightLeg", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 32426, "numKeys": 31 } + }, + { + "node": "mixamorig_RightFoot", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 33077, "numKeys": 31 } + }, + { + "node": "mixamorig_RightToeBase", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 1 }, + "keyFramesBin": { "url": "flair/flair.ani", "byteOffset": 33728, "numKeys": 31 } + } + ], + "loopCount": 0 + } + ] +} diff --git a/resources/models/flair/Flair.bin b/resources/models/flair/Flair.bin new file mode 100644 index 0000000..0babbbc Binary files /dev/null and b/resources/models/flair/Flair.bin differ diff --git a/resources/models/flair/cube.bin b/resources/models/flair/cube.bin new file mode 100644 index 0000000..f5bd426 Binary files /dev/null and b/resources/models/flair/cube.bin differ diff --git a/resources/models/flair/flair.ani b/resources/models/flair/flair.ani new file mode 100644 index 0000000..30ceaf1 Binary files /dev/null and b/resources/models/flair/flair.ani differ diff --git a/resources/models/image.dli b/resources/models/image.dli new file mode 100644 index 0000000..4f46d3d --- /dev/null +++ b/resources/models/image.dli @@ -0,0 +1,30 @@ +{ + "scene": 0, + "scenes": [ { "nodes": [ 0 ] } ], + "nodes": [ { + "name": "root", + "children": [ 1 ] + }, { + "name": "image", + "size": [ 2.0, 2.0 ], + "color": [ 0.5, 1.0, 0.5, 0.5 ], + "model": { + "shader": 0, + "mesh": 0 + } + } ], + "environment": [ { + } ], + "meshes": [ { + "uri": "quad", + "attributes": 0 + } ], + "materials": [ { + "albedoMap": "gallery-large-19.jpg" + } ], + "shaders": [ { + "vertex": "dli_images.vsh", + "fragment": "dli_images.fsh", + "rendererState" : "ALPHA_BLEND" + } ] +} diff --git a/resources/models/robot.dli b/resources/models/robot.dli new file mode 100644 index 0000000..186b24a --- /dev/null +++ b/resources/models/robot.dli @@ -0,0 +1,1266 @@ +{ + "asset": { "version": "1.0" }, + "scene": 0, + "scenes": [ { "nodes": [ 0 ] } ], + "nodes": [ + { + "name": "$ColladaAutoName$_0", + "matrix": [ 1.0, 0, 0, 0, 0, 1.0, 0, 0, 0, 0, 1.0, 0, 0, 0, 0, 1 ], + "children": [ 1 ] + }, + { + "name": "Spine", + "matrix": [ -0.171577, 0.985155, -0.00565, 0, -0.000969, 0.005566, 1, 0, 0.98517, 0.17158, 0, 0, 0, -0.782697, 0.001134, 1 ], + "children": [ 2, 40, 51, 62, 63, 64 ] + }, + { + "name": "Neck", + "matrix": [ 0.999282, 0.037887, 0, 0, 0.037887, -0.999282, 0, 0, 0, 0, -1, 0, 1.73609, 0, 0, 1 ], + "children": [ 3, 14, 27 ] + }, + { + "name": "Head1", + "matrix": [ -0.048873, -0.001577, -0.998804, 0, 0.998285, 0.032203, -0.048898, 0, 0.032241, -0.99948, 0, 0, 0.304215, 0, 0, 1 ], + "children": [ 4, 5 ] + }, + { + "name": "Head", + "matrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1.75609, 0.062596, 0, 1 ] + }, + { + "name": "Head2", + "matrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, -1.25743, -0.001134, 1 ], + "model": { + "mesh": 8 + }, + "children": [ 6, 7, 8, 9, 10, 11, 12, 13 ] + }, + { + "name": "pCube15", + "matrix": [ 0.580968, 0, 0, 0, 0, 0.391873, 0, 0, 0, 0, 1.04858, 0, 0.38687, 1.62435, 0, 1 ], + "model": { + "mesh": 0 + } + }, + { + "name": "pCube16", + "matrix": [ 0.580968, 0, 0, 0, 0, 0.391873, 0, 0, 0, 0, 1.04858, 0, 0.38687, 2.11656, 0, 1 ], + "model": { + "mesh": 1 + } + }, + { + "name": "pCylinder10", + "matrix": [ 0, 0, -0.52708, 0, 0, 0.52708, 0, 0, 0.585644, 0, 0, 0, 0.408816, 2.34025, 0.394094, 1 ], + "model": { + "mesh": 2 + } + }, + { + "name": "pCylinder10_1", + "matrix": [ 0, 0, -0.52708, 0, 0, 0.52708, 0, 0, 0.585644, 0, 0, 0, 0.408816, 2.34025, 0.394094, 1 ], + "model": { + "mesh": 3 + } + }, + { + "name": "pCylinder12", + "matrix": [ 0, 0, -0.202256, 0, 0, 0.202256, 0, 0, 0.224729, 0, 0, 0, 0.633571, 2.34025, 0.333171, 1 ], + "model": { + "mesh": 4 + } + }, + { + "name": "pCylinder13", + "matrix": [ 0, 0, -0.52708, 0, 0, 0.52708, 0, 0, 0.585644, 0, 0, 0, 0.408816, 2.34025, -0.397361, 1 ], + "model": { + "mesh": 5 + } + }, + { + "name": "pCylinder13_1", + "matrix": [ 0, 0, -0.52708, 0, 0, 0.52708, 0, 0, 0.585644, 0, 0, 0, 0.408816, 2.34025, -0.397361, 1 ], + "model": { + "mesh": 6 + } + }, + { + "name": "pCylinder14", + "matrix": [ 0, 0, -0.270309, 0, 0, 0.270309, 0, 0, 0.300343, 0, 0, 0, 0.58518, 2.34025, -0.381515, 1 ], + "model": { + "mesh": 7 + } + }, + { + "name": "Right_Upperarm", + "matrix": [ -0.595968, -0.019225, -0.802778, 0, -0.802361, -0.025883, 0.596278, 0, -0.032241, 0.99948, 0, 0, -0.432337, -1.70723, -0.000403, 1 ], + "children": [ 15, 22 ] + }, + { + "name": "Right_Forearm", + "matrix": [ 0.81362, -0.581397, 0, 0, 0.581397, 0.81362, 0, 0, 0, 0, 1, 0, 1.20009, 0, 0, 1 ], + "children": [ 16, 19 ] + }, + { + "name": "Right_Hand", + "matrix": [ 1, 0.000962, 0, 0, -0.000962, 1, 0, 0, 0, 0, 1, 0, 1.09048, 0, 0, 1 ], + "children": [ 17, 18 ] + }, + { + "name": "jRight_Fingers", + "matrix": [ -0.000966, -1, 0, 0, -1, 0.000966, 0, 0, 0, 0, -1, 0, 1.49049, 0, 0, 1 ] + }, + { + "name": "Right_Hand_ncl1_1", + "matrix": [ -0.000483, -0.500496, 0, 0, -0.500496, 0.000483, 0, 0, 0, 0, -0.500497, 0, 0.347351, -0.000719, 0.014509, 1 ], + "model": { + "mesh": 9 + } + }, + { + "name": "Righ_Forearm", + "matrix": [ -0, -0.500497, 0, 0, -0.500497, 0, 0, 0, 0, 0, -0.500497, 0, 0.546595, -0.000381, 0.014509, 1 ], + "model": { + "mesh": 12 + }, + "children": [ 20, 21 ] + }, + { + "name": "pCylinder5", + "matrix": [ 1.79821, 0, 0, 0, 0, 1.79821, 0, 0, 0, 0, 1.99801, 0, 0, -1.08951, -0.073969, 1 ], + "model": { + "mesh": 10 + } + }, + { + "name": "pCylinder5_1", + "matrix": [ 1.79821, 0, 0, 0, 0, 1.79821, 0, 0, 0, 0, 1.99801, 0, 0, -1.08951, -0.073969, 1 ], + "model": { + "mesh": 11 + } + }, + { + "name": "Right_UpperArm", + "matrix": [ -0.000326, -0.500497, 0, 0, -0.500497, 0.000326, 0, 0, 0, 0, -0.500497, 0, 0.342486, 0.00018, 0.014509, 1 ], + "model": { + "mesh": 17 + }, + "children": [ 23, 24, 25, 26 ] + }, + { + "name": "pCylinder4", + "matrix": [ 1.79821, 0, 0, 0, 0, 1.79821, 0, 0, 0, 0, 1.99801, 0, 0, -1.71598, -0.073969, 1 ], + "model": { + "mesh": 13 + } + }, + { + "name": "pCylinder4_1", + "matrix": [ 1.79821, 0, 0, 0, 0, 1.79821, 0, 0, 0, 0, 1.99801, 0, 0, -1.71598, -0.073969, 1 ], + "model": { + "mesh": 14 + } + }, + { + "name": "pCylinder3", + "matrix": [ 1.79821, 0, 0, 0, 0, 1.79821, 0, 0, 0, 0, 1.99801, 0, 0, 0.680126, -0.590869, 1 ], + "model": { + "mesh": 15 + } + }, + { + "name": "pCylinder3_1", + "matrix": [ 1.79821, 0, 0, 0, 0, 1.79821, 0, 0, 0, 0, 1.99801, 0, 0, 0.680126, -0.590869, 1 ], + "model": { + "mesh": 16 + } + }, + { + "name": "Left_Upperarm", + "matrix": [ -0.567567, -0.015373, -0.823184, 0, -0.341154, 0.914346, 0.218142, 0, 0.749321, 0.404643, -0.524197, 0, -0.543289, 1.67126, -0.000403, 1 ], + "children": [ 28, 35 ] + }, + { + "name": "Left_Forearm", + "matrix": [ 0.702899, -0.272392, 0.657066, 0, 0.273195, 0.9563, 0.104189, 0, -0.656732, 0.106273, 0.746598, 0, 1.19756, 0, 0, 1 ], + "children": [ 29, 32 ] + }, + { + "name": "Left_Hand", + "matrix": [ 1, 0.000366, -0.00089, 0, -0.000962, 0.380273, -0.924874, 0, 0, 0.924874, 0.380273, 0, 1.09358, 0, 0, 1 ], + "children": [ 30, 31 ] + }, + { + "name": "Left_Finger", + "matrix": [ -0.000966, -1, 0, 0, -1, 0.000966, 0, 0, 0, 0, -1, 0, 1.49049, 0, 0, 1 ] + }, + { + "name": "LeftHand", + "matrix": [ -0.000483, -0.500496, 0, 0, -0.500496, 0.000483, 0, 0, 0, 0, 0.5, 0, 0.344822, 0.00061, -0.030987, 1 ], + "model": { + "mesh": 18 + } + }, + { + "name": "Left_Forearm_ncl1_1", + "matrix": [ 0, 0.190325, -0.462897, 0, -0.500497, 0, -0, 0, 0, 0.462897, 0.190325, 0, 0.547157, -0.028299, -0.012658, 1 ], + "model": { + "mesh": 21 + }, + "children": [ 33, 34 ] + }, + { + "name": "pCylinder5_ncl1_1", + "matrix": [ 1.79821, 0, 0, 0, 0, 1.79821, 0, 0, 0, 0, 1.99801, 0, 0, -1.08951, -0.073969, 1 ], + "model": { + "mesh": 19 + } + }, + { + "name": "pCylinder5_ncl1_1_1", + "matrix": [ 1.79821, 0, 0, 0, 0, 1.79821, 0, 0, 0, 0, 1.99801, 0, 0, -1.08951, -0.073969, 1 ], + "model": { + "mesh": 20 + } + }, + { + "name": "Left_Upperarm_ncl1_1", + "matrix": [ 0.000604, 0.190325, -0.462897, 0, -0.500494, 0.001588, 0, 0, 0.001468, 0.462894, 0.190325, 0, 0.340438, -0.02558, -0.01266, 1 ], + "model": { + "mesh": 26 + }, + "children": [ 36, 37, 38, 39 ] + }, + { + "name": "pCylinder3_ncl1_1", + "matrix": [ 1.79821, 0, 0, 0, 0, 1.79821, 0, 0, 0, 0, 1.99801, 0, 0, 0.680126, -0.590869, 1 ], + "model": { + "mesh": 22 + } + }, + { + "name": "pCylinder3_ncl1_1_1", + "matrix": [ 1.79821, 0, 0, 0, 0, 1.79821, 0, 0, 0, 0, 1.99801, 0, 0, 0.680126, -0.590869, 1 ], + "model": { + "mesh": 23 + } + }, + { + "name": "pCylinder4_ncl1_1", + "matrix": [ 1.79821, 0, 0, 0, 0, 1.79821, 0, 0, 0, 0, 1.99801, 0, 0, -1.71598, -0.073969, 1 ], + "model": { + "mesh": 24 + } + }, + { + "name": "pCylinder4_ncl1_1_1", + "matrix": [ 1.79821, 0, 0, 0, 0, 1.79821, 0, 0, 0, 0, 1.99801, 0, 0, -1.71598, -0.073969, 1 ], + "model": { + "mesh": 25 + } + }, + { + "name": "Left_Thigh", + "matrix": [ -0.929044, -0.005249, -0.369932, 0, -0.369926, -0.00209, 0.929059, 0, -0.00565, 1, 0, 0, 0.004042, -0.618058, 0, 1 ], + "children": [ 41, 48 ] + }, + { + "name": "Left_Shin", + "matrix": [ 1, -0.000442, 0, 0, -0.000442, -1, 0, 0, 0, 0, -1, 0, 0.967288, 0, 0, 1 ], + "children": [ 42, 45 ] + }, + { + "name": "Left_Foot", + "matrix": [ -0.211977, -0.977275, 0, 0, -0.977275, 0.211977, 0, 0, 0, 0, -1, 0, 0.961114, 0, 0, 1 ], + "children": [ 43, 44 ] + }, + { + "name": "Left_Toe", + "matrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1.5841, -0.237615, 0, 1 ] + }, + { + "name": "Left_Foot_ncl1_1", + "matrix": [ 0.500497, 0, 0, 0, 0, 0.500497, 0, 0, 0, 0, 0.500497, 0, -0.000166, -0.34695, 0.018488, 1 ], + "model": { + "mesh": 27 + } + }, + { + "name": "Left_Shin_ncl1_1", + "matrix": [ -0, -0.500497, 0, 0, -0.500497, 0, 0, 0, 0, 0, -0.500497, 0, 0.416823, 0.000247, -0.018488, 1 ], + "model": { + "mesh": 30 + }, + "children": [ 46, 47 ] + }, + { + "name": "pCylinder7", + "matrix": [ 1.79821, 0, 0, 0, 0, 1.79821, 0, 0, 0, 0, 1.99801, 0, 0, -1.08951, -0.073969, 1 ], + "model": { + "mesh": 28 + } + }, + { + "name": "pCylinder7_1", + "matrix": [ 1.79821, 0, 0, 0, 0, 1.79821, 0, 0, 0, 0, 1.99801, 0, 0, -1.08951, -0.073969, 1 ], + "model": { + "mesh": 29 + } + }, + { + "name": "Left_Thigh_ncl1_1", + "matrix": [ 0.000146, 0.500497, 0, 0, -0.500497, 0.000146, 0, 0, 0, 0, 0.500497, 0, -0.020082, -0, 0.018488, 1 ], + "model": { + "mesh": 33 + }, + "children": [ 49, 50 ] + }, + { + "name": "pCylinder6", + "matrix": [ 1.79821, 0, 0, 0, 0, 1.79821, 0, 0, 0, 0, 1.99801, 0, 0, -1.71598, -0.073969, 1 ], + "model": { + "mesh": 31 + } + }, + { + "name": "pCylinder6_1", + "matrix": [ 1.79821, 0, 0, 0, 0, 1.79821, 0, 0, 0, 0, 1.99801, 0, 0, -1.71598, -0.073969, 1 ], + "model": { + "mesh": 32 + } + }, + { + "name": "Right_Thigh", + "matrix": [ -0.732731, -0.00414, 0.680505, 0, 0.680495, 0.003845, 0.732743, 0, -0.00565, 1, 0, 0, -0.003002, 0.628649, 0, 1 ], + "children": [ 52, 59 ] + }, + { + "name": "Right_Shin", + "matrix": [ 1, -0.000442, 0, 0, -0.000442, -1, 0, 0, 0, 0, -1, 0, 0.967288, 0, 0, 1 ], + "children": [ 53, 56 ] + }, + { + "name": "Right_Foot", + "matrix": [ -0.00015, -1, 0, 0, -1, 0.00015, 0, 0, 0, 0, -1, 0, 0.961114, 0, 0, 1 ], + "children": [ 54, 55 ] + }, + { + "name": "Right_Toe", + "matrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1.5841, -0.237615, 0, 1 ] + }, + { + "name": "Right_Foot_ncl1_1", + "matrix": [ 0.500497, 0, 0, 0, 0, 0.500497, 0, 0, 0, 0, 0.500497, 0, -0.000166, -0.34695, -0.029295, 1 ], + "model": { + "mesh": 34 + } + }, + { + "name": "Right_Shin_ncl1_1", + "matrix": [ -0, -0.500497, 0, 0, -0.500497, 0, 0, 0, 0, 0, -0.500497, 0, 0.416823, 0.000247, 0.029295, 1 ], + "model": { + "mesh": 37 + }, + "children": [ 57, 58 ] + }, + { + "name": "pCylinder2", + "matrix": [ 1.79821, 0, 0, 0, 0, 1.79821, 0, 0, 0, 0, 1.99801, 0, 0, -1.08951, -0.073969, 1 ], + "model": { + "mesh": 35 + } + }, + { + "name": "pCylinder2_1", + "matrix": [ 1.79821, 0, 0, 0, 0, 1.79821, 0, 0, 0, 0, 1.99801, 0, 0, -1.08951, -0.073969, 1 ], + "model": { + "mesh": 36 + } + }, + { + "name": "Right_Thigh_ncl1_1", + "matrix": [ 0.000146, 0.500497, 0, 0, -0.500497, 0.000146, 0, 0, 0, 0, 0.500497, 0, -0.020082, -0, -0.029295, 1 ], + "model": { + "mesh": 40 + }, + "children": [ 60, 61 ] + }, + { + "name": "pCylinder1", + "matrix": [ 1.79821, 0, 0, 0, 0, 1.79821, 0, 0, 0, 0, 1.99801, 0, 0, -1.71598, -0.073969, 1 ], + "model": { + "mesh": 38 + } + }, + { + "name": "pCylinder1_1", + "matrix": [ 1.79821, 0, 0, 0, 0, 1.79821, 0, 0, 0, 0, 1.99801, 0, 0, -1.71598, -0.073969, 1 ], + "model": { + "mesh": 39 + } + }, + { + "name": "Body", + "matrix": [ 0, 0, 1, 0, 1, 0.00565, 0, 0, -0.00565, 1, 0, 0, 0.782691, 0.003288, 0, 1 ], + "model": { + "mesh": 58 + }, + "children": [ 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81 ] + }, + { + "name": "Body_1", + "matrix": [ 0, 0, 1, 0, 1, 0.00565, 0, 0, -0.00565, 1, 0, 0, 0.782691, 0.003288, 0, 1 ], + "model": { + "mesh": 59 + } + }, + { + "name": "Body_2", + "matrix": [ 0, 0, 1, 0, 1, 0.00565, 0, 0, -0.00565, 1, 0, 0, 0.782691, 0.003288, 0, 1 ], + "model": { + "mesh": 60 + } + }, + { + "name": "pCube17", + "matrix": [ 0.092455, 0, 0, 0, 0, 0.196238, 0, 0, 0, 0, 0.092455, 0, 1.09881, -0.018808, -0.157063, 1 ], + "model": { + "mesh": 41 + } + }, + { + "name": "pCube18", + "matrix": [ 0.060376, 0, 0, 0, 0, 0.051061, 0, 0, 0, 0, 0.137247, 0, 1.1219, 0.157511, 0.384788, 1 ], + "model": { + "mesh": 42 + } + }, + { + "name": "pCube20", + "matrix": [ 0.060376, 0, 0, 0, 0, 0.051061, 0, 0, 0, 0, 0.137247, 0, 1.1219, -0.046732, 0.384788, 1 ], + "model": { + "mesh": 43 + } + }, + { + "name": "pCube22", + "matrix": [ 0.060376, 0, 0, 0, 0, 0.051061, 0, 0, 0, 0, 0.137247, 0, 1.1219, -0.250975, 0.384788, 1 ], + "model": { + "mesh": 44 + } + }, + { + "name": "pCube24", + "matrix": [ 0.060376, 0, 0, 0, 0, 0.051061, 0, 0, 0, 0, 0.137247, 0, 1.1219, -0.455218, 0.384788, 1 ], + "model": { + "mesh": 45 + } + }, + { + "name": "pCube26", + "matrix": [ 0.060376, 0, 0, 0, 0, 0.051061, 0, 0, 0, 0, 0.137247, 0, 1.1219, -0.659461, 0.384788, 1 ], + "model": { + "mesh": 46 + } + }, + { + "name": "pCylinder15", + "matrix": [ 0, 0, -0.52708, 0, 0, 0.52708, 0, 0, 0.585644, 0, 0, 0, 0.835433, -0.395527, -0.493379, 1 ], + "model": { + "mesh": 47 + } + }, + { + "name": "pCylinder16", + "matrix": [ 0, 0, -0.374965, 0, 0, 0.374965, 0, 0, 0.416628, 0, 0, 0, 0.917221, 0.064661, -0.645405, 1 ], + "model": { + "mesh": 48 + } + }, + { + "name": "pCube28", + "model": { + "mesh": 49 + } + }, + { + "name": "pCube29", + "matrix": [ 0.02096, 0.014892, 0, 0, -0.049072, 0.069069, 0, 0, 0, 0, 0.037403, 0, 0.918412, 0.876956, -0.195153, 1 ], + "model": { + "mesh": 50 + } + }, + { + "name": "pCube30", + "matrix": [ 0.02096, 0.014892, 0, 0, -0.049072, 0.069069, 0, 0, 0, 0, 0.037403, 0, 0.918412, 0.876956, -0.533602, 1 ], + "model": { + "mesh": 51 + } + }, + { + "name": "pCube31", + "matrix": [ 0.02096, 0.014892, 0, 0, -0.049072, 0.069069, 0, 0, 0, 0, 0.037403, 0, 0.918412, 0.876956, -0.859591, 1 ], + "model": { + "mesh": 52 + } + }, + { + "name": "pCylinder18", + "matrix": [ 0, 0, -0.288926, 0, -0.16734, 0.235532, 0, 0, 0.261702, 0.185934, 0, 0, 0.921682, 0.559763, -0.889644, 1 ], + "model": { + "mesh": 53 + } + }, + { + "name": "pCube13", + "matrix": [ 0.338439, 0, 0, 0, 0, 0.653419, 0, 0, 0, 0, 1.03816, 0, -1.0356, 0.256829, 0, 1 ], + "model": { + "mesh": 54 + } + }, + { + "name": "pCylinder8", + "matrix": [ 0.461704, 0, 0, 0, 0, 0, 0.461704, 0, 0, -0.513005, 0, 0, -1.18371, 1.52539, -0.505625, 1 ], + "model": { + "mesh": 55 + } + }, + { + "name": "pCylinder9", + "matrix": [ 0.461704, 0, 0, 0, 0, 0, 0.461704, 0, 0, -0.513005, 0, 0, -1.18371, 1.52539, 0.489406, 1 ], + "model": { + "mesh": 56 + } + }, + { + "name": "Neck_ncl1_1", + "matrix": [ -0.761271, 0, 0, 0, 0, 0, -0.761271, 0, 0, -0.514956, 0, 0, -0.00199, 1.13774, 0, 1 ], + "model": { + "mesh": 57 + } + } + ], + "meshes": [ + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 0, "byteLength": 264 }, + "positions": { "byteOffset": 264, "byteLength": 1152 }, + "normals": { "byteOffset": 1416, "byteLength": 1152 }, + "textures": { "byteOffset": 2568, "byteLength": 768 }, + "tangents": { "byteOffset": 3336, "byteLength": 1152 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 4488, "byteLength": 264 }, + "positions": { "byteOffset": 4752, "byteLength": 1152 }, + "normals": { "byteOffset": 5904, "byteLength": 1152 }, + "textures": { "byteOffset": 7056, "byteLength": 768 }, + "tangents": { "byteOffset": 7824, "byteLength": 1152 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 8976, "byteLength": 744 }, + "positions": { "byteOffset": 9720, "byteLength": 2892 }, + "normals": { "byteOffset": 12612, "byteLength": 2892 }, + "textures": { "byteOffset": 15504, "byteLength": 1928 }, + "tangents": { "byteOffset": 17432, "byteLength": 2892 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 20324, "byteLength": 744 }, + "positions": { "byteOffset": 21068, "byteLength": 2892 }, + "normals": { "byteOffset": 23960, "byteLength": 2892 }, + "textures": { "byteOffset": 26852, "byteLength": 1928 }, + "tangents": { "byteOffset": 28780, "byteLength": 2892 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 31672, "byteLength": 360 }, + "positions": { "byteOffset": 32032, "byteLength": 792 }, + "normals": { "byteOffset": 32824, "byteLength": 792 }, + "textures": { "byteOffset": 33616, "byteLength": 528 }, + "tangents": { "byteOffset": 34144, "byteLength": 792 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 34936, "byteLength": 744 }, + "positions": { "byteOffset": 35680, "byteLength": 2892 }, + "normals": { "byteOffset": 38572, "byteLength": 2892 }, + "textures": { "byteOffset": 41464, "byteLength": 1928 }, + "tangents": { "byteOffset": 43392, "byteLength": 2892 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 46284, "byteLength": 744 }, + "positions": { "byteOffset": 47028, "byteLength": 2892 }, + "normals": { "byteOffset": 49920, "byteLength": 2892 }, + "textures": { "byteOffset": 52812, "byteLength": 1928 }, + "tangents": { "byteOffset": 54740, "byteLength": 2892 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 57632, "byteLength": 360 }, + "positions": { "byteOffset": 57992, "byteLength": 792 }, + "normals": { "byteOffset": 58784, "byteLength": 792 }, + "textures": { "byteOffset": 59576, "byteLength": 528 }, + "tangents": { "byteOffset": 60104, "byteLength": 792 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 60896, "byteLength": 1128 }, + "positions": { "byteOffset": 62024, "byteLength": 4836 }, + "normals": { "byteOffset": 66860, "byteLength": 4836 }, + "textures": { "byteOffset": 71696, "byteLength": 3224 }, + "tangents": { "byteOffset": 74920, "byteLength": 4836 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 79756, "byteLength": 1380 }, + "positions": { "byteOffset": 81136, "byteLength": 6492 }, + "normals": { "byteOffset": 87628, "byteLength": 6492 }, + "textures": { "byteOffset": 94120, "byteLength": 4328 }, + "tangents": { "byteOffset": 98448, "byteLength": 6492 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 104940, "byteLength": 744 }, + "positions": { "byteOffset": 105684, "byteLength": 1560 }, + "normals": { "byteOffset": 107244, "byteLength": 1560 }, + "textures": { "byteOffset": 108804, "byteLength": 1040 }, + "tangents": { "byteOffset": 109844, "byteLength": 1560 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 111404, "byteLength": 744 }, + "positions": { "byteOffset": 112148, "byteLength": 1560 }, + "normals": { "byteOffset": 113708, "byteLength": 1560 }, + "textures": { "byteOffset": 115268, "byteLength": 1040 }, + "tangents": { "byteOffset": 116308, "byteLength": 1560 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 117868, "byteLength": 456 }, + "positions": { "byteOffset": 118324, "byteLength": 1908 }, + "normals": { "byteOffset": 120232, "byteLength": 1908 }, + "textures": { "byteOffset": 122140, "byteLength": 1272 }, + "tangents": { "byteOffset": 123412, "byteLength": 1908 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 125320, "byteLength": 744 }, + "positions": { "byteOffset": 126064, "byteLength": 1560 }, + "normals": { "byteOffset": 127624, "byteLength": 1560 }, + "textures": { "byteOffset": 129184, "byteLength": 1040 }, + "tangents": { "byteOffset": 130224, "byteLength": 1560 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 131784, "byteLength": 744 }, + "positions": { "byteOffset": 132528, "byteLength": 1560 }, + "normals": { "byteOffset": 134088, "byteLength": 1560 }, + "textures": { "byteOffset": 135648, "byteLength": 1040 }, + "tangents": { "byteOffset": 136688, "byteLength": 1560 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 138248, "byteLength": 552 }, + "positions": { "byteOffset": 138800, "byteLength": 1176 }, + "normals": { "byteOffset": 139976, "byteLength": 1176 }, + "textures": { "byteOffset": 141152, "byteLength": 784 }, + "tangents": { "byteOffset": 141936, "byteLength": 1176 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 143112, "byteLength": 552 }, + "positions": { "byteOffset": 143664, "byteLength": 1176 }, + "normals": { "byteOffset": 144840, "byteLength": 1176 }, + "textures": { "byteOffset": 146016, "byteLength": 784 }, + "tangents": { "byteOffset": 146800, "byteLength": 1176 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 147976, "byteLength": 456 }, + "positions": { "byteOffset": 148432, "byteLength": 1872 }, + "normals": { "byteOffset": 150304, "byteLength": 1872 }, + "textures": { "byteOffset": 152176, "byteLength": 1248 }, + "tangents": { "byteOffset": 153424, "byteLength": 1872 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 155296, "byteLength": 1380 }, + "positions": { "byteOffset": 156676, "byteLength": 6480 }, + "normals": { "byteOffset": 163156, "byteLength": 6480 }, + "textures": { "byteOffset": 169636, "byteLength": 4320 }, + "tangents": { "byteOffset": 173956, "byteLength": 6480 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 180436, "byteLength": 744 }, + "positions": { "byteOffset": 181180, "byteLength": 1560 }, + "normals": { "byteOffset": 182740, "byteLength": 1560 }, + "textures": { "byteOffset": 184300, "byteLength": 1040 }, + "tangents": { "byteOffset": 185340, "byteLength": 1560 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 186900, "byteLength": 744 }, + "positions": { "byteOffset": 187644, "byteLength": 1560 }, + "normals": { "byteOffset": 189204, "byteLength": 1560 }, + "textures": { "byteOffset": 190764, "byteLength": 1040 }, + "tangents": { "byteOffset": 191804, "byteLength": 1560 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 193364, "byteLength": 456 }, + "positions": { "byteOffset": 193820, "byteLength": 1920 }, + "normals": { "byteOffset": 195740, "byteLength": 1920 }, + "textures": { "byteOffset": 197660, "byteLength": 1280 }, + "tangents": { "byteOffset": 198940, "byteLength": 1920 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 200860, "byteLength": 552 }, + "positions": { "byteOffset": 201412, "byteLength": 1224 }, + "normals": { "byteOffset": 202636, "byteLength": 1224 }, + "textures": { "byteOffset": 203860, "byteLength": 816 }, + "tangents": { "byteOffset": 204676, "byteLength": 1224 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 205900, "byteLength": 552 }, + "positions": { "byteOffset": 206452, "byteLength": 1224 }, + "normals": { "byteOffset": 207676, "byteLength": 1224 }, + "textures": { "byteOffset": 208900, "byteLength": 816 }, + "tangents": { "byteOffset": 209716, "byteLength": 1224 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 210940, "byteLength": 744 }, + "positions": { "byteOffset": 211684, "byteLength": 1560 }, + "normals": { "byteOffset": 213244, "byteLength": 1560 }, + "textures": { "byteOffset": 214804, "byteLength": 1040 }, + "tangents": { "byteOffset": 215844, "byteLength": 1560 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 217404, "byteLength": 744 }, + "positions": { "byteOffset": 218148, "byteLength": 1560 }, + "normals": { "byteOffset": 219708, "byteLength": 1560 }, + "textures": { "byteOffset": 221268, "byteLength": 1040 }, + "tangents": { "byteOffset": 222308, "byteLength": 1560 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 223868, "byteLength": 456 }, + "positions": { "byteOffset": 224324, "byteLength": 1872 }, + "normals": { "byteOffset": 226196, "byteLength": 1872 }, + "textures": { "byteOffset": 228068, "byteLength": 1248 }, + "tangents": { "byteOffset": 229316, "byteLength": 1872 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 231188, "byteLength": 432 }, + "positions": { "byteOffset": 231620, "byteLength": 1752 }, + "normals": { "byteOffset": 233372, "byteLength": 1752 }, + "textures": { "byteOffset": 235124, "byteLength": 1168 }, + "tangents": { "byteOffset": 236292, "byteLength": 1752 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 238044, "byteLength": 744 }, + "positions": { "byteOffset": 238788, "byteLength": 1560 }, + "normals": { "byteOffset": 240348, "byteLength": 1560 }, + "textures": { "byteOffset": 241908, "byteLength": 1040 }, + "tangents": { "byteOffset": 242948, "byteLength": 1560 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 244508, "byteLength": 744 }, + "positions": { "byteOffset": 245252, "byteLength": 1560 }, + "normals": { "byteOffset": 246812, "byteLength": 1560 }, + "textures": { "byteOffset": 248372, "byteLength": 1040 }, + "tangents": { "byteOffset": 249412, "byteLength": 1560 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 250972, "byteLength": 456 }, + "positions": { "byteOffset": 251428, "byteLength": 1872 }, + "normals": { "byteOffset": 253300, "byteLength": 1872 }, + "textures": { "byteOffset": 255172, "byteLength": 1248 }, + "tangents": { "byteOffset": 256420, "byteLength": 1872 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 258292, "byteLength": 744 }, + "positions": { "byteOffset": 259036, "byteLength": 1560 }, + "normals": { "byteOffset": 260596, "byteLength": 1560 }, + "textures": { "byteOffset": 262156, "byteLength": 1040 }, + "tangents": { "byteOffset": 263196, "byteLength": 1560 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 264756, "byteLength": 744 }, + "positions": { "byteOffset": 265500, "byteLength": 1560 }, + "normals": { "byteOffset": 267060, "byteLength": 1560 }, + "textures": { "byteOffset": 268620, "byteLength": 1040 }, + "tangents": { "byteOffset": 269660, "byteLength": 1560 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 271220, "byteLength": 456 }, + "positions": { "byteOffset": 271676, "byteLength": 1932 }, + "normals": { "byteOffset": 273608, "byteLength": 1932 }, + "textures": { "byteOffset": 275540, "byteLength": 1288 }, + "tangents": { "byteOffset": 276828, "byteLength": 1932 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 278760, "byteLength": 432 }, + "positions": { "byteOffset": 279192, "byteLength": 1752 }, + "normals": { "byteOffset": 280944, "byteLength": 1752 }, + "textures": { "byteOffset": 282696, "byteLength": 1168 }, + "tangents": { "byteOffset": 283864, "byteLength": 1752 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 285616, "byteLength": 744 }, + "positions": { "byteOffset": 286360, "byteLength": 1560 }, + "normals": { "byteOffset": 287920, "byteLength": 1560 }, + "textures": { "byteOffset": 289480, "byteLength": 1040 }, + "tangents": { "byteOffset": 290520, "byteLength": 1560 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 292080, "byteLength": 744 }, + "positions": { "byteOffset": 292824, "byteLength": 1560 }, + "normals": { "byteOffset": 294384, "byteLength": 1560 }, + "textures": { "byteOffset": 295944, "byteLength": 1040 }, + "tangents": { "byteOffset": 296984, "byteLength": 1560 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 298544, "byteLength": 456 }, + "positions": { "byteOffset": 299000, "byteLength": 1872 }, + "normals": { "byteOffset": 300872, "byteLength": 1872 }, + "textures": { "byteOffset": 302744, "byteLength": 1248 }, + "tangents": { "byteOffset": 303992, "byteLength": 1872 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 305864, "byteLength": 744 }, + "positions": { "byteOffset": 306608, "byteLength": 1560 }, + "normals": { "byteOffset": 308168, "byteLength": 1560 }, + "textures": { "byteOffset": 309728, "byteLength": 1040 }, + "tangents": { "byteOffset": 310768, "byteLength": 1560 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 312328, "byteLength": 744 }, + "positions": { "byteOffset": 313072, "byteLength": 1560 }, + "normals": { "byteOffset": 314632, "byteLength": 1560 }, + "textures": { "byteOffset": 316192, "byteLength": 1040 }, + "tangents": { "byteOffset": 317232, "byteLength": 1560 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 318792, "byteLength": 456 }, + "positions": { "byteOffset": 319248, "byteLength": 1932 }, + "normals": { "byteOffset": 321180, "byteLength": 1932 }, + "textures": { "byteOffset": 323112, "byteLength": 1288 }, + "tangents": { "byteOffset": 324400, "byteLength": 1932 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 326332, "byteLength": 168 }, + "positions": { "byteOffset": 326500, "byteLength": 576 }, + "normals": { "byteOffset": 327076, "byteLength": 576 }, + "textures": { "byteOffset": 327652, "byteLength": 384 }, + "tangents": { "byteOffset": 328036, "byteLength": 576 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 328612, "byteLength": 120 }, + "positions": { "byteOffset": 328732, "byteLength": 480 }, + "normals": { "byteOffset": 329212, "byteLength": 480 }, + "textures": { "byteOffset": 329692, "byteLength": 320 }, + "tangents": { "byteOffset": 330012, "byteLength": 480 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 330492, "byteLength": 120 }, + "positions": { "byteOffset": 330612, "byteLength": 480 }, + "normals": { "byteOffset": 331092, "byteLength": 480 }, + "textures": { "byteOffset": 331572, "byteLength": 320 }, + "tangents": { "byteOffset": 331892, "byteLength": 480 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 332372, "byteLength": 120 }, + "positions": { "byteOffset": 332492, "byteLength": 480 }, + "normals": { "byteOffset": 332972, "byteLength": 480 }, + "textures": { "byteOffset": 333452, "byteLength": 320 }, + "tangents": { "byteOffset": 333772, "byteLength": 480 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 334252, "byteLength": 120 }, + "positions": { "byteOffset": 334372, "byteLength": 480 }, + "normals": { "byteOffset": 334852, "byteLength": 480 }, + "textures": { "byteOffset": 335332, "byteLength": 320 }, + "tangents": { "byteOffset": 335652, "byteLength": 480 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 336132, "byteLength": 120 }, + "positions": { "byteOffset": 336252, "byteLength": 480 }, + "normals": { "byteOffset": 336732, "byteLength": 480 }, + "textures": { "byteOffset": 337212, "byteLength": 320 }, + "tangents": { "byteOffset": 337532, "byteLength": 480 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 338012, "byteLength": 744 }, + "positions": { "byteOffset": 338756, "byteLength": 2604 }, + "normals": { "byteOffset": 341360, "byteLength": 2604 }, + "textures": { "byteOffset": 343964, "byteLength": 1736 }, + "tangents": { "byteOffset": 345700, "byteLength": 2604 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 348304, "byteLength": 744 }, + "positions": { "byteOffset": 349048, "byteLength": 2508 }, + "normals": { "byteOffset": 351556, "byteLength": 2508 }, + "textures": { "byteOffset": 354064, "byteLength": 1672 }, + "tangents": { "byteOffset": 355736, "byteLength": 2508 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 358244, "byteLength": 180 }, + "positions": { "byteOffset": 358424, "byteLength": 768 }, + "normals": { "byteOffset": 359192, "byteLength": 768 }, + "textures": { "byteOffset": 359960, "byteLength": 512 }, + "tangents": { "byteOffset": 360472, "byteLength": 768 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 361240, "byteLength": 72 }, + "positions": { "byteOffset": 361312, "byteLength": 288 }, + "normals": { "byteOffset": 361600, "byteLength": 288 }, + "textures": { "byteOffset": 361888, "byteLength": 192 }, + "tangents": { "byteOffset": 362080, "byteLength": 288 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 362368, "byteLength": 72 }, + "positions": { "byteOffset": 362440, "byteLength": 288 }, + "normals": { "byteOffset": 362728, "byteLength": 288 }, + "textures": { "byteOffset": 363016, "byteLength": 192 }, + "tangents": { "byteOffset": 363208, "byteLength": 288 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 363496, "byteLength": 72 }, + "positions": { "byteOffset": 363568, "byteLength": 288 }, + "normals": { "byteOffset": 363856, "byteLength": 288 }, + "textures": { "byteOffset": 364144, "byteLength": 192 }, + "tangents": { "byteOffset": 364336, "byteLength": 288 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 364624, "byteLength": 744 }, + "positions": { "byteOffset": 365368, "byteLength": 2508 }, + "normals": { "byteOffset": 367876, "byteLength": 2508 }, + "textures": { "byteOffset": 370384, "byteLength": 1672 }, + "tangents": { "byteOffset": 372056, "byteLength": 2508 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 374564, "byteLength": 264 }, + "positions": { "byteOffset": 374828, "byteLength": 1152 }, + "normals": { "byteOffset": 375980, "byteLength": 1152 }, + "textures": { "byteOffset": 377132, "byteLength": 768 }, + "tangents": { "byteOffset": 377900, "byteLength": 1152 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 379052, "byteLength": 1428 }, + "positions": { "byteOffset": 380480, "byteLength": 5436 }, + "normals": { "byteOffset": 385916, "byteLength": 5436 }, + "textures": { "byteOffset": 391352, "byteLength": 3624 }, + "tangents": { "byteOffset": 394976, "byteLength": 5436 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 400412, "byteLength": 1428 }, + "positions": { "byteOffset": 401840, "byteLength": 5436 }, + "normals": { "byteOffset": 407276, "byteLength": 5436 }, + "textures": { "byteOffset": 412712, "byteLength": 3624 }, + "tangents": { "byteOffset": 416336, "byteLength": 5436 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 421772, "byteLength": 276 }, + "positions": { "byteOffset": 422048, "byteLength": 600 }, + "normals": { "byteOffset": 422648, "byteLength": 600 }, + "textures": { "byteOffset": 423248, "byteLength": 400 }, + "tangents": { "byteOffset": 423648, "byteLength": 600 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 424248, "byteLength": 864 }, + "positions": { "byteOffset": 425112, "byteLength": 3888 }, + "normals": { "byteOffset": 429000, "byteLength": 3888 }, + "textures": { "byteOffset": 432888, "byteLength": 2592 }, + "tangents": { "byteOffset": 435480, "byteLength": 3888 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 439368, "byteLength": 864 }, + "positions": { "byteOffset": 440232, "byteLength": 3888 }, + "normals": { "byteOffset": 444120, "byteLength": 3888 }, + "textures": { "byteOffset": 448008, "byteLength": 2592 }, + "tangents": { "byteOffset": 450600, "byteLength": 3888 } + }, + { + "uri": "robot/Bob-Walk.bin", + "attributes": 31, + "primitive": "TRIANGLES", + "indices": { "byteOffset": 454488, "byteLength": 864 }, + "positions": { "byteOffset": 455352, "byteLength": 3888 }, + "normals": { "byteOffset": 459240, "byteLength": 3888 }, + "textures": { "byteOffset": 463128, "byteLength": 2592 }, + "tangents": { "byteOffset": 465720, "byteLength": 3888 } + } + ], + "skeletons": [ + ], + "cameras": [ + { + "fov": 60, + "near": 0.1, + "far": 100, + "matrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 10, 1 ] + } + ], + "lights": [ + ], + "materials": [ + { + "texture1": "Basic_albedo_metallic.png", + "texture2": "Basic_normal_roughness.png", + "mipmap": true, + "environment": 1 + } + ], + "environment": [ + { + }, + { + "cubeSpecular": "Studio/Radiance.ktx", + "cubeDiffuse": "Studio/Irradiance.ktx" + } + ], + "shaders": [ + { + "vertex": "dli_pbr.vsh", + "fragment": "dli_pbr.fsh", + "rendererState": "DEPTH_TEST|DEPTH_WRITE|CULL_BACK|DEPTH_FUNC:LESS_EQUAL", + "uCubeMatrix": [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1 ], + "uMaxLOD": 6 + } + ], + "animations": [ + { + "name": "combinedAnim_0", + "properties": [ + { + "node": "Spine", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 10.0417 }, + "keyFramesBin": { "url": "robot/combinedAnim_00.ani", "byteOffset": 0, "numKeys": 241 } + }, + { + "node": "Spine", + "property": "position", + "timePeriod": { "delay": 0, "duration": 10.0417 }, + "keyFramesBin": { "url": "robot/combinedAnim_00.ani", "byteOffset": 5061, "numKeys": 241 } + }, + { + "node": "Head1", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 10.0417 }, + "keyFramesBin": { "url": "robot/combinedAnim_00.ani", "byteOffset": 9158, "numKeys": 241 } + }, + { + "node": "Right_Upperarm", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 10.0417 }, + "keyFramesBin": { "url": "robot/combinedAnim_00.ani", "byteOffset": 14219, "numKeys": 241 } + }, + { + "node": "Left_Upperarm", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 10.0417 }, + "keyFramesBin": { "url": "robot/combinedAnim_00.ani", "byteOffset": 19280, "numKeys": 241 } + }, + { + "node": "Left_Thigh", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 10.0417 }, + "keyFramesBin": { "url": "robot/combinedAnim_00.ani", "byteOffset": 24341, "numKeys": 241 } + }, + { + "node": "Left_Shin", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 10.0417 }, + "keyFramesBin": { "url": "robot/combinedAnim_00.ani", "byteOffset": 29402, "numKeys": 241 } + }, + { + "node": "Left_Foot", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 10.0417 }, + "keyFramesBin": { "url": "robot/combinedAnim_00.ani", "byteOffset": 34463, "numKeys": 241 } + }, + { + "node": "Right_Thigh", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 10.0417 }, + "keyFramesBin": { "url": "robot/combinedAnim_00.ani", "byteOffset": 39524, "numKeys": 241 } + }, + { + "node": "Right_Shin", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 10.0417 }, + "keyFramesBin": { "url": "robot/combinedAnim_00.ani", "byteOffset": 44585, "numKeys": 241 } + }, + { + "node": "Right_Foot", + "property": "orientation", + "timePeriod": { "delay": 0, "duration": 10.0417 }, + "keyFramesBin": { "url": "robot/combinedAnim_00.ani", "byteOffset": 49646, "numKeys": 241 } + } + ], + "loopCount": 0 + } + ] +} diff --git a/resources/models/robot/Bob-Walk.bin b/resources/models/robot/Bob-Walk.bin new file mode 100644 index 0000000..71e3a74 Binary files /dev/null and b/resources/models/robot/Bob-Walk.bin differ diff --git a/resources/models/robot/combinedAnim_00.ani b/resources/models/robot/combinedAnim_00.ani new file mode 100644 index 0000000..27349be Binary files /dev/null and b/resources/models/robot/combinedAnim_00.ani differ diff --git a/resources/po/en_GB.po b/resources/po/en_GB.po index a8eb4e1..2445e70 100755 --- a/resources/po/en_GB.po +++ b/resources/po/en_GB.po @@ -190,8 +190,8 @@ msgstr "Reflection" msgid "DALI_DEMO_STR_TITLE_RENDERER_STENCIL" msgstr "Renderer Stencil" -msgid "DALI_DEMO_STR_TITLE_SIMPLE_VISUALS_CONTROL" -msgstr "Simple Visuals Control" +msgid "DALI_DEMO_STR_TITLE_SCENE_LOADER" +msgstr "Scene Loader" msgid "DALI_DEMO_STR_TITLE_SCRIPT_BASED_UI" msgstr "Script-based UI" @@ -202,6 +202,9 @@ msgstr "Scroll View" msgid "DALI_DEMO_STR_TITLE_SIMPLE_SCROLL_VIEW" msgstr "Simple Scroll View" +msgid "DALI_DEMO_STR_TITLE_SIMPLE_VISUALS_CONTROL" +msgstr "Simple Visuals Control" + msgid "DALI_DEMO_STR_TITLE_SPARKLE" msgstr "Sparkle" diff --git a/resources/po/en_US.po b/resources/po/en_US.po index 6f338f5..d31b85e 100755 --- a/resources/po/en_US.po +++ b/resources/po/en_US.po @@ -193,8 +193,8 @@ msgstr "Refraction" msgid "DALI_DEMO_STR_TITLE_RENDERER_STENCIL" msgstr "Renderer Stencil" -msgid "DALI_DEMO_STR_TITLE_SIMPLE_VISUALS_CONTROL" -msgstr "Simple Visuals Control" +msgid "DALI_DEMO_STR_TITLE_SCENE_LOADER" +msgstr "Scene Loader" msgid "DALI_DEMO_STR_TITLE_SCRIPT_BASED_UI" msgstr "Script-based UI" @@ -205,6 +205,9 @@ msgstr "Scroll View" msgid "DALI_DEMO_STR_TITLE_SIMPLE_SCROLL_VIEW" msgstr "Simple Scroll View" +msgid "DALI_DEMO_STR_TITLE_SIMPLE_VISUALS_CONTROL" +msgstr "Simple Visuals Control" + msgid "DALI_DEMO_STR_TITLE_SPARKLE" msgstr "Sparkle" diff --git a/resources/shaders/dli_arc.fsh b/resources/shaders/dli_arc.fsh new file mode 100644 index 0000000..7d885c7 --- /dev/null +++ b/resources/shaders/dli_arc.fsh @@ -0,0 +1,112 @@ +#version 300 es + +#ifdef HIGHP + precision highp float; +#else + precision mediump float; +#endif + +#define ROUND_STARTCAP 0x1 +#define ROUND_ENDCAP 0x2 +#define SQUARE_STARTCAP 0x4 +#define SQUARE_ENDCAP 0x8 +precision mediump float; + +in vec2 vUV; + +uniform vec4 uColor; +uniform int antiAliasing; +uniform float radius; +uniform vec2 startAngle; +uniform vec2 endAngle; +uniform int arcCaps; + +out vec4 FragColor; + + +void main() +{ +//////////////////// +//Inputs + float radius1 = 1.0; + float uvPixel = length( dFdx( vUV ) ) * 2.0; + float dx = mix( 0.0001, uvPixel, antiAliasing > 0 ); + float radius2 = mix( 1.0 - radius * uvPixel - dx , -radius , step( 0.0, -radius ) ); +//////////////////// + float alpha = 0.0; + float circle = 0.0; + + vec2 uv = fract(vUV) * 2.0 - 1.0; + + float ang_img = endAngle.y * startAngle.x - endAngle.x * startAngle.y; + float half1 = uv.x * startAngle.x - uv.y * startAngle.y; + float half2 = uv.y * endAngle.y - uv.x * endAngle.x; + float len = length(uv); + float equalAngles = step(0.99999, dot(endAngle, startAngle)); + float right_side = step(0.0, ang_img); + vec2 uv_norm = normalize(uv); + float cap_radius = -0.5 + radius2 / 2.0; + float square_cap; + float sq_plane; + + /****************************************** + * Equivalent to: + * if( len > radius1 || len < radius2 ) + */ + circle = alpha = smoothstep( len, len + dx, radius1 ) * smoothstep( -len, -len + dx, -radius2 ); + float half1_step = smoothstep( -dx, 0.0, half1 ); + float half2_step = smoothstep( -dx, 0.0, half2 ); + + float neg_angimg = max( half1_step, half2_step ); + float pos_angimg = min( half1_step, half2_step ); + /****************************************** + * Equivalent to: + if(ang_img < 0.0) + { + alpha *= max(smoothstep( 0.0, dx, half1 ), smoothstep( 0.0, dx, half2)); + } + else + { + alpha *= min(smoothstep( 0.0, dx, half1 ) , smoothstep( 0.0, dx, half2 )); + } + */ + alpha *= mix( neg_angimg, pos_angimg, step(0.0, ang_img) ); + + alpha = mix( alpha, mix( circle, 0.0, right_side ), equalAngles ); + + if((arcCaps & ROUND_STARTCAP) > 0) + { + len = length(uv - normalize( vec2( startAngle.y, startAngle.x )) * (1.0 + cap_radius)); + alpha = max(alpha, smoothstep(cap_radius, cap_radius + dx, -len) ); + } + if((arcCaps & ROUND_ENDCAP) > 0) + { + len = length(uv - normalize( vec2( endAngle.y, endAngle.x )) * (1.0 + cap_radius)); + alpha = max(alpha, smoothstep(cap_radius, cap_radius + dx, -len) ); + } + + if((arcCaps & SQUARE_STARTCAP) > 0) + { + sq_plane = -uv.x * startAngle.y - uv.y * startAngle.x; + square_cap = min(step( 0.0, -half1 ), smoothstep( cap_radius, cap_radius + dx, half1 )); + square_cap = min(square_cap, smoothstep( radius2, radius2 + dx, -sq_plane )); + square_cap = min(square_cap, smoothstep( -1.0, -1.0 + dx, sq_plane )); + alpha = max(square_cap, alpha); + } + + if((arcCaps & SQUARE_ENDCAP) > 0) + { + sq_plane = -uv.x * endAngle.y - uv.y * endAngle.x; + square_cap = min(step( 0.0, -half2 ), smoothstep( cap_radius, cap_radius + dx, half2 )); + square_cap = min(square_cap, smoothstep( radius2, radius2 + dx, -sq_plane )); + square_cap = min(square_cap, smoothstep( -1.0, -1.0 + dx, sq_plane )); + alpha = max(square_cap, alpha); + } + + if( alpha == 0.0 ) + { + discard; + } + + FragColor = vec4(vec3(uColor), uColor.a * alpha); +} diff --git a/resources/shaders/dli_arc.vsh b/resources/shaders/dli_arc.vsh new file mode 100644 index 0000000..1863c3d --- /dev/null +++ b/resources/shaders/dli_arc.vsh @@ -0,0 +1,36 @@ +#version 300 es + +#ifdef HIGHP + precision highp float; +#else + precision mediump float; +#endif + +in vec3 aPosition; +in vec2 aTexCoord; + +out vec2 vUV; + +uniform vec3 uSize; + +uniform mat4 uProjection; +uniform mat4 uModelMatrix; +uniform mat4 uViewMatrix; + +uniform vec2 uTilt; + +void main() +{ + vec4 vPosition = vec4( aPosition * uSize, 1.0); + vec4 mPosition = uModelMatrix * vPosition; + + mPosition.xy += 0.3 * uTilt * mPosition.z; + gl_Position = uProjection * uViewMatrix * mPosition; + +#ifdef FLIP_V + vUV = vec2(aTexCoord.x, 1.0 - aTexCoord.y); +#else + vUV = aTexCoord; +#endif + +} diff --git a/resources/shaders/dli_images.fsh b/resources/shaders/dli_images.fsh new file mode 100644 index 0000000..6d0b882 --- /dev/null +++ b/resources/shaders/dli_images.fsh @@ -0,0 +1,27 @@ +#ifdef HIGHP + precision highp float; +#else + precision mediump float; +#endif + +uniform sampler2D sAlbedo; + +uniform vec4 uColor; + +#ifdef ALPHA_TEST + uniform float uAlphaThreshold; +#endif //ALPHA_TEST + +varying vec2 vUV; + +void main() +{ + vec4 color = texture2D(sAlbedo, vUV.st); +#ifdef ALPHA_TEST + if (color.a <= uAlphaThreshold) + { + discard; + } +#endif + gl_FragColor = color * uColor; +} diff --git a/resources/shaders/dli_images.vsh b/resources/shaders/dli_images.vsh new file mode 100644 index 0000000..5f0c28a --- /dev/null +++ b/resources/shaders/dli_images.vsh @@ -0,0 +1,35 @@ +#ifdef HIGHP + precision highp float; +#else + precision mediump float; +#endif + +attribute vec3 aPosition; +attribute vec2 aTexCoord; + +varying vec2 vUV; + +uniform vec3 uSize; + +uniform mat4 uCubeMatrix; + +uniform mat4 uProjection; +uniform mat4 uModelMatrix; +uniform mat4 uViewMatrix; + +uniform vec2 uTilt; + +void main() +{ + vec4 vPosition = vec4( aPosition * uSize, 1.0); + vec4 mPosition = uModelMatrix * vPosition; + + mPosition.xy += 0.3 * uTilt * mPosition.z; + gl_Position = uProjection * uViewMatrix * mPosition; + +#ifdef FLIP_V + vUV = vec2(aTexCoord.x, 1.0 - aTexCoord.y); +#else + vUV = aTexCoord; +#endif +} diff --git a/resources/shaders/dli_pbr.fsh b/resources/shaders/dli_pbr.fsh new file mode 100644 index 0000000..78a1b9e --- /dev/null +++ b/resources/shaders/dli_pbr.fsh @@ -0,0 +1,160 @@ +#version 300 es + +#ifdef HIGHP + precision highp float; +#else + precision mediump float; +#endif + +#ifdef THREE_TEX +#ifdef GLTF_CHANNELS +// https://github.com/KhronosGroup/glTF/tree/master/specification/2.0#pbrmetallicroughnessmetallicroughnesstexture +#define METALLIC b +#define ROUGHNESS g +#else //GLTF_CHANNELS +#define METALLIC r +#define ROUGHNESS a +#endif //GLTF_CHANNELS +#endif //THREE_TEX + +#ifdef THREE_TEX + uniform sampler2D sAlbedoAlpha; + uniform sampler2D sMetalRoughness; + uniform sampler2D sNormal; + +#ifdef ALPHA_TEST + uniform float uAlphaThreshold; +#endif //ALPHA_TEST + +#else + uniform sampler2D sAlbedoMetal; + uniform sampler2D sNormalRoughness; +#endif + +uniform samplerCube sDiffuse; +uniform samplerCube sSpecular; + +// Number of mip map levels in the texture +uniform float uMaxLOD; + +// Transformation matrix of the cubemap texture +uniform mat4 uCubeMatrix; + +uniform vec4 uColor; +uniform float uMetallicFactor; +uniform float uRoughnessFactor; + +//IBL Light intensity +uniform float uIblIntensity; + +in vec2 vUV; +in vec3 vNormal; +in vec3 vTangent; +in vec3 vViewVec; + +out vec4 FragColor; + +// Functions for BRDF calculation come from +// https://www.unrealengine.com/blog/physically-based-shading-on-mobile +// Based on the paper by Dimitar Lazarov +// http://blog.selfshadow.com/publications/s2013-shading-course/lazarov/s2013_pbs_black_ops_2_notes.pdf +vec3 EnvBRDFApprox( vec3 SpecularColor, float Roughness, float NoV ) +{ + const vec4 c0 = vec4( -1.0, -0.0275, -0.572, 0.022 ); + const vec4 c1 = vec4( 1.0, 0.0425, 1.04, -0.04 ); + vec4 r = Roughness * c0 + c1; + float a004 = min( r.x * r.x, exp2( -9.28 * NoV ) ) * r.x + r.y; + vec2 AB = vec2( -1.04, 1.04 ) * a004 + r.zw; + + return SpecularColor * AB.x + AB.y; +} + +void main() +{ + // We get information from the maps (albedo, normal map, roughness, metalness + // I access the maps in the order they will be used +#ifdef THREE_TEX + vec4 albedoAlpha = texture(sAlbedoAlpha, vUV.st); + float alpha = albedoAlpha.a; +#ifdef ALPHA_TEST + if (alpha <= uAlphaThreshold) + { + discard; + } +#endif //ALPHA_TEST + vec3 albedoColor = albedoAlpha.rgb * uColor.rgb; + + vec4 metalRoughness = texture(sMetalRoughness, vUV.st); + float metallic = metalRoughness.METALLIC * uMetallicFactor; + float roughness = metalRoughness.ROUGHNESS * uRoughnessFactor; + + vec3 normalMap = texture(sNormal, vUV.st).rgb; +#else //THREE_TEX + vec4 albedoMetal = texture(sAlbedoMetal, vUV.st); + vec3 albedoColor = albedoMetal.rgb * uColor.rgb; + float metallic = albedoMetal.a * uMetallicFactor; + + vec4 normalRoughness = texture(sNormalRoughness, vUV.st); + vec3 normalMap = normalRoughness.rgb; + float roughness = normalRoughness.a * uRoughnessFactor; +#endif + //Normalize vectors + vec3 normal = normalize(vNormal); + vec3 tangent = normalize(vTangent); + + // NOTE: normal and tangent have to be orthogonal for the result of the cross() + // product to be a unit vector. We might find that we need to normalize(). + vec3 bitangent = cross(normal, tangent); + + vec3 viewVec = normalize(vViewVec); + + // Create Inverse Local to world matrix + mat3 vInvTBN = mat3(tangent, bitangent, normal); + + // Get normal map info in world space + normalMap = normalize(normalMap - 0.5); + vec3 newNormal = vInvTBN * normalMap.rgb; + + // Calculate normal dot view vector + float NoV = max(dot(newNormal, -viewVec), 0.0); + + // Reflect vector + vec3 reflectionVec = reflect(viewVec, newNormal); + + //transform it now to environment coordinates (used when the environment rotates) + vec3 reflecCube = (uCubeMatrix * vec4( reflectionVec, 0.0 ) ).xyz; + reflecCube = normalize( reflecCube ); + + //transform it now to environment coordinates + vec3 normalCube = ( uCubeMatrix * vec4( newNormal, 0.0 ) ).xyz; + normalCube = normalize( normalCube ); + + // Get irradiance from diffuse cubemap + vec3 irradiance = texture( sDiffuse, normalCube ).rgb; + + // Access reflection color using roughness value + float finalLod = mix( 0.0, uMaxLOD - 2.0, roughness); + vec3 reflectionColor = textureLod(sSpecular, reflecCube, finalLod).rgb; + + // We are supposed to be using DielectricColor (0.04) of a plastic (almost everything) + // http://blog.selfshadow.com/publications/s2014-shading-course/hoffman/s2014_pbs_physics_math_slides.pdf + // however that seems to prevent achieving very dark tones (i.e. get dark gray blacks). + vec3 DiffuseColor = albedoColor - albedoColor * metallic; // 1 mad + vec3 SpecularColor = mix( vec3(0.04), albedoColor, metallic); // 2 mad + + // Calculate specular color using Magic Function (takes original roughness and normal dot view). + vec3 specColor = reflectionColor.rgb * EnvBRDFApprox(SpecularColor, roughness, NoV ); + + // Multiply the result by albedo texture and do energy conservation + vec3 diffuseColor = irradiance * DiffuseColor; + + // Final color is the sum of the diffuse and specular term + vec3 finalColor = diffuseColor + specColor; + + finalColor = sqrt( finalColor ) * uIblIntensity; +#ifdef THREE_TEX + FragColor = vec4( finalColor, alpha ); +#else //THREE_TEX + FragColor = vec4( finalColor, 1.0 ); +#endif //THREE_TEX +} diff --git a/resources/shaders/dli_pbr.vsh b/resources/shaders/dli_pbr.vsh new file mode 100644 index 0000000..01937ba --- /dev/null +++ b/resources/shaders/dli_pbr.vsh @@ -0,0 +1,150 @@ +#version 300 es + +#ifdef HIGHP + precision highp float; +#else + precision mediump float; +#endif + +in vec3 aPosition; +in vec2 aTexCoord; +in vec3 aNormal; +in vec3 aTangent; + +#ifdef MORPH + uniform sampler2D sBlendShapeGeometry; +#endif + +out vec2 vUV; +out vec3 vNormal; +out vec3 vTangent; +out vec3 vViewVec; + + +uniform highp mat4 uMvpMatrix; +uniform highp mat4 uViewMatrix; +uniform mat3 uNormalMatrix; +uniform mat4 uModelMatrix; +uniform mat4 uModelView; +uniform mat4 uProjection; + +#ifdef SKINNING + in vec4 aJoints; + in vec4 aWeights; + #define MAX_BONES 64 + uniform mat4 uBone[MAX_BONES]; +#endif + +#ifdef MORPH +#define MAX_BLEND_SHAPE_NUMBER 128 +uniform int uNumberOfBlendShapes; ///< Total number of blend shapes loaded. +uniform float uBlendShapeWeight[MAX_BLEND_SHAPE_NUMBER]; ///< The weight of each blend shape. +#ifdef MORPH_VERSION_2_0 +uniform float uBlendShapeUnnormalizeFactor; ///< Factor used to unnormalize the geometry of the blend shape. +#else +uniform float uBlendShapeUnnormalizeFactor[MAX_BLEND_SHAPE_NUMBER]; ///< Factor used to unnormalize the geometry of the blend shape. +#endif +uniform int uBlendShapeComponentSize; ///< The size in the texture of either the vertices, normals or tangents. Used to calculate the offset to address them. +#endif + +void main() +{ + vec4 position = vec4(aPosition, 1.0); + vec3 normal = aNormal; + vec3 tangent = aTangent; + +#ifdef MORPH + int width = textureSize( sBlendShapeGeometry, 0 ).x; + + int blendShapeBufferOffset = 0; + for( int index = 0; index < uNumberOfBlendShapes; ++index ) + { +#ifdef MORPH_POSITION + // Calculate the index to retrieve the geometry from the texture. + int vertexId = gl_VertexID + blendShapeBufferOffset; + int x = vertexId % width; + int y = vertexId / width; + + vec3 diff = vec3(0.0); + // Retrieves the blend shape geometry from the texture, unnormalizes it and multiply by the weight. + if( 0.0 != uBlendShapeWeight[index] ) + { +#ifdef MORPH_VERSION_2_0 + float unnormalizeFactor = uBlendShapeUnnormalizeFactor; +#else + float unnormalizeFactor = uBlendShapeUnnormalizeFactor[index]; +#endif + + diff = uBlendShapeWeight[index] * unnormalizeFactor * ( texelFetch( sBlendShapeGeometry, ivec2(x, y), 0 ).xyz - 0.5 ); + } + + position.xyz += diff; + + blendShapeBufferOffset += uBlendShapeComponentSize; +#endif + +#ifdef MORPH_NORMAL + // Calculate the index to retrieve the normal from the texture. + vertexId = gl_VertexID + blendShapeBufferOffset; + x = vertexId % width; + y = vertexId / width; + + // Retrieves the blend shape normal from the texture, unnormalizes it and multiply by the weight. + if( 0.0 != uBlendShapeWeight[index] ) + { + diff = uBlendShapeWeight[index] * 2.0 * ( texelFetch( sBlendShapeGeometry, ivec2(x, y), 0 ).xyz - 0.5 ); + } + + normal += diff.xyz; + + blendShapeBufferOffset += uBlendShapeComponentSize; +#endif + +#ifdef MORPH_TANGENT + // Calculate the index to retrieve the tangent from the texture. + vertexId = gl_VertexID + blendShapeBufferOffset; + x = vertexId % width; + y = vertexId / width; + + // Retrieves the blend shape tangent from the texture, unnormalizes it and multiply by the weight. + if( 0.0 != uBlendShapeWeight[index] ) + { + diff = uBlendShapeWeight[index] * 2.0 * ( texelFetch( sBlendShapeGeometry, ivec2(x, y), 0 ).xyz - 0.5 ); + } + + tangent += diff.xyz; + + blendShapeBufferOffset += uBlendShapeComponentSize; +#endif + } + +#endif + +#ifdef SKINNING + mat4 bone = uBone[int(aJoints.x)] * aWeights.x + + uBone[int(aJoints.y)] * aWeights.y + + uBone[int(aJoints.z)] * aWeights.z + + uBone[int(aJoints.w)] * aWeights.w; + position = bone * position; + normal = (bone * vec4(normal, 0.0)).xyz; + tangent = (bone * vec4(tangent, 0.0)).xyz; +#endif + + vec4 vPosition = uModelMatrix * position; + + vNormal = normalize(uNormalMatrix * normal); + + vTangent = normalize(uNormalMatrix * tangent); + + + vec4 viewPosition = uViewMatrix * vPosition; + gl_Position = uProjection * viewPosition; + +#ifdef FLIP_V + vUV = vec2(aTexCoord.x, 1.0 - aTexCoord.y); +#else + vUV = aTexCoord; +#endif + + vViewVec = viewPosition.xyz; +} diff --git a/shared/dali-demo-strings.h b/shared/dali-demo-strings.h index 889f9ca..6d9f754 100644 --- a/shared/dali-demo-strings.h +++ b/shared/dali-demo-strings.h @@ -109,6 +109,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_SCENE_LOADER dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_SCENE_LOADER") #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") #define DALI_DEMO_STR_TITLE_SIMPLE_SCROLL_VIEW dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_SIMPLE_SCROLL_VIEW") @@ -213,6 +214,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_SCENE_LOADER "Scene Loader" #define DALI_DEMO_STR_TITLE_SCRIPT_BASED_UI "Script Based UI" #define DALI_DEMO_STR_TITLE_SCROLL_VIEW "Scroll View" #define DALI_DEMO_STR_TITLE_SIMPLE_SCROLL_VIEW "Simple Scroll View"