2017-10-03 3 views
0

J'ai chargé un fichier .obj. Je voudrais mettre un point sur le cerveau, et qu'il ne change pas quand la caméra bouge, qu'elle soit toujours au même point que sur cette image.point sur un objet dans THREE.JS

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

+0

Voulez-vous avoir point fixe sur l'objet du cerveau qui tourne, ou voulez-vous avoir point fixe sur l'écran? – hsd

+0

@hsd un point fixe dans le cerveau – yavg

+0

Jetez un oeil à la technique [decals] (https://threejs.org/examples/#webgl_decals). – prisoner849

Répondre

0

est la base de la solution Ici, sur SphereGeometry https://plnkr.co/edit/Y15PFd2Fietq5cjQLJjw?p=preview

J'ai changé cette partie du code.

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); 


    }); 

Ceci n'est pas une solution parfaite mais fonctionne avec l'approche de la balle. Pour améliorer cela, vous devez jouer avec pixel shader ou créer une base de géométrie sur l'objet de fond.

projet qui peut résoudre votre problème est https://github.com/tomtung/chameleon.js

+0

merci..est presque ce dont j'ai besoin! mais, je veux que le cercle ait un effet quelque peu semblable à un point de lumière éclairant une partie du cerveau. – yavg

+0

Vous devez vous renseigner sur la programmation graphiquen – pailhead

+0

@yavg s'il vous plaît jeter un oeil sur le projet https://github.com/tomtung/chameleon.js – hsd