OpenGL. Biblioteka procedur graficznych. GLU = OpenGL Utility Library. GLX = OpenGL Extension to the X Window System [tm]

Wielkość: px
Rozpocząć pokaz od strony:

Download "OpenGL. Biblioteka procedur graficznych. GLU = OpenGL Utility Library. GLX = OpenGL Extension to the X Window System [tm]"

Transkrypt

1 OpenGL Biblioteka procedur graficnch środowiko Klient Serwer aplikacja = klient erwer moŝe bć na innm komputere tpow erwer = tem operacjn tpu window grafika podtawowego poiomu elementarne obiekt (prmitw = primitive) GLU = OpenGL Utilit Librar aawanowane procedur graficne GLX = OpenGL Etenion to the X Window Stem [tm] komunikacja temem X Window GLUT = OpenGL Utilit Toolkit komunikacja dowolnm temem tpu window OpenGLUT now projekt opart m.in. na GLUT 37 W. Słomińki, "Wtęp do grafiki komputerowej" - 26

2 GLUT Graphic Librar Utilit Toolkit Biblioteka funkcji do komunikacji temem window +... Stem okien (window) jet terowan dareniami (event) #include <GL/openglut.h>... int main(int argc, char *argv[]) { glutinit(&argc, argv); glutinitwindowsie(windw, windh); glutinitwindowpoition(,); //glutinitdiplamode(glut_rgb GLUT_SINGLE); wbiera argv opcje GLUTa w pikelach Na ielono opcjonalne glutcreatewindow("title"); tu OpenGL tandard } //m_init(); glutdiplafunc(proc_paint); glutkeboardfunc(proc_ke); glutmouefunc(proc_moue); glutmainloop(); return EXIT_SUCCESS; funkcje obługi dareń event handler pętla obługi dareń event loop 38 W. Słomińki, "Wtęp do grafiki komputerowej" - 26

3 Model operacjn OpenGL Lita poleceń Dipla Lit polecenia Command Oblicenia Evaluator Operacje na wierchołkach i kontrukcja prmitwów Per-verte Operation and Primitive Aembl Pamięć tektur Teture Memor Ratrowanie Rateriation Pamięć ratra Frame buffer Operacje na pikelach Piel Operation 39 W. Słomińki, "Wtęp do grafiki komputerowej" - 26

4 Elementarne obiekt graficne prmitw Figur geometrcne ą tworone wierchołków: glbegin(glenum mode ); glverte...(,,...); glverte...(,,...);... glevalcoord...(t,...); glend(); mode GL_POINTS, GL_LINES, GL_LINE_STRIP, GL_LINE_LOOP, GL_TRIANGLES, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, GL_QUADS, GL_QUAD_STRIP, GL_POLYGON 4 W. Słomińki, "Wtęp do grafiki komputerowej" - 26

5 Prkład void Paint(void) { glclearcolor(,,,); glclear(gl_color_buffer_bit); glcolor3d(,,.5); gllinewidth(); glbegin(gl_line_loop); glverte2d(, ); glverte2d(.4, ); glverte2d(-.,.7); glend(); glfluh(); } 4 W. Słomińki, "Wtęp do grafiki komputerowej" - 26

6 Prkład 2 void Paint(void) { glclearcolor(,,,); glclear(gl_color_buffer_bit); glbegin(gl_triangles); glcolor3d(,,); glverte2d(, ); glcolor3d(,,); glverte2d(.4, ); glcolor3d(,,); glverte2d(-.,.7); glend(); glfluh(); } glshademodel(gl_smooth); Model cieniowania Shading model glshademodel(gl_flat); 42 W. Słomińki, "Wtęp do grafiki komputerowej" - 26

7 Układ wpółrędnch Układ wpółrędnch wiąan oberwatorem w punkcie (,,). ee coordinate M Aktualn układ wpółrędnch, w którm podajem wpółrędne wierchołków Pocątkowo M = I 43 W. Słomińki, "Wtęp do grafiki komputerowej" - 26

8 W. Słomińki, "Wtęp do grafiki komputerowej" Od wp. uŝtkownika do wp. urądenia M P [ ] 3, / / / w w w w w Wpółrędne obiektów, jak w glverte4d(,,,w ); glverte3d(,, ); w = glverte2d(, ); =, w = V

9 Rut protopadł = -n = -f (l, b, -n) (r, t, -n) f > n void glortho( GLdouble l, GLdouble r, GLdouble b, GLdouble t, GLdouble n, GLdouble f ); gluortho2d(l, r, b, t ) = glortho(l, r, b, t, -, ); Domślnie: gluortho2d(-,,-,); 45 W. Słomińki, "Wtęp do grafiki komputerowej" - 26

10 Perpektwa = -n = -f (l, b, -n) (r, t, -n) f > n > void glfrutum( GLdouble l, GLdouble r, GLdouble b, GLdouble t, GLdouble n, GLdouble f ); (r-l )/(t-b) tutaj: l = -r, b = -t void gluperpective( GLdouble ang, GLdouble apect, GLdouble n, GLdouble f ); 46 [, 8] W. Słomińki, "Wtęp do grafiki komputerowej" - 26

11 W. Słomińki, "Wtęp do grafiki komputerowej" Maciere projekcji glfrutum(l, r, b, t, n, f ); = n f fn n f n f b t b t b t n l r l r l r n P glortho(l, r, b, t, n, f ); = n f n f n f b t b t b t l r l r l r P

12 Viewport (W, H) Okno utworone pre tem window (, ) (, ) (+ width, + height) V glviewport( GLint, GLint, GLiei width, GLiei height ); - - Domślnie: glviewport(,,w,h); Wpółrędne normaliowane 48 W. Słomińki, "Wtęp do grafiki komputerowej" - 26

13 Zmiana połoŝenia oberwatora M O r + U r O r C r void glulookat( GLdouble e, GLdouble e, GLdouble e, GLdouble c, GLdouble c, GLdouble c, GLdouble U, GLdouble U, GLdouble U ) ; O r C r U r Obrót i Tranlacja M Kierunek nowej oi Y 49 W. Słomińki, "Wtęp do grafiki komputerowej" - 26

14 W. Słomińki, "Wtęp do grafiki komputerowej" Viewport Clipping Tlko ą rowane. Perpective diviion Modelview & Projection Podumowanie tranformacji = w PM w = / / / ˆ ˆ ˆ w w w w [ ] 3, ˆ ˆ ˆ h w 2 ˆ 2 ˆ + + = + + = = ˆ ˆ V

15 Krwa Béier topnia N r N N N = k k k k N k ( t) = B ( P, K, P ; t) = t ( t) P, t [,] N. Definicja odworowania: glmapf(gl_map_vertex_3,.,., Pdit, N+, P); glenable(gl_map_vertex_3); Punkt kontrolne: float P[] = {,,,...,,,...}; 2. Rowanie krwej int N_SEGS = 64; glbegin(gl_line_strip); for(i = ; i <= N_SEGS; i++ ) glevalcoordf((glfloat)i/n_segs); glend(); Pdit = & - & = ilość floatów na jeden punkt 5 W. Słomińki, "Wtęp do grafiki komputerowej" - 26

16 Prkład 3 52 tatic void render(void) { int i, NSEGS=64; glclearcolor(,,,); glclear(gl_color_buffer_bit GL_DEPTH_BUFFER_BIT); glmapf( GL_MAP_VERTEX_3,.,., 3, 4, P); glenable( GL_MAP_VERTEX_3 ); gllinewidth(2); glcolor3d(,,); glbegin(gl_line_strip); for(i=; i<=nsegs; i++) glevalcoordf((glfloat)i/nsegs); glend(); glpointsie(6); glcolor3d(,,); glbegin(gl_points); for(i = ; i < 4; i++) glverte3fv(p); glend(); gllinewidth(); glcolor3d(,,); glbegin( GL_LINES ); for(i = ; i < 4; i++) glverte3fv(p); glend(); glutswapbuffer(); } W. Słomińki, "Wtęp do grafiki komputerowej" - 26

17 NURBS topnia N. Definicja odworowania: GLUnurbObj* nobj = glunewnurbrenderer(); glunurbpropert(nobj, GLU_SAMPLING_TOLERANCE, 5.); Punkt kontrolne: GLfloat P[] = {,,,...,,,...}; Węł: GLfloat knot[] = {,..., }; Nknot = NPt + N Rowanie krwej glubegincurve(nobj); glunurbcurve(nobj, Nknot, knot, Pdit, P, NPt, GL_MAP_VERTEX_3); gluendcurve(nobj); 3. Zwalnianie pamięci gludeletenurbrenderer(nobj); Pdit = & - & = ilość floatów na jeden punkt W. Słomińki, "Wtęp do grafiki komputerowej" - 26

18 Prkład 4 tatic void render(void) { int i;... GLUnurbObj* nobj = glunewnurbrenderer(); glunurbpropert(nobj, GLU_SAMPLING_TOLERANCE, 5.); GLfloat knot[8] = {,,,,,,,}; gllinewidth(4); glcolor3d(,,); glubegincurve(nobj); glunurbcurve(nobj, NctrlPoint+Degree+, knot+degree-, 3, P, NctrlPoint, GL_MAP_VERTEX_3); gluendcurve(nobj); gludeletenurbrenderer(nobj);... glfluh(); } 54 W. Słomińki, "Wtęp do grafiki komputerowej" - 26

19 Tektur (Teture) Tektura to prepi mówiąc, jak wpełniać kolorem wbrane obar. Prkład: Zaada : wpełnij obar kolorem od (,,) do (,,) W. Słomińki, "Wtęp do grafiki komputerowej" - 26

20 Tektura -wmiarowa Odworowanie: [,] { r( ), g( ), b( ), α( ),...} f() Prkład (c.d.) r = g = b = f, α = Obraek tektur Mapowanie tektur (teture mapping) W. Słomińki, "Wtęp do grafiki komputerowej" - 26

21 Mapowanie tektur (teture mapping) Prpianie kaŝdemu punktowi obaru konkretnej wartości wpółrędnej tektur,. Wierchołek k : wpółrędne pretrenne ( k, k ), wpółrędne tektur ( k ) = = 2 =.9 pośrednie wartości : interpolacja liniowa pośrednie wartości : interpolacja liniowa Podtawowa metoda to interpolacja liniowa. Tak jet w OpenGL. =.2 =.9 57 = cont. W. Słomińki, "Wtęp do grafiki komputerowej" - 26

22 Mapowanie tektur (2) To jet krwa Beier. Pośrednie wartości = parametrowi krwej Fragment kodu OpenGL: int i, NSeg=64; float ; glbegin(gl_line_strip); for(i = ; i <= NSeg; i++) { = (GLfloat)i/NSeg; gltecoordf(); glevalcoordf(); } glend(); Utala wartość, jaka będie prpiana kaŝdemu nowemu wierchołkowi Twor now wierchołek o wpółrędnch odp. wartości parametru =. 58 W. Słomińki, "Wtęp do grafiki komputerowej" - 26

23 Mapowanie tektur (3) Wartości poa prediałem [, ]. Pred wliceniem wartości tektur ą amieniane na [, } 2 = 5 2 = 5 = - = 5 = - = = = = < > [, ] = 5 [,) wrap = GL_CLAMP wrap = GL_REPEAT glteparameterf(gl_texture_d, GL_TEXTURE_WRAP_S, wrap); 59 W. Słomińki, "Wtęp do grafiki komputerowej" - 26

24 Obraek tektur (teture image) f() r = g = b = f, α = Obraek tektur pikel W kaŝdm piklu RGBA np. 64 pikle To definiuje wór tektur, tak jak obraek piklow opiuje obra analogow Stąd inna definicja: Tektur, to obraki piklowe, którch pobieram informację, jak wpełniać kolorem wbrane obar. 6 W. Słomińki, "Wtęp do grafiki komputerowej" - 26

25 Tektur 2- i więcej wmiarowe t glteimaged(...) glteimage2d(...) W werji OpenGL.* tektur - i 2-wmiarowe. W werji 2. takŝe 3-wmiarowe (, t, r) W ogólnm prpadku wierchołek k : wpółrędne pretrenne ( k, k, k, w k ), wpółrędne tektur ( k, t k, r k, q k ) 6 W. Słomińki, "Wtęp do grafiki komputerowej" - 26

3 Przygotował: mgr inż. Maciej Lasota

3 Przygotował: mgr inż. Maciej Lasota Laboratorium nr 3 1/5 Grafika Komputerowa 3D Instrukcja laboratoryjna Temat: Rysowanie prymitywów 3 Przygotował: mgr inż. Maciej Lasota 1) Rysowanie prymitywów Podstawową rodziną funkcji wykorzystywanych

Bardziej szczegółowo

Zatem standardowe rysowanie prymitywów wygląda następująco:

Zatem standardowe rysowanie prymitywów wygląda następująco: Instrukcja laboratoryjna 10 Grafika komputerowa 3D Temat: Prymitywy Przygotował: dr inż. Grzegorz Łukawski, mgr inż. Maciej Lasota, mgr inż. Tomasz Michno 1 Wstęp teoretyczny Prymitywy proste figury geometryczne,

Bardziej szczegółowo

Elementarne obiekty geometryczne, bufory. Dorota Smorawa

Elementarne obiekty geometryczne, bufory. Dorota Smorawa Elementarne obiekty geometryczne, bufory Dorota Smorawa Elementarne obiekty Tworząc scenę 3D, od najprostszej, po najbardziej skomplikowaną, używamy obiektów złożonych, przede wszystkim podstawowych, elementarnych

Bardziej szczegółowo

Temat: Wprowadzenie do OpenGL i GLUT

Temat: Wprowadzenie do OpenGL i GLUT Instrukcja laboratoryjna 8 Grafika komputerowa 3D Temat: Wprowadzenie do OpenGL i GLUT Przygotował: dr inż. Grzegorz Łukawski, mgr inż. Maciej Lasota, mgr inż. Tomasz Michno 1 Wstęp teoretyczny OpenGL

Bardziej szczegółowo

Temat: Transformacje 3D

Temat: Transformacje 3D Instrukcja laboratoryjna 11 Grafika komputerowa 3D Temat: Transformacje 3D Przygotował: dr inż. Grzegorz Łukawski, mgr inż. Maciej Lasota, mgr inż. Tomasz Michno 1 Wstęp teoretyczny Bardzo często programując

Bardziej szczegółowo

OpenGL - charakterystyka

OpenGL - charakterystyka OpenGL - charakterystyka OpenGL jest interfejsem programowym aplikacji zestawem funkcji umożliwiających tworzenie interaktywnej grafiki 3D. Program oparty na OpenGL musi być pisany z zastosowaniem języka

Bardziej szczegółowo

Wprowadzenie do programowania z wykorzystaniem biblioteki OpenGL. Dorota Smorawa

Wprowadzenie do programowania z wykorzystaniem biblioteki OpenGL. Dorota Smorawa Wprowadzenie do programowania z wykorzystaniem biblioteki OpenGL Dorota Smorawa Pierwszy program Pierwszy program będzie składał się z trzech etapów: Funkcji rysującej scenę 3D, Inicjacji okna renderingu,

Bardziej szczegółowo

Prosty program- cpp. #include <GL/glut.h>

Prosty program- cpp. #include <GL/glut.h> Wizualizacje 3D Prosty program- cpp #include #include #include int main(int argc, char** argv) { glutinit(&argc, argv); glutinitdisplaymode( GLUT_DOUBLE GLUT_RGBA ); glutinitwindowsize(400,

Bardziej szczegółowo

Co to jest OpenGL? Oprogramowanie i wykorzystanie stacji roboczych. Wykład 5. OpenGL - Achitektura. OpenGL - zalety. olas@icis.pcz.

Co to jest OpenGL? Oprogramowanie i wykorzystanie stacji roboczych. Wykład 5. OpenGL - Achitektura. OpenGL - zalety. olas@icis.pcz. Co to jest OpenGL? Oprogramowanie i wykorzystanie stacji roboczych Wykład 5 Dr inż. Tomasz Olas olas@icis.pcz.pl OpenGL (Open Graphics Library) jest niskopoziomowa biblioteka graficzna (API - programowy

Bardziej szczegółowo

Studium podyplomowe. Programowanie w OpenGL. Michał Turek, AGH Kraków

Studium podyplomowe. Programowanie w OpenGL. Michał Turek, AGH Kraków Studium podyplomowe Programowanie w OpenGL Michał Turek, AGH Kraków Charakterystyka (I) OpenGL - (Open Graphics Library) Graficzna biblioteka 2D/3D Liczne porty biblioteki, w tym takŝe akcelerowane sprzętowo

Bardziej szczegółowo

Oprogramowanie i wykorzystanie stacji roboczych. Wykład 5

Oprogramowanie i wykorzystanie stacji roboczych. Wykład 5 Wykład 5 p. 1/? Oprogramowanie i wykorzystanie stacji roboczych Wykład 5 Dr inż. Tomasz Olas olas@icis.pcz.pl Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska Wykład 5 p. 2/? Co

Bardziej szczegółowo

Janusz Ganczarski. OpenGL Pierwszy program

Janusz Ganczarski. OpenGL Pierwszy program Janusz Ganczarski OpenGL Pierwszy program Spis treści Spis treści..................................... 1 1. Pierwszy program.............................. 1 1.1. Rysowanie sceny 3D...........................

Bardziej szczegółowo

Janusz Ganczarski. OpenGL Definiowanie sceny 3D

Janusz Ganczarski. OpenGL Definiowanie sceny 3D Janusz Ganczarski OpenGL Definiowanie sceny 3D Spis treści Spis treści..................................... 1 1. Definiowanie sceny 3D........................... 1 1.1. Obszar renderingu............................

Bardziej szczegółowo

Programowanie Równoległe wykład, 21.01.2013. CUDA, przykłady praktyczne 1. Maciej Matyka Instytut Fizyki Teoretycznej

Programowanie Równoległe wykład, 21.01.2013. CUDA, przykłady praktyczne 1. Maciej Matyka Instytut Fizyki Teoretycznej Programowanie Równoległe wykład, 21.01.2013 CUDA, przykłady praktyczne 1 Maciej Matyka Instytut Fizyki Teoretycznej Motywacja l CPU vs GPU (anims) Plan CUDA w praktyce Wykład 1: CUDA w praktyce l aplikacja

Bardziej szczegółowo

GRAFIKA CZASU RZECZYWISTEGO Wprowadzenie do OpenGL

GRAFIKA CZASU RZECZYWISTEGO Wprowadzenie do OpenGL GRAFIKA CZASU RZECZYWISTEGO Wprowadzenie do OpenGL Grafika komputerowa i wizualizacja, Bioinformatyka S1, II Rok OpenGL Open Graphics Library Jest to API pozwalające na renderowanie grafiki w czasie rzeczywistym,

Bardziej szczegółowo

GRAFIKA KOMPUTEROWA 7: Kolory i cieniowanie

GRAFIKA KOMPUTEROWA 7: Kolory i cieniowanie GRAFIKA KOMPUTEROWA 7: Kolory i cieniowanie http://galaxy.agh.edu.pl/~mhojny Prowadzący: dr inż. Hojny Marcin Akademia Górniczo-Hutnicza Mickiewicza 30 30-059 Krakow pawilon B5/p.406 tel. (+48)12 617 46

Bardziej szczegółowo

Bufor koloru cd. Czyszczenie bufora koloru glclearcolor( )

Bufor koloru cd. Czyszczenie bufora koloru glclearcolor( ) Wizualizacje 3D Bufor koloru Bufor koloru służy do przechowywania obrazu renderowanej sceny 3D. Typowo OpenGL stosuje dwa bufory koloru: przedni i tylny. Bieżąca scena znajduje się w przednim buforze i

Bardziej szczegółowo

Wizualizacja 3D. dr inż. Marcin Gabryel

Wizualizacja 3D. dr inż. Marcin Gabryel Wizualizacja 3D dr inż. Marcin Gabryel Modele braw CMYK (Cyan, Magenta, Yellow, black) RGB (Red, Green, Blue) HSV (Hue, Saturation, Value) RGB Model polega na sumowaniu sygnałów w poszczególnych kanałach.

Bardziej szczegółowo

Grafika komputerowa INSTRUKCJA DO LABORATORIUM 2: operacje przestrzenne oraz obsługa klawiatury i myszki

Grafika komputerowa INSTRUKCJA DO LABORATORIUM 2: operacje przestrzenne oraz obsługa klawiatury i myszki Grafika komputerowa INSTRUKCJA DO LABORATORIUM 2: operacje przestrzenne oraz obsługa klawiatury i myszki Strona 1 z 9 C E L Ć W I C Z E N I A Celem ćwiczenia jest zapoznanie się z podstawowymi operacjami

Bardziej szczegółowo

1 Wstęp teoretyczny. Temat: Manipulowanie przestrzenią. Grafika komputerowa 3D. Instrukcja laboratoryjna Układ współrzędnych

1 Wstęp teoretyczny. Temat: Manipulowanie przestrzenią. Grafika komputerowa 3D. Instrukcja laboratoryjna Układ współrzędnych Instrukcja laboratoryjna 9 Grafika komputerowa 3D Temat: Manipulowanie przestrzenią Przygotował: dr inż. Grzegorz Łukawski, mgr inż. Maciej Lasota, mgr inż. Tomasz Michno 1 Wstęp teoretyczny 1.1 Układ

Bardziej szczegółowo

Wprowadzenie do klas w C++ oraz biblioteki opengl

Wprowadzenie do klas w C++ oraz biblioteki opengl Wprowadzenie do klas w C++ oraz biblioteki opengl 1. Bibliotek opengl. W celu rozpoczęcia pracy z użyciem biblioteki opengl należy pobrać pliki archiwum glut- 3.7.6.zip ze strony: http://www.opengl.org/resources/libraries/glut/glut_downloads.php

Bardziej szczegółowo

OpenGL przezroczystość

OpenGL przezroczystość OpenGL przezroczystość W standardzie OpenGL efekty przezroczystości uzyskuje się poprzez zezwolenie na łączenie kolorów: Kolor piksela tworzy się na podstawie kolorów obiektu przesłanianego i przesłaniającego

Bardziej szczegółowo

OpenGL Zaawansowana grafika komputerowa

OpenGL Zaawansowana grafika komputerowa p. 1/63 OpenGL Zaawansowana grafika komputerowa p. 2/63 Czym jest OpenGL OpenGL można zdefiniować jako "programowy interfejs sprzętu graficznego". Jest to biblioteka przeznaczona do tworzenia trójwymiarowej

Bardziej szczegółowo

Ćwiczenie nr 1 Szkielet aplikacji wykorzystującej bibliotekę OpenGL dla środowiska Windows z wykorzystaniem Visual C++

Ćwiczenie nr 1 Szkielet aplikacji wykorzystującej bibliotekę OpenGL dla środowiska Windows z wykorzystaniem Visual C++ Terminy oddawania ćwiczeń: Ćwiczenie nr 1 Szkielet aplikacji wykorzystującej bibliotekę OpenGL dla środowiska Windows z wykorzystaniem Visual C++ Podstawowe zasady: Wszystkie wątki wykorzystują jeden OpenGL

Bardziej szczegółowo

GRAFIKA CZASU RZECZYWISTEGO Wstęp do programowania grafiki czasu rzeczywistego.

GRAFIKA CZASU RZECZYWISTEGO Wstęp do programowania grafiki czasu rzeczywistego. GRAFIKA CZASU RZECZYWISTEGO Wstęp do programowania grafiki czasu rzeczywistego. http://bazyluk.net/zpsb Grafika Komputerowa, Informatyka, I Rok PROGRAMOWANIE GRAFIKI KOMPUTEROWEJ CZASU RZECZYWISTEGO Grafika

Bardziej szczegółowo

OpenGL : Prymitywy, obsługa klawiatury

OpenGL : Prymitywy, obsługa klawiatury OpenGL :, obsługa klawiatury mgr inż. Michał Chwesiuk mgr inż. Tomasz Sergej inż. Patryk Piotrowski 1/23 w OpenGL 2/23 Prymityw - Points (GL_POINTS) 3/23 Prymityw - Lines (GL_LINES) 4/23 Prymityw - Lines

Bardziej szczegółowo

Laboratorium grafiki komputerowej i animacji. Ćwiczenie III - Biblioteka OpenGL - wprowadzenie, obiekty trójwymiarowe: punkty, linie, wielokąty

Laboratorium grafiki komputerowej i animacji. Ćwiczenie III - Biblioteka OpenGL - wprowadzenie, obiekty trójwymiarowe: punkty, linie, wielokąty Laboratorium grafiki komputerowej i animacji Ćwicenie III - Biblioteka OpenGL - wprowadenie, obiekty trójwymiarowe: punkty, linie, wielokąty Prygotowanie do ćwicenia: 1. Zaponać się ogólną charakterystyką

Bardziej szczegółowo

Grafika trójwymiarowa

Grafika trójwymiarowa Strona 1 Grafika 3D w systemie Android Wprowadzenie do OpenGL ES Podstawy rysowania Rzutowanie i kamera Klasa GLSurfaceView Algorytm rysowania Tekstury Strona 2 Grafika 3D w systemie Android W komputerach,

Bardziej szczegółowo

OpenGL. Silicon Graphics (IRIS GL stacje graficzne)

OpenGL. Silicon Graphics (IRIS GL stacje graficzne) OpenGL. Silicon Graphics (IRIS GL stacje graficzne) Biblioteka -przestrzeń 3D -rzutowanie -prymitywy graficzne -operacje na barwach HISTORIA 1992 - powstaje wersja 1.0 specyfikacji OpenGL przenośnej między

Bardziej szczegółowo

Oprogramowanie i wykorzystanie stacji roboczych. Wykład 6

Oprogramowanie i wykorzystanie stacji roboczych. Wykład 6 Wykład 6 p. 1/2 Oprogramowanie i wykorzystanie stacji roboczych Wykład 6 Dr inż. Tomasz Olas olas@icis.pcz.pl Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska Wektory normalne

Bardziej szczegółowo

Teksturowanie (ang. texture mapping)

Teksturowanie (ang. texture mapping) Teksturowanie (ang. texture mapping) Radosław Mantiuk Wydział Informatyki Zachodniopomorski Uniwersytet Technologiczny Tekstura Funkcja modyfikująca wygląd powierzchni. Ta funkcja może być reprezentowana

Bardziej szczegółowo

glwindowpos2d void DrawString (GLint x, GLint y, char *string) { glwindowpos2i (x,y); int len = strlen (string); for (int i = 0; i < len; i++)

glwindowpos2d void DrawString (GLint x, GLint y, char *string) { glwindowpos2i (x,y); int len = strlen (string); for (int i = 0; i < len; i++) Wizualizacja 3D glwindowpos2d Funkcja wprowadzona w wersji 1.4 biblioteki OpenGL Funkcja pozwala na ustawienie rastra względem okna, a nie względem macierzy modelu Stosowana podczas pisania tekstów, np.:

Bardziej szczegółowo

8 Przygotował: mgr inż. Maciej Lasota

8 Przygotował: mgr inż. Maciej Lasota Laboratorium nr 8 1/6 Grafika Komputerowa Instrukcja laboratoryjna Temat: Listy wyświetlania i tablice wierzchołków 8 Przygotował: mgr inż. Maciej Lasota 1) Listy wyświetlania Listy wyświetlania (ang.

Bardziej szczegółowo

2 Przygotował: mgr inż. Maciej Lasota

2 Przygotował: mgr inż. Maciej Lasota Laboratorium nr 2 1/6 Grafika Komputerowa 3D Instrukcja laboratoryjna Temat: Manipulowanie przestrzenią 2 Przygotował: mgr inż. Maciej Lasota 1) Manipulowanie przestrzenią Istnieją dwa typy układów współrzędnych:

Bardziej szczegółowo

OpenGL - maszyna stanu. Oprogramowanie i wykorzystanie stacji roboczych. Wykład 7. Grupy atrybutów. Zmienne stanu.

OpenGL - maszyna stanu. Oprogramowanie i wykorzystanie stacji roboczych. Wykład 7. Grupy atrybutów. Zmienne stanu. OpenGL - maszyna stanu Oprogramowanie i wykorzystanie stacji roboczych Wykład 7 Dr inż. Tomasz Olas olas@icis.pcz.pl Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska OpenGL posiada

Bardziej szczegółowo

Zaawansowane programowanie w C++

Zaawansowane programowanie w C++ Zaawansowane programowanie w C++ Micha l Tanaś, PhD Adam Mickiewicz University, Faculty of Physics http://www.amu.edu.pl/~mtanas Michal.Tanas@amu.edu.pl Wykonanie klasycznego programu System operacyjny

Bardziej szczegółowo

Rzutowanie DOROTA SMORAWA

Rzutowanie DOROTA SMORAWA Rzutowanie DOROTA SMORAWA Rzutowanie Rzutowanie jest operacja polegająca na tym, aby odpowiednie piksele na płaskim ekranie były wyświetlane w taki sposób, by sprawiać wrażenie trójwymiarowej głębi (przestrzeni

Bardziej szczegółowo

Mapowanie tekstur Mip-mapy (level of detail) Filtrowanie Multiteksturowanie

Mapowanie tekstur Mip-mapy (level of detail) Filtrowanie Multiteksturowanie Mapowanie tekstur Mip-mapy (level of detail) Filtrowanie Multiteksturowanie Korekcja perspektywy http://en.wikipedia.org/wiki/file:perspective_correct_texture_mapping.jpg GL_TEXTURE_MIN_FILTER Zmniejszanie

Bardziej szczegółowo

PRZEKSZTAŁCENIA W PRZESTRZENI 3D czyli matematyczny zawrót głowy. Część2 :Rodzaje układów współrzędnych. Obroty i Skalowanie

PRZEKSZTAŁCENIA W PRZESTRZENI 3D czyli matematyczny zawrót głowy. Część2 :Rodzaje układów współrzędnych. Obroty i Skalowanie PRZEKSZTAŁCENIA W PRZESTRZENI 3D cli matematcn awrót głow Cęść :Rodaje układów wpółrędnch. Obrot i Skalowanie Witam wtkich agorałch grafików. Tak jak piałem w popredniej cęści nach matematcnch roważań,

Bardziej szczegółowo

Programowanie, część III

Programowanie, część III 9 kwietnia 2010 Biblioteki i podsystemy graficzne Biblioteki graficzne (ang. graphics library) Są potrzebne, aby można było programować grafikę w C++, ponieważ (niestety) we współczesnych systemach komputerowych

Bardziej szczegółowo

wykład II uzupełnienie notatek: dr Jerzy Białkowski Programowanie C/C++ Język C - funkcje, tablice i wskaźniki wykład II dr Jarosław Mederski Spis

wykład II uzupełnienie notatek: dr Jerzy Białkowski Programowanie C/C++ Język C - funkcje, tablice i wskaźniki wykład II dr Jarosław Mederski Spis i cz. 2 Programowanie uzupełnienie notatek: dr Jerzy Białkowski 1 i cz. 2 2 i cz. 2 3 Funkcje i cz. 2 typ nazwa ( lista-parametrów ) { deklaracje instrukcje } i cz. 2 typ nazwa ( lista-parametrów ) { deklaracje

Bardziej szczegółowo

Wstęp do Programowania, laboratorium 02

Wstęp do Programowania, laboratorium 02 Wstęp do Programowania, laboratorium 02 Zadanie 1. Napisać program pobierający dwie liczby całkowite i wypisujący na ekran największą z nich. Zadanie 2. Napisać program pobierający trzy liczby całkowite

Bardziej szczegółowo

6 Przygotował: mgr inż. Maciej Lasota

6 Przygotował: mgr inż. Maciej Lasota Laboratorium nr 6 1/7 Grafika Komputerowa 3D Instrukcja laboratoryjna Temat: Materiały i oświetlenie 6 Przygotował: mgr inż. Maciej Lasota 1) Wprowadzenie Specyfikacja biblioteki OpenGL rozróżnia trzy

Bardziej szczegółowo

Procesy. Systemy Operacyjne 2 laboratorium. Mateusz Hołenko. 9 października 2011

Procesy. Systemy Operacyjne 2 laboratorium. Mateusz Hołenko. 9 października 2011 Procesy Systemy Operacyjne 2 laboratorium Mateusz Hołenko 9 października 2011 Plan zajęć 1 Procesy w systemie Linux proces procesy macierzyste i potomne procesy zombie i sieroty 2 Funkcje systemowe pobieranie

Bardziej szczegółowo

Część 4 życie programu

Część 4 życie programu 1. Struktura programu c++ Ogólna struktura programu w C++ składa się z kilku części: część 1 część 2 część 3 część 4 #include int main(int argc, char *argv[]) /* instrukcje funkcji main */ Część

Bardziej szczegółowo

Programowanie procesorów graficznych NVIDIA (rdzenie CUDA) Wykład nr 1

Programowanie procesorów graficznych NVIDIA (rdzenie CUDA) Wykład nr 1 Programowanie procesorów graficznych NVIDIA (rdzenie CUDA) Wykład nr 1 Wprowadzenie Procesory graficzne GPU (Graphics Processing Units) stosowane są w kartach graficznych do przetwarzania grafiki komputerowej

Bardziej szczegółowo

Grafika 3D OpenGL część II

Grafika 3D OpenGL część II #include #include #include float kat=0.0f; void renderujscene(void) { glclearcolor(1.0f,1.0f,1.0f,1.0f); glclear(gl_color_buffer_bit); glpushmatrix(); glrotatef(kat,0,0,1);

Bardziej szczegółowo

OpenGL - tekstury Mapowanie tekstur

OpenGL - tekstury Mapowanie tekstur OpenGL - tekstury Mapowanie tekstur Mirosław Głowacki 1 1 Akademia Górniczo-Hutnicza im. Stanisława Staszica w Krakowie Wydział Inżynierii Metali i Informatyki Stosowanej Katedra Informatyki Stosowanej

Bardziej szczegółowo

OpenGL oświetlenie i tekstury. OpenGL oświetlenie. Bogdan Kreczmer.

OpenGL oświetlenie i tekstury. OpenGL oświetlenie. Bogdan Kreczmer. OpenGL oświetlenie Bogdan Kreczmer bogdan.kreczmer@pwr.wroc.pl Katedra Cybernetyki i Robotyki Wydziału Elektroniki Politechnika Wrocławska Kurs: Copyright c 2018 Bogdan Kreczmer Niniejszy dokument zawiera

Bardziej szczegółowo

Tekstury. Dorota Smorawa

Tekstury. Dorota Smorawa Tekstury Dorota Smorawa Definiowanie obiektów tekstur Dodawanie tekstur należy rozpocząć od zdefiniowania nazw tekstur ładowanych do bufora. Dla ułatwienia pracy z teksturami możemy przygotować obiekty

Bardziej szczegółowo

Teksturowanie. Oprogramowanie i wykorzystanie stacji roboczych. Wykład 10. Tekstury. Proces nakładania tekstury.

Teksturowanie. Oprogramowanie i wykorzystanie stacji roboczych. Wykład 10. Tekstury. Proces nakładania tekstury. Teksturowanie Oprogramowanie i wykorzystanie stacji roboczych Wykład 10 Dr inż. Tomasz Olas olas@icis.pcz.pl Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska Teksturowanie jest

Bardziej szczegółowo

Specyfikacja OpenGL Podstawy programowania grafiki komputerowej*

Specyfikacja OpenGL Podstawy programowania grafiki komputerowej* Specyfikacja OpenGL Podstawy programowania grafiki komputerowej* Mirosław Głowacki 1,2 1 Akademia Górniczo-Hutnicza im. Stanisława Staszica w Ktrakowie Wydział Inżynierii Metali i Informatyki Stosowanej

Bardziej szczegółowo

OpenGL oświetlenie. Bogdan Kreczmer. Katedra Cybernetyki i Robotyki Wydziału Elektroniki Politechnika Wrocławska

OpenGL oświetlenie. Bogdan Kreczmer. Katedra Cybernetyki i Robotyki Wydziału Elektroniki Politechnika Wrocławska OpenGL oświetlenie Bogdan Kreczmer bogdan.kreczmer@pwr.wroc.pl Katedra Cybernetyki i Robotyki Wydziału Elektroniki Politechnika Wrocławska Kurs: Copyright c 2017 Bogdan Kreczmer Niniejszy dokument zawiera

Bardziej szczegółowo

Modelowanie komputerowe dynamiki płynów Maciej Matyka Instytut Fizyki Teoretycznej

Modelowanie komputerowe dynamiki płynów Maciej Matyka Instytut Fizyki Teoretycznej Modelowanie komputerowe dynamiki płynów 2011-12-05 Maciej Matyka Instytut Fizyki Teoretycznej Hydrodynamika http://www.realflow.com/ Konkursy na wydziale fizyki Lata 1999-2011 Oprogramowanie popularyzujące

Bardziej szczegółowo

Wykład 12. Wprowadzenie do malarstwa, str. 1 OpenGL Open Graphics Library. OpenGL składa się z

Wykład 12. Wprowadzenie do malarstwa, str. 1 OpenGL Open Graphics Library. OpenGL składa się z Wykład 12. Wprowadzenie do malarstwa, str. 1 OpenGL Open Graphics Library OpenGL składa się z teoretycznego modelu grafiki 3D, zestawu typów i funkcji obsługujących różne cechy tego modelu. WjęzykuC: pliki

Bardziej szczegółowo

OpenGL model oświetlenia

OpenGL model oświetlenia Składowe światła OpenGL Światło otaczające (ambient) OpenGL model oświetlenia Nie pochodzi z żadnego określonego kierunku. Powoduje równomierne oświetlenie obiektów na wszystkich powierzchniach i wszystkich

Bardziej szczegółowo

// Liczy srednie w wierszach i kolumnach tablicy "dwuwymiarowej" // Elementy tablicy są generowane losowo #include <stdio.h> #include <stdlib.

// Liczy srednie w wierszach i kolumnach tablicy dwuwymiarowej // Elementy tablicy są generowane losowo #include <stdio.h> #include <stdlib. Wykład 10 Przykłady różnych funkcji (cd) - przetwarzanie tablicy tablic (tablicy "dwuwymiarowej") - sortowanie przez "selekcję" Dynamiczna alokacja pamięci 1 // Liczy srednie w wierszach i kolumnach tablicy

Bardziej szczegółowo

GRAFIKA KOMPUTEROWA 8: Konwersja i mieszanie kolorów

GRAFIKA KOMPUTEROWA 8: Konwersja i mieszanie kolorów GRAFIKA KOMPUTEROWA 8: Konwersja i mieszanie kolorów http://galaxy.agh.edu.pl/~mhojny Prowadzący: dr inż. Hojny Marcin Akademia Górniczo-Hutnicza Mickiewicza 30 30-059 Krakow pawilon B5/p.406 tel. (+48)12

Bardziej szczegółowo

KLASA UCZEN Uczen imię, nazwisko, średnia konstruktor konstruktor Ustaw Wyswietl Lepszy Promowany

KLASA UCZEN Uczen imię, nazwisko, średnia konstruktor konstruktor Ustaw Wyswietl Lepszy Promowany KLASA UCZEN Napisz deklarację klasy Uczen, w której przechowujemy następujące informacje o uczniu: imię, nazwisko, średnia (pola prywatne), poza tym klasa zawiera metody: konstruktor bezparametrowy (nie

Bardziej szczegółowo

Mobilne aplikacje multimedialne. OpenGL

Mobilne aplikacje multimedialne. OpenGL Mobilne aplikacje multimedialne OpenGL Marek Kulawiak Katedra Systemów Geoinformatycznych Wydział Elektroniki, Telekomunikacji i Informatyki Politechniki Gdańskiej Open Graphics Library API do tworzenia

Bardziej szczegółowo

System graficzny. Potok graficzny 3D. Scena 3D Zbiór trójwymiarowych danych wejściowych wykorzystywanych do wygenerowania obrazu wyjściowego 2D.

System graficzny. Potok graficzny 3D. Scena 3D Zbiór trójwymiarowych danych wejściowych wykorzystywanych do wygenerowania obrazu wyjściowego 2D. System graficzny scena 3D algorytm graficzny obraz 2D Potok graficzny 3D Radosław Mantiuk Dane wejściowe Algorytm tworzący obraz wyjściowy na podstawie sceny 3D Dane wyjściowe Wydział Informatyki Zachodniopomorski

Bardziej szczegółowo

OpenGL transformacje przestrzenne

OpenGL transformacje przestrzenne OpenGL trnsformcje przestrzenne Kżdy zdefiniowny obiekt sceny, znim pojwi się n ekrnie monitor, poddwny jest trzem podstwowym trnsformcjom: Obserwcji Modelowni Projekcji Projekcj określ frgment przestrzeni,

Bardziej szczegółowo

I - Microsoft Visual Studio C++

I - Microsoft Visual Studio C++ I - Microsoft Visual Studio C++ 1. Nowy projekt z Menu wybieramy File -> New -> Projekt -> Win32 Console Application w okienku Name: podajemy nazwę projektu w polu Location: wybieramy miejsce zapisu i

Bardziej szczegółowo

Laboratorium Grafiki Komputerowej i Animacji. Ćwiczenie III. Biblioteka OpenGL - wprowadzenie, obiekty trójwymiarowe: punkty, linie, wielokąty

Laboratorium Grafiki Komputerowej i Animacji. Ćwiczenie III. Biblioteka OpenGL - wprowadzenie, obiekty trójwymiarowe: punkty, linie, wielokąty Laboratorium Grafiki Komputerowej i Animacji Ćwiczenie III Biblioteka OpenGL - wprowadzenie, obiekty trójwymiarowe: punkty, linie, wielokąty Sławomir Samolej Rzeszów, 1999 1. Wprowadzenie OpenGL nie jest

Bardziej szczegółowo

KLASA UCZEN Uczen imię, nazwisko, średnia konstruktor konstruktor Ustaw Wyswietl Lepszy Promowany

KLASA UCZEN Uczen imię, nazwisko, średnia konstruktor konstruktor Ustaw Wyswietl Lepszy Promowany KLASA UCZEN Napisz deklarację klasy Uczen, w której przechowujemy następujące informacje o uczniu: imię, nazwisko, średnia (pola prywatne), poza tym klasa zawiera metody: konstruktor bezparametrowy (nie

Bardziej szczegółowo

Światło. W OpenGL można rozróżnić 3 rodzaje światła

Światło. W OpenGL można rozróżnić 3 rodzaje światła Wizualizacja 3D Światło W OpenGL można rozróżnić 3 rodzaje światła Światło otaczające (ambient light) równomiernie oświetla wszystkie elementy sceny, nie pochodzi z żadnego konkretnego kierunku Światło

Bardziej szczegółowo

Programowanie proceduralne INP001210WL rok akademicki 2015/16 semestr letni. Wykład 6. Karol Tarnowski A-1 p.

Programowanie proceduralne INP001210WL rok akademicki 2015/16 semestr letni. Wykład 6. Karol Tarnowski A-1 p. Programowanie proceduralne INP001210WL rok akademicki 2015/16 semestr letni Wykład 6 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411b Plan wykładu Operacje wejścia-wyjścia Dostęp do plików Struktury

Bardziej szczegółowo

Argumenty wywołania programu, operacje na plikach

Argumenty wywołania programu, operacje na plikach Temat zajęć: Argumenty wywołania programu, operacje na plikach Autor: mgr inż. Sławomir Samolej Zagadnienie 1. (Zmienne statyczne) W języku C można decydować o sposobie przechowywania zmiennych. Decydują

Bardziej szczegółowo

Potok graficzny i shadery. Hubert Rutkowski

Potok graficzny i shadery. Hubert Rutkowski Potok graficzny i shadery Hubert Rutkowski 1. Coś o mnie Zakład Technologii Gier Uniwerytetu Jagiellońskiego 2. Potok graficzny jak w OpenGL Cry Engine 3 (zródło: CryTek) Vertex specification

Bardziej szczegółowo

ISO/ANSI C - funkcje. Funkcje. ISO/ANSI C - funkcje. ISO/ANSI C - funkcje. ISO/ANSI C - funkcje. ISO/ANSI C - funkcje

ISO/ANSI C - funkcje. Funkcje. ISO/ANSI C - funkcje. ISO/ANSI C - funkcje. ISO/ANSI C - funkcje. ISO/ANSI C - funkcje Funkcje (podprogramy) Mianem funkcji określa się fragment kodu, który może być wykonywany wielokrotnie z różnych miejsc programu. Ogólny zapis: typ nazwa(argumenty) ciało funkcji typ określa typ danych

Bardziej szczegółowo

Biblioteka OpenGL: Wprowadzenie

Biblioteka OpenGL: Wprowadzenie Biblioteka OpenGL: Wprowadzenie Radosław Mantiuk Wydział Informatyki Zachodniopomorski Uniwersytet Technologiczny w Szczecinie OpenGL - Koncepcja i architektura Aplikacja odwołuje się poprzez funkcje API

Bardziej szczegółowo

Laboratorium 1. Część I. Podstawy biblioteki graficznej OpenGL.

Laboratorium 1. Część I. Podstawy biblioteki graficznej OpenGL. Laboratorium 1 Część I Podstawy biblioteki graficznej OpenGL. I. Konfiguracja środowiska 1. Ściągamy bibliotekę freeglut i rozpakujemy do głównego folderu dysku systemowego np. C:\freeglut 2. Uruchamiamy

Bardziej szczegółowo

Temat: Dynamiczne przydzielanie i zwalnianie pamięci. Struktura listy operacje wstawiania, wyszukiwania oraz usuwania danych.

Temat: Dynamiczne przydzielanie i zwalnianie pamięci. Struktura listy operacje wstawiania, wyszukiwania oraz usuwania danych. Temat: Dynamiczne przydzielanie i zwalnianie pamięci. Struktura listy operacje wstawiania, wyszukiwania oraz usuwania danych. 1. Rodzaje pamięci używanej w programach Pamięć komputera, dostępna dla programu,

Bardziej szczegółowo

x szereg(x)

x szereg(x) Wstęp do Programowania, laboratorium 09 Zadanie 1. Zrobić program liczący wartość funkcji sin(x) przy pomocy rozwinięcia w szereg. Zakres wartości x (od, do) oraz liczba przedziałów podawane będą jako

Bardziej szczegółowo

Wykład 12. Wprowadzenie do malarstwa, str. 1 OpenGL Open Graphics Library. OpenGL składa się z

Wykład 12. Wprowadzenie do malarstwa, str. 1 OpenGL Open Graphics Library. OpenGL składa się z Wykład 12. Wprowadzenie do malarstwa, str. 1 OpenGL Open Graphics Library OpenGL składa się z teoretycznego modelu grafiki 3D, zestawu typów i funkcji obsługujących różne cechy tego modelu. Funkcje OpenGL

Bardziej szczegółowo

Programowanie w środowiskach RAD Qt i C++

Programowanie w środowiskach RAD Qt i C++ Programowanie w środowiskach RAD Qt i C++ Roman Simiński roman.siminski@us.edu.pl www.siminskionline.pl Wprowadzenie do programowania w języku C++ z wykorzystaniem biblioteki Qt Qt i QtCreator Aktualnie

Bardziej szczegółowo

Programowanie II. Lista 3. Modyfikatory dostępu plik TKLientBanku.h

Programowanie II. Lista 3. Modyfikatory dostępu plik TKLientBanku.h Programowanie II Lista 3 Modyfikatory dostępu plik TKLientBanku.h plik z funkcją main Przyjaźń Dziedziczenie Dziedziczenie to nic innego jak definiowanie nowych klas w oparciu o już istniejące. Jest to

Bardziej szczegółowo

dr inż. Jacek Dąbrowski, KSG

dr inż. Jacek Dąbrowski, KSG dr inż. Jacek Dąbrowski, KSG jacek.dabrowski@eti.pg.gda.pl Technologie PHIGS, Iris GL OpenGL, DirectX, OpenGL OpenGL OpenGL ES WebGL OpenCL OGL 1.0: 1992 DirectX:1995, GLIDE: 1996 OGL 1.1-1.5: 1997-2002

Bardziej szczegółowo

OpenGL Światło (cieniowanie)

OpenGL Światło (cieniowanie) OpenGL Światło (cieniowanie) 1. Oświetlenie włączanie/wyłączanie glenable(gl_lighting); - włączenie mechanizmu oświetlenia gldisable(gl_lighting); - wyłączenie mechanizmu oświetlenia glenable(gl_light0);

Bardziej szczegółowo

Laboratorium nr 12. Temat: Struktury, klasy. Zakres laboratorium:

Laboratorium nr 12. Temat: Struktury, klasy. Zakres laboratorium: Zakres laboratorium: definiowanie struktur terminologia obiektowa definiowanie klas funkcje składowe klas programy złożone z wielu plików zadania laboratoryjne Laboratorium nr 12 Temat: Struktury, klasy.

Bardziej szczegółowo

Grafika Komputerowa Wykład 6. Teksturowanie. mgr inż. Michał Chwesiuk 1/23

Grafika Komputerowa Wykład 6. Teksturowanie. mgr inż. Michał Chwesiuk 1/23 Wykład 6 mgr inż. 1/23 jest to technika w grafice komputerowej, której celem jest zwiększenie szczegółowości renderowanych powierzchni za pomocą tekstur. jest to pewna funkcja (najczęściej w formie bitmapy)

Bardziej szczegółowo

GRUPY SYMETRII Symetria kryształu

GRUPY SYMETRII Symetria kryształu GRUPY SYMETRII Smetria krstału Zamknięte (punktowe) operacje smetrii (minimum jeden punkt prestreni nie porusa się wskutek astosowania amkniętej operacji smetrii): Obrot i obrot inwersjne; Inwersja (smetria

Bardziej szczegółowo

Plan wykładu. Akcelerator 3D Potok graficzny

Plan wykładu. Akcelerator 3D Potok graficzny Plan wykładu Akcelerator 3D Potok graficzny Akcelerator 3D W 1996 r. opracowana została specjalna karta rozszerzeń o nazwie marketingowej Voodoo, którą z racji wspomagania procesu generowania grafiki 3D

Bardziej szczegółowo

Grafika Komputerowa, Informatyka, I Rok

Grafika Komputerowa, Informatyka, I Rok SYNTEZA GRAFIKI 3D Grafika realistyczna i czasu rzeczywistego. Wstęp do programowania grafiki 3D z użyciem OpenGL. Transformacje geometryczne. Grafika Komputerowa, Informatyka, I Rok Synteza grafiki 3D

Bardziej szczegółowo

OpenGL i Qt. Bogdan Kreczmer. Katedra Cybernetyki i Robotyki Wydziału Elektroniki Politechnika Wrocławska

OpenGL i Qt. Bogdan Kreczmer. Katedra Cybernetyki i Robotyki Wydziału Elektroniki Politechnika Wrocławska w Qt i Qt Bogdan Kreczmer bogdan.kreczmer@pwr.wroc.pl Katedra Cybernetyki i Robotyki Wydziału Elektroniki Politechnika Wrocławska Kurs: Copyright c 2019 Bogdan Kreczmer Niniejszy dokument zawiera materiały

Bardziej szczegółowo

Składnia C++ Programowanie Obiektowe Mateusz Cicheński

Składnia C++ Programowanie Obiektowe Mateusz Cicheński Składnia C++ Programowanie Obiektowe Mateusz Cicheński Klasy i modyfikatory dostępu Przesłanianie metod Polimorfizm Wskaźniki Metody wirtualne Metody abstrakcyjne i interfejsy Przeciążanie operatorów Słowo

Bardziej szczegółowo

Programowanie warstwy wizualnej gry

Programowanie warstwy wizualnej gry Programowanie warstwy wizualnej gry Krzysztof Gdawiec Instytut Informatyki Uniwersytet Śląski OpenGL (Open Graphics Library) jest wieloplatformową biblioteką pozwalającą na niskopoziomowy dostęp do karty

Bardziej szczegółowo

Informatyka. Wy-08 Klasy. mgr inż. Krzysztof Kołodziejczyk

Informatyka. Wy-08 Klasy. mgr inż. Krzysztof Kołodziejczyk Informatyka Wy-08 Klasy mgr inż. Krzysztof Kołodziejczyk krzysztof.m.kolodziejczyk@pwr.edu.pl 17.04.2019 Strona kursu http://w12.pwr.wroc.pl/inf/ Konsultacje Piątek 13:00 C2/111a Konspekt 1 Struktura a

Bardziej szczegółowo

OpenGL teksturowanie

OpenGL teksturowanie OpenGL teksturowanie Teksturowanie polega na pokrywaniu wielokątów obrazami (plikami graficznymi) Umożliwia znaczące zwiększenie realizmu sceny przy niewielkim zwiększeniu nakładu obliczeniowego Rozwój

Bardziej szczegółowo

Programowanie obiektowe i zdarzeniowe

Programowanie obiektowe i zdarzeniowe Programowanie obiektowe i zdarzeniowe wkład 2 klas i obiekt namespace ConsoleApplication1 // współrzędne punktu int, ; Jak zdefiniować w programie punkt? = 3; = 2; Może tak? // wpisanie informacji Console.WriteLine("

Bardziej szczegółowo

Bartosz Bazyluk DEFINIOWANIE GEOMETRII Sposoby opisu geometrii brył w OpenGL. Grafika Komputerowa, Informatyka, I Rok

Bartosz Bazyluk DEFINIOWANIE GEOMETRII Sposoby opisu geometrii brył w OpenGL.   Grafika Komputerowa, Informatyka, I Rok Bartos Baluk DEFINIOWANIE GEOMETRII Sposob opisu geometrii brł w OpenGL. http://baluk.net/psb Grafika Komputerowa, Informatka, I Rok Renderowanie geometrii Wierchołki Pretwaranie wierchołków Łącenie w

Bardziej szczegółowo

SYSTEMY CZASU RZECZYWISTEGO - VxWorks

SYSTEMY CZASU RZECZYWISTEGO - VxWorks WZAJEMNE WYKLUCZANIE Wiele metod. Np. wyłączanie przerwań: funkcja() //... Int blokada = intlock(); // Obszar krytyczny, któremu nie możemy przerwać intunlock(blokada); wyłączanie wywłaszczania: funkcja()

Bardziej szczegółowo

GRK 4. dr Wojciech Palubicki

GRK 4. dr Wojciech Palubicki GRK 4 dr Wojciech Palubicki Uproszczony Potok Graficzny (Rendering) Model Matrix View Matrix Projection Matrix Viewport Transform Object Space World Space View Space Clip Space Screen Space Projection

Bardziej szczegółowo

PROGRAMOWANIE SYSTEMÓW CZASU RZECZYWISTEGO

PROGRAMOWANIE SYSTEMÓW CZASU RZECZYWISTEGO PROGRAMOWANIE SYSTEMÓW CZASU RZECZYWISTEGO LABORATORIUM Temat: QNX Neutrino Interrupts Mariusz Rudnicki 2016 Wstęp W QNX Neutrino wszystkie przerwania sprzętowe przechwytywane są przez jądro systemu. Obsługę

Bardziej szczegółowo

Przekształcenia geometryczne. Dorota Smorawa

Przekształcenia geometryczne. Dorota Smorawa Przekształcenia geometryczne Dorota Smorawa Przekształcenia geometryczne Na poprzednich laboratoriach już dowiedzieliśmy się, na czym polegają podstawowe przekształcenia geometryczne. Trzy podstawowe przekształcenia

Bardziej szczegółowo

Wykład VII. Programowanie. dr inż. Janusz Słupik. Gliwice, 2014. Wydział Matematyki Stosowanej Politechniki Śląskiej. c Copyright 2014 Janusz Słupik

Wykład VII. Programowanie. dr inż. Janusz Słupik. Gliwice, 2014. Wydział Matematyki Stosowanej Politechniki Śląskiej. c Copyright 2014 Janusz Słupik Wykład VII Wydział Matematyki Stosowanej Politechniki Śląskiej Gliwice, 2014 c Copyright 2014 Janusz Słupik Kompilacja Kompilator C program do tłumaczenia kodu źródłowego na język maszynowy. Preprocesor

Bardziej szczegółowo

1. Wartość, jaką odczytuje się z obszaru przydzielonego obiektowi to: a) I - wartość b) definicja obiektu c) typ oboektu d) p - wartość

1. Wartość, jaką odczytuje się z obszaru przydzielonego obiektowi to: a) I - wartość b) definicja obiektu c) typ oboektu d) p - wartość 1. Wartość, jaką odczytuje się z obszaru przydzielonego obiektowi to: a) I - wartość b) definicja obiektu c) typ oboektu d) p - wartość 2. Poprawna definicja wskażnika b to: a) float *a, **b = &a; b) float

Bardziej szczegółowo

Pochodna kierunkowa i gradient Równania parametryczne prostej przechodzącej przez punkt i skierowanej wzdłuż jednostkowego wektora mają postać:

Pochodna kierunkowa i gradient Równania parametryczne prostej przechodzącej przez punkt i skierowanej wzdłuż jednostkowego wektora mają postać: ochodna kierunkowa i gradient Równania parametrcne prostej prechodącej pre punkt i skierowanej wdłuż jednostkowego wektora mają postać: Oblicam pochodną kierunkową u ( u, u ) 1 + su + su 1 (, ) d d d ˆ

Bardziej szczegółowo

OpenGL Światło (cieniowanie)

OpenGL Światło (cieniowanie) OpenGL Światło (cieniowanie) 1. Oświetlenie włączanie/wyłączanie glenable(gl_lighting); - włączenie mechanizmu oświetlenia gldisable(gl_lighting); - wyłączenie mechanizmu oświetlenia glenable(gl_light0);

Bardziej szczegółowo

Programowanie. programowania. Klasa 3 Lekcja 9 PASCAL & C++

Programowanie. programowania. Klasa 3 Lekcja 9 PASCAL & C++ Programowanie Wstęp p do programowania Klasa 3 Lekcja 9 PASCAL & C++ Język programowania Do przedstawiania algorytmów w postaci programów służą języki programowania. Tylko algorytm zapisany w postaci programu

Bardziej szczegółowo