Tengo un objeto 3D en mi escena y el sombreador de fragmentos para este objeto recibe una textura que tiene el mismo tamaño de la pantalla. Quiero obtener las coordenadas del fragmento actual y encontrar la información de color en la imagen en la misma posición. es posible? ¿Puede alguien señalarme en la dirección correcta?Encontrar el color del píxel en una coordenada específica de un sampler2D usando GLSL
7
A
Respuesta
12
El sombreador de fragmentos tiene un valor incorporado llamado gl_FragCoord que proporciona las coordenadas de píxeles del fragmento de destino. Debe dividir esto por el ancho y alto de la ventana gráfica para obtener las coordenadas de textura para la búsqueda. He aquí un breve ejemplo:
uniform vec2 resolution;
uniform sampler2D backbuffer;
void main(void) {
vec2 position = (gl_FragCoord.xy/resolution.xy);
vec4 color = texture2D(backbuffer, position);
// ... do something with it ...
}
Para un ejemplo de trabajo completa, intente esto en un navegador WebGL con capacidad:
Cuestiones relacionadas
- 1. ¿Cómo obtener el color de coordenada x, y de un píxel de una imagen?
- 2. ¿Cómo puedo establecer el color de un píxel en un lienzo usando WebGL?
- 3. ¿Cómo obtener el color de un píxel en una UIView?
- 4. ¿Cómo obtener el color del píxel? OpenGL
- 5. ¿Cómo encontrar el valor de transparencia del canal alfa de un píxel en una imagen png?
- 6. ¿Textura y color juntos en GLSL?
- 7. Obtener el color del píxel en su ubicación con pygame
- 8. Prueba de cuadro dentro del cuadro GLSL
- 9. ¿Cómo obtengo el color de un píxel en X, Y usando C#?
- 10. Encontrar coordenadas de cada píxel usando la programación
- 11. DirectX establece el color de un solo píxel
- 12. Configuración de color de píxel del archivo BMP/JPG
- 13. Encontrar el píxel/punto de concavidad en el mapa binario usando Matlab
- 14. rmagick valor de color de píxel
- 15. Obtén color de píxel más rápido?
- 16. GLSL comportamiento de bifurcación
- 17. Obtener color de píxel de UIImage
- 18. ¿Qué almacena sampler2d?
- 19. Como lee el color del píxel en un BufferedImage java con la transparencia
- 20. Cómo encontrar la posición del cursor en un JTextArea
- 21. Usando git para encontrar la primera introducción de token en una línea específica de un archivo
- 22. Cómo encontrar una fila específica en csv
- 23. Cómo exportar un componente JTable completo en pdf a una coordenada específica
- 24. obteniendo color de píxel con Magick ++
- 25. GLSL Gif Dither Efecto: Optimización
- 26. Leer una imagen píxel por píxel en Ruby
- 27. ¿Cómo puedo activar (cambiar el color) de un solo píxel por coordenadas en WPF
- 28. Pygame: dibuja un solo píxel
- 29. GLSL: problemas de gl_FragCoord
- 30. Cambiar el color de una pieza de texto específica en emacs sin crear un tema
No puedo creer que era tan fácil, gracias un montón @emackey , He estado tratando de hacer esto por días. –