端午节使用Threejs实现数字人3D粽子

个人主页: 左本Web3D,更多案例预览请点击==》 在线案例
个人简介:专注Web3D使用ThreeJS实现3D效果技巧和学习案例
💕 💕积跬步以至千里,致敬每个爱学习的你。喜欢的话请三连,有问题请私信或者加微信

 

1,功能介绍

Threejs实现加载粽子模型,使用AI生成数字人并进行介绍,效果如下图

2,功能实现

第一步:粽子建模,模型下载地址:【免费】粽子模型glb,fbx,max资源-CSDN文库

第二步:数字人生成

首先使用ChatGPT生成文案

复制文案到腾讯智影中,并选择自己喜欢的数字人,最后生成数字人视频MP4

视频地址icon-default.png?t=N5K3https://live.csdn.net/v/306099第三步:使用Threejs技术实现

首先,加载粽子模型并添加到场景中的函数。使用了Three.js的GLTFLoader来加载glb模型文件,并且使用DRACOLoader来解码。代码中还对模型中的Mesh进行了遍历,将emissive属性设置为其颜色,并设置了emissiveMap和emissiveIntensity属性,用于在场景中产生发光效果。最后,获取模型包围盒的中心点,将模型居中显示,并将模型添加到场景中。在加载过程中,还输出了加载进度信息。

function loadResources() {const dracoLoader = new DRACOLoader();dracoLoader.setDecoderPath('libs/draco/');const loader = new GLTFLoader();loader.setDRACOLoader(dracoLoader);loader.load('assets/models/zongzi.glb', function(gltf) {zongziObj = gltf.scene;// peopleObj = gltf.scene.children[1];zongziObj .traverse(function (item) {if (item instanceof THREE.Mesh) {item.material.emissive = item.material.color;item.material.emissiveMap = item.material.map;item.material.emissiveIntensity = 3;}});// 获取包围盒的中心点const bbox = new THREE.Box3().setFromObject(zongziObj);const center = new THREE.Vector3();bbox.getCenter(center);zongziObj.position.sub(center);scene.add(zongziObj);}, function(xhr) {let num = Math.floor(xhr.loaded / xhr.total * 100) / 100;console.log('场景加载完成的百分比' + (xhr.loaded / xhr.total * 100) + '%');});
}

然后,使用Threejs把数字人绿幕视频进行播放。如何使用Three实现绿幕视频播放请查看:Threejs实现数字人绿幕视频背景透明播放,Shader绿幕视频抠像_左本Web3D的博客-CSDN博客

<script type="x-shader/x-vertex" id="vertexShader">varying vec2 vUv;void main() {vUv = uv;gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );}
</script><script type="x-shader/x-fragment" id="fragmentShader">uniform sampler2D videoTexture;uniform float threshold;varying vec2 vUv;void main() {vec4 color = texture2D(videoTexture, vUv);float greenScreen = color.g - max(color.r, color.b);float alpha = 1.0 - smoothstep(threshold - 0.05, threshold + 0.05, greenScreen);gl_FragColor = vec4(color.rgb, alpha);}
</script>
var geometry = new THREE.PlaneGeometry(0.5625, 1);
var shaderMaterial = new THREE.ShaderMaterial({uniforms: {'videoTexture': {value: new THREE.VideoTexture(video_content)},threshold: {value: 0.05},},vertexShader: document.getElementById('vertexShader').textContent,fragmentShader: document.getElementById('fragmentShader').textContent,side: THREE.DoubleSide,transparent: true
});var contentBox = new THREE.Mesh(geometry, shaderMaterial);
setTimeout(function() {sceneOrtho.add(contentBox)
}, 1000)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/70469.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

企业微信自动添加手机好友工具

分享一个企业微信批量根据手机号加好友的神器&#xff0c;导入手机号一键添加

pywinauto+pytesseract实现企业微信客户端自动化批量添加好友

1.项目介绍 本项目主要是利用 pywinauto 自动化操作和 pytesseract OCR图片识别技术&#xff0c;实现了企业微信的批量添加好友操作&#xff0c;解放双手&#xff0c;摆脱重复的工作&#xff0c;减轻工作压力。 目前市面上还是有很多软件都是客户端形式的&#xff0c;比如说 Q…

微信自动加好友可以使用python实现

一、 现在电脑上安装python环境&#xff08;可以自行百度&#xff09; 二、安装python的虚拟环境 pip3 install virtualenv 三、创建一个虚拟环境 virtualenv venv -p python 四、在安装的虚拟环境中找到script文件夹 五、将以下的auto压缩包解压&#xff0c;放到script下 六…

Python 企业微信自动批量添加好友

**使用说明****1、**此应用由四个文件组成&#xff08;1个主运行程序、2个文本存储档、1个图片识别文件夹。&#xff09; 1.1、imgs_all文件夹中存放的5张格式为jpg的图片是用来捕捉屏幕桌面是否存在图片&#xff0c;不同电脑时大多数通用&#xff0c;反之要进行重新截图获取&a…

微信自动批量添加好友,可以这样实现?

一、 现在电脑上安装python环境&#xff08;可以自行百度&#xff09; 二、安装python的虚拟环境 pip3 install virtualenv 三、创建一个虚拟环境 virtualenv venv -p python 四、在安装的虚拟环境中找到script文件夹 五、将以下的auto压缩包解压&#xff0c;放到script下 六…

传统巨头进驻Web3云计算会是下一个大趋势吗?

2023年的科技圈风起云涌&#xff0c;科技巨头纷纷围绕AI吹响了军杯赛的号角&#xff0c;以ChatGPT为代表的AI技术预示着第四次工业革命已经到来&#xff0c;而当前恰处于关键时期。 几十年的积淀与数月的“狂飙”&#xff0c;证明了AI绝不是一次短暂的技术泡沫&#xff0c;其将…

推特账户设置推文保护

1.点击头像&#xff0c;进入设置页 2.选择安全与隐私 3. 勾选“protect your Tweets”并保存即可 4. 其他账号的查看效果

推特开发者账号 获取推文的视频链接

关于如何获得一个推特开发者账号请看此贴&#xff1a; 推特开发者账号的申请 或 搜索微信公众号 twitterDeveloper 获得帮助 在爬取推文的时候&#xff0c;会碰到一些带有视频的推文 可以通过 extended_entities参数来获取视频的url 代码如下&#xff1a; 在对上面的推文调…

推特开发者账号申请 elevated 高级 academic 学术 权限 2021年11月

主要用来介绍推特开发者账号的 elevated academic 权限如何申请 推特开发者v2接口已经开放1年了&#xff0c;申请流程也有了较大的变动。 先去推特开发者官网申请开发者账号&#xff0c;官网地址如下&#xff1a; https://developer.twitter.com/en/portal/dashboard 首先是…

推特开发者 推特 oauth1.0a 授权【推特开发者文档系列12】

关于推特开发者账号 elevated academic 请看此贴&#xff1a; 推特开发者账号申请权限 或 搜索微信公众号 twitterDeveloper 获得帮助 推特授权使用的还是oauth1.0的模式&#xff0c;官网介绍比较麻烦&#xff0c;也很不友好&#xff0c;所以下面将介绍一种简单的授权方法。…

记录一次关于解除推特的冻结

记录一次关于解除推特的冻结 之前因为用QQ邮箱注册的推特&#xff0c;导致在登录的时候需要验证手机号&#xff0c;但是大陆手机后又会提示“由于技术问题&#xff0c;我们无法完成此次请求&#xff0c;请重试”&#xff0c;反正就是大陆手机号不能验证。所以建议大家用手机号…

推特Twitter高级搜索

今天&#xff0c;尝试通过模拟浏览器爬取推特数据。想要爬取包括不同关键词的推文&#xff0c;比如含有“home”或者“school”其中的一个&#xff0c;再或者需要指定发推的时间&#xff0c;那么我们需要用到推特的高级搜索功能。 进入推特高级搜索功能的方法 第一种情况&…

输入账号密码一直转圈登不进去

控制台报sqlException 解决&#xff1a; yml的账号密码要与mysql安装时设置的密码保持一致。&#xff08;一定要记住自己安装mysql时设置的密码是啥&#xff0c;面向百度试图修改mysql密码弄了好一会&#xff0c;突然想起之前安装mysql时记了一篇笔记&#xff0c;幸好笔记写的比…

Centos服务器开机一直在登录页面转圈,然后弹出Give root password for maintenance(or press Control-D to continue):

Centos服务器开机一直在登录页面转圈&#xff0c;然后弹出Give root password for maintenance(or press Control-D to continue): 问题原因&#xff1a;异常关机导致某个逻辑卷丢失或者损坏了 排查思路&#xff1a; 1&#xff0c;转圈时按一下键盘上的f11 、f12、f键即可&am…

电脑微软账户登录一直转圈怎么解决问题

电脑登录微软账户的时候为什么会一直转圈卡住呢&#xff1f;很多朋友不知道如何解决这样的一个问题&#xff0c;今天这里就和大家分享一下解决这个问题的方法吧&#xff0c;如果你不知道如何处理&#xff0c;不妨试试这个步骤。 这里有系统安装的教程可以看看 ​ 1、在电脑桌…

win11微软账户登录一直转圈怎么解决?win11微软账户登录一直转圈

win11微软账户登录一直转圈怎么解决&#xff1f;最近有很多小伙伴们向小编反映说自己的微软账户登录的时候一直在转圈就是进不去&#xff0c;不知道是怎么一回事&#xff0c;就卡在登录界面上。那遇到这个问题应该怎么解决呢&#xff1f;还不清楚的小伙伴们不用担心&#xff0c…

虚拟机进不去登陆界面一直转圈

说明&#xff1a;我的出现的问题是防火墙未关闭 问题示例&#xff1a;虚拟机进不去&#xff0c;如图&#xff1a; 解决方法&#xff1a;在下图界面点击e进入内核 点击向下方向键找到linux16&#xff0c;在最后先空格再补充selinux0&#xff08;意思为关闭selinux&#xff09; 输…

在arxiv 如何引用参考文献

在arxiv上搜到一篇论文后&#xff0c;想在自己的论文中添加引用这篇论文的方法如下&#xff1a; 然后会进入零一个页面 点击完cite后会弹出个弹框&#xff0c;弹框上边有四种格式供使用 点击下边的copy即复制就可以复制到自己的粘贴板上了

写论文一定要会-------中英文参考文献的导出方法

1.如何导出中文参考文献 建议大家结合知网和百度学术,两者对比使用!!因为我的小姐妹在只使用知网的情况下,有几个导出来的参考文献很有问题。 【1】在知网中 打开想要导出的文献界面,点击导出/参考文献 点击复制到剪贴板 将做打印出来的内容放在文档中 【2】在百度学术中…

【观察】新华三:数据中心可组合架构创新,提供多元算力的“最优解”

今天&#xff0c;以ChatGPT为代表的AIGC大模型&#xff0c;已经在国内形成了“海啸效应”&#xff0c;几乎所有的科技公司都在想方设法进入大模型的赛道。背后的核心驱动力&#xff0c;就在于大模型的最大价值在于普遍提升个人生产力&#xff0c;而各行各业的公司都在积极寻找应…