GAMESH

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

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

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

admin4年前 (2020-04-20)学习62060

当您使用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插件
分享给朋友:

相关文章

自用3dsmax批量一键导出动画脚本第二版

自用3dsmax批量一键导出动画脚本第二版

在原来的基础上改成用户自己选择要导出的部分,然后就可以批处理文件夹max文件批量导出使用方法:打开一个文件拖入脚本,导入路径会自动识别文件路径选择场景里面需要导出的骨骼或者模型勾选只导当前文件只会导出...

浮光_燕尔枯荣模型带绑定下载

浮光_燕尔枯荣模型带绑定下载

《天涯明月刀》是腾讯游戏自主研发的首款3D武侠题材的MMORPG游戏,采用自主研发的Quicksliver引擎,是比肩国际顶尖水平的次世代网络游戏。其场景描绘了浪漫与现实之间广袤天地,造型...

39miku-max模型

39miku-max模型

39式初音一枚,3dmax版本!初音的全称是“初音未来”,其中“未”在日语中音读为“み(mi,音同“咪”),“来”的简体形汉字读作“く(ku,音同“库”)”,所以初音又叫“初音miku”。 至于3和...

高质量模型免费分享

高质量模型免费分享

网上找到的一个非常棒的模型,现在免费分享给大家,四边面的! 下载地址:https://pan.baidu.com/s/1ydpwtWU5bR4DeRD8g...

maxscript零基础教学写一个批量改名并导出插件

maxscript零基础教学写一个批量改名并导出插件

这篇文章我会用一个案例去讲解如何写一个maxscript脚本,这里我用批量修改max文件的骨骼名称。目标:修改一批max文件的bone00骨骼名称为bone99,然后导出fbx操作方法:1.打开max...

全套法师动画源文件-Bip-3dMax-FBX

全套法师动画源文件-Bip-3dMax-FBX

淘宝网购置了一套资源。资源应该是43个动作的微元素,在5种格式的BiP,FBX,Max,GIF和unity。模型面数为19133个骨骼数量:35个字符:E3D rimoo职业:法师武器:空手游戏人物常...

发表评论

访客

看不清,换一张

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