Posts tagged OpenGL

opengl_logo

Teksturowanie brył

0

Wykorzystując biblioteki OpenGL i GLUT napisać program przedstawiający perspektywiczny obraz elipsoidy, na który została odwzorowana dwuwymiarowa tekstura RGBA zdefiniowana wzorcem:

schemat tekstury

Obiekt oświetlony jest białym światłem ze źródła reflektorowego (spot), a parametry jego materiału mają wartości domyślne, z wyjątkiem GL_SPECULAR, który ma przyjmować wartość (1.0, 1.0, 1.0, 1.0). Użytkownik powinien mieć możliwość:

  1. Zmiany rozmiarów tekstury w zakresie od 4×4 do 128×128 tekseli z zachowaniem proporcji wzorca.
  2. Powielania tekstury w zakresie od 1 do 5 niezależnie w kierunku poziomym i pionowym (GL_REPEAT).
  3. Zmiany metody filtrowania tekstury (GL_NEAREST, GL_LINEAR)
  4. Zmiany trybu teksturowania (GL_DECAL, GL_MODULATE, GL_BLEND)
  5. Zmiany położenia źródła światła.
  6. Zmiany położenia obserwatora poprzez podanie następujących parametrów:

    - odległości obserwatora od środka układu współrzędnych sceny,

    - wysokości względem płaszczyzny XZ,

    - kąta obrotu wokół osi OY w zakresie [0o, 360o] z krokiem 1o.

Oświetlony obiekt powinien zawsze znajdować się w centralnej części okna.

(more…)

opengl_logo

Modelowanie oświetlenia

0

Wykorzystując biblioteki OpenGL i GLUT napisać program przedstawiający perspektywiczny obraz obiektu, którego powierzchnię opisują następujące funkcje:

rownaniagdzie:
ograniczenia

Właściwości materiału: różowy błyszczący (widziany w białym świetle). Obiekt należy oświetlić źródłem światła o następujących parametrach:

  1. typ: reflektor (ang. spot),
  2. kolor: żółty,
  3. natężenie: 1,
  4. kąt odcięcia: 45o,
  5. położenie: zmienne po orbicie kołowej o środku w punkcie S(0,0,0) z możliwością interaktywnej zmiany następujących parametrów:
    1. promienia orbity,
    2. kąta nachylenia orbity do osi OX,
    3. kąta nachylenia orbity do osi OZ,
  6. kierunek świecenia: na obiekt.

Program powinien posiadać następujące właściwości funkcjonalne:

  1. interaktywną zmianę liczby podziałów pionowych i poziomych obiektu,
  2. interaktywną zmianę położenia obserwatora poprzez podanie następujących parametrów:
    1. odległości obserwatora od środka układu współrzędnych sceny,
    2. wysokości względem płaszczyzny XZ,
    3. kąta obrotu wokół osi OY w zakresie [0o, 360o] z krokiem 1o.

Uwaga! Obiekt powinien zawsze znajdować się w centralnej części okna.

(more…)

opengl_logo

Przekształcenia geometryczne

1

Wzór budowanego obiektu: http://images.google.pl/images?hl=pl&q=allure%2032146000&lr=&um=1&ie=UTF-8&sa=N&tab=wi

Spróbujemy napisać program przedstawiający obiekt zbudowany z prymitywów przestrzennych udostępnianych przez biblioteki GLU i GLUT. Dodatkowo za pomocą klawiatury damy możliwość:

  1. Obrotu górnej części baterii wokół osi.
  2. Obrotu oraz podnoszenia i opuszczania kurka baterii.

(more…)

opengl_logo

Modelowanie brył

0

Wykorzystując biblioteki OpenGL i GLUT napiszemy program przedstawiający perspektywiczny obraz walca w trybie GL_QUAD_STRIP o promieniu 1, środku w punkcie (0,0,0) oraz wysokości 3. Dodatkowo wprowadzimy możliwość interakcyjnej zmiany pionowych i poziomych podziałek brył w przedziałach [6,16]. Podstawy walca zamodelujemy przy pomocy trybu GL_TRIANGLE_FAN.
(more…)

opengl_logo

OpenGL w Dev-C++

4

Pierwsze kroki w OpenGL-u stawiałem w Visual C++. Kierując się wskazówkami z jakiegoś manuala zainstalowałem Microsoft Visual C++ i dodałem biblioteki do odpowiednich katalogów. Wszystko działało, ale przyzwyczajenie do skrótów z klawiaturowych z Dev-a skutecznie utrudniało mi pracę w tym środowisku. A z resztą, Dev-C++ jest na licencji GNU (General Public License). Nie pozostało mi nic, jak uruchomić wszystkowiedzące Google. (more…)

Go to Top