2012-01-31 9 views

Respuesta

7

En GLScene Demos \ interface \ hfpick, tiene un ejemplo de pintura en un campo de altura.

Pintura sobre una malla más complejo requerirá para buscar las coordenadas de textura del punto bajo el cursor, que dependiendo de cómo se asigna la textura puede ser más o menos complejo.

Un truco rápido para texturas pequeñas que aprovechará la GPU puede ser utilizar las coordenadas de textura como color RGB, puede hacerlo en un sombreador de fragmentos, devolviendo el u, v a R, G fi, y índice de textura en el canal B Render que en un búfer fuera de pantalla y buscar el color del punto bajo el cursor, que te dará la textura & coordenadas, y el apoyo trivial para 256x256 texturas (e incluso hasta 4096x4096 si se utiliza el índice de la textura con prudencia).

Para hacerlo de una manera matemáticamente correcta (utilizando la CPU), tendrá que modificar los métodos RayCast de malla, de modo que en lugar de encontrar el triángulo que se está golpeando, también devuelva las coordenadas de la textura del punto de ser golpeado.

+0

Muchas Gracias .............. – Wel

Cuestiones relacionadas