本人研发的国内首个纯面向web应用和小程序的轻量级3D虚拟人引擎MyAvatar。

功能简述

  1. 支持3D模型定制(写实或卡通风格均可,人物模型需实现绑定和变形)
  2. 动画可以内置于模型中,也可以单独以glb或fbx格式导出并动态加载
  3. 支持readyplayer网站的用户自定义模型(卡通风格的自定义肖像)
  4. 实现了人物动作动画、表情动画、唇形同步
  5. 实现了文本到音频和人物动画的转换
  6. 实现了智能问答和文本播报两种模式的交互
  7. 可以无缝对接到已有的以three.js或babylonjs为渲染引擎的3d场景中
  8. 实现了ECS模式,易于扩展
  9. 支持多实例,支持资产保护
  10. 面向web,纯JS版本,客户端为ES6,服务端为NodeJS/Express,无需WebAssembly
  11. 支持WebGL、WebGPU、WebXR标准
  12. 天然跨平台,支持电脑、iOS、Android手机、微信(小程序)
  13. 可以和我写的元宇宙引擎无缝融合,提供一站式轻量级元宇宙解决方案
  14. 简洁高效,sdk库只有500K不到,只需几行代码即可完成虚拟人的引入

Myavatar数字人引擎示例图

使用方法示例

import { MyAvatar } from './myavatar.module.js'
MyAvatar.init(
 appId,
 appKey,
 opts,
 onReady
)

let eSpawner = MyAvatar.getEntity('spawner')
if(eSpawner) {
    const spawner = eSpawner.getComponent('AiSpawner')
    let agent = spawner.spawn('ai', {account: {name: 'myavatar'} })
    
    // set initial transform via myavatar apis
    // agent.setPosition(new Vector3(Math.random() * 2, 0, - Math.random() * 2 - 1))
    // agent.setQuaternion(new Quaternion(0, Math.random() * 0.1, 0, 1))
}

竞品比较

可对比的有基于Unity导出的WebAssembly+WebGL方案,缺点是体积大(通常要50M以上),非web原生,兼容性差(尤其是iOS设备),性能差。

使用场景

智慧城市、数字孪生、智慧文旅、云展厅、在线教育等元宇宙泛化场景。

效果预览

面向web的轻量级智能数字人(虚拟人)引擎功能演示

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部