1 / 22

Librerías de Recursos AUX y GLUT

Librerías de Recursos AUX y GLUT. Rubén de la Peña Ramos Pablo Sánchez Manzano Ana de la Viuda López. Informática Gráfica. Universidad de Salamanca. Índice. Introducción AUX GLUT Ejemplos Conclusiones. Índice. Introducción AUX GLUT Ejemplos Conclusiones. Introducción.

ogden
Download Presentation

Librerías de Recursos AUX y GLUT

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Librerías de RecursosAUX y GLUT Rubén de la Peña Ramos Pablo Sánchez Manzano Ana de la Viuda López Informática Gráfica Universidad de Salamanca

  2. Índice • Introducción • AUX • GLUT • Ejemplos • Conclusiones

  3. Índice • Introducción • AUX • GLUT • Ejemplos • Conclusiones

  4. Introducción • Bibliotecas que complementan OpenGL • Las más destacadas: • AUX • GLUT

  5. Índice • Introducción • AUX • GLUT • Ejemplos • Conclusiones

  6. AUX • Fue creada para facilitar el aprendizaje y escritura de programas en OpenGL • Proporciona funciones para: • Inicialización • Manejo de ventanas • Procesado de eventos • Objetos predefinidos

  7. AUX: Inicialización • no necesita una función específica de inicialización para empezar a funcionar • Posee rutinasque definen las características de la ventana en la que se va a trabajar • void APIENTRY auxInitDisplayMode(GLenum); • void APIENTRY auxInitPosition(int,int,int,int); • GLenum APIENTRY auxInitWindow(LPCSTR);

  8. AUX: Manejo de Ventanas • Creación. Además de las vistas: • HWND APIENTRY auxGetHWND(void); • HDC APIENTRY auxGetHDC(void); • HGLRC APIENTRY auxGetHGLRC(void); • Borrado de la ventana • glClearColor() • glClear() • Carga de Imágenes • AUX_RGBImageRec * APIENTRY auxRGBImageLoad(LPCSTR); • AUX_RGBImageRec * APIENTRY auxDIBImageLoad(LPCSTR); • Cerrado y Destrucción • void APIENTRY auxCloseWindow(void); • void APIENTRY auxQuit(void);

  9. AUX: Proceso de Eventos • Bucle Principal de Visualización • void auxMainLoop(void (*displayFunc)(void)); • void APIENTRY auxIdleFunc(AUXIDLEPROC); • glFlush(); • Eventos de Ventana • void auxReshapeFunc(void (*function)(GLsizei, GLsizei)); • Eventos de Teclado • void auxKeyFunc(GLint key, void (*function)(void)); • Eventos de Ratón • void auxMouseFunc(GLint button, GLint mode, void (*function)(AUX_EVENTREC *));

  10. AUX: Objetos Predefinidos • Dos modos: Wire, Solid • Sphere • Cube • Box • Torus • Cylinder • Icosahedron • Octahedron • Tetrahedron • Dodecahedron • Cone • Teapot

  11. Índice • Introducción • AUX • GLUT • Ejemplos • Conclusiones

  12. GLUT • Biblioteca de recursos posterior a Aux • Al igual que Aux, proporciona funciones para: • Inicialización • Manejo de ventanas • Procesado de eventos • Objetos predefinidos • Añade nuevas prestaciones • Mayor portabilidad • Menús desplegables • Fuentes de texto • …

  13. GLUT: Inicialización • Necesita función de inicialización • glutInit() • resto de funciones de inicialización de GLUT • glutInitWindowPosition(int x, int **y) • glutInitWindowSize(int ancho, int **alto) • glutInitDisplayMode(unsigned int mode)

  14. GLUT: Manejo de Ventanas • glutCreateWindow • glutCreateSubWindow • glutSetWindow • glutPostRedisplay • glutDestroyWindow • glutGetWindow • glutSetWindowTitle • glutSetIconTitle • glutPositionWindow • glutIconifyWindow • glutShowWindow • glutHideWindow • glutFullScreen

  15. GLUT: Procesado de Eventos • void glutDisplayFunc( void (*func) (void)) • void glutIdleFunc( void (*func) (void)) • void glutReshapeFunc(void (*func) (int width, int height)) • void glutMouseFunc( void (*func) (int button, int state, int x, int y)) • void glutMotionFunc(void (*func) (int x, int y)) • void glutKeyboardFunc(void (*) unsigned char key, int x, int y)

  16. GLUT: Menús • int glutCreateMenu(void (*func) (int value) • void glutSetMenu(int menu) • void glutAddMenuEntry(char *name, int value) • Void glutAddSubMenu(char *name, int menu) • Void glutChangeToMenuEntry (int entry, char *name, int value) • void glutAttachMenu(int button)

  17. GLUT: Manejo de textos • Primitivas para el trazado de bitmaps y renderizado de texto en pantalla • glutBitmapCharacter(void * font, int character)

  18. GLUT: Objetos Predefinidos • No hay novedades respecto a AUX • Sólo cambia el nombre de la función: • glutWireSphere

  19. Índice • Introducción • AUX • GLUT • Ejemplos • Conclusiones

  20. Índice • Introducción • AUX • GLUT • Ejemplos • Conclusiones

  21. Conclusiones • Comparativa • Es preferible la utilización de Glut

  22. Librerías de RecursosAUX y GLUT Rubén de la Peña Ramos Pablo Sánchez Manzano Ana de la Viuda López Informática Gráfica Universidad de Salamanca

More Related