Programowanie w systemie UNIX/c grafika/OpenGL/glut

Z Wikibooks, biblioteki wolnych podręczników.
Skocz do: nawigacji, wyszukiwania

GLUT = Graphics Library Utility Tool-kit ( ang.) jest to wysokopoziomowa biblioteka zawierająca niezależny od sprzętu dostęp do okien ( ang. window system )[1] Programowanie z użyciem biblioteki Glut są sterowane zdarzeniami [2]



Wersje[edytuj]

  • oryginalna
  • freeglut [3]
  • openglut

Jak sprawdzić jaką wersję używamy :

locate glut.h

otrzymujemy :

/usr/include/GL/freeglut.h
/usr/include/GL/glut.h


Możemy używać :

#ifdef FREEGLUT 
#include <GL/freeglut.h> 
#else 
#include <GL/glut.h> 
#endif

Instalacja[edytuj]

opis [4]

freeglut[edytuj]

Download (HTTP): http://downloads.sourceforge.net/freeglut/freeglut-2.8.1.tar.gz
Download MD5 sum: 918ffbddcffbac83c218bc52355b6d5a
Download size: 984 KB
Estimated disk space required: 11 MB
Estimated build time: 0.1 SBU
Freeglut Dependencies : Required GLU-9.0.0
Test suite : no 
Installed Library : libglut.so

Instrukcje :

./configure --prefix=/usr --disable-static && make

Teraz jako root :

make install

Interakcja[edytuj]

Program sterowany zdarzeniami  :[5]

  • mysz ( ruch, kliknięcie )
  • klawiatura : glutKeyboardFunc
  • menu
  • okno ( przesunięcie lub zmiana rozmiaru) : glutReshapeFunc
  • system ( Idle, timer) : glutIdleFunc, glutTimerFunc
  • program ( glutDisplayFunc )


Typy zdarzeń związanych z myszą :

  • kliknięcie ( glutMouseFunc )
  • ruch ( glutMotionFunc, glutPassiveMotionFunc )
  • przekraczanie granic okna ( glutEntryFunc )


Źródła[edytuj]

  1. [http://web.eecs.umich.edu/~sugih/courses/eecs487/glut-howto/ Building OpenGL/GLUT Programs by Sugih Jamin]
  2. GLUT description TUFTS UNIVERSITY
  3. FreeGLUT is a completely OpenSourced alternative to the OpenGL Utility Toolkit (GLUT) library
  4. Building OpenGL/GLUT Programs by Sugih Jamin
  5. Event-driven interaction with GLUT by Gustav Taxén