Grafika komputerowa – tematy prac projektowych,
studia dzienne, semestr lato 2004.
Opiekun prac: dr inż. Sławomir Samolej
Uwagi:
§
Zadania projektowe
podzielono na dwie grupy: teoretyczno-praktyczne i praktyczne. Zagadnienia
teoretyczno-praktyczne polegają na opracowaniu teoretycznym wskazanej tematyki
w postaci opisu oraz, jeśli jest to wymagane, na uzupełnienie opisu o fragmenty
oprogramowania, filmy, odnośniki, które ilustrują omawiany temat. Zagadnienia
praktyczne w pierwszej kolejności wymagają stworzenia własnego oprogramowania
zgodnie z postawionymi założeniami. Opracowanie do takiego projektu powinno
zawierać przede wszystkim metodologię realizacji postawionego projektu.
§
Ukończony projekt
powinien składać się z opracowania pisemnego, stworzonego oprogramowania
oraz prezentacji zadania projektowego (folie lub plansze Power Point).
Ocena z projektu otrzymywana będzie na podstawie prezentacji projektu na
ostatnich zajęciach laboratoryjnych.
§
Dopuszcza się
możliwość realizacji zadania projektowego zaproponowanego przez studenta o ile
uzyska zgodę prowadzącego zajęcia.
Projekty teoretyczno-praktyczne:
1.
Szablon do tworzenia wydajnych interaktywnych
trójwymiarowych aplikacji OpenGL
Należy opracować i opisać szablon aplikacji Win32 –
OpenGL, który szczególnie nadaje się do tworzenia interaktywnych aplikacji 3D.
Cel pracy projektowej może zostać zrealizowany na podstawie materiałów
umieszczonych na stronie:
2.
Kontrolka ActiveX - OpenGL
Technologia ActiveX umożliwia włączanie komponentów
programowych w strony WWW. Celem zadania projektowego jest opracowanie zasad
tworzenia kontrolek ActiveX, w których będzie można umieszczać animacje OpenGL.
Informacje do realizacji projektu można znaleźć na stronach:
http://www.codeproject.com/opengl/
3.
Standard Java3D – potencjalne możliwości zastosowania
Standard Java3D jest rozszerzeniem Javy służącym do
tworzenia grafiki 3D. Celem projektu jest przygotowanie opracowania
wprowadzającego do zasad tworzenia grafiki 3D z zastosowaniem wymienionego
standardu. Podstawowe informacje dotyczące standardu Java3D dostępne są na
stronie:
4.
Teksturowanie – materiały pomocnicze do laboratorium
grafiki komputerowej
Celem projektu jest przygotowanie wprowadzenia do
laboratorium na temat współczesnych technik teksturowania. Zagadnienia
teksturowania wraz z przykładami omówione są między innymi na stronie:
5.
Biblioteka GLUT – potencjalne możliwości zastosowania
Biblioteka GLUT jest składową standardu OpenGL od
wersji 1.1. Celem zadania projektowego jest przygotowanie opracowania
prezentującego możliwość zastosowania funkcji składowych GLUT do tworzenia
animacji OpenGL. Specyfikacja biblioteki GLUT znajduje się na stronach:
Projekty praktyczne:
1. Engine dla gry przygodowej
Celem projektu jest opracowanie engine’u
zawierającego: postać bohatera gry, która może poruszać się po labiryncie
pomieszczeń, oraz mogąca otwierać drzwi, zaglądać do skrzyń, szaf. Opcjonalnie
można zdefiniować dodatkowe postaci, z którymi można „porozmawiać” oraz
wymienić artefakty.
2. Engine dla gry strategicznej
Celem projektu jest opracowanie engine’u typowego
dla większości gier RTS. Umożliwiać powinien sytuowanie budynków na mapie
(zamek, kuźnia, koszary, farmy itp.), oraz umieszczać i poruszać jednostki
(żołnieże/robotnicy) po mapie.
3. Gra „lądownik”
Celem projektu jest opracowanie gry 3D, w której
dysponując ciągiem trzech rakiet pomocniczych i ustalonym zapasem paliwa oraz
ustalając siłę grawitacji należy wylądować lądownikiem na powierzchni planety.
4. Gra edukacyjna 3D „wirtualne środowisko...”
Celem projektu jest przygotowanie edukacyjnej gry
3D, w której gracz zwiedza pewne środowisko przyrodnicze (np. jezioro, ocean,
góry, pustynię itp.) i poznaje żyjące w nim zwierzęta i rośliny. Przykładowa,
profesjonalna aplikacja tego typu opowiadająca o świecie dinozaurów
dostępna jest tutaj (21MB).
5. Gra „wirtualne klocki”
Celem projektu jest stworzenie gry, w której przy
pomocy modeli kloców (np. LEGO lub zwyczajnych drewnianych) można zbudować
jakąś trójwymiarową budowlę.
6. Benchmark
Celem projektu jest opracowanie benchmarku sprawdzającego, jakie rozszerzenia OpenGL są dostępne w danym systemie mikrokomputerowym i jaka jest wydajność systemu przy próbie włączenia w aplikacji danych rozszerzeń. Analiza powinna następować w czasie wykonywania dema, w którym stosuje się rozszerzenia.