forked from andkok/MWS_2021
cwiczenia 5 trees in environment
This commit is contained in:
parent
69db38c34c
commit
b85d37858e
15
Opis.md
15
Opis.md
@ -8,7 +8,7 @@ Klasa environment zawiera voxel space z informacją o zacienieniu.
|
||||
|
||||
### addShadow
|
||||
|
||||
Funkcja addShadow zwiększa wartość cienia w zadanej pozycji. Następnie przechodzi w pentlach w dół, zmniejszając z każdym poziomem siłę cienia, ale zwiększając szerokość oddziałowywania.
|
||||
Funkcja addShadow implementuje metodę shadow propagation. Najpierw zwiększa wartość cienia w zadanej pozycji. Następnie przechodzi w pentlach w dół, zmniejszając z każdym poziomem siłę cienia, ale zwiększając szerokość oddziałowywania.
|
||||
|
||||
```C#
|
||||
for(int j = (int)voxelPosition.y; j >= 0; j--)
|
||||
@ -69,14 +69,14 @@ bool inVoxelSpace(int a, int b, int c)
|
||||
2. Do objektu shadowBox jest przypięty skrypt Cast Shadow. Otwórz ten skrypt.
|
||||
3. Zmodyfikuj skrypt, tak aby ten obiekt rzucał cień w dół.
|
||||
1. Wykorzystaj funkcję środowiska (Environment)
|
||||
2. public void addShadow(Vector3 position, sbyte strength) // ujemna siła, aby usunąć
|
||||
2. public void addShadow(Vector3 position, sbyte strength) // ujemna siła, aby usunąć (Vector3 position to pozycja shadowBox)
|
||||
|
||||
## Zadanie 2
|
||||
|
||||
<img src="images/treesinenvironment/inShadow.gif" alt="inShadow" style="zoom:50%;" />
|
||||
|
||||
1. W objekcie inShadow jest skrypt receiveShadow
|
||||
2. Zmodyfikuj skrypt - jak na ten objekt spadnie cień, to zmień materiał
|
||||
2. Zmodyfikuj skrypt - jak na ten objekt spadnie cień, to zmień materiał na **inShadow**, jak nie będzie w cieniu, to na **noShadow**
|
||||
1. Wykorzystaj funkcję środowiska (Environment)
|
||||
2. public byte shadowStrength(Vector3 pos)
|
||||
|
||||
@ -121,13 +121,16 @@ S(a,c) : c<50 -> G\(90)[-S(0,0)]S(0,0)
|
||||
<img src="images/treesinenvironment/manytrees.png" alt="manytrees" style="zoom:50%;" />
|
||||
|
||||
1. Dodaj do objektu Environment więcej drzew (Trees) i zobacz jak drzewa wpływają na siebie nawzajem
|
||||
2. Napisz skrypt, który utworzy 9 drzew (3x3) rozmieszczonych co równą odległość
|
||||
2. Napisz skrypt, który utworzy 9 drzew (3 wiersze i 3 kolumny) rozmieszczonych co równą odległość, przetestuj różne odległości
|
||||
3. Zobacz jak się w takim układzie rozwijają
|
||||
|
||||
|
||||
|
||||
## Zadanie 5 - domowe
|
||||
|
||||
Wybierz zdjęcie dowolnego drzewa (każdy inne) i stwórz L-System podobny do tego drzewa, ale zależny od cienia
|
||||
Zintegruj L-System pipe model z wcześniejszych ćwiczeń z obsługą cienia
|
||||
|
||||
Napisz L-System, który modeluje wybrany przez ciebie kształt drzewa. Kształt ma być twój indywidualny, ale możesz się wspomóc:
|
||||
|
||||
http://www.algorithmicbotany.org/papers/abop/abop.pdf
|
||||
|
||||
Do rozwiązania dodaj zdjęcie drzewa i zdjęcie odtworzonego drzewa. L-System nazwij imięnazwiskoShadow.
|
BIN
images/.DS_Store
vendored
BIN
images/.DS_Store
vendored
Binary file not shown.
Loading…
Reference in New Issue
Block a user