added readme.md
This commit is contained in:
parent
09816cae60
commit
37552e274d
30
readme.md
Normal file
30
readme.md
Normal file
@ -0,0 +1,30 @@
|
||||
Projekt na zaliczenie grafiki komputerowej i wizualizacji (2018) napisany przez
|
||||
* Barbarę Bróździńską (s426093)
|
||||
* Filipa Kowalskiego (s426158)
|
||||
|
||||
## Opis
|
||||
Program napisany w C++ (OpenGL) przedstawia interaktywną scenę podwodną z pływającymi rybami. Wszystkie modele zostały stworzone w Blenderze, a tekstury w Gimpie.
|
||||
|
||||
Sterowanie:
|
||||
WASD - poruszanie kamerą lewo/prawo/przód/tył
|
||||
QE - poruszanie kamerą w górę i dół
|
||||
ZX - obracanie kamery
|
||||
C - przywołanie nowej ryby zwróconej w losowym kierunku przed kamerą
|
||||
|
||||
Początkowe ustawienie ryb i roślin jest losowe, ale seed funkcji losującej jest zawsze taki sam.
|
||||
Ryby mają losowy obrót i płyną przed siebie jednocześnie delikatnie unosząc się i opadając (według funkcji sinus od czasu).
|
||||
|
||||
## Shadery
|
||||
Każdy z modeli teksturowany jest za pomocą jednego z dwóch shaderów: shader_perlin_tex lub shader_tex.
|
||||
Shader shader_perlin_tex.frag generuje teksturę proceduralną (szum perlina). Przyjmuje rządaną rozdzielczość tekstury.
|
||||
|
||||
## Zaimplementowane klasy
|
||||
|
||||
### CameraEntity
|
||||
Przechowuje informacje o kamerze (pozycja, kąt) i zajmuje się jej poruszaniem, macierzą perspektywy itp.
|
||||
|
||||
### TexturedObject
|
||||
Ładuje i przechowuje model .obj oraz przypisaną do niego teksturę i/lub shader. Zawiera metodę pozwalającą wyrenderować oteksturowany model.
|
||||
|
||||
### Entity3D
|
||||
Powiązuje TexturedObject z jego pozycją w scenie. Jest odpowiedzialna za operacje na macierzy transformacji obiektu. Zawiera metody pozwalające na translację, rotację i skalowanie oraz renderuje model.
|
Loading…
Reference in New Issue
Block a user