美文网首页
threejs--模型动画线性控制

threejs--模型动画线性控制

作者: 知行合一实践派 | 来源:发表于2021-03-13 17:18 被阅读0次

最近遇见一个比较有意思需求,需要将模型动画像视频一样可以线性拖拽播放动画进程、调节动画播放速度及随时暂停和播放动画。效果如下图

现在开始干货分享:

1. 初始化场景、相机、灯光、及模型加载的基本工作就不再赘述了,不太清楚的朋友看下threejs--初创项目。

2. 需要一个k好动画的模型,这个大家可以自己完成 

3. 我们需要一个可以自由滑动的滑块,用来记录动画播放的进程。还需要一个暂停和播放的按钮来控制动画的开启和暂停

<p class="h_manualDrop"><span>装配进度</span><input class="h_manualInstallVal" type="range" min="0" step="0.01"></p>

4. 模型加载阶段 我们需要对模型动画进行处理

load.loader('./model/test.glb,function(gl){

    scene.add(gl.scene)//将模型加入到场景中

   mixer =new THREE.AnimationMixer(gl.scene);

   action = mixer.clipAction(gl.animations[0]);

    action.play();///

    $('.h_manualInstallVal').attr('max',glb.animations[0].duration.toFixed(1));// 给滑块初始值

    renderer.render( scene, camera );//渲染

});

5. 在刷新场景时同步滑块上动画进度

function onUpdate() {

let renderTime = clock.getDelta();

if (action) {// 实时更新滑块进度

$('.h_manualInstallVal').val(action.time);

}

if (mixer) {

mixer.update(renderTime);

}

requestAnimationFrame( onUpdate );

renderer.render( scene, camera );

controls.update();// 想让相机控制器有效 这个就需要实时更新控制器。必须在摄像机的变换发生任何手动改变后调用

}

6. 滑块添加事件,反向控制模型动画播放进度

$('.h_manualInstallVal').on('input',function (){

  action.time=$(this).val()*1;

  action.paused=true;

  $('.h_manualDrop').attr('data-bool','act');

})

7.  播放暂停按钮控制动画的播放与暂停

$('.h_manualDrop').on(‘click',function (){// 动画 播放与暂停

if($(this).attr('data-bool')=='act'){

$(this).attr('data-bool','');

      action.paused=false;

  }else{

$(this).attr('data-bool','act');

      action.paused=true;

  }

});

结语:模型的自主操控之前已经讲过了,不再赘述,欢迎大家一起学习交流 需要测试模型的话 可以给我留言 

相关文章

  • threejs--模型动画线性控制

    最近遇见一个比较有意思需求,需要将模型动画像视频一样可以线性拖拽播放动画进程、调节动画播放速度及随时暂停和播放动画...

  • threejs--模型操控

    一、 在上一篇文章里,我简单介绍了一个项目的创建及模型加载过程。本篇文章我主要是介绍模型加载后的一些常规操作。我们...

  • .dae 格式的3D模型的动画大战

    最近在看利用Scenekit显示3D模型,选用了自带动画的模型。需求是要求能自己控制模型的动画。 .dae格式模型...

  • 带旋转位移动画模型使用easytouch控制方案(适用于带位移和

    一、模型设置相关 2.动画片段 二、动画控制器相关 2.场景设置 三、控制脚本

  • logistics回归分类

    logistics回归分类模型和线性模型的关系非常密切;区分下线性回归模型和线性模型;线性模型:自变量和因变量之间...

  • Day 3 -- 线性模型(上篇)

    第三章线性模型 本节文章主要讨论线性模型的回归,属于线性模型上篇,主要介绍线性模型的基本形式,线性模型的回归原理以...

  • 2019-02-21

    ML——线性模型 基本形式 线性模型就是用于预测的模型是线性的,模型形式如下: ...

  • Linear mixed effects models

    提到线性模型可能会联想到三大类: 一般线性模型 广义线性模型 混合线性模型 一般线性模型比较简单,模拟线性关系,求...

  • 西瓜书 第3章 线性模型 学习笔记

    第3章 线性模型 3.1 基本形式 线性模型:向量形式表示线性模型: 3.2 线性回归 线性回归试图学得:均方误差...

  • 【机器学习实践】有监督学习:线性分类、回归模型

    线性模型 为线性模型 分类和回归的区别 分类:离散回归:连续本文主要关注线性回归模型 常用线性回归模型类型 OLS...

网友评论

      本文标题:threejs--模型动画线性控制

      本文链接:https://www.haomeiwen.com/subject/wluxcltx.html