Mezcla de canalización de función fija y canalización programable en opengl

Bien, entonces aquí está mi problema. Tengo un marco utilizado por mi escuela para visualizaciones, y he estado tratando de configurarlo para hacer gráficos en 3D. El problema es que el marco actualmente solo utiliza la canalización de función fija para dibujar. Sin desordenar eso, he estado tratando de evitar el código antiguo que todavía necesita usar la canalización de funciones fijas, y he estado configurando instalaciones para permitir la creación de sombreadores y programas de sombreadores. Tengo un sombreador de color simple para compilar y también hice una matriz de prueba de vértices (un triángulo verde).

Ahora, cuando traté de renderizarlo, la pantalla se volvió negra. De antemano, había muchos sprites 2D y lo que no se movía por la pantalla, pero al recorrer el código que agregué a la función de renderizado, descubrí que la pantalla se oscurece en el momento en que llamo glUseProgram. Si comento el glUseProgram y las partes donde configuro los uniformes y dibujo, todo funciona normalmente. ¿GlUseProgram desactiva la canalización de función fija? Si es así, ¿hay alguna forma de reactivarlo, per se?

Respuestas a la pregunta(2)

Su respuesta a la pregunta