graphics ThreeJS Cómo elegir el color del punto de intersección de un objeto




three.js (2)

Estoy probando el lanzador de rayos ThreeJS para obtener el color de intersección del objeto.

Hay ejemplos de cómo encontrar el color de la cara, pero mi problema es obtener el color de la textura del punto de intersección, pero fuera del código de sombreado. El objeto tiene una textura aplicada y el color varía de píxel a píxel en la cara del objeto.

Por favor sugiere una forma de obtener el color del punto.

gracias por adelantado


Solucioné mi problema actual usando

  1. Raycaster y encontrar el color de la cara
  2. y luego verifique el rango de color como >Xval && <Yval

Como en el caso de que sea, necesito simplemente verificar el cambio de color y marcar al usuario en consecuencia. Gracias por la respuesta @Brakebein


No sé si funciona con un 3D-Canvas, pero puede obtener los datos de imagen de un lienzo y determinar el color del píxel. Eche un vistazo a esas preguntas:

getPixel del lienzo HTML

¿Cómo obtener el color de coordenada x, y de un píxel de una imagen?

¿Cómo usar JavaScript o jQuery para leer un píxel de una imagen?

Con este método, no necesita usar el raycaster, solo las coordenadas del mouse del evento click, suponiendo que desea obtener el color en el punto donde hace clic.

Por supuesto, si hay iluminación en su escena, el color que obtendrá será el color de textura afectado por la iluminación.

Déjame saber si funciona.