Preguntas etiquetadas con opengl

Para preguntas relacionadas con el uso de la biblioteca de gráficos OpenGL.


6
¿Cómo puedo depurar sombreadores GLSL?
Al escribir sombreadores no triviales (al igual que al escribir cualquier otra pieza de código no trivial), las personas cometen errores. [cita requerida] Sin embargo, no puedo depurarlo como cualquier otro código; después de todo, no se puede simplemente adjuntar gdb o el depurador de Visual Studio. Ni siquiera puede …
45 opengl  glsl  debugging 

1
¿Qué significa "st" en el contexto de OpenGL?
He visto el término staparecer varias veces al mirar otros sombreadores de fragmentos OpenGL. Sin embargo, no sé qué significa o para qué se utiliza. Aquí hay un ejemplo: uniform vec2 u_resolution; vec2 st = gl_FragCoord.xy/u_resolution; Puedo entender que esto está convirtiendo las coordenadas de píxeles en coordenadas normalizadas de …
19 opengl 

2
¿Qué es fwidth y cómo funciona?
La documentación de OpenGL establece que fwidth returns the sum of the absolute value of derivatives in x and y. ¿Qué significa esto en términos menos matemáticos, y hay una manera de visualizarlo? Según mi comprensión de la función, fwidth(p)tiene acceso al valor de pen píxeles vecinos. ¿Cómo funciona esto …
18 opengl 



2
¿Cómo implementar un trackball en OpenGL?
Después de tanta lectura sobre las transformaciones, es hora de implementar un trackball para mi aplicación. Entiendo que tengo que crear un vector desde el origen hasta donde se hace clic con el mouse y luego otro desde el origen hasta donde se suelta el mouse. Mi pregunta es, ¿tengo …
15 opengl  trackball 

1
Compatibilidad con OpenGL, convenciones de nomenclatura y ARB vs EXT
Pensé que había formado una comprensión general de cómo funcionaban las convenciones y extensiones de nomenclatura de OpenGL, hasta que me topé con un caso que me confundió. Aquí está mi entendimiento hasta ahora: Sin sufijo , por ejemplo glGenBuffers(). Esta función es parte del perfil central. La página wiki …
14 opengl 

3
¿Cuáles son algunos métodos para representar la transparencia en OpenGL?
La combinación alfa se puede activar para hacer que las superficies sean transparentes, así: glDisable(GL_DEPTH_TEST); //or glDepthMask(GL_FALSE)? depth tests break blending glEnable(GL_BLEND); glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); Pero esto solo funciona si los objetos se representan en orden de atrás hacia adelante. De lo contrario, las cosas en el fondo aparecen frente a …

1
Cuándo deshabilitar la perspectiva correcta interpolación (no perspectiva)
En GLSL, la interpolación correcta de perspectiva de los atributos de vértice es la configuración predeterminada: se puede deshabilitar para atributos de vértice específicos utilizando el calificador noperspectivo . Aparte de los sombreadores de postprocesamiento, nunca he visto la perspectiva correcta interpolación deshabilitada: ¿hay algún otro caso de uso? Además, …


2
OpenGL - Detección de bordes
Me gustaría cargar mallas arbitrarias y dibujar gruesas líneas negras a lo largo de los bordes para obtener un aspecto similar al sombreado de toon. Logré dibujar una silueta negra alrededor de los objetos usando el búfer de plantilla. Puedes ver el resultado aquí: Pero lo que falta son las …

1
¿Qué hace exactamente "makeContextCurrent"?
Estoy bastante confundido acerca de esa función. La referencia de contexto GLFW dice lo siguiente: Esta función hace que el contexto OpenGL o OpenGL ES de la ventana especificada sea actual en el hilo de llamada. Un contexto solo puede actualizarse en un solo hilo a la vez y cada …
12 opengl  c++