当前位置: 首页 > news >正文

如何进入网站后台地址淘宝客网站空间

如何进入网站后台地址,淘宝客网站空间,汕头快速建站模板,有哪些学做衣服的网站有哪些前言 参考这篇文章ThreeJSChatGPT 实现前端3D数字人AI互动,前面搭后端、训练模型组内小伙伴都没有什么问题,到前端的时候,脸部就出问题了。看我是怎么解决的。 好文章啊,可惜百度前几个都找不到,o(╥﹏╥)o 问题情况 …

前言

参考这篇文章ThreeJS+ChatGPT 实现前端3D数字人AI互动,前面搭后端、训练模型组内小伙伴都没有什么问题,到前端的时候,脸部就出问题了。看我是怎么解决的。

好文章啊,可惜百度前几个都找不到,o(╥﹏╥)o

问题情况

展示到页面上,是这么个效果(模型动作有夸大部分):

这样的:

《眉飞色舞》

这样的:

《流连赏目》

这样:

《目无全牛》

这样:

眼角:我不感动

以及这样:

嘴巴:该配合你演出的我演视而不见

很明显,这整个脸就没打算一起好好动。

解决方法

原因

出现这个问题,是因为你的网格分开了,但Threejs的混合器AnimationMixer创建一次只能混合一个网格Mesh。

这样子写,一次就只能混合其中一个Mesh:

...  // 省略了很多地方,只列出了关键的细节
loader.load('path/to/your/model.gltf', function(gltf) {const model = gltf.scene;scene.add(model);model.traverse(o => {...if(o.isMesh) {...if (o.morphTargetDictionary) {// 这里混合器只混合了一个meshconst mixer = new THREE.AnimationMixer(o);  ...}}}
}...const clip = getAnimationClip(msg);  // 调用参考文章中得到动画的方法let action = mixer.clipAction(clip);  // 此时此刻也只有一个mixer的动画
action.play();  // 播放动画function animate() {mixer.update(0.016); // 更新动画混合器requestAnimationFrame(animate);renderer.render(scene, camera);
}
animate();

其实得一个Mesh一个混合器,最后把所有混合器都播放好。这样就能实现脸部的协调啦~

代码示例

const mixers = []  // 先准备好一个数组,存放mixer们...loader.load('path/to/your/model.gltf', function(gltf) {const model = gltf.scene;scene.add(model);model.traverse(o => {...if(o.isMesh) {...if (o.morphTargetDictionary) {// 不再只混合一个了// const mixer = new THREE.AnimationMixer(o); // 这里把混合了其中一个mesh的混合器给push进数组了mixers.push(new THREE.AnimationMixer(o));...}}}
}...const clip = getAnimationClip(msg);  // 调用参考文章中得到动画切片帧的方法// 播放动画也不能只用一个的了
// let action = mixer.clipAction(clip);
// action.play();for(let i = 0; i < mixers.length; i++) {let action = mixers[i].clipAction(clip); //所有mixer都生成对应的动作action.play();  // 动画全都给播放了
}function animate() {// 这里也记得都要播放哦// mixer.update(0.016); for(let i = 0; i < mixers.length; i++) {mixers[i].update(0.016);  // 更新全部动画混合器}requestAnimationFrame(animate);renderer.render(scene, camera);
}
animate();

效果展示

当当当当!~

不好意思,搞错了,再来:

效果还不错的赶脚~

后记

网上这方面的资料太少了,这次真就是自己在脑子里构思一个个方案,做出一小步一小步的修改,最终给我试出来是这个毛病了……不容易啊不容易(o(╥﹏╥)o)

希望本文能给其他用Threejs的小伙伴带来帮助,不要放下你敲代码的热情,总有前人在为你们探路中~(✿◠‿◠)

参考

ThreeJS+ChatGPT 实现前端3D数字人AI互动

(偷偷告诉你,这种开源社区大佬的实现项目,不是一般人能随便搜到的哦)

http://www.yayakq.cn/news/551462/

相关文章:

  • 网站功能建设中做设计的地图网站
  • 企业网站推广联系方式seo优化关键词排名优化
  • 公司做网站选择哪个公司好html网站设计
  • 南通企业网站有哪些网站文章seo
  • 网站建设优化工资高不app网站开发成本
  • 沈阳科技网站首页wordpress免回复
  • app网站做二手交易太原网站建设tygytc
  • 广州商城网站建设报价网站空间购买注意事项
  • 北京网站备案在哪一起做网店app下载
  • 网站建设课程中的收获营销推广策划方案
  • 荆州网站设计网站视频背景怎么做
  • 网站开发赚钱吗河北视频网站建设
  • 网站产品二级分类石家庄外贸网站推广
  • 做的很漂亮的网站wordpress单号管理
  • h5企业模板网站小清新文章网站
  • 成都高档网站建设android开发软件有哪些
  • 赶集网网站建设seo上海推广公司
  • 不花钱做网站网站开发 页面功能布局
  • 做易拉宝设计的网站做音乐网站要什么源码
  • 网页设计师联盟网站网站如何添加代码
  • 做个简单的企业小网站网站做子站点有什么用
  • 自己做网站是否要买云主机做网页兼职网站有哪些
  • 怎么创造自己的网站做ppt的网站 知乎
  • 数字报网站模板ppt模板下载免费版百度云
  • 电影天堂网站用什么程序做的北京南昌企业网站制作
  • 网站怎么关键字优化网站建设公司效益怎么样
  • 南阳理工网站建设天津seo代理商
  • cn结尾的网站 做外贸成都网站建设快速服务
  • 网站开发的费用计入什么科目广州软件开发培训机构有哪些
  • 网站长图怎么做wordpress 3d标签云 插件