shader

Funciones aleatorias / de ruido para GLSL

Como los proveedores de controladores de GPU no suelen molestarse en implementar noiseX en GLSL, estoy buscando un conjunto d ... uy bueno, eficiente 1D rand(), y déjame explicarte cómo hacer un buen N-dimensional rand() en la parte superior de ella..." .

¿Cuál es la extensión de archivo correcta para GLSL shaders?

Estoy aprendiendo el sombreado glsl y me he encontrado con diferentes formatos de archivo. He visto a gente dando sus sombrea ... juntos en un solo archivo .glsl. Así que me pregunto si hay un formato de archivo estándar, o de qué manera es el 'correcto'?

¿Qué son los sombreadores de vértices y Píxeles?

¿Qué son los sombreadores de vértices y Píxeles? ¿Cuál es la diferencia entre ellos? ¿Cuál es el mejor?

Enlace de ubicación de atributo explícito vs automático para sombreadores OpenGL

Al configurar ubicaciones de atributos para un programa de sombreado OpenGL, se enfrenta a dos opciones: GlBindAttribLocati ... ada automáticamente. ¿Cuál es la utilidad para usar uno sobre el otro? ¿Y cuál, en su caso, se prefiere en la práctica?

Al transformar texturas (dibujadas como objetos planos 3D) para imitar la profundidad, las líneas negras aparecen aleatoriamente

Estamos desarrollando un RPG de arriba hacia abajo usando XNA. Recientemente nos topamos con un contratiempo al escribir el c ... mos otro Shader para avatares (no mostrar problemas, porque tienen altura > 0). ¿Esto deshace nuestro sampler state? O...?

GLSL / C++: ¿Arreglos de uniformes?

Me gustaría dejar las luces de OpenGL y hacer las mías. Me gustaría que mis shaders permitieran un número variable de luces. ¿Podemos declarar una serie de uniformes en GLSL shaders? Si es así, ¿cómo estableceríamos los valores de esos uniformes?

¿Por qué mi sombreador de OpenGL Phong se comporta como un sombreador plano?

He estado aprendiendo OpenGL durante las últimas semanas y me he encontrado con algunos problemas para implementar un sombrea ... lender, Kos señaló que hacer Edit->Faces->Set Smooth hace el truco. Descubrí que Wings 3D funcionó " fuera de la caja."

OpenGL ES 2.0 Múltiples programas o Múltiples Shaders o qué? ¿Cómo funciona?

El problema (TL;DR) Mi problema, fundamentalmente, es que no sé cómo OpenGL ES 2.0 espera que escriba y use varios shaders; ... ogramas de sombreado que cada uno realice una tarea específica y enfocada. Eso es de las directrices de iOS OpenGL ES 2.0.

¿Qué puede causar que glDrawArrays genere un error de OPERACIÓN INVÁLIDO de GL?

He estado intentando escribir una implementación de GPU de dos pasos del algoritmo Marching Cubes, similar a la detallada en ... , la nueva versión funcionó, y fue cuando busqué las diferencias que descubrí que había estado enlazando el búfer equivocado.

Aprender OpenGL moderno

Soy consciente de que hubo preguntas similares en los últimos años, pero después de hacer algunas investigaciones todavía no ... acionadas con versiones como 2.x ó 3.x, sin embargo, hay pocos (y sin terminar) tutoriales que mencionan 4.x. ¿Con qué ir?

Organización de shaders GLSL en el motor OpenGL

¿cuál es mejor ? Para tener un programa de sombreado con muchos uniformes especificando luces para usar, o asignaciones ... lla si es necesario hacerlo. Aquí asumo que las mallas están correctamente agrupadas, para evitar interruptores redundantes.

¿Las sentencias If-ralentizan mi sombreador?

Quiero saber si "If-statements" dentro de shaders (vértice / fragment / pixel...) están ralentizando el rendimiento del sombr ... sombreador. ¿Es correcto? ¿Tiene más sentido hacer 2 shaderes diferentes como uno para el else y el otro para la parte if?

¿Por qué no vec3 para OpenGL ES 2.0 gl Posición?

Soy nuevo en OpenGL ES 2.0, y no puedo entender el siguiente sombreador más simple: attribute vec4 vPosition; void main() { ... tion; } Mi pregunta es, ya que una posición sería un vector de (x, y, z), ¿por qué es gl_Position un vec4 en lugar de vec3?

¿Cómo se ven los shaders GLSL predeterminados? para la versión 330

¿Cómo se ven los sombreadores GLSL de vértices, fragmentos y geometría predeterminados para la versión #330? Usaré #version ... les en # versión 110, convierte el color en rojo #version 110 void main() { gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0); }