指向THREE.JS中的一个对象

时间:2017-10-03 17:03:51

标签: javascript three.js

我已加载.obj文件。我想对大脑说一点,并且当相机移动时它不会改变,它总是与此图像中的点相同。

enter image description here

var loader = new THREE.OBJLoader( manager );
        /* */
loader.load( 'freesurf.OBJ', function ( object ) {

 brain = object;
 object.position.y = 0;
 scene.add( object );

} );

https://plnkr.co/edit/iAr4Rl4Ohlq6bQIqdbJ6?p=preview

1 个答案:

答案 0 :(得分:0)

以下是基于SphereGeometry的解决方案 https://plnkr.co/edit/Y15PFd2Fietq5cjQLJjw?p=preview

我改变了这部分代码。

    var mat = new THREE.MeshBasicMaterial({color:'blue',transparent:true,opacity:0.5,

      depthFunc:THREE.LessDepth,side:THREE.FrontSide,})

      var sphr = new THREE.Mesh(new THREE.SphereGeometry(1,16,16),mat);
      sphr.position.set(1.3, 1.3, 0 );
      brain.add(sphr);


    } );

这不是完美的解决方案,而是采用球的方法。 为了使这更好,您应该使用像素着色器或在背景对象上创建几何体。

可以解决您的问题的项目是 https://github.com/tomtung/chameleon.js