Jacek Matulewski
Programowanie grafiki 3D


GLSL | OpenGL (nowoczesne) | OpenGL (tradycyjne) | WebGL | XNA | MonoGame | Grafika i animacja komputerowa

Programowanie kart graficznych w GLSL:
Strona kursu dotyczącego GLSL


Nowoczesny OpenGL (3.3+ i 4.*):
Kurs realizowany na bazie książki Grafika 3D czasu rzeczywistego. Nowoczesny OpenGL


OpenGL (tradycyjny):


WebGL:

Poniższe lekcje to kopia tutorialu studentów AGH ze strony http://webgl-tuts.webninja.eu/#other-home (lokalna kopia),
które zostały opracowane na bazie materiałów ze strony http://learningwebgl.com/blog/.

Opis sem. zimowy
2013-2014
sem. letni
2013-2014
(popr.)
Inicjacja i proste figury kod [html] kod [html]
Kolory kod [html] kod [html]
Przekształcenia, stos macierzy kod [html]
Bryły i bufor indeksów kod [html]
Tekstury kod [html]
Oświetlenie (model Phonga per-vertex) kod [html]

Do zrobienia: tutorial 6 (obsługa klawiszy) i tutorial 11 (obsługa myszy), tutorial 13 (oświetlenie per-fragment), tutorial 14 (ładowanie obiektów z JSON)

Pliki HTML5 są w formacie ANSI (czysty tekst). Konwersja do UTF-8 (np. po edycji w Visual Studio) może spowodować złe działanie skryptów.

Biblioteki JS i tekstura użyta w tutorialu:
glMatrix-0.9.5.min.js
webgl-utils.js
Nefryt_256x256.png

Linki (pl):
Tutorial studenta z AGH
Gry 3D w WebGL (blog)


XNA


MonoGame

Instalacja:
Pakiet instalacyjny do pobrania ze strony: http://monogame.codeplex.com/
Korzystamy z szablonu Visual C#, MonoGame, MonoGame Windows OpenGL Project.

Błędy:
1. Pomimo dołączenia do pakietu instalacyjnego MonoGame biblioteki OpenAL (biblioteka obsługująca dźwięk firmowana przez Creatibe Labs), przy próbie uruchomienia pierwszego projektu może pojawić się błąd z komunikatem o jej braku. Należy wówczas samodzielnie zainstalować OpenAL (plik instalacyjny oalinst.exe jest w pakiecie instalacyjnym MonoGame (można go otworzyć za pomocą 7-Zip) w katalogu $SHELL[17]\MonoGame\v3.0 (zob. https://monogame.codeplex.com/discussions/357014).
2. Po instalacji powinny być dostępne szablony w Visual Studio 2010 i 2012. Jeżeli ich nie ma należy odpowiednie pliki skopiować do katalogu c:\Users\[użytkownik]\Documents\Visual Studio 2012\Templates\ProjectTemplates\Visual C# (można je wydobyć z pliku instalacyjnego lub skopiować z innego komputera). W ten sam sposób można dodać szablony do Visual Studio 2013.

Więcej informacji na stronie http://www.monogame.net/

Tutoriale:
RB Whitaker's Wiki. A Game Development Launchpad
Pixel shader w MonoGame i XNA

Skrypt:
1. Wprowadzenie do MonoGame. Podstawowe koncepcje grafiki 3D
2. Kilka praktycznych uwag dotyczących projektów gier w MonoGame
3. Kwadryki (1)
4. Komponenty gry na przykładzie prostopadłościanu
5. Oświetlenie: cienie własne
6. Cienie rzucane. Mieszanie kolorów
7. Teksturowanie
8. Kwadryki (2). Oświetlenie i teksturowanie

Errata do skryptu (błędy znalezione przez studentów)
Kody źródłowe (2013-2014, semestr letni)


Grafika i animacja komputerowa
(wykład dla drugiego stopnia informatyki stosowanej)

JS-Canvas/SVG/WebGL (lato 2014)
Plan
Jacek Matulewski - WebGL
Marcin Osiński - Grywalizacja
Krzysztof Chyziński - Phaser: część 1, część 2
Radomir Rozwadowski - Pharser: Obsługa wejścia i dźwięków

Android/OpenGL ES + PhysX - bryła sztywna (lato 2013)
Kody źródłowe
Plan referatów
Referaty

Unity (lato 2012)
Dokumentacja
Referaty
Projekty

Zasoby:
Darmowa muzyka
Darmowe dźwięki, Darmowe dźwięki
Darmowe grafiki 2D
Forum - lista stron z darmową grafiką
Blog/tutorial grafiki 2D w GIMP i InkSpace

Animacja
Dwanaście podstawowych zasad animacji

Ważne filmy 3D:
Barry Levison - Young Sherlock Holmes (efekt IL&M, 1985, produkcja Steven Spielberg)
John Lesseter - Luxo Jr (1986)
Teledysk Dire Straits - Money for Nothing (1987)
...
John Lesseter - Toy Story (Pixar, 1996)
Andrew Adamson, Vicky Jenson - Shrek (Dreamworks, 2001)
...
James Cameron - Avatar (2009)


Adobe Acrobat Reader
Adobe Acrobat Reader


PowerPoint Viewer 2007
PowerPoint Viewer 2007