V dnešním článku se naučíme tvořit „3D programy“ pomocí WPF. Předem upozorňuji, že hru ve stylu Call of Duty 4 pomocí WPF vytvořit nelze.
Jako první věc, kterou dnes uděláme, je vytvoření nového projektu. Pro dnešní práci si stáhněte následující dvě textury, které přidejte do projektu (stejně jako XML soubor v minulém dílu).
Textury | ||
Po přidání textur do Blendu bude náš projekt vypadat následovně:
Nyní se už ničím nebudeme zdržovat a přistoupíme k akci:
- Dvojklikem na texturu plocha.jpg ji přidáme do naší aplikace.
- Pomocí nástroje
Selection
texturu upravíme tak, aby byla zhruba ve středu okna aplikace a okno nepřesahovala. - Nyní v menu klikneme na
Tools
a vyberemeMake Image 3D
. Na první pohled se nic nezmění, ale pokud se podíváte na seznam prvků, zjistíte, že prvek[Image]
se změnil na[Viewport3D]
. - Pokud nyní použijeme nástroj
Camera Orbit
, můžeme naším obrázkem různě pohybovat. Stiskem a držením levého tlačítka myši obrázek různě natáčíme. Pokud chytíte obrázek levým tlačítkem myši, stisknete zároveň klávesuAlt
a budete pohybovat myší, dosáhnete různé úrovně přiblížení či oddálení vůči obrázku. A do třetice všeho dobrého, když navíc podržíte i klávesuCtrl
, můžete obrázkem všemožně posunovat. - Nastavte obrázek tak, aby vypadal jako podlaha.
- Následovně přidáme dvojklikem obrázek zdi.jpg. Obrázek se přidá do našeho
[Viewport3D]
, ale pouze za předpokladu, že dvojklikem vybereme[Viewport3D]
ve stromu prvků. - Nyní ve stromu prvků rozbalíme
[Viewport3D] → [ModelVisual3D] → Content
a pomocí nástrojeSelection
vybereme zdi.jpg. Všimněte si, že na textuře se objevil souřadnicový systém, který nám umožní prvek rotovat, posunovat a měnit jeho velikost. - Zeď srovnáme kolmo k podlaze, podobně jako na následujícím obrázku.
- Stejný postup zopakujeme pro přidání dalších dvou zdí.
- Nyní když stiskneme
F5
, uvidíme náš výsledek, který se moc neliší od předchozího obrázku.
Závěr
V dnešním, kratším díle jsme se naučili využívat další možnost WPF - 3D perspektivu rastrových obrázků. WPF se sice nehodí pro tvorbu 3D her, nýbrž pro jednoduché programy, jakými jsou přehrávače videí, zvuků apod. Jsem si jist, že určitě vytvoříte daleko hezčí „3D“ WPF aplikace, než já v dnešní ukázce.