explodeModifier不适用于three.js中的导入模型

时间:2016-07-27 00:01:42

标签: three.js

我正在尝试进行面部爆炸效果,如下例所示:http://threejs.org/examples/#webgl_modifier_tessellation

然而,该示例使用THREE.TextGeometry,我正在使用

导入的模型

THREE.JSONLoader();

            loader.load( "models/animated/Brain-New_2154_ft.js", function ( geometry ) {

                var material = new THREE.MeshLambertMaterial( {
                    color: 0x6249a3,
                    vertexColors: THREE.FaceColors,
                    morphTargets: true,
                    overdraw: 0.5
                } );

如何使用导入的模型来实现此效果?我是否必须在模型面前将模型转换为某些东西,使用explodeModifier和TessellateModifier库可以影响顶点?谢谢!

1 个答案:

答案 0 :(得分:0)

你需要使用未包含在核心中的THREE.ExplodeModifier(),你必须明确地导入它(参见你的例子中的第140行)。

ExplodeModifier只是遍历几何体中的顶点数组,因此它可以与任何可以成功导入的模型类型一起使用。

var geometry = new THREE.PlaneGeometry(10,10,10,10);

var explodeModifier = new THREE.ExplodeModifier(); explodeModifier.modify(geometry);

这为您提供了一组面,您可以像操作顶点一样操作