TVORBA VIRTUÁLNÍCH MĚST
JIŘÍ DANIHELKA
Modelování měst
• Typy modelování měst• pro potřeby simulací
• pro potřeby grafiků
• Modelování v grafice je o vzhledu• modelování ulic města
• modelování vnějšku budovy
• Obvykle nemodelujeme• interiéry
• inženýrské sítě
2 Tvorba virtuálních měst - Jiří Danihelka
Procedurální modelování
Vytváření modelů automaticky na základě
matematicky popsaného procesu
Při použití náhodných veličin lze dosáhnout
různých výsledků
Modely vytváří počítač nikoliv člověk:
Může výrazně ušetřit čas při modelování velkého
počtu modelů
3 Tvorba virtuálních měst - Jiří Danihelka
Lindenmayer system (L-system)
Sada přepisovacích pravidel – části modelu jsou
postupně nahrazovány jinými
Používá se zejména pro modelování živé přírody
4 Tvorba virtuálních měst - Jiří Danihelka
L-system
Zdroj:corpora.hu, vrarchitect.net
5 Tvorba virtuálních měst - Jiří Danihelka
Generování budovy
6 Tvorba virtuálních měst - Jiří Danihelka
Procedurální generování ulic
Algoritmus zobecňující L-systémy (2001)
7 Tvorba virtuálních měst - Jiří Danihelka
Self-aware L-systems
8 Tvorba virtuálních měst - Jiří Danihelka
Rozšíření umožnuje spojování větví / ulic
CityEngine
• vychází z akademického prostředí USA
• později přešel v komerční produkt
9 Tvorba virtuálních měst - Jiří Danihelka
Cars 2
10 Tvorba virtuálních měst - Jiří Danihelka
Praktická ukázka
Ukázka generování ulic pomocí Street Wizard
11 Tvorba virtuálních měst - Jiří Danihelka
Předpoklady generování budov
Budova má svislé stěny
Fasádu lze dělit na menší části (např. po patrech)
Budova obsahuje jistou míru pravidelnosti
Modelujeme pouze fasádu a střechu budovy –
nikoliv její interiér
12 Tvorba virtuálních měst - Jiří Danihelka
Modelování tvaru budovy
13 Tvorba virtuálních měst - Jiří Danihelka
Modelování fasády
14 Tvorba virtuálních měst - Jiří Danihelka
Modelování střechy
4 základní typy šikmých střech
15 Tvorba virtuálních měst - Jiří Danihelka
Převod budovy na její předpis
16 Tvorba virtuálních měst - Jiří Danihelka
Výhody převodu
Změnou parametrů gramatiky můžeme snadno
budovu upravit (např. změnit počet pater)
Gramatiku lze aplikovat na libovolný počáteční tvar
parcely
Přidáním náhodných prvků lze udělat variace
vzhledu budovy
Pomocí jedné nebo více gramatik lze vytvořit
virtuální město
17 Tvorba virtuálních měst - Jiří Danihelka
Převod budovy na předpis
Pořízení fotografie budovy
Aplikace zpětné perspektivní korekce na fasádu
18 Tvorba virtuálních měst - Jiří Danihelka
Převod budovy na předpis
Pořízení fotografie budovy
Aplikace zpětné perspektivní korekce na fasádu
19 Tvorba virtuálních měst - Jiří Danihelka
Základní pravidla
modelování každé budovy začíná parcelou
prvním modelovacím pravidlem je obvykle přidání
3. rozměru – výšky
tím se parcela převede na hranol
tento hranol se dále opracovává až vznikne finální
podoba budovy
20 Tvorba virtuálních měst - Jiří Danihelka
Základní dělení budovy
Rozdělení vertikálně na patra – příkaz split(y)
Rozdělení horizontálně na okna, dveře a podobně
– příkaz split(x)
21 Tvorba virtuálních měst - Jiří Danihelka
Příklad generování fasády
22 Tvorba virtuálních měst - Jiří Danihelka
Práce s částmi fasády
Jakmile je fasáda rozdělena, aplikujeme na
každou část některou z následujících operací:
Přidání textury z původní fotografie
Zatlačení do / vysunutí z fasády
Přidání detailní geometrie
23 Tvorba virtuálních měst - Jiří Danihelka
Přidání detailů
Detaily na fasádách budov se přidávají ručně
Modelují se v externím 3D editoru
Zatím není znám způsob, jak je efektivně
modelovat procedurálně
24 Tvorba virtuálních měst - Jiří Danihelka
Ukázka 1
25 Tvorba virtuálních měst - Jiří Danihelka
Ukázka 2
26 Tvorba virtuálních měst - Jiří Danihelka
Ukázka 3
27 Tvorba virtuálních měst - Jiří Danihelka
Vytvoření sítě ulic
Lze aplikovat nástroj Street Wizard ze CityEngine
28 Tvorba virtuálních měst - Jiří Danihelka
Aplikace pravidel na parcely
budovu nelze modelovat samostatně
musíme modelovat v kontextu
výškové budovy obvykle bývají v centru
29 Tvorba virtuálních měst - Jiří Danihelka
Example-based synthesis
30 Tvorba virtuálních měst - Jiří Danihelka
Example-based synthesis
31 Tvorba virtuálních měst - Jiří Danihelka
Example-base city layout
32 Tvorba virtuálních měst - Jiří Danihelka
Example-based layout
33 Tvorba virtuálních měst - Jiří Danihelka