Zaawansowane i efektywne systemy cząsteczkowe w grach komputerowych.

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

Download "Zaawansowane i efektywne systemy cząsteczkowe w grach komputerowych."

Transkrypt

1 IV Ogólnopolska Konferencja Inżynierii Gier Komputerowych, Siedlce 2007 Zaawansowane i efektywne systemy cząsteczkowe w grach komputerowych. Michał Mocarski Politechnika Wrocławska Streszczenie Referat opisuje systemy cząsteczkowe jako narzędzie do generowania efektów specjalnych w grach komputerowych. Omówione zostaną zastosowania, sposoby przedstawienia reprezentacji graficznej i fizycznej cząstek, techniki animacji cząstek i nietypowe podejścia do systemów cząsteczkowych. 1. Wstęp Gry komputerowe od zawsze starały się o atrakcyjną oprawę graficzną w związku z tym grafika komputerowa potrzebowała sposobu na wyświetlanie efektów specjalnych takich jak ogień, wybuchy czy efekty atmosferyczne. Wszystkie powyższe mają wspólną cechę efekt graficzny tworzy duża ilość małych cząstek dlatego właśnie w grafice komputerowej używa się do ich reprezentacji systemów cząsteczkowych 1

2 Michał Mocarski Zaawansowane I efektywne systemy cząsteczkowe w grach komputerowych 2. Czym są systemy cząsteczkowe? Efekty cząsteczkowe pozwalają na reprezentację wielu zjawisk występujących w otaczającym nas świecie. Zaliczamy do nich: - ogień - dym - wystrzały - śnieg - deszcz - wybuchy - gwiazdy itp. Efekty cząsteczkowe stanowią nieodłączną część obecnie implementowanych silników graficznych. W podstawowych wersjach są one niesamowicie elastyczne. Opisujemy je zazwyczaj używając cech takich jak: - pozycja aktualna - prędkość - przyspieszenie - czas życia - aktualny kolor 3. Sposób reprezentacji graficznej poszczególnych cząstek 3.1 Quady Poszczególne cząsteczki mogą być bardzo zróżnicowane zwykły punkt jest przeważnie niewystarczający, jednak przeważnie są stosunkowo małe i płaskie. Możemy je zatem wyświetlać za pomocą zbioru quadów (Rys 3.1) umieszczonych w vertex buforach. Rozwiązanie takie jest stosunkowo proste i bardzo elastyczne Rys Schemat quadu 4 3 2

3 IV Ogólnopolska Konferencja Inżynierii Gier Komputerowych, Siedlce 2007 Niestety w jego przypadku musimy skupić się na pozycji wierzchołków muszą one być za każdym razem aktualizowane by znajdowały się w takiej samej odległości od środka cząsteczki i żeby leżały na płaszczyźnie, która jest prostopadła do kierunku patrzenia kamery. 3.2 Point sprite y Innym sposobem jest użycie tzw. Point sprite ów. Są one bardzo wygodnym i dosyć optymalnym spodobem na renderowanie cząstek, gdyż umożliwiają nam łatwe renderowanie cząsteczki przy pomocy jednego oteksturowanego punktu karta graficzna zajmuje się wygenerowaniem dodatkowych wierzchołków, skopiowaniem wartości koloru i przypisaniem im koordynat teksturowania tak, by można było osiągnąć efekt taki jak przy renderowaniu zwykłego quadu. Wydaje się to świetnym rozwiązaniem, jednak okazuje się iż ma pewne wady wszystkie wartości wierzchołka źródłowego są kopiowane do nowo utworzonych przez co nie mamy wpływu na informacje o kolorze poszczególnych rogów punktu i wierzchołki są nierozróżnialne. Ponadto koordynaty teksturowania i pozycje nowych wierzchołków są generowane dynamicznie, bez naszego wpływu na nie. Powoduje to, iż na samym starcie część bardziej zaawansowanych technik jak obrót cząsteczek czy uzyskanie specjalnych cech dla każdego wierzchołka jest niemożliwe. Dochodzą do tego dodatkowe problemy teoretycznie nie każdy sprzęt musi obsługiwać point sprite y (a część urządzeń realizuje je w sterownikach mimo iż zgłaszają, że wspierają je) a ponadto maksymalna wielkość cząsteczek określana jest przez kartę graficzną i może się różnić między modelami. Kolejną niedogodnością jest różnica między PointSprites w DirectX, a rozszerzeniem arb_point_sprites w OpenGL. Windows DDK nakazuje nadmienić koordynaty teksturowania liniowo generowanymi współrzędnymi (lewy górny róg [0,0] a prawy dolny [1,1]) jednak nie opisuje on które współrzędne mają być nadpisane, ponadto DirectX nie umożliwia ich wskazania, przez co nadpisywane są profilaktycznie wszystkie. Uniemozliwia to zastosowanie bardziej zaawansowanych technik, gdyż na drodze między Vertex Shaderem a Pixel Shaderem zostają nadpisane wszystkie współrzędne teksturowania. Nieco lepiej sytuacja wygląda w OpenGL rozszerzenie arb_point_sprites używa flag do oznaczenia współrzędnych teksturowania. Druga różnica między OpenGL em a DirectX em to sposób odrzucania niewidocznych punktów. Tutaj lepiej wypada DirectX, gdyż WindowsDDK nakazuje odrzucać karcie punkty których wszystkie wierzchołki wypadają poza viewport. OpenGL przycina według środka punktu, więc może on nagle zniknąć. 3

4 Michał Mocarski Zaawansowane I efektywne systemy cząsteczkowe w grach komputerowych Tabela porównanie MaxPointSize Vendor Device MaxPointSize 3Dfx Voodoo3 1.0 Ati Mobility Radon X800GT Ati Radon Ati Radon Intel i Matrox G Nvidia GeForce ,192.0 Nvidia GeForce FX ,192.0 Nvidia GeForce4 MX Nvidia GeForce2 MX Nvidia Riva TNT2 M S3 ViRGE DX Geometry Shaders Najnowsze karte graficzne wspierające Shader Model 4.0 oferują jednostki geometry shaders i technikę stream out. W kartach tych wierzchołki transformowane są najpier za pomocą jednostek vertex shader, następnie całe prymitywy przetwarza geometry shader, a po rasteryzacji fragmentami zajmuje się pixel shader. Jest to bardzo elastyczne, szczególnie, że geometry shader umożliwia nam generowanie i usuwanie geometrii. Jak mogą korzystać particle systemy pod Shader Model 4.0? Renderowalibyśmy bufor wierzchołków które byłyby punktami. Jednostka vertex shader zajmowałaby się animacją naszych punktów. Przetransformowane punkty trafiałyby do geometry shadera. Jednostka ta miałaby zdefiniowane wyjście generowałaby 2 trójkąty tworząc w locie quad. Nad procesem mamy pełną kontrolę możemy obracać nasz quad, wyginać i robić cokolwiek nam się podoba. Wygenerowany quad podlegałby rasteryzacji, a gotowe punkty moglibyśmy per-pixel oświetlić, ukryć itp. Jak widać sposób ten jest najelastyczniejszy, wydajny i odzwierciedla dokładnie sposób w jaki myślimy o tworzeniu pojedynczej cząsteczki. 4

5 IV Ogólnopolska Konferencja Inżynierii Gier Komputerowych, Siedlce Animowanie cząsteczek 4.1 Systemy stanowe Systemy stanowe zakładają, że w każdym momencie mamy dostępny szereg informacji o cząsteczce (np.pozycja, kolor, prędkość, przyspieszenie, czas życia) w każdym momencie. Dodatkowo aktualizację tych informacji przeprowadzamy w sposób rekurencyjny aby określić nowy stan cząsteczki potrzebujemy stanu poprzedniego. Takie rozwiązanie jest bardzo elastyczne, szczególnie gdy CPU ma dostęp do tych danych wtedy cząsteczki mogą wchodzić w interackję ze światem np. odbijać się od ścian. W jaki sposób zrealizować takie systemy? Realizacja na CPU Standardowe rozwiązanie implikuje aktualizowanie bufora wierzchołków i przesyłanie go do karty co aktualizację. Niestety takie rozwiązanie wymaga aby CPU przetwarzał wszystkie wierzchołki, a bufor był przesyłany do karty z każdą aktualizacją. Powoduje to, iż takie systemy mimo że są bardzo elastyczne, mają niską wydajność. Istnieje jednak sposób na rozwiązanie tego problemu Realizacja na GPU Shader Model 3.0 udostępnia opcję vertex texture fetch, która umożlwia odczyt tekstury w jednostce vertex shader. Podobnie sytuacja wygląda w Shader Model 4.0 (tam nawet jednostki geometry shader mają możliwośc odcyztu tekstur). Aby wykorzystać wyłącznie GPU do przetwarzania wierzchołków musimy rozbić ich renderowanie na co najmniej 2 przebiegi. Pierwszy uaktualniający i drugi rysujący. Pierwszy będzie odczytywał z tekstury dane na temat wierzchołka, przetwarzał je i zapisywał do tekstury, a drugi po prostu rysował korzystając z pozycji zapisanych w teksturze. Teraz nasuwają się dwa pytania co z kolizjami i alpha blendingiem. Oczywiście kolizje można policzyć na karcie graficznej używając dodatkowych przebiegów, które przeliczałyby kolizje z prostymi prymitywami (kule, sześciany) lub bardziej skomplikowanymi (heightfield). Rysunek 4.1 Pokazuje sytuację odbicia od heightfieldu. Mamy tam pole i cząsteczkę, która za chwilę z nim będzie kolidować. Generalne podejście wygląda tak. Wektor C jest wektorem wirtualnej kamery, który jest prostopadły do płaszczyzny zawierającej naszego height fielda. Teraz wystarczy, że stworzymy macierz projekcji ortagonalnej i kamerę o wielkości heightfieldu, która patrzy w kierunku C. 5

6 Michał Mocarski Zaawansowane I efektywne systemy cząsteczkowe w grach komputerowych C V N V Rys.4.1 Odbicie cząsteczki od heightfieldu W układzie tym renderujemy najpierw nasz heightfield do tekstury, zachowując wartość wektora normalnego w każdym z wyrenderowanych punktów i współrzędną z, która będzie odpowiadała po przetransformowanie przez macierz kamery, odległości danego punktu od kamery(r,g,b -> współrzędne wektora normlnego, A-> z). Mając te dane możemy teraz wyrenderować nasze punkty każdy z nich transformujemy do naszego układu. Zauważmy, że współrzędne x,y będą odpowiadały pozycji na płaszyźnie, co możemy użyc jako współrzędne teksturowania, a współrzędna z jak poprzednio będzie odpowiadała odległości od kamery. Gdy będzie ona mniejsza od odczytanej z tekstury, to musimy odbić nasz wektor prędkości względem wektora normalnego odczytanego z tekstury. Oczywiście opisany algorytm jest bardzo skomplikowaną, ogólną wersją i w zależności od potrzeb można zastosować wiele uproszczeń (np. korzystać z gotowego heightfielda i tekstury z normalnymi dla niego i po prostu rzutować wierzchołki na płaszczyznę go opisującą, jednak opisany przeze mnie sposób będzie wykorzystany w daleszej części prezentacji). Nie jest to rozwiązanie elastyczne w 100%, ale stosunkowo optymalne i co więcej w całości wykonywane na karcie graficznej. Kolejną kwestią jest sortowanie cząsteczek. Gdy używamy alpha blendingu, to wymagane jest, by cząsteczki były narysowane w kolejności od 6

7 IV Ogólnopolska Konferencja Inżynierii Gier Komputerowych, Siedlce 2007 najbardziej odległej w stosunku do kamery, do tej najbliższej. Często, gdy nie korzystamy z alpha blendingu, bądź fragmenty przezroczyste są znikome i nie będzie widać błędów alpha-blendingu, sytuację możemy zignorować. W przeciwnym wypadku pozostaje nam implementacja particle systemu na CPU, lub Sortowanie przy pomocy GPU. Istnieje algorytm bitonic sort, umożliwiający GPU sortowanie równoległe. Niestey odbija się to dodatkowo na wydajności i komplikuje sytuację. 4.2 Systemy bezstanowe Opisane systemy stanowe zapewniają wysoką elastyczność, jednak są stosunkowo kosztowne. Ponadto większość systemów cząsteczkowych jest stosunkowo prosta np. ogień, deszcz, śnieg, wystrzały proszuają się ruchami, które można opisać prostymi równaniami, a ich interackja z otoczeniem jest minimalna. Powyższe fakty implikują, że stan danej cząsteczki możemy określić znając tylko i wyłącznie stan początkowy i ilość czasu, który minął od początku animacji. W przypadku takim nie musimy modyfikować bufora wierzchołków, a animację możemyw całości przeprowadzić na GPU w jednostkach vertex shader. Przykładem może być zaimplementowany przeze mnie śnieg, którego ruch opisany jest równaniem ruchu jednostajnie przyspieszonego w 3 płaszczyznach x,y i z. Pozycję wyraża się tam w następujący sposób: x = x 0 + v 0 *t + 0,5*a*t 2 (4.2.1) analogicznie w płaszczyznach y i z. Ponadto aby uatrakcyjnić wygląd parametry są w pewnym zakresie losowe, a równanie modulowane jest funkcją sinus. Nasuwa się pytanie w jaki sposób utrzymać ciągłość spadania cząsteczek? Odpowiedź jest prosta możemy modyfikować bufor wierzchołków, by zmienić parametry początkowe co jakiś czas, albo użyć funkcji okresowej. W mojej implementacji używam operacji dzielenia modulo przez okres funkcji czyli średni czas potrzebny cząsteczce na przebycie drogi od stanu początkowego do końcowego (tutaj do najniższego punktu na levelu). Istotną kwestią jest też odpowiednie rozrzucenie cząsteczek w pionie(przykładowo dodanie każdej cząsteczce losowego offsetu z zakresu [0,T], gdzie T jest okresem i dodanie powyższego offsetu do aktualnej różnicy czasu) i zróżnicowanie parametrów prędkości, by cząsteczki nie spadały jednostajnymi falami tylko w sposób ciągły wizualnie. Taki system umożliwia uzyskanie wydajności rzędu setek tysięcy cząsteczek, więc można go stosować na dużych przestrzeniach i symulować nim efekty atmosferyczne. Jednak należy uciec się do pewnej sztuczki kamera powinna przy każdym zbliżeniu/oddaleniu obejmować obszar na którym występują nasze cząsteczki, wtedy można dokonywać ich translacji przez 7

8 Michał Mocarski Zaawansowane I efektywne systemy cząsteczkowe w grach komputerowych macierz obrotu kamery. Jak uzyskać złudzenie ruchu względem cząsteczek? Najprościej wyznaczyć wektor ruchu kamery i dodać wektor odwrotny do niego, do wektorów opisujących równanie ruchu cząsteczek. Rozwiązanie takie daje naprawdę przy wysokiej wydajności w stosunku do klasycznych systemów cząsteczkowych. Dodatkowo bezstanowy system cząsteczkowy można wyposażyć w podstawową detekcję kolizji (np. żeby śnieg nie padał w domu). Polegałoby to na wykorzystaniu techniki detekcji kolizji podobnej do tej zaprezentowanej przy stanowym systemie cząsteczkowym. Musimy wyznaczyć prostą najlepszego dopasowania, która interpolować będzie ruch we wszystkich 3 płaszczyznach. Posłuży ona jako kierunek kamery renderującej głębokość całej sceny z jej punktu widzenia. Teraz wystarczy że przy renderowaniu cząsteczek ich pozycję przeniesiemy do układu współrzędnych naszej depth kamery i odczytamy wartość głębokości z tekstury (w jednostce vertex shader w sprzęcie >SM3.0 lub pixel shader w jednostce >SM2.0). Jeśli będzie ona mniejsza od głębokości aktualnej cząsteczki, to cząsteczka nie jest rysowana. 5. Zaawansowane techniki 5.1 Miękkie cząsteczki Cząsteczki twarde przenikają przez geometrię tworząc twarde krawędzie które psują wrażenie objętości cząstek. Rozwiązaniem może być zmniejszenie wielkości cząstek, jednak to wprowadza konieczność proceduralnego opisywania skomplikowanych kształtów i zwiększa obciążenie. Lepszym rozwiązaniem jest więc próba wygładzenia miejsca styku cząsteczek z otoczeniem. Jeśli wyrenderujemy głębokości sceny z punktu widzenia kamery, to będziemy mogli porównywać wartość głębokości sceny, z głębokością którą miałby dany piksel cząsteczki. Porównując je i używając drobnej histerezy możemy modyfikować przezroczystość cząsteczki gdy głębokości te będą podobne (wtedy następuje kolizja cząsteczki ze sceną). Efekt renderingu jest o wiele lepszy od tego dawanego przez twarde cząsteczki. 5.2 Cząsteczki wolumetryczne Cząsteczki miękkie wyglądają stosunkowo dobrze, jednak ciągle nie nadają się do reprezentacji kształtów objętościowych chmur, kłębów dymów itp. Można temu jednak zaradzić. Możemy wokół billboarda naszej cząsteczki roztoczyć wirtualną sferę i przygotować teksturę 3D (perlin noise) opisującą kolor cząsteczki w danym punkcie przestrzeni. Jeśli poprowadzimy 8

9 IV Ogólnopolska Konferencja Inżynierii Gier Komputerowych, Siedlce 2007 promień od kamery, do aktualnie renderowanego punktu to możemy wyznaczyć dwa punkty w których promień przecina naszą sferę. Jeśli głębokość sceny będzie mniejsza od głębokości naszego promienia, to musimy przyciąć odpowiednio punkt końcowy naszego promienia, by nie wykraczał on poza geometrię sceny. Teraz najistotniejsza część używamy punktu początkowego i wyliczonego końcowego aby liniowo interpolować wzdłuż promienia i wybrać na nim kilka punktów (8, 9, w zależności od potrzeb i wydajności sprzętu można dobrać) w których próbkujemy wartość naszej tekstury 3D i odczytane wartości dodajemy do siebie, biorąc pod uwagę odległość od obserwatora. Innymi słowy całkujemy funkcję 3D opisującą naszą teksturę po odległości. W ten sposób uzyskujemy bardzo naturalne i efektywne efekty objętościowe, które mogą służyć do tworzenia lokalnej mgły itp. 5.3 Cząsteczki renderowane w screen-space Interesującą perspektywą może być renderowanie np. deszczu w fazie post-processingu. Jest to możliwe gdy w każdym punkcie w którym znajduje się kamera pada deszcz, lub gdy możemy łatwo określić w buforze szablonowym gdzie rysować deszcz, a gdzie nie. Wtedy naszym zadaniem będzie wyrenderowanie znikomej ilości cząsteczek od offscreen bufora, bądź użycie animowanej tekstury i ostateczne nałożenie deszczu na wyrenderowaną scenę. W taki sposób postąpili programiści tworzący demo Toy Shop. 6. Zakończenie Systemy cząsteczkowe są szeroko stosowane w grafice 3D. Celem tego referatu było przybliżenie technik stosowanych do uatrakcyjnienia ich wyglądu oraz zwiększenia wydajności. Część tych technik dotyczy różnych płaszczyzn, więc można je łączyć. Dzięki temu możemy uzyskać zaskakujące efekty w czasie rzeczywistym. Bibliografia [1] Microsoft Windows DDK, [2] Microsoft DiectX SDK, Luty 2007 [3] ARB_point_sprite, [4] Natalya Tatarchuk, ATI ToyShop Revealed(Eurographics Animation Festival) [5] Lutz Latta, Building a Million Particle System (Games Developer Conference 2004) 9

10 Michał Mocarski Zaawansowane I efektywne systemy cząsteczkowe w grach komputerowych Advanced and effective particle systems in computer games Abstract Paper focuses on particie systems as a source of special effects in computer games. It describes applications, methods of presenting graphical and physical representation of particles, techniques of animation and unusual approaches to particle systems. 10

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 Wykład 5. Potok Renderowania Oświetlenie. mgr inż. Michał Chwesiuk 1/38

Grafika Komputerowa Wykład 5. Potok Renderowania Oświetlenie. mgr inż. Michał Chwesiuk 1/38 Wykład 5 Potok Renderowania Oświetlenie mgr inż. 1/38 Podejście śledzenia promieni (ang. ray tracing) stosuje się w grafice realistycznej. Śledzone są promienie przechodzące przez piksele obrazu wynikowego

Bardziej szczegółowo

Karty graficzne możemy podzielić na:

Karty 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ółowo

Sphere tracing: integracja z klasycznymi metodami symulacji i renderingu

Sphere tracing: integracja z klasycznymi metodami symulacji i renderingu Sphere tracing: integracja z klasycznymi metodami symulacji i renderingu IGK 2012 Michał Jarząbek W skrócie Funkcje niejawne opisują powierzchnie niejawne Powierzchnie niejawne metoda reprezentacji "obiektów"

Bardziej szczegółowo

SYMULACJA OPADÓW ATMOSFERYCZNYCH I POKRYWY ŚNIEŻNEJ W GENERATORZE OBRAZU JASKIER IG

SYMULACJA 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ółowo

Grafika Komputerowa Wykład 4. Synteza grafiki 3D. mgr inż. Michał Chwesiuk 1/30

Grafika Komputerowa Wykład 4. Synteza grafiki 3D. mgr inż. Michał Chwesiuk 1/30 Wykład 4 mgr inż. 1/30 Synteza grafiki polega na stworzeniu obrazu w oparciu o jego opis. Synteza obrazu w grafice komputerowej polega na wykorzystaniu algorytmów komputerowych do uzyskania obrazu cyfrowego

Bardziej szczegółowo

Julia 4D - raytracing

Julia 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ółowo

Zaawansowana Grafika Komputerowa

Zaawansowana Grafika Komputerowa Zaawansowana Komputerowa Michał Chwesiuk Zachodniopomorski Uniwersytet Technologiczny w Szczecinie Wydział Informatyki 28 Luty 2017 Michał Chwesiuk Zaawansowana Komputerowa 28 Luty 2017 1/11 O mnie inż.

Bardziej szczegółowo

Karta 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 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ółowo

Oświetlenie. Modelowanie oświetlenia sceny 3D. Algorytmy cieniowania.

Oświetlenie. Modelowanie oświetlenia sceny 3D. Algorytmy cieniowania. Oświetlenie. Modelowanie oświetlenia sceny 3D. Algorytmy cieniowania. Chcąc osiągnąć realizm renderowanego obrazu, należy rozwiązać problem świetlenia. Barwy, faktury i inne właściwości przedmiotów postrzegamy

Bardziej szczegółowo

Programowanie gier komputerowych Tomasz Martyn Wykład 6. Materiały informacje podstawowe

Programowanie 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ółowo

Architektura Procesorów Graficznych

Architektura 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ółowo

Karta graficzna karta rozszerzeo odpowiedzialna generowanie sygnału graficznego dla ekranu monitora. Podstawowym zadaniem karty graficznej jest

Karta 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ółowo

Czym jest wykrywanie kolizji. Elementarne metody detekcji kolizji. Trochę praktyki: Jak przygotować Visual Studio 2010 do pracy z XNA pod Windows

Czym jest wykrywanie kolizji. Elementarne metody detekcji kolizji. Trochę praktyki: Jak przygotować Visual Studio 2010 do pracy z XNA pod Windows Czym jest wykrywanie kolizji. Elementarne metody detekcji kolizji. Trochę praktyki: Jak przygotować Visual Studio 2010 do pracy z XNA pod Windows Phone 7. Skąd i jakie paczki pobrać. Coś napiszemy :-)

Bardziej szczegółowo

GRAFIKA KOMPUTEROWA. Rozwiązania sprzętowe i programowe. Przyspieszanie sprzętowe. Synteza i obróbka obrazu

GRAFIKA 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ółowo

Wyświetlanie terenu. Clipmapy geometrii

Wyś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ółowo

Wykład 4. Rendering (1) Informacje podstawowe

Wykł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ółowo

3. Macierze i Układy Równań Liniowych

3. Macierze i Układy Równań Liniowych 3. Macierze i Układy Równań Liniowych Rozważamy równanie macierzowe z końcówki ostatniego wykładu ( ) 3 1 X = 4 1 ( ) 2 5 Podstawiając X = ( ) x y i wymnażając, otrzymujemy układ 2 równań liniowych 3x

Bardziej szczegółowo

0. OpenGL ma układ współrzędnych taki, że oś y jest skierowana (względem monitora) a) w dół b) w górę c) w lewo d) w prawo e) w kierunku do

0. OpenGL ma układ współrzędnych taki, że oś y jest skierowana (względem monitora) a) w dół b) w górę c) w lewo d) w prawo e) w kierunku do 0. OpenGL ma układ współrzędnych taki, że oś y jest skierowana (względem monitora) a) w dół b) w górę c) w lewo d) w prawo e) w kierunku do obserwatora f) w kierunku od obserwatora 1. Obrót dookoła osi

Bardziej szczegółowo

Implementacja sieci neuronowych na karcie graficznej. Waldemar Pawlaszek

Implementacja 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ółowo

Wprowadzenie. Artur Staszczyk Bartłomiej Filipek

Wprowadzenie. 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ółowo

Ćwiczenie 4 - Podstawy materiałów i tekstur. Renderowanie obrazu i animacji

Ćwiczenie 4 - Podstawy materiałów i tekstur. Renderowanie obrazu i animacji Ćwiczenie 4 - Podstawy materiałów i tekstur. Renderowanie obrazu i animacji Materiał jest zbiorem informacji o właściwościach powierzchni. Składa się na niego kolor, sposób odbijania światła i sposób nakładania

Bardziej szczegółowo

GRAFIKA KOMPUTEROWA. Plan wykładu. 1. Początki grafiki komputerowej. 2. Grafika komputerowa a dziedziny pokrewne. 3. Omówienie programu przedmiotu

GRAFIKA KOMPUTEROWA. Plan wykładu. 1. Początki grafiki komputerowej. 2. Grafika komputerowa a dziedziny pokrewne. 3. Omówienie programu przedmiotu GRAFIKA KOMPUTEROWA 1. Układ przedmiotu semestr VI - 20000 semestr VII - 00200 Dr inż. Jacek Jarnicki Instytut Cybernetyki Technicznej p. 226 C-C 3, tel. 320-28-2323 jacek@ict.pwr.wroc.pl www.zsk.ict.pwr.wroc.pl

Bardziej szczegółowo

1 Wstęp teoretyczny. Temat: Obcinanie odcinków do prostokąta. Grafika komputerowa 2D. Instrukcja laboratoryjna Prostokąt obcinający

1 Wstęp teoretyczny. Temat: Obcinanie odcinków do prostokąta. Grafika komputerowa 2D. Instrukcja laboratoryjna Prostokąt obcinający Instrukcja laboratoryjna 3 Grafika komputerowa 2D Temat: Obcinanie odcinków do prostokąta Przygotował: dr inż. Grzegorz Łukawski, mgr inż. Maciej Lasota, mgr inż. Tomasz Michno 1 Wstęp teoretyczny 1.1

Bardziej szczegółowo

1. Prymitywy graficzne

1. Prymitywy graficzne 1. Prymitywy graficzne Prymitywy graficzne są elementarnymi obiektami jakie potrafi bezpośrednio rysować, określony system graficzny (DirectX, OpenGL itp.) są to: punkty, listy linii, serie linii, listy

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

Definicja obrotu: Definicja elementów obrotu:

Definicja obrotu: Definicja elementów obrotu: 5. Obroty i kłady Definicja obrotu: Obrotem punktu A dookoła prostej l nazywamy ruch punktu A po okręgu k zawartym w płaszczyźnie prostopadłej do prostej l w kierunku zgodnym lub przeciwnym do ruchu wskazówek

Bardziej szczegółowo

RENDERING W CZASIE RZECZYWISTYM. Michał Radziszewski

RENDERING W CZASIE RZECZYWISTYM. Michał Radziszewski RENDERING W CZASIE RZECZYWISTYM Michał Radziszewski Plan wykładu Programy geometrii wprowadzenie Miejsce w potoku graficznym Wejścia i wyjścia programów geometrii Wierzchołki, prymitywy, ich nowe rodzaje

Bardziej szczegółowo

Zaawansowane systemy programowania grafiki. Wprowadzenie. Podstawy OpenGL

Zaawansowane 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ółowo

Bartosz Bazyluk SYNTEZA GRAFIKI 3D Grafika realistyczna i czasu rzeczywistego. Pojęcie sceny i kamery. Grafika Komputerowa, Informatyka, I Rok

Bartosz Bazyluk SYNTEZA GRAFIKI 3D Grafika realistyczna i czasu rzeczywistego. Pojęcie sceny i kamery. Grafika Komputerowa, Informatyka, I Rok SYNTEZA GRAFIKI 3D Grafika realistyczna i czasu rzeczywistego. Pojęcie sceny i kamery. Grafika Komputerowa, Informatyka, I Rok Synteza grafiki 3D Pod pojęciem syntezy grafiki rozumiemy stworzenie grafiki

Bardziej szczegółowo

I. Potęgi. Logarytmy. Funkcja wykładnicza.

I. Potęgi. Logarytmy. Funkcja wykładnicza. WYMAGANIA EDUKACYJNE Z MATEMATYKI DLA KLASY TRZECIEJ LICEUM OGÓLNOKSZTAŁCĄCEGO ZAKRES PODSTAWOWY I. Potęgi. Logarytmy. Funkcja wykładnicza. dobrą, bardzo - oblicza potęgi o wykładnikach wymiernych; - zna

Bardziej szczegółowo

FUNKCJA LINIOWA, RÓWNANIA I UKŁADY RÓWNAŃ LINIOWYCH

FUNKCJA LINIOWA, RÓWNANIA I UKŁADY RÓWNAŃ LINIOWYCH FUNKCJA LINIOWA, RÓWNANIA I UKŁADY RÓWNAŃ LINIOWYCH PROPORCJONALNOŚĆ PROSTA Proporcjonalnością prostą nazywamy zależność między dwoma wielkościami zmiennymi x i y, określoną wzorem: y = a x Gdzie a jest

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

WYMAGANIA EDUKACYJNE Z MATEMATYKI 2016/2017 (zakres podstawowy) klasa 3abc

WYMAGANIA EDUKACYJNE Z MATEMATYKI 2016/2017 (zakres podstawowy) klasa 3abc WYMAGANIA EDUKACYJNE Z MATEMATYKI 2016/2017 (zakres podstawowy) klasa 3abc 1, Ciągi zna definicję ciągu (ciągu liczbowego); potrafi wyznaczyć dowolny wyraz ciągu liczbowego określonego wzorem ogólnym;

Bardziej szczegółowo

1. Potęgi. Logarytmy. Funkcja wykładnicza

1. Potęgi. Logarytmy. Funkcja wykładnicza 1. Potęgi. Logarytmy. Funkcja wykładnicza Tematyka zajęć: WYMAGANIA EDUKACYJNE NA POSZCZEGÓLNE OCENY KL. 3 POZIOM PODSTAWOWY Potęga o wykładniku rzeczywistym powtórzenie Funkcja wykładnicza i jej własności

Bardziej szczegółowo

Automatyczne tworzenie trójwymiarowego planu pomieszczenia z zastosowaniem metod stereowizyjnych

Automatyczne tworzenie trójwymiarowego planu pomieszczenia z zastosowaniem metod stereowizyjnych Automatyczne tworzenie trójwymiarowego planu pomieszczenia z zastosowaniem metod stereowizyjnych autor: Robert Drab opiekun naukowy: dr inż. Paweł Rotter 1. Wstęp Zagadnienie generowania trójwymiarowego

Bardziej szczegółowo

Tomasz Tobiasz PLAN WYNIKOWY (zakres podstawowy)

Tomasz Tobiasz PLAN WYNIKOWY (zakres podstawowy) Tomasz Tobiasz PLAN WYNIKOWY (zakres podstawowy) klasa 3. PAZDRO Plan jest wykazem wiadomości i umiejętności, jakie powinien mieć uczeń ubiegający się o określone oceny na poszczególnych etapach edukacji

Bardziej szczegółowo

Druga aplikacja Prymitywy, alpha blending, obracanie bitmap oraz mały zestaw przydatnych funkcji wyświetlających własnej roboty.

Druga aplikacja Prymitywy, alpha blending, obracanie bitmap oraz mały zestaw przydatnych funkcji wyświetlających własnej roboty. Przyszedł czas na rysowanie własnych figur, czyli prymitywy, obracanie bitmap, oraz alpha blending-czyli półprzezroczystość. Będę opisywał tylko rzeczy nowe-nie ma potrzeby abym się powtarzał. Zaczynajmny

Bardziej szczegółowo

Mikołaj Kania Waldemar Korłub Jakub Krajewski

Mikołaj Kania Waldemar Korłub Jakub Krajewski Mikołaj Kania Waldemar Korłub Jakub Krajewski Wprowadzenie do projektowania gry strategicznej w oparciu o XNA Framework Mobilizacja Nasibu Isle XNA Framework Wirtualny świat rozgrywki Elementy 2D Elementy

Bardziej szczegółowo

GRAFIKA KOMPUTEROWA. Rozwiązania sprzętowe i programowe. Przyspieszanie sprzętowe. Synteza dźwięku i obrazu

GRAFIKA 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ółowo

RENDERING W CZASIE RZECZYWISTYM. Michał Radziszewski

RENDERING W CZASIE RZECZYWISTYM. Michał Radziszewski RENDERING W CZASIE RZECZYWISTYM Michał Radziszewski Plan wykładu Mapowanie nierówności wprowadzenie Poziomy szczegółowości Cieniowanie w układzie stycznym Generacja wektorów normalnych i stycznych Mapy

Bardziej szczegółowo

Przegląd architektury PlayStation 3

Przeglą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ółowo

Mapowanie sześcienne otoczenia (cubic environment mapping)

Mapowanie sześcienne otoczenia (cubic environment mapping) Mapowanie sześcienne otoczenia (cubic environment mapping) Mapowanie środowiska jest techniką pozwalającą na odwzorowanie otoczenia na powierzchni przedmiotu przy użyciu specjalnie spreparowanej tekstury.

Bardziej szczegółowo

RENDERING W CZASIE RZECZYWISTYM. Michał Radziszewski

RENDERING W CZASIE RZECZYWISTYM. Michał Radziszewski RENDERING W CZASIE RZECZYWISTYM Michał Radziszewski Plan wykładu Opóźnione cieniowanie wprowadzenie Koszt obliczeniowy cieniowania Cieniowanie jedno- i wieloprzebiegowe Cieniowanie opóźnione Schemat opóźnionego

Bardziej szczegółowo

Antyaliasing w 1 milisekundę. Krzysztof Kluczek

Antyaliasing w 1 milisekundę. Krzysztof Kluczek Antyaliasing w 1 milisekundę Krzysztof Kluczek Zasada działania Założenia: Metoda bazująca na Morphological Antialiasing (MLAA) wejście: obraz wyrenderowanej sceny wyjście: zantyaliasowany obraz Krótki

Bardziej szczegółowo

RENDERING W CZASIE RZECZYWISTYM. Michał Radziszewski

RENDERING W CZASIE RZECZYWISTYM. Michał Radziszewski RENDERING W CZASIE RZECZYWISTYM Michał Radziszewski Plan wykładu Obiekty półprzeźroczyste wprowadzenie Test alfa, odrzucanie Mieszanie alfa Obiekty naklejane, ang. decals Konwersja próbki punktowe obraz

Bardziej szczegółowo

Wybrane aspekty teorii grafiki komputerowej - dążenie do wizualnego realizmu. Mirosław Głowacki

Wybrane aspekty teorii grafiki komputerowej - dążenie do wizualnego realizmu. Mirosław Głowacki Wybrane aspekty teorii grafiki komputerowej - dążenie do wizualnego realizmu Mirosław Głowacki Zagadnienia Jak rozumiemy fotorealizm w grafice komputerowej Historyczny rozwój kart graficznych Przekształcenia

Bardziej szczegółowo

Animowana grafika 3D. Opracowanie: J. Kęsik.

Animowana grafika 3D. Opracowanie: J. Kęsik. Animowana grafika 3D Opracowanie: J. Kęsik kesik@cs.pollub.pl Rzutowanie Równoległe Perspektywiczne Rzutowanie równoległe Rzutowanie równoległe jest powszechnie używane w rysunku technicznym - umożliwienie

Bardziej szczegółowo

Przyspieszanie sprzętowe

Przyspieszanie 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ółowo

OpenGL - Open Graphics Library. Programowanie grafiki komputerowej. OpenGL 3.0. OpenGL - Architektura (1)

OpenGL - Open Graphics Library. Programowanie grafiki komputerowej. OpenGL 3.0. OpenGL - Architektura (1) OpenGL - Open Graphics Library Programowanie grafiki komputerowej Rados$aw Mantiuk Wydzia$ Informatyki Zachodniopomorski Uniwersytet Technologiczny! OpenGL: architektura systemu do programowania grafiki

Bardziej szczegółowo

Modelowanie i wstęp do druku 3D Wykład 1. Robert Banasiak

Modelowanie i wstęp do druku 3D Wykład 1. Robert Banasiak Modelowanie i wstęp do druku 3D Wykład 1 Robert Banasiak Od modelu 3D do wydruku 3D Typowa droga...czasem wyboista... Pomysł!! Modeler 3D Przygotowanie modelu do druku Konfiguracja Programu do drukowania

Bardziej szczegółowo

Transformacje obiektów 3D

Transformacje obiektów 3D Synteza i obróbka obrazu Transformacje obiektów 3D Opracowanie: dr inż. Grzegorz Szwoch Politechnika Gdańska Katedra Systemów Multimedialnych Lokalny układ współrzędnych Tworząc model obiektu, zapisujemy

Bardziej szczegółowo

Wprowadzenie do grafiki maszynowej. Wprowadzenie do historii OpenGL

Wprowadzenie 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ół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

Laboratorium grafiki komputerowej i animacji. Ćwiczenie V - Biblioteka OpenGL - oświetlenie sceny

Laboratorium grafiki komputerowej i animacji. Ćwiczenie V - Biblioteka OpenGL - oświetlenie sceny Laboratorium grafiki komputerowej i animacji Ćwiczenie V - Biblioteka OpenGL - oświetlenie sceny Przygotowanie do ćwiczenia: 1. Zapoznać się ze zdefiniowanymi w OpenGL modelami światła i właściwości materiałów.

Bardziej szczegółowo

Implementacja filtru Canny ego

Implementacja filtru Canny ego ANALIZA I PRZETWARZANIE OBRAZÓW Implementacja filtru Canny ego Autor: Katarzyna Piotrowicz Kraków,2015-06-11 Spis treści 1. Wstęp... 1 2. Implementacja... 2 3. Przykłady... 3 Porównanie wykrytych krawędzi

Bardziej szczegółowo

Filtrowanie tekstur. Kinga Laurowska

Filtrowanie tekstur. Kinga Laurowska Filtrowanie tekstur Kinga Laurowska Wprowadzenie Filtrowanie tekstur (inaczej wygładzanie) technika polegająca na 'rozmywaniu' sąsiadujących ze sobą tekseli (pikseli tekstury). Istnieje wiele metod filtrowania,

Bardziej szczegółowo

Wybrane aspekty teorii grafiki komputerowej - dążenie do wizualnego realizmu. Mirosław Głowacki

Wybrane aspekty teorii grafiki komputerowej - dążenie do wizualnego realizmu. Mirosław Głowacki Wybrane aspekty teorii grafiki komputerowej - dążenie do wizualnego realizmu Mirosław Głowacki Obraz realistyczny Pojęcie obrazu realistycznego jest rozumiane w różny sposób Nie zawsze obraz realistyczny

Bardziej szczegółowo

Efekty dodatkowe w rasteryzacji

Efekty dodatkowe w rasteryzacji Synteza i obróbka obrazu Efekty dodatkowe w rasteryzacji Opracowanie: dr inż. Grzegorz Szwoch Politechnika Gdańska Katedra Systemów Multimedialnych Efekty dodatkowe Cieniowanie i teksturowanie pozwala

Bardziej szczegółowo

TEMAT :Animacja Komputerowa. Projekt współfinansowany w ramach Europejskiego Funduszu Społecznego

TEMAT :Animacja Komputerowa. Projekt współfinansowany w ramach Europejskiego Funduszu Społecznego TEMAT :Animacja Komputerowa Projekt współfinansowany w ramach Europejskiego Funduszu Społecznego Animacja komputerowa: Animacja komputerowa jest generalnie rzecz biorąc cyfrowym spadkobiercą sztuki animacji

Bardziej szczegółowo

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE Nazwa przedmiotu: Kierunek: Informatyka Rodzaj przedmiotu: moduł specjalności obowiązkowy: Inżynieria oprogramowania Rodzaj zajęć: wykład, laboratorium I KARTA PRZEDMIOTU CEL PRZEDMIOTU GRAFICZNE MODELOWANIE

Bardziej szczegółowo

Programowanie Procesorów Graficznych

Programowanie 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ółowo

Ćwiczenie dodatkowe - Wybrane narzędzia modelowania Zadanie Przygotować model stołu z krzesłami jak na rysunku poniżej(rys. 1).

Ćwiczenie dodatkowe - Wybrane narzędzia modelowania Zadanie Przygotować model stołu z krzesłami jak na rysunku poniżej(rys. 1). Ćwiczenie dodatkowe - Wybrane narzędzia modelowania Zadanie Przygotować model stołu z krzesłami jak na rysunku poniżej(rys. 1). Wymiary krzesła: wymiary przednich nóg: 1 x 1 x 6 wymiary tylnich nóg połączonych

Bardziej szczegółowo

SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE

SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE WINDOWS 1 SO i SK/WIN 006 Wydajność systemu 2 SO i SK/WIN Najprostszym sposobem na poprawienie wydajności systemu, jeżeli dysponujemy zbyt małą ilością pamięci RAM

Bardziej szczegółowo

Gry Komputerowe Laboratorium 4. Teksturowanie Kolizje obiektów z otoczeniem. mgr inż. Michał Chwesiuk 1/29. Szczecin, r

Gry Komputerowe Laboratorium 4. Teksturowanie Kolizje obiektów z otoczeniem. mgr inż. Michał Chwesiuk 1/29. Szczecin, r Gry Komputerowe Laboratorium 4 Teksturowanie Kolizje obiektów z otoczeniem mgr inż. Michał Chwesiuk 1/29 Klasa Stwórzmy najpierw klasę TextureManager, która będzie obsługiwała tekstury w projekcie. 2/29

Bardziej szczegółowo

Transformacje. dr Radosław Matusik. radmat

Transformacje. dr Radosław Matusik.   radmat www.math.uni.lodz.pl/ radmat Cel wykładu Celem wykładu jest prezentacja m.in. przestrzeni modelu, świata, kamery oraz projekcji, a także omówienie sposobów oświetlania i cieniowania obiektów. Pierwsze

Bardziej szczegółowo

Dodawanie grafiki i obiektów

Dodawanie grafiki i obiektów Dodawanie grafiki i obiektów Word nie jest edytorem obiektów graficznych, ale oferuje kilka opcji, dzięki którym można dokonywać niewielkich zmian w rysunku. W Wordzie możesz zmieniać rozmiar obiektu graficznego,

Bardziej szczegółowo

Śledzenie promieni w grafice komputerowej

Śledzenie promieni w grafice komputerowej Dariusz Sawicki Śledzenie promieni w grafice komputerowej Warszawa 2011 Spis treści Rozdział 1. Wprowadzenie....... 6 1.1. Śledzenie promieni a grafika realistyczna... 6 1.2. Krótka historia śledzenia

Bardziej szczegółowo

Tworzenie prezentacji w MS PowerPoint

Tworzenie prezentacji w MS PowerPoint Tworzenie prezentacji w MS PowerPoint Program PowerPoint dostarczany jest w pakiecie Office i daje nam możliwość stworzenia prezentacji oraz uatrakcyjnienia materiału, który chcemy przedstawić. Prezentacje

Bardziej szczegółowo

D O K U M E N T A C J A

D O K U M E N T A C J A Państwowa Wyższa Szkoła Zawodowa w Tarnowie Instytut Politechniczny Informatyka Stosowana III r. D O K U M E N T A C J A Snake 3D Piotr Gębiś Paweł Gładysz Dokumentacja do projektu Snake 3D. W dokumencie

Bardziej szczegółowo

Temat: Sieci neuronowe oraz technologia CUDA

Temat: Sieci neuronowe oraz technologia CUDA Elbląg, 27.03.2010 Temat: Sieci neuronowe oraz technologia CUDA Przygotował: Mateusz Górny VIII semestr ASiSK Wstęp Sieci neuronowe są to specyficzne struktury danych odzwierciedlające sieć neuronów w

Bardziej szczegółowo

Animowana grafika 3D. Opracowanie: J. Kęsik.

Animowana grafika 3D. Opracowanie: J. Kęsik. Animowana grafika 3D Opracowanie: J. Kęsik kesik@cs.pollub.pl Powierzchnia obiektu 3D jest renderowana jako czarna jeżeli nie jest oświetlana żadnym światłem (wyjątkiem są obiekty samoświecące) Oświetlenie

Bardziej szczegółowo

Plan wykładu. Wykład 3. Rzutowanie prostokątne, widoki, przekroje, kłady. Rzutowanie prostokątne - geneza. Rzutowanie prostokątne - geneza

Plan wykładu. Wykład 3. Rzutowanie prostokątne, widoki, przekroje, kłady. Rzutowanie prostokątne - geneza. Rzutowanie prostokątne - geneza Plan wykładu Wykład 3 Rzutowanie prostokątne, widoki, przekroje, kłady 1. Rzutowanie prostokątne - geneza 2. Dwa sposoby wzajemnego położenia rzutni, obiektu i obserwatora, metoda europejska i amerykańska

Bardziej szczegółowo

Wybrane aspekty teorii grafiki komputerowej - dążenie do wizualnego realizmu. Mirosław Głowacki

Wybrane aspekty teorii grafiki komputerowej - dążenie do wizualnego realizmu. Mirosław Głowacki Wybrane aspekty teorii grafiki komputerowej - dążenie do wizualnego realizmu Mirosław Głowacki Zagadnienia Jak rozumiemy fotorealizm w grafice komputerowej Historyczny rozwój kart graficznych Przekształcenia

Bardziej szczegółowo

Tematy lekcji zajęć komputerowych klasa 5b grupa 1 i grupa 2

Tematy lekcji zajęć komputerowych klasa 5b grupa 1 i grupa 2 Tematy lekcji zajęć komputerowych klasa 5b grupa 1 i grupa 2 1 Program nauczania. Przedmiotowy system oceniania. Regulamin pracowni komputerowej. - 7 punktów regulaminu potrafi powiedzieć, czego się będzie

Bardziej szczegółowo

Grafika komputerowa i wizualizacja

Grafika 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ółowo

WPROWADZENIE DO GRAFIKI KOMPUTEROWEJ

WPROWADZENIE DO GRAFIKI KOMPUTEROWEJ WPROWADZENIE DO GRAFIKI KOMPUTEROWEJ Dr inż.. Jacek Jarnicki Doc. PWr. Instytut Cybernetyki Technicznej p. 226 C-C 3, tel. 320-28-2323 jacek@ict.pwr.wroc.pl www.zsk.ict.pwr.wroc.pl 1. Układ przedmiotu

Bardziej szczegółowo

Politechnika Warszawska Wydział Mechatroniki Instytut Automatyki i Robotyki

Politechnika Warszawska Wydział Mechatroniki Instytut Automatyki i Robotyki Politechnika Warszawska Wydział Mechatroniki Instytut Automatyki i Robotyki Ćwiczenie laboratoryjne 2 Temat: Modelowanie powierzchni swobodnych 3D przy użyciu programu Autodesk Inventor Spis treści 1.

Bardziej szczegółowo

WYMAGANIA Z WIEDZY I UMIEJĘTNOŚCI NA POSZCZEGÓLNE STOPNIE SZKOLNE DLA KLASY CZWARTEJ H. zakres rozszerzony. Wiadomości i umiejętności

WYMAGANIA Z WIEDZY I UMIEJĘTNOŚCI NA POSZCZEGÓLNE STOPNIE SZKOLNE DLA KLASY CZWARTEJ H. zakres rozszerzony. Wiadomości i umiejętności WYMAGANIA Z WIEDZY I UMIEJĘTNOŚCI NA POSZCZEGÓLNE STOPNIE SZKOLNE DLA KLASY CZWARTEJ H. zakres rozszerzony Funkcja wykładnicza i funkcja logarytmiczna. Stopień Wiadomości i umiejętności -definiować potęgę

Bardziej szczegółowo

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE Nazwa przedmiotu: Kierunek: Informatyka Rodzaj przedmiotu: obowiązkowy na specjalności: Inżynieria oprogramowania Rodzaj zajęć: wykład, laboratorium I KARTA PRZEDMIOTU CEL PRZEDMIOTU PRZEWODNIK PO PRZEDMIOCIE

Bardziej szczegółowo

OpenGL : Oświetlenie. mgr inż. Michał Chwesiuk mgr inż. Tomasz Sergej inż. Patryk Piotrowski. Szczecin, r 1/23

OpenGL : Oświetlenie. mgr inż. Michał Chwesiuk mgr inż. Tomasz Sergej inż. Patryk Piotrowski. Szczecin, r 1/23 OpenGL : mgr inż. Michał Chwesiuk mgr inż. Tomasz Sergej inż. Patryk Piotrowski 1/23 Folder z plikami zewnętrznymi (resources) Po odpaleniu przykładowego projektu, nie uruchomi się on poprawnie. Powodem

Bardziej szczegółowo

Oświetlenie obiektów 3D

Oświetlenie obiektów 3D Synteza i obróbka obrazu Oświetlenie obiektów 3D Opracowanie: dr inż. Grzegorz Szwoch Politechnika Gdańska Katedra Systemów Multimedialnych Rasteryzacja Spłaszczony po rzutowaniu obraz siatek wielokątowych

Bardziej szczegółowo

1 Temat: Vertex Shader

1 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ółowo

Wprowadzenie do rysowania w 3D. Praca w środowisku 3D

Wprowadzenie do rysowania w 3D. Praca w środowisku 3D Wprowadzenie do rysowania w 3D 13 Praca w środowisku 3D Pierwszym krokiem niezbędnym do rozpoczęcia pracy w środowisku 3D programu AutoCad 2010 jest wybór odpowiedniego obszaru roboczego. Można tego dokonać

Bardziej szczegółowo

IRONCAD. TriBall IRONCAD Narzędzie pozycjonujące

IRONCAD. TriBall IRONCAD Narzędzie pozycjonujące IRONCAD IRONCAD 2016 TriBall o Narzędzie pozycjonujące Spis treści 1. Narzędzie TriBall... 2 2. Aktywacja narzędzia TriBall... 2 3. Specyfika narzędzia TriBall... 4 3.1 Kula centralna... 4 3.2 Kule wewnętrzne...

Bardziej szczegółowo

Grafika 3D na przykładzie XNA 3.1

Grafika 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ółowo

BLENDER- Laboratorium 1 opracował Michał Zakrzewski, 2014 r. Interfejs i poruszanie się po programie oraz podstawy edycji bryły

BLENDER- Laboratorium 1 opracował Michał Zakrzewski, 2014 r. Interfejs i poruszanie się po programie oraz podstawy edycji bryły BLENDER- Laboratorium 1 opracował Michał Zakrzewski, 2014 r. Interfejs i poruszanie się po programie oraz podstawy edycji bryły Po uruchomieniu programu Blender zawsze ukaże się nam oto taki widok: Jak

Bardziej szczegółowo

Grafika 3D program POV-Ray - 94 -

Grafika 3D program POV-Ray - 94 - Temat 12: Polecenie blob parametry i zastosowanie do tworzenia obiektów. Użycie polecenia blob (kropla) jest wygodnym sposobem tworzenia gładkiego przejścia pomiędzy bryłami (kulami lub walcami). Możemy

Bardziej szczegółowo

Programowanie procesorów graficznych GPGPU

Programowanie 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ółowo

Algorytm SAT. Marek Zając 2012. Zabrania się rozpowszechniania całości lub fragmentów niniejszego tekstu bez podania nazwiska jego autora.

Algorytm SAT. Marek Zając 2012. Zabrania się rozpowszechniania całości lub fragmentów niniejszego tekstu bez podania nazwiska jego autora. Marek Zając 2012 Zabrania się rozpowszechniania całości lub fragmentów niniejszego tekstu bez podania nazwiska jego autora. Spis treści 1. Wprowadzenie... 3 1.1 Czym jest SAT?... 3 1.2 Figury wypukłe...

Bardziej szczegółowo

Ćwiczenie nr 8 - Modyfikacje części, tworzenie brył złożonych

Ćwiczenie nr 8 - Modyfikacje części, tworzenie brył złożonych Ćwiczenie nr 8 - Modyfikacje części, tworzenie brył złożonych Wprowadzenie Utworzone elementy bryłowe należy traktować jako wstępnie wykonane elementy, które dopiero po dalszej obróbce będą gotowymi częściami

Bardziej szczegółowo

Grafika 3D program POV-Ray - 1 -

Grafika 3D program POV-Ray - 1 - Temat 1: Ogólne informacje o programie POV-Ray. Interfejs programu. Ustawienie kamery i świateł. Podstawowe obiekty 3D, ich położenie, kolory i tekstura oraz przezroczystość. Skrót POV-Ray to rozwinięcie

Bardziej szczegółowo

Karty graficzne: budowa, zasada działania, standardy, parametry, dodatkowe funkcje

Karty 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ółowo

Inventor 2016 co nowego?

Inventor 2016 co nowego? Inventor 2016 co nowego? OGÓLNE 1. Udoskonalenia wizualizacji, grafiki i programu Studio Nowa obsługa oświetlenia opartego na obrazie (IBL, Image Based Lighting) Wszystkie style oświetlenia w programie

Bardziej szczegółowo

Systemy wirtualnej rzeczywistości. Podstawy grafiki 3D

Systemy wirtualnej rzeczywistości. Podstawy grafiki 3D Uniwersytet Zielonogórski Instytut Sterowania i Systemów Informatycznych Systemy wirtualnej rzeczywistości Laboratorium Podstawy grafiki 3D Wstęp: W drugiej części przedstawione zostaną podstawowe mechanizmy

Bardziej szczegółowo

Załącznik KARTA PRZEDMIOTU. KARTA PRZEDMIOTU Wydział Automatyki, Elektroniki i Informatyki, Rok akademicki: 2009/2010 KOMPUTEROWA

Załącznik KARTA PRZEDMIOTU. KARTA PRZEDMIOTU Wydział Automatyki, Elektroniki i Informatyki, Rok akademicki: 2009/2010 KOMPUTEROWA 1/1 Wydział Automatyki, Elektroniki i Informatyki, Rok akademicki: 2009/2010 Nazwa przedmiotu: Kierunek: Specjalność: Tryb studiów: GRAFIKA KOMPUTEROWA INFORMATYKA Kod/nr GK PRZEDMIOT OBOWIĄZKOWY DLA WSZYSTKICH

Bardziej szczegółowo

GLKit. Wykład 10. Programowanie aplikacji mobilnych na urządzenia Apple (IOS i ObjectiveC) #import "Fraction.h" #import <stdio.h>

GLKit. 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ółowo

Poró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 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ółowo

Wykład 5. Rendering (2) Geometria

Wykł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ółowo

Organizacja pamięci w procesorach graficznych

Organizacja 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ółowo