2.7 KiB
Estructura de archivos
Díaz Camacho Pedro Emilio
Headers
main.h
Este archivo incluye los prototipos internos, que va a usar el programa funge como api interna para los desarrolladores y debe estar bien documentada.
codigo fuente
main.c
Este archivo debe configurar el programa antes de iniciarse, avisar de los problemas que eviten que el programa se ejecute correctamente, iniciar y terminar los objetos que use el programa, así como ejecutar la función principal
Depende de
- <GL/gl.h>
context.c
En este archivo se escoge un color para limpiar la pantalla y tiene una función para limpiar tanto lo dibujado en pantalla, como distintos buffers gráficos.
Depende de
- <GL/gl.h>
input.c
Incluye la función poll_input, que se ejecuta en cada ciclo del programa y devuelve un
cuaternion de tipo float * que representa la rotación total del cubo, después de interactuar
con el programa.
Depende de
- <GLFW/glfw3.h>
- <cglm/quat.h>
matrix.c
Incluye las funciónes para configurar y cargar en la GPU las 3 matrices principales.
fix_matrixesta matriz no cambia y se usa para configurar la perspectiva y la vista que va a usar el programa en todo momento.mdl_matrixesta matriz depende de cada mesh y describe la rotación única de cada objeto, se usa para rotar los ejes ortogonamente con un indice.rot_matrixesta matriz describe la rotación total de todos los objetos y se configura con un cuaternio
Depende de
- <cglm/mat4.h>
- <cglm/cam.h>
- <cglm/quat.h>
mesh.c
Este archivo se usa para crear, destruir y dibujar objetos de tipo mesh, un mesh es una
colección de triángulos que describen un objeto multidimensional.
Depende de
- <GL/gl.h>
- <stdlib.h>
shader.c
Debe crear, destruir y usar los shaders, estos shaders son programas para la gpu escritos en glsl para
además aquí se carga memoria en gpu con las funciónes gload_
Depende de
- <GL/gl.h>
texture.c
Debe cargar, usar y destruir las texturas, que va a usar la gpu, también crea una textura para una paleta de colores definida, esto para manipular fácilmente los colores que usará el programa.
Depende de
- <GL/gl.h>
window.c
Crea, usa, limpie y cierra una ventana, una ventana tiene un contexto de OpenGL asociado para poder dibujar objetos en ella, tiene una función especial para avisar si la ventana está abierta para dibujar.
Depende de
- <GLFW/glfw3.h>
Datos
data/cube.h
Aquí esta la información del mesh de un cubo, este se va a borrar cuando podamos importar meshes para graficarlos.
data/axis.h
Aquí está el mesh de un solo eje, este se va a rotar para hacer los otros 2 ejes.
data/shaders.h
Aquí estan los shaders en glsl para dibujar en pantalla