GAMESH

游戏美术动画unity资源搬运工!

剧情党,完美控!
桐崎千棘
当前位置:首页 > 学习 > 正文内容

使用Three.js在WebGL中导入Json 3D模型和动画

admin5年前 (2020-04-20)学习77420

当您使用3ds Max创建带有动画的模型时,并且需要快速的工作流来使用Three.js将它们加载到WebGL中时,我建议执行以下步骤:

1.从3ds Max导出模型

通过使用Json Exporter,您将能够轻松地将资产从3ds Max导出到Json 3D Format。导出器支持许多有用的功能,例如程序纹理,皮肤和体形修改器,多个动画剪辑,uv变换等等。

杰德

2.加载模型和动画

下载用于ThreejsJson 3D Loader,将其包含在html中并创建一个加载器:

<script src="three.js"></script><script src="JDLoader.min.js"></script><script>var meshes = [];var mixers = [];var clock = new THREE.Clock; 
var loader = new THREE.JDLoader();// ... the rest of your init code</script>

现在要将模型加载到您的场景中,类THREE.JDLoader将为我们做所有事情,您所需要做的就是指定模型文件路径并定义在加载模型时将调用的回调函数。回调函数具有一个对象参数,其中包含材质,jd_materials,对象和boundingSphere。data.materials是Three.js MeshPhongMaterial数组,而data.jd_materials是原始Json3D材料数组。如果需要创建自己的材质(例如ShaderMaterial),则应该解析data.jd_materials。

loader.load("anim.jd",
            function (data)
            {
                for (var i = 0; i < data.objects.length; ++i)
                {
                     var obj = data.createObject(i);
                     scene.add(obj);                     if (obj.geometry.animations)
                     {
                        var mixer = new THREE.AnimationMixer(obj);
                        mixers.push(mixer);                        var action = mixer.clipAction( obj.geometry.animations[0] );
                        action.play();                     }
                }
            });

最后,我们必须在动画循环中调用其update函数:

function animate(){   var delta = clock.getDelta();
   for (var i = 0; i < mixers.length; ++i)      mixers[i].update(delta); 
  // ... the rest of your code}

就是这样。您可以使用AnimationMixer类添加代码以在多个动画之间混合。


扫描二维码推送至手机访问。

本サイト上に掲載の文章、画像、写真などを無断で複製することは法律で禁じられています。全ての著作権はGAMESHに帰属します。

本文链接:https://www.pylblog.com/post/177.html

标签: 3dmax插件
分享给朋友:

相关文章

z-blog观看激励视频广告显示隐藏内容插件

z-blog观看激励视频广告显示隐藏内容插件

360广告联盟推出激励视频广告,用户只需要完整看完广告就会获得收益,用户看完激励广告后显示隐藏内容,用户的每次点击都是为站长增加收入,一般的展示广告没有点击是没有收益,借助这个插件可以强制用户点击激励...

3dmax批量导出/导入

3dmax批量导出/导入

这是一个免费的脚本,非商业用途。这是将模型从3ds Max传输到ZBrush / Unity / UDK /的完美脚本。基本上,它将对象导出到多个文件。支持的格式:max,obj,fbx,3ds,as...

3dmax碰撞飘带插件Spring Max

3dmax碰撞飘带插件Spring Max

特征:在骨链上挥动,扭曲和拉伸动画,可以循环动画骨链可以与胶囊和平面碰撞形状在骨链上施加风和爆炸力注意:计算骨骼不应该在场景中有重复的名称对象,并且不应该有负的比例值无法使用Ctrl + Z撤消计算...

3dmax树经制作插件SplineBrancher

3dmax树经制作插件SplineBrancher

用于从一系列样条线创建分支几何的工具。下载URL适用于免费版本。请按照完整版的主页URL进行操作。附加信息: 设置:要安装,只需将SplineBrancher.zip解压缩到3DS Max目...

3dmax绘图工具

3dmax绘图工具

用于在3dsmax视口中绘制的简单工具。用于在场景中制作图形注释和标记。下载文件function dodo(){ layer.msg('即将弹出二维码页面! ', { time: 1000...

免费看各网站VIP视频解析安卓客户端和浏览器插件

免费看各网站VIP视频解析安卓客户端和浏览器插件

你还在为视频网站需要会员发愁吗?每个月都要购买各个网站的会员需要一大笔钱,有时候买的会员网站没有你想看的视频,还需要购买其他网站的会员觉得很麻烦!其实网上有视频解析的网站,直接输入地址就可以观看,但是...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。