OpenGL - Open Graphics Library. Programowanie grafiki komputerowej. OpenGL 3.0. OpenGL - Architektura (1)
|
|
- Łukasz Madej
- 8 lat temu
- Przeglądów:
Transkrypt
1 OpenGL - Open Graphics Library Programowanie grafiki komputerowej Rados$aw Mantiuk Wydzia$ Informatyki Zachodniopomorski Uniwersytet Technologiczny! OpenGL: architektura systemu do programowania grafiki komputerowej (programowanie grafiki -> synteza obrazów)! Wspomaganie sprz!towe (system graficzny czasu rzeczywistego).! Bazuje na specyfikacji (nie implementacji).! Maszyna stanu (ang. rendering state machine).! Rozszerzalno"#.! Wieloplatformowo"#.! Wiele typów danych (np. sta$opozycyjne i zmiennoprzecinkowe).! Mo%liwo"# po$&czenia z ró%nymi j!zykami.! 1993: pierwsza wersja OpenGL 1.0 (== IRIX GL 5.0) w 1993 roku (IRIX GL ).! 2001: OpenGL1.4, vertex shader (programowalo"# operacji na wierzcho$kach).! 2003: OpenGL 1.5, fragment shader (oprogramowalno"# operacji na fragmentach).! Standard - OpenGL Khronos Group (ARB (Architecture Review Board), 3Dlabs, Apple, ATI, Dell Computer, IBM, Intel, NVIDIA, SGI, and Sun Microsystems).! Implementowana przez producentów kart graficznych.! Dost!pna na wi!kszo"ci platform sprz!towych i programowych (OpenGL ES).! Rozszerzalna (ang. OpenGL extensions). OpenGL 3.0! Shader model 4.0! geometry shader: per primitive programability! texture array! compact floating point textures (HDR)! FBO! depth-peeling (przezroczysto"#)! color space conversions (support for srgb) Przysz$o"# OpenGL: programowanie tessallacji (np. w LOD), CPU bed& generowa$y z$o%one instrukcje steruj&ce GPU (glcalllist), Eliminacja selektorów. Lepsze po$&czenie z shaderami (GLSL). OpenGL - Architektura (1) Aplikacja odwo!uje si" poprzez funkcje API OpenGL bezpo#rednio do karty graficznej (z pomini"ciem systemu operacyjnego). Implementacja software'owa - wszystkie funkcje mog& by# wykonywane przez CPU, jednak producenci kart mog& zast!powa# cz!"# funkcji OpenGL swoimi rozwi&zaniami sprz!towymi. Dla programisty ta zamiana jest niewidoczna. Aplikacja OpenGL Sterownik karty graficznej Karta graficzna - GPU Przetwarzanie grafiki 2D (danych rastrowych) i 3D (danych geometrycznych).
2 OpenGL - Architektura (2) OpenGL - Architektura (3) OpenGL - zestaw funkcji s$u%&cych do tworzenia dwu- i trójwymiarowych obiektów oraz kontrolowania w jaki sposób obiekty te s& renderowane do framebuffer a. Pisanie programu w OpenGL u: 1. utworzenie okna we framebuffer ze, 2. przechwycenie kontekstu okna, 3. renderowanie obiektów w oknie (np. rysowanie linii, wielok&tów, itp.). Architektura OpenGL bazuje na maszynie stanu kontroluj&cej dzia$anie zestawu funkcji graficznych. Wykorzystywana jest lista rozkazów (ang. display list) Biblioteka ma architektur! klient-serwer. Klient wysy$a polecenia do serwera. Klient nie musi znajdowa# si! na komputerze z serwerem. Publiczne API biblioteki zaimplementowane jest w C. Mo%liwe pomini!cie przetwarzania wierzcho$ków. Evaluator - zamiana obiektów z$o%onych na obiekty podstawowe. Fragment Operations - sk$adanie obiektów 2D wygenerowanych przez rasteryzer i umieszczanie ich we frambufferze. Biblioteka nie obs$uguje operacji wej"cia (np. myszy, klawiatury) i wyj"cia (np. monitora). Biblioteka rysuje obiekty podstawowe sk$adaj&ce si! z jednego lub wielu wierzcho$ków (wiecho$ek - ang. vertex). Ka%dy wierzcho$ek przetwarzany jest niezale%nie od innych. Jego parametrami s&: po$o%enie, kolor, wektor normalny, wspó$rz!dne tekstury. Do przetwarzania wierzcho$ków wykorzystywane s& funkcje graficzne (obliczenia macierzowe, równanie o"wietlenia, antyaliasing, itp.). OpenGL - Rasteryzacja fragment - zbiór danych wykorzystywanych do narysowania jednego piksela obrazu. Jego parametrami s& po$o%enie, dane o kolorze, wspó$. tekstury, wspó$. mg$y i Z-bufora dla poszczególnych punktów rastra, stan buforów Alpha, Stencil, itp. OpenGL: Bufory Bufor (miejsce w pami!ci) tworzony w CPU i przesy$ny do GPU. VBO (ang. Vertex Buffer Object) 1. utworzenie bufora z danymi o wierzcho$kach (po$o%enie, kolory, itp.) 2. utworzenie VBO (GL_ARRAY_BUFFER) (skopiowanie danych z CPU do GPU) 3. glbindbuffer() + gldrawarray() (mo%liwo"# podania offset'u)
3 OpenGL ES: Embedded Systems OpenGL ES: 1.x i 2.x Standard obejmuj&cy wybrane funkcje OpenGL, przeznaczone do implementacji w urz&dzeniach o ograniczonych zasobach (urz&dzeniach przeno"nych). Uproszczone wersje standardów (usunieto szereg funkcji). Mechanizmy!$czenia funkcji OpenGL ES z natywnym systemem operacyjnym. Wprowadzono dzia$anie na zmiennych sta!opozycyjnych (OpenGL ES 1.x). Programowalny potok graficzny (OpenGL ES 2.x). Coformance tests - testy zgodno"ci biblioteki ze standardem. 1.X - dwa profile zmiennych (fixed-point i mixed) 2.X - shader'y (OpenGL shading language), brak kompatybilnosci z 1.x OpenGL ES: Urz&dzenia OpenGL - GLUT (OpenGL Utility Toolkit) Biblioteka s$u%&ca do rysowania okien pod OpenGL em. Wieloplatformowo"#. Dost!pna jako open source. Funkcje: Wy"wietlanie okien, w których mo%e odbywa# si! renderowanie realizowane przez OpenGL (mo%e by# otwarte wiele takich okien), Obs$uga zdarze' wej"cia/wyj"cia za pomoc& callback ów. Obs$uga urz&dze' wej"ciowych (np. klawiatura, mysz). Obs$uga timer ów. Pop-up menu. Generowanie biblioteki obiektów z$o%onych. Wspomaganie wczytywania bitmap i fontów bitmapowych. Zarzadzanie oknami.
4 OpenGL - Graficzne interfejsy u%ytkownika GLUI OpenGL - GLUI Biblioteka s!u'$ca do budowy interfejsów u'ytkownika pracuj$cych pod OpenGL (wymagana biblioteka GLUT). Procesory GPU Programowalny procesor pracuj&cy niezale%nie od CPU. Programowalne procesory GPU shader - program wykonywany na GPU (ang. Graphics Processor Unit) W$asno"ci: bardzo szybkie przetwarzanie danych graficznych, szybkie operacje macierzowe - architektura SIMD (w organiczonym zakresie MIMD), zrównoleglenie oblicze% (wiele jednostek vertex i fragment shaderów), mog$ by& wykorzystane do innych oblicze% GPGPU (General Purpose GPU), szybszy rozwój ni' CPU (brak predykcji skoków).
5 Vertex shader Transformacje zwi$zane z wierzcho!ami: obliczenie po$o%enia, koloru, wektorów normalnych, wspó$rz!dnych tekstur. Zastosowania: efekty zwi&zane z deformacjami kamer (lens effects) - obiektywy fisheye, itp., zginanie i skr!canie obiektów, lokalny ruch obiektów (falowanie wody, ruch ubrania, itp.), teselacja (ang. tesselation) trójk&tów po$&czona z animacj&. Fragment shader - przyk$ady Fragment shader Transformacje zwi$zane z fragmentami: obliczanie koloru fragmentu, teksturowanie, obliczanie o"wietlenia (Phong shading), mg$a. Zastosowania: proceduralne teksturowanie, obliczanie tekstury z wykorzystaniem danych ze standardowych tekstur, mapowanie tekstur. Fragment shader - Phong shading (Cg)
6 Programowanie shaderów J!zyki programowania: GLSL - OpenGL Shading Language, CG (nvidia) HLSL (Microsoft) CUDA - Compute Unified Device Architecture Technologia programowania algorytmów GPGPU (General Purpose GPU). Dost!pna na GPU nvidia, seria 8 i nowsze (G8X GPU), luty Stream processing - SIMD, zrównoleglenie. Programowanie wysokopoziomowe (program C + rozszerzenia). CUDA - Compute Unified Device Architecture OpenVG - Vector Graphics Acceleration Standard i API s!u'$ce do rysowania dwuwymiarowej grafiki wektorowej i rastrowej. Rysowanie wspomagane sprz!towo. Stadard unifikujacy zestaw funkcji (niezalezny od urzadzenia). Rysowanie tekstów. Wspomaganie dla Adobe Flash. Anty-aliasing. Zmniejszenie zu%ycia baterii poprzez wykorzystanie wspomagania sprz!towego. Podzia$ zada' mi!dzy CPU i GPU niewodoczny dla u%ytkownika. Skalowalno"# ($atwo"# zmiany rozdzielczo"ci). Wspomaganie istniej&cych j!zyków (postscript, flash, itp.)
7 Literatura 1. Tomas Moller, Eric Haines, Real-Time Rendering, A K Peters, ISBN NVIDIA Whitepapers to Vertex Shaders. Introduction to Pixel Shaders. 3. OpenGL Programming Guide (The Red Book),
Grafika komputerowa. Grafika komputerowa. Grafika komputerowa
OpenGL - Koncepcja i architektura Aplikacja odwo!uje si" poprzez funkcje API OpenGL bezpo#rednio do karty graficznej (z pomini"ciem systemu operacyjnego). Programowanie grafiki komputerowej Rados!aw Mantiuk
Bardziej szczegółowoGRAFIKA KOMPUTEROWA. Rozwiązania sprzętowe i programowe. Przyspieszanie sprzętowe. Synteza dźwięku i obrazu
Synteza dźwięku i obrazu GRAFIKA KOMPUTEROWA Rozwiązania sprzętowe i programowe Przyspieszanie sprzętowe Generowanie obrazu 3D wymaga złożonych obliczeń, szczególnie jeżeli chodzi o generowanie płynnej
Bardziej szczegółowoGRAFIKA KOMPUTEROWA. Rozwiązania sprzętowe i programowe. Przyspieszanie sprzętowe. Synteza i obróbka obrazu
Synteza i obróbka obrazu GRAFIKA KOMPUTEROWA Rozwiązania sprzętowe i programowe Przyspieszanie sprzętowe Generowanie obrazu 3D wymaga złożonych obliczeń, szczególnie jeżeli chodzi o generowanie płynnej
Bardziej szczegółowoScena 3D. Cieniowanie (ang. Shading) Scena 3D - Materia" Obliczenie koloru powierzchni (ang. Lighting)
Zbiór trójwymiarowych danych wej$ciowych wykorzystywanych do wygenerowania obrazu wyj$ciowego 2D. Cieniowanie (ang. Shading) Rados"aw Mantiuk Wydzia" Informatyki Zachodniopomorski Uniwersytet Technologiczny
Bardziej szczegółowoBiblioteka 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ółowoPrzyspieszanie sprzętowe
Synteza dźwięku i obrazu GRAFIKA KOMPUTEROWA Rozwiązania sprzętowe i programowe Przyspieszanie sprzętowe Generowanie obrazu 3D wymaga złoŝonych obliczeń, szczególnie jeŝeli chodzi o generowanie płynnej
Bardziej szczegółowoWprowadzenie do grafiki maszynowej. Wprowadzenie do historii OpenGL
Wprowadzenie do grafiki maszynowej. Wprowadzenie do historii OpenGL Aleksander Denisiuk Uniwersytet Warmińsko-Mazurski Olsztyn, ul. Słoneczna 54 denisjuk@matman.uwm.edu.pl 1 / 29 Wprowadzenie do historii
Bardziej szczegółowoZaawansowane systemy programowania grafiki. Wprowadzenie. Podstawy OpenGL
Zaawansowane systemy programowania grafiki. Wprowadzenie. Podstawy OpenGL Aleksander Denisiuk Uniwersytet Warmińsko-Mazurski Olsztyn, ul. Słoneczna 54 denisjuk@matman.uwm.edu.pl 7 października 2014 1 /
Bardziej szczegółowoGrafika komputerowa i wizualizacja
Grafika komputerowa i wizualizacja Radosław Mantiuk ( rmantiuk@wi.zut.edu.pl, p. 315 WI2) http://rmantiuk.zut.edu.pl Katedra Systemów Multimedialnych Wydział Informatyki, Zachodniopomorski Uniwersytet
Bardziej szczegółowoWprowadzenie. Artur Staszczyk Bartłomiej Filipek
Wprowadzenie Artur Staszczyk www.astaszczyk.com Bartłomiej Filipek www.bartlomiejfilipek.pl Bartlomiej.filipek@gmail.com Podstawy grafiki 3D GPU Co to jest OpenGL Potok Graficzny Inicjalizacja Rendering
Bardziej szczegółowoGRAFIKA 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ółowoObraz realistyczny. Realizm w grafice komputerowej. Realizm modelu: z!o#one siatki wielok$tów. Realizm modelu geometrycznego. Realizm modelu: spline'y
Obraz realistyczny Zbli!ony jako"ci# do obrazów / animacji obserwowanych przez cz$owieka. Realizm w grafice komputerowej Rados!aw Mantiuk Zachodniopomorski Uniwersytet Technologiczny Obraz realistyczny
Bardziej szczegółowoPlan 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ółowoArchitektura Komputerów
Architektura systemów Architektura Komputerów komputerowych Wykład nr. 9 dr Artur Bartoszewski Budowa karty graficznej Akceleratory graficzne Pamięć karty służy do przechowywania bitmapy przygotowanej
Bardziej szczegółowoKarty graficzne możemy podzielić na:
KARTY GRAFICZNE Karta graficzna karta rozszerzeo odpowiedzialna generowanie sygnału graficznego dla ekranu monitora. Podstawowym zadaniem karty graficznej jest odbiór i przetwarzanie otrzymywanych od komputera
Bardziej szczegółowoGRAFIKA 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ółowoAnaliza moż liwości i porównanie nowych ję zyków do programowania grafiki
Analiza moż liwości i porównanie nowych ję zyków do programowania grafiki Na przykładzie C for Graphics i OpenGL 2.0 Shading Language autor: Marcin Rociek promotor: dr inż. Witold Alda 1 Wprowadzenie 2
Bardziej szczegółowoKarta graficzna karta rozszerzeo odpowiedzialna generowanie sygnału graficznego dla ekranu monitora. Podstawowym zadaniem karty graficznej jest
KARTA GRAFICZNA Karta graficzna karta rozszerzeo odpowiedzialna generowanie sygnału graficznego dla ekranu monitora. Podstawowym zadaniem karty graficznej jest odbiór i przetwarzanie otrzymywanych od komputera
Bardziej szczegółowoProgramowanie procesorów graficznych GPGPU
Programowanie procesorów graficznych GPGPU 1 GPGPU Historia: lata 80 te popularyzacja systemów i programów z graficznym interfejsem specjalistyczne układy do przetwarzania grafiki 2D lata 90 te standaryzacja
Bardziej szczegółowoKarta przedmiotu. Podstawy programowania procesorów graficznych. realizowanego w ramach projektu PO WER
Karta przedmiotu Podstawy programowania procesorów graficznych realizowanego w ramach projektu PO WER 2017-2019 Wydział Inżynierii Elektrycznej i Komputerowej Kierunek studiów: Informatyka Profil: Ogólnoakademicki
Bardziej szczegółowoPotok 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ółowoGry Komputerowe - laboratorium 0
Gry Komputerowe - laboratorium 0 Michał Chwesiuk Zachodniopomorski Uniwersytet Technologiczny w ie Wydział Informatyki 28 Luty 2018 Michał Chwesiuk Laboratorium 0 28 Luty 2018 1/ 18 O mnie mgr inż. Michał
Bardziej szczegółowoPORÓWNANIE WYDAJNOŚCI JĘZYKÓW CIENIOWANIA CG I HLSL
Inżynieria Rolnicza 7(125)/2010 PORÓWNANIE WYDAJNOŚCI JĘZYKÓW CIENIOWANIA CG I HLSL Jerzy Dąbkowski Instytut Teleinformatyki, Politechnika Krakowska Instytut Inżynierii Rolniczej i Informatyki, Uniwersytet
Bardziej szczegółowoDowiedz się, jak tworzyć zapierające dech w piersiach gry 3D i efektowne, trójwymiarowe wizualizacje!
Dowiedz się, jak tworzyć zapierające dech w piersiach gry 3D i efektowne, trójwymiarowe wizualizacje! Jak sprawnie tworzyć podstawowe obiekty, oświetlać je i cieniować? Jak napisać własne programy, korzystając
Bardziej szczegółowoSystemy graficzne. dr inż. Mariusz Szwoch
Systemy graficzne dr inż. Mariusz Szwoch Systemy Graficzne Sem. 2 studiów magisterskich Przedmiot specjalności ISI i uzupełniający Wymiar: wykład 15 h (7 2h + 1h zaliczenie) laboratorium 15 h (5 3h) Prowadzący
Bardziej szczegółowodr 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ółowoGLKit. Wykład 10. Programowanie aplikacji mobilnych na urządzenia Apple (IOS i ObjectiveC) #import "Fraction.h" #import <stdio.h>
#import "Fraction.h" #import @implementation Fraction -(Fraction*) initwithnumerator: (int) n denominator: (int) d { self = [super init]; } if ( self ) { [self setnumerator: n anddenominator:
Bardziej szczegółowoPROGRAMOWANIE WSPÓŁCZESNYCH ARCHITEKTUR KOMPUTEROWYCH DR INŻ. KRZYSZTOF ROJEK
1 PROGRAMOWANIE WSPÓŁCZESNYCH ARCHITEKTUR KOMPUTEROWYCH DR INŻ. KRZYSZTOF ROJEK POLITECHNIKA CZĘSTOCHOWSKA 2 Część teoretyczna Informacje i wstępne wymagania Cel przedmiotu i zakres materiału Zasady wydajnego
Bardziej szczegółowoGrafika komputerowa (ang. computer graphics) Wprowadzenie do grafiki komputerowej. Grafika komputerowa - Zastosowania (2) Grafika komputerowa - Geneza
(ang. computer graphics) Potok graficzny (ang. graphics pipeline) Wprowadzenie do grafiki komputerowej Rados#aw Mantiuk Dane wej"ciowe scena Algorytmy grafiki komputerowej (Rendering) Dane wyj"ciowe obraz
Bardziej szczegółowoRENDERING W CZASIE RZECZYWISTYM. Michał Radziszewski
RENDERING W CZASIE RZECZYWISTYM Michał Radziszewski Plan wykładu Wprowadzenie, literatura Zasady zaliczenia Zakres materiału, zagadnienia Biblioteki graficzne czasu rzeczywistego Historia renderingu na
Bardziej szczegółowoSpecyfikacja 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ółowoJulia 4D - raytracing
i przykładowa implementacja w asemblerze Politechnika Śląska Instytut Informatyki 27 sierpnia 2009 A teraz... 1 Fraktale Julia Przykłady Wstęp teoretyczny Rendering za pomocą śledzenia promieni 2 Implementacja
Bardziej szczegółowoBartosz Bazyluk GAME LOOP Podstawowy element silnika gry komputerowej. Programowanie Gier Komputerowych, Informatyka S1, III Rok
Bartosz Bazyluk GAME LOOP Podstawowy element silnika gry komputerowej Programowanie Gier Komputerowych, Informatyka S1, III Rok INFORMACJE ORGANIZACYJNE: Prezentacje z wykładów, materiały, informacje można
Bardziej szczegółowoWykład 4. Rendering (1) Informacje podstawowe
Wykład 4. Rendering (1) Informacje podstawowe Z punktu widzenia dzisiejszego programowania gier: Direct3D jest najczęściej wykorzystywanym przez profesjonalnych deweloperów gier API graficznym na platformie
Bardziej szczegółowoCUDA część 1. platforma GPGPU w obliczeniach naukowych. Maciej Matyka
CUDA część 1 platforma GPGPU w obliczeniach naukowych Maciej Matyka Bariery sprzętowe (procesory) ok na. 1 10 00 la raz t y Gdzie jesteśmy? a ok. 2 razy n 10 lat (ZK) Rozwój 1985-2004 i dalej? O roku ów
Bardziej szczegółowoElementy do grafiki komputerowej. Wprowadzenie
Elementy do grafiki komputerowej. Wprowadzenie Aleksander Denisiuk Uniwersytet Warmińsko-Mazurski Olsztyn, ul. Słoneczna 54 denisjuk@matman.uwm.edu.pl 1 / 16 Wprowadzenie Najnowsza wersja tego dokumentu
Bardziej szczegółowoBartłomiej Filipek www.ii.uj.edu.pl/~filipek
Bartłomiej Filipek www.ii.uj.edu.pl/~filipek Nasz Cel Prehistoria krótki wstęp Nowa era! Vertex Shaders Fragment Shaders Podstawy GLSL Obsługa GLSL z API OpenGL Dodajmy parę efektów! Podsumowanie Dodatkowe
Bardziej szczegółowoKarty graficzne: budowa, zasada działania, standardy, parametry, dodatkowe funkcje
018 URZĄDZENIA TECHNIKI KOMPUTEROWEJ Karty graficzne: budowa, zasada działania, standardy, parametry, dodatkowe funkcje 1 UTK Treść niniejszej prezentacji oparto na artykułach pisma Komputer Świat Ekspert
Bardziej szczegółowoWprowadzenie do grafiki komputerowej
Wprowadzenie do grafiki komputerowej Radosław Mantiuk Wydział Informatyki Zachodniopomorski Uniwersytet Technologiczny w Szczecinie Obraz rastrowy 2D Obraz rastrowy - dwuwymiarowa macierz pikseli (bitmapa)
Bardziej szczegółowoRasteryzacja (ang. rasterization or scan-conversion) Grafika rastrowa. Rysowanie linii (1) Rysowanie piksela. Rysowanie linii: Kod programu
Rasteryzacja (ang. rasterization or scan-conversion) Grafika rastrowa Rados!aw Mantiuk Wydzia! Informatyki Zachodniopomorski Uniwersytet Technologiczny Zamiana ci!g"ej funkcji 2D na funkcj# dyskretn! (np.
Bardziej szczegółowoWprowadzenie do QT OpenGL
Wprowadzenie do QT mgr inż. Michał Chwesiuk mgr inż. Tomasz Sergej inż. Patryk Piotrowski 1/21 - Open Graphics Library Open Graphics Library API pozwalające na wykorzystanie akceleracji sprzętowej do renderowania
Bardziej szczegółowoKarta graficzna. Karta graficzna przyjmuje. rozszerzeń montowanej w magistrali wejścia/wyjścia na płycie głównej. Opcjonalnie układ graficzny
Karty graficzne Wykład: budowa karty graficznej, zasada działania, standardy, parametry, GPU, RAMDAC, magistrale, interfejsy, złącza, OpenGL, DirectX, SLI, Crossfire, bufor ramki, potok graficzny, producenci:
Bardziej szczegółowoImplementacja sieci neuronowych na karcie graficznej. Waldemar Pawlaszek
Implementacja sieci neuronowych na karcie graficznej Waldemar Pawlaszek Motywacja Czyli po co to wszystko? Motywacja Procesor graficzny GPU (Graphics Processing Unit) Wydajność Elastyczność i precyzja
Bardziej szczegółowoArchitektura von Neumanna
Architektura von Neumanna Klasyfikacja systemów komputerowych (Flynna) SISD - Single Instruction Single Data SIMD - Single Instruction Multiple Data MISD - Multiple Instruction Single Data MIMD - Multiple
Bardziej szczegółowoProgramowanie w modelu równoległości danych oraz dzielonej globalnej pamięci wspólnej. Krzysztof Banaś Obliczenia równoległe 1
Programowanie w modelu równoległości danych oraz dzielonej globalnej pamięci wspólnej Krzysztof Banaś Obliczenia równoległe 1 Model równoległości danych Model SPMD (pierwotnie dla maszyn SIMD) Zrównoleglenie
Bardziej szczegółowoProgramowanie z wykorzystaniem technologii CUDA i OpenCL Wykład 1
Programowanie z wykorzystaniem technologii CUDA i OpenCL Wykład 1 Organizacja przedmiotu Dr inż. Robert Banasiak Dr inż. Paweł Kapusta 1 2 Nasze kompetencje R n D Tomografia 3D To nie tylko statyczny obraz!
Bardziej szczegółowoGPGPU General-Purpose computing on the GPU. Piotr Stańczyk
GPGPU General-Purpose computing on the GPU Piotr Stańczyk GPGPU Brak wzrostu prędkości procesorów w ostatnim okresie Wprowadzanie technologii wielordzeniowej (Hyper Threading, Core Duo ) zrównoleglenie
Bardziej szczegółowoRasteryzacja (ang. rasterization or scan-conversion) Grafika rastrowa. Rysowanie linii (1) Rysowanie piksela
Rasteryzacja (ang. rasterization or scan-conversion) Grafika rastrowa Rados!aw Mantiuk Wydzia! Informatyki Zachodniopomorski Uniwersytet Technologiczny Zamiana ci!g"ej funkcji 2D na funkcj# dyskretn! (np.
Bardziej szczegółowoOrganizacja pamięci w procesorach graficznych
Organizacja pamięci w procesorach graficznych Pamięć w GPU przechowuje dane dla procesora graficznego, służące do wyświetlaniu obrazu na ekran. Pamięć przechowuje m.in. dane wektorów, pikseli, tekstury
Bardziej szczegółowoPolitechnika Krakowska im. Tadeusza Kościuszki. Karta przedmiotu. obowiązuje studentów rozpoczynających studia w roku akademickim 2013/2014
Politechnika Krakowska im. Tadeusza Kościuszki Karta przedmiotu Wydział Mechaniczny obowiązuje studentów rozpoczynających studia w roku akademickim 013/014 Kierunek studiów: Informatyka Stosowana Forma
Bardziej szczegółowoCo 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ółowoPrzegląd architektury PlayStation 3
Przegląd architektury PlayStation 3 1 Your Name Your Title Your Organization (Line #1) Your Organization (Line #2) Sony PlayStation 3 Konsola siódmej generacji Premiera: listopad 2006 33,5 mln sprzedanych
Bardziej szczegółowoWprowadzenie do grafiki komputerowej. W. Alda
Wprowadzenie do grafiki komputerowej W. Alda Grafika komputerowa w pigułce Zacznijmy od tego co widać na ekranie Grafika rastrowa 2D Spektrum fal elektromagnetycznych Promieniowanie gamma ~ 10-12 m Fale
Bardziej szczegółowoPorównanie wydajności CUDA i OpenCL na przykładzie równoległego algorytmu wyznaczania wartości funkcji celu dla problemu gniazdowego
Porównanie wydajności CUDA i OpenCL na przykładzie równoległego algorytmu wyznaczania wartości funkcji celu dla problemu gniazdowego Mariusz Uchroński 3 grudnia 2010 Plan prezentacji 1. Wprowadzenie 2.
Bardziej szczegółowoJCuda Czy Java i CUDA mogą się polubić? Konrad Szałkowski
JCuda Czy Java i CUDA mogą się polubić? Konrad Szałkowski Agenda GPU Dlaczego warto używać GPU Budowa GPU CUDA JCuda Przykładowa implementacja Co to jest? GPU GPU Graphical GPU Graphical Processing GPU
Bardziej szczegółowoProgramowanie Procesorów Graficznych
Programowanie Procesorów Graficznych Wykład 1 9.10.2012 Prehistoria Zadaniem karty graficznej było sterowanie sygnałem do monitora tak aby wyświetlić obraz zgodnie z zawartościa pamięci. Programiści pracowali
Bardziej szczegółowoOpis efektów kształcenia dla modułu zajęć
Nazwa modułu: Grafika komputerowa Rok akademicki: 2015/2016 Kod: ITE-1-514-s Punkty ECTS: 5 Wydział: Informatyki, Elektroniki i Telekomunikacji Kierunek: Teleinformatyka Specjalność: - Poziom studiów:
Bardziej szczegółowoProgramowanie 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ółowoKARTA KURSU. Grafika komputerowa
KARTA KURSU Nazwa Nazwa w j. ang. Grafika komputerowa Computer graphics Kod Punktacja ECTS* 3 Koordynator dr inż. Krzysztof Wójcik Zespół dydaktyczny: dr inż. Krzysztof Wójcik dr inż. Mateusz Muchacki
Bardziej szczegółowoPROJEKTOWANIE SYSTEMÓW KOMPUTEROWYCH
PROJEKTOWANIE SYSTEMÓW KOMPUTEROWYCH WYKŁAD NR 6 KARTY GRAFICZNE I PROCESORY GRAFICZNE dr Artur Woike Historia rozwoju kart graficznych IBM MDA Standard MDA (Monochrome Display Adapter) powstał w 1981
Bardziej szczegółowoBartosz Bazyluk OpenGL Współczesne podejście do programowania grafiki Część II: Programy cieniujące (shadery)
OpenGL Współczesne podejście do programowania grafiki Część II: Programy cieniujące (shadery) Programowanie Gier Komputerowych, Informatyka S, III Rok PLAN WYKŁADU Transformacje geometryczne Pożegnanie
Bardziej szczegółowoPodsystem graficzny. W skład podsystemu graficznego wchodzą: karta graficzna monitor
Plan wykładu 1. Pojęcie podsystemu graficznego i karty graficznej 2. Typy kart graficznych 3. Budowa karty graficznej: procesor graficzny (GPU), pamięć podręczna RAM, konwerter cyfrowo-analogowy (DAC),
Bardziej szczegółowoPrzetwarzanie obrazów w czasie rzeczywistym za pomocą GPU
Politechnika Warszawska Wydział Elektroniki i Technik Informacyjnych Instytut Automatyki i Informatyki Stosowanej Praca dyplomowa magisterska Kamil Rocki Przetwarzanie obrazów w czasie rzeczywistym za
Bardziej szczegółowoAlgorytmy renderingu dla programowalnych jednostek graficznych. prof. dr hab. inż. Maria Pietruszka mgr inż. Dominik Szajerman
Algorytmy renderingu dla programowalnych jednostek graficznych dyplomant promotor kopromotor Michał Szymczyk prof. dr hab. inż. Maria Pietruszka mgr inż. Dominik Szajerman Cel pracy Przegląd istniejących
Bardziej szczegółowo1 Temat: Vertex Shader
Instrukcja Architektura procesorów graficznych 1 Temat: Vertex Shader Przygotował: mgr inż. Tomasz Michno 1 Wstęp 1.1 Czym jest shader Shader jest programem (zazwyczaj krótkim), wykonywanym przez kartę
Bardziej szczegółowoOpenGL 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ółowoWprowadzenie do grafiki maszynowej. Wprowadzenie do wprowadzenia
Wprowadzenie do grafiki maszynowej. Wprowadzenie do wprowadzenia Aleksander Denisiuk Uniwersytet Warmińsko-Mazurski Olsztyn, ul. Słoneczna 54 denisjuk@matman.uwm.edu.pl 1 / 17 Wprowadzenie do wprowadzenia
Bardziej szczegółowoAkceleracja sprzętowa symulacji elektromagnetycznych. graficznych (GPU)
Posiedzenie Polskiego Chapteru IEEE EMC-s Wrocław, 13 czerwca 2013 Akceleracja sprzętowa symulacji elektromagnetycznych za pomocą kart graficznych (GPU) Politechnika Śląska Posiedzenie Polskiego Chapteru
Bardziej szczegółowoProgramowanie gier komputerowych Tomasz Martyn Wykład 6. Materiały informacje podstawowe
Programowanie gier komputerowych Tomasz Martyn Wykład 6. Materiały informacje podstawowe Czym są tekstury? Tekstury są tablicowymi strukturami danych o wymiarze od 1 do 3, których elementami są tzw. teksele.
Bardziej szczegółowoArchitektury komputerów Architektury i wydajność. Tomasz Dziubich
Architektury komputerów Architektury i wydajność Tomasz Dziubich Przetwarzanie potokowe Przetwarzanie sekwencyjne Przetwarzanie potokowe Architektura superpotokowa W przetwarzaniu potokowym podczas niektórych
Bardziej szczegółowoGrafika Komputerowa. Wprowadzenie
Grafika Komputerowa. Wprowadzenie Aleksander Denisiuk Polsko-Japońska Akademia Technik Komputerowych Wydział Informatyki w Gdańsku ul. Brzegi 55 80-045 Gdańsk Ò Ù Ô º ÙºÔÐ 1 / 17 Wprowadzenie Najnowsza
Bardziej szczegółowoGrafika komputerowa i wizualizacja. dr Wojciech Pałubicki
Grafika komputerowa i wizualizacja dr Wojciech Pałubicki Grafika komputerowa Obrazy wygenerowane za pomocy komputera Na tych zajęciach skupiamy się na obrazach wygenerowanych ze scen 3D do interaktywnych
Bardziej szczegółowoKarty Graczne i Sprz towe Wsparcie Dla Graki 3D
Wojciech Sterna Anatomia PC, 04.05.2009 MDA (Monochrome Display Adapter) CGA (Colour Graphics Adapter) HGC (Hercules Graphics Card) EGA (Enhanced Graphics Adapter) VGA (Video Graphics
Bardziej szczegółowoSystem 32-Bit 1: Microsoft Windows 7 Home Premium 2;, Professional, Ultimate, Enterprise Microsoft Windows 8/8.1, Pro, Enterprise 2;
System 32-Bit 1: Microsoft Windows 7 Home Premium 2;, Professional, Ultimate, Enterprise Microsoft Windows 8/8.1, Pro, Enterprise 2; Wspierane systemy operacyjne System 64-bit: Microsoft Windows 7 Home
Bardziej szczegółowoWykład 5. Rendering (2) Geometria
Wykład 5. Rendering (2) Geometria 1. Z ogólnego, niezależnego od implementacji punktu widzenia, dane stanowiące opis geometrii modelu zorganizowane są w skończoną sekwencję (lub grupę sekwencji), którego
Bardziej szczegółowoBartosz Bazyluk Wprowadzenie Organizacja i tematyka zajęć, warunki zaliczenia.
Wprowadzenie Organizacja i tematyka zajęć, warunki zaliczenia http://bazyluk.net/dydaktyka Grafika Komputerowa i Wizualizacja, Informatyka S1, II Rok O MNIE mgr inż. Pokój 322/WI2 lub 316/WI2 bbazyluk@wi.zut.edu.pl
Bardziej szczegółowoArchitektura Procesorów Graficznych
Architektura Procesorów Graficznych Referat: Rendering 3D: potok 3D, możliwości wsparcia sprzętowego, możliwości przyspieszenia obliczeń. Grupa wyrównawcza Cezary Sosnowski 1. Renderowanie Renderowanie
Bardziej szczegółowoOprogramowanie 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ółowoGraficzny edytor cieniowania
Politechnika Warszawska Wydział Elektroniki i Technik Informacyjnych Instytut Systemów Elektronicznych Praca dyplomowa magisterska Graficzny edytor cieniowania Shading Editor Kamil Trzciński Nr albumu:
Bardziej szczegółowoBartosz Bazyluk Wprowadzenie Organizacja i tematyka zajęć, warunki zaliczenia.
Wprowadzenie Organizacja i tematyka zajęć, warunki zaliczenia http://bazyluk.net/dydaktyka Gry komputerowe, Informatyka N1, III Rok, 2018 r. O MNIE dr inż. bbazyluk@wi.zut.edu.pl http://bazyluk.net/dydaktyka
Bardziej szczegółowoGry Komputerowe Laboratorium 1. Zajęcia organizacyjne Animacja z uwzględnieniem czasu. mgr inż. Michał Chwesiuk 1/22. Szczecin,
Gry Komputerowe Laboratorium 1 Zajęcia organizacyjne mgr inż. Michał Chwesiuk 1/22 projektowych Zajęcia projektowe składają się zajęć (plus jedno zajęcie godzinne). Zajęcia polegają na programowania grafiki
Bardziej szczegółowoProgramowanie 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ółowoProgramowanie równoległe i rozproszone. Praca zbiorowa pod redakcją Andrzeja Karbowskiego i Ewy Niewiadomskiej-Szynkiewicz
Programowanie równoległe i rozproszone Praca zbiorowa pod redakcją Andrzeja Karbowskiego i Ewy Niewiadomskiej-Szynkiewicz 23 października 2009 Spis treści Przedmowa...................................................
Bardziej szczegółowoGrafika 3D na przykładzie XNA 3.1
Jacek Matulewski, Tomasz Dziubak Grafika 3D na przykładzie XNA 3.1 ITA-106 Wersja 1.02 (XNA 3.1, PS 2.0) Toruo, listopad 2010 2010 Jacek Matulewski, Tomasz Dziubak. Autor udziela prawa do bezpłatnego kopiowania
Bardziej szczegółowoZdjęcia i opis stanowisk laboratoryjnych wykorzystywanych w ramach projektu
Zdjęcia i opis stanowisk laboratoryjnych wykorzystywanych w ramach projektu Koło zainteresowań Teleinformatyk XXI wieku strona 1 Wprowadzenie Podczas zajęć koła zainteresowań Teleinformatyk XXI wieku uczniowie
Bardziej szczegółowoTemat: 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ółowoWprowadzenie. Karty graficzne możemy podzielić na:
Karta graficzna Wprowadzenie Karta graficzna karta rozszerzeń odpowiedzialna za generowanie sygnału graficznego dla ekranu monitora. Podstawowym zadaniem karty graficznej jest odbiór i przetwarzanie otrzymywanych
Bardziej szczegółowoWyświetlanie terenu. Clipmapy geometrii
Wyświetlanie terenu Clipmapy geometrii Rendering terenu Łatwy do zaimplementowania Darmowe zestawy danych Liczne zastosowania: Wizualizacje geograficzne Symulatory Gry Ogromne ilości danych Gry Od 2x2
Bardziej szczegółowoPrzetwarzanie Równoległe i Rozproszone
POLITECHNIKA KRAKOWSKA - WIEiK KATEDRA AUTOMATYKI I TECHNOLOGII INFORMACYJNYCH Przetwarzanie Równoległe i Rozproszone www.pk.edu.pl/~zk/prir_hp.html Wykładowca: dr inż. Zbigniew Kokosiński zk@pk.edu.pl
Bardziej szczegółowoPrzegląd metod renderingu czasu rzeczywistego dla fotorealistycznych wizualizacji architektonicznych
Przegląd metod renderingu czasu rzeczywistego dla fotorealistycznych wizualizacji architektonicznych prof. dr hab. Inż. Maria Pietruszka mgr inż. Anna Służewska Instytut Informatyki Politechniki Łódzkiej
Bardziej szczegółowoElementy składowe karty graficznej
Karta graficzna Wprowadzenie Karta graficzna karta rozszerzeń odpowiedzialna za generowanie sygnału graficznego dla ekranu monitora. Podstawowym zadaniem karty graficznej jest odbiór i przetwarzanie otrzymywanych
Bardziej szczegółowoShadery. Artur Staszczyk Bartłomiej Filipek
Shadery Artur Staszczyk www.astaszczyk.com Bartłomiej Filipek www.bartlomiejfilipek.pl Bartlomiej.filipek@gmail.com Potok graficzny Vertex shader Fragment shader GLSL Przykłady Inne shadery? Vertex shader
Bardziej szczegółowoBartosz Bazyluk Wprowadzenie Organizacja i tematyka zajęć, warunki zaliczenia.
Wprowadzenie Organizacja i tematyka zajęć, warunki zaliczenia http://bazyluk.net/dydaktyka Gry komputerowe, Informatyka S1, II Rok, 2018 r. O MNIE dr inż. bbazyluk@wi.zut.edu.pl http://bazyluk.net/dydaktyka
Bardziej szczegółowoJanusz 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ółowoSOP System Obsługi Parkingów
SOP System Obsługi Parkingów JEE i Android Marcin Tatjewski Tomasz Traczyk Grzegorz Zieliński Paweł Borycki 5 listopada 2009 www.sopark.pl Plan prezentacji Java Platform, Enterprise Edition (JEE) Wstęp
Bardziej szczegółowoPROGRAMOWANIE GRAFIKI 2D W ŚRODOWISKU EMBARCADERO RAD STUDIO XE4 Z WYKORZYSTANIEM BIBLIOTEKI DirectX
Mgr inż. Witold BUŻANTOWICZ Dr inż. Jacek WARCHULSKI Dr inż. Marcin WARCHULSKI Wojskowa Akademia Techniczna PROGRAMOWANIE GRAFIKI 2D W ŚRODOWISKU EMBARCADERO RAD STUDIO XE4 Z WYKORZYSTANIEM BIBLIOTEKI
Bardziej szczegółowoSYMULACJA OPADÓW ATMOSFERYCZNYCH I POKRYWY ŚNIEŻNEJ W GENERATORZE OBRAZU JASKIER IG
Szybkobieżne Pojazdy Gąsienicowe (41) nr 3, 2016 Michał Bugała SYMULACJA OPADÓW ATMOSFERYCZNYCH I POKRYWY ŚNIEŻNEJ W GENERATORZE OBRAZU JASKIER IG Streszczenie. W artykule przedstawiono metody implementacji
Bardziej szczegółowoMoc płynąca z kart graficznych
Moc płynąca z kart graficznych Cuda za darmo! Czyli programowanie generalnego przeznaczenia na kartach graficznych (GPGPU) 22 października 2013 Paweł Napieracz /20 Poruszane aspekty Przetwarzanie równoległe
Bardziej szczegółowoGoogle Android. Opracował Maciej Ciurlik
Google Android Opracował Maciej Ciurlik Plan prezentacji Wprowadzenie Architektura Cykl życia aplikacji Wprowadzenie Android - kompletny zbiór oprogramiwania dla urządzeń mobilnych. System operacyjny Middleware
Bardziej szczegółowoPotok graficzny. System graficzny. Potok graficzny 3D. O$wietlenie globalne i lokalne. scena 3D algorytm graficzny obraz 2D. czasu rzeczywistego
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