VYUŽITÍ MODERNÍCH ALTERNATIVNÍCH PROSTŘEDKŮ VIZUALIZACE A INTERAKCE V PROSTŘEDÍ DIGITÁLNÍ TOVÁRNY SVOČ – FST 2011 Jiří Polcar Chelčického 1198 Rakovník 269 01 Česká republika ABSTRAKT Cílem této práce je zjistit, do jaké míry se dá využít engine běžné počítačové hry pro tvorbu modelu interaktivní digitální továrny a pak tyto nabyté vědomosti využít k tvorbě právě takového modelu. Ten by zahrnoval budovu nějakého podniku i se zázemím, funkční linkou a interaktivními prvky. Pro tento účel sice existují specializované komerční programy, jejich pořízení je však velmi nákladné, stejně jako tvorba takového modelu na zakázku. Tento model má tedy demonstrovat, zda a jak lze využít herní engine jako alternativa ke konvenčním způsobům. KLÍČOVÁ SLOVA Source, engine, digitální, továrna ÚVOD Technologie virtuální reality v poslední době udělaly obrovský pokrok a začínají se stále více využívat ve výrobě i celém průmyslu. S touto technikou je možné dosáhnout mnohem kvalitnějších a promyšlenějších výrobků a služeb při výrazně menších nákladech na vývoj. Virtuální realita se využívá nejen pro zkoušení částí a dílů nebo celých výrobků, například při pevnostních zkouškách nebo nárazových testech automobilů. Využívá se i na úrovni montáže (obrázek 1), logistiky, marketingu atd. Tedy prakticky během celého životního cyklu výrobku.
Obrázek 1: Ukázka konvenčního modelu digitální továrny Virtuální realita zahrnuje takzvané serious games – volně přeloženo jako vážné hry. Ač je vyžadována jistá míra zábavnosti, smyslem těchto her není bavit hráče. Jejich smyslem je hráče vzdělávat, zapojit ho do řešení nějakého problému, propagovat nějakou myšlenku nebo výrobek, informovat. Využívají se i v medicíně a tréninku. Časté je použití při různých terapiích nebo při výcviku pilotů. [1] Výstupem tohoto projektu bude jednak taková vážná hra, která bude demonstrovat možnosti použití Source Engine a zároveň může sloužit jako prezentace továrny s montážní linkou. Druhým výstupem budou návody a materiály k tvorbě právě takovýchto interaktivních modelů. ZVOLENÝ ENGINE Engine je v podstatě jádro, na kterém běží nějaký počítačový program. Pro tvorbu modelu digitální továrny byl zvolen Source Engine od společnosti Valve Corporation v podobě počítačové hry Half-Life 2, která jej využívá. Logo Sourcu je na obrázku 2.
Obrázek 2: Logo Source Engine [2] Výhodou tohoto enginu je dobrá dostupnost potřebných softwarových nástrojů k jeho modifikaci. Oficiální Software Developer’s Kit (doslova balíček softwarového vývojáře, dále jen SDK) je zdarma ke stažení po instalaci originální kopie hry, která stojí kolem 400 Kč. SDK obsahuje většinu potřebných nástrojů pro tvorbu, další jsou k dispozici jako zásuvné modely pro ostatní používané programy nebo jako freeware od tvůrců. Nespornou výhodou Source Engine je jeho značná podobnost s předchůdci (enginy her Half-Life a Quake 1) a široká internetová komunita [3] [4] [5], která poskytuje velmi kvalitní zázemí ve formě zdrojů informací, návodů a materiálů ke tvorbě. Tvorba v Source Engine je sice poněkud zdlouhavá, nástroje jsou však uživatelsky vcelku přívětivé. NOVÝ PŘEDMĚT Na Katedře průmyslového inženýrství a managementu Fakulty strojní Západočeské univerzity je připravován nový předmět Digitální továrna a virtuální realita. Cílem tohoto předmětu bude mimo jiné naučit studenty vytvářet v Source Engine model digitálního podniku. K tomu byl zřízen tým studentů s názvem HL2Team, který se zabývá tvorbou e-booku (ukázka je na obrázku 3), který bude návodem ke tvorbě takového modelu od instalace hry a SDK až po samotnou tvorbu. Další náplní práce tohoto týmu je tvorba knihovny modelů (obrázek 4) a textur. To by mělo zajistit dostatečné zázemí pro studenty, kteří si předmět zapíší a budou tvořit svoje vlastní modely.
Obrázek 3: Ukázka tvořeného e-booku
Obrázek 4: Ukázka převedených modelů POUŽÍVANÉ PROGRAMY Pro práci v moderním herním 3D enginu je zapotřebí zpravidla level-editor, který se používá k tvorbě herního světa. K tomu však potřebujeme ještě zásobu textur a modelů. Textury se tvoří převodem obrázku a napsáním řídícího kódu pro texturu, model se tvoří poněkud složitěji. Zpravidla používáme nějaký 3D modelovací program a pak model kompilujeme do formátu, který je možné použít v enginu. Následuje popis používaných programů. Valve Hammer Editor Valve Hammer Editor (dále VHE) je oficiální level-editor pro Source engine. Vyvinula jej firma Valve Software pro svoje použití a je uvolněn pro veřejnost jako součást Source SDK. Level (mapa) je prostředí, ve kterém se hráč pohybuje a je tedy základním nástrojem pro tvorbu téměř čehokoli v Source Engine. Ukázka vytvořeného modelu digitální továrny v různých pohledech ve VHE je na obrázku 5.
Obrázek 5: Půdorys, drátěný model a otexturovaný model digitální továrny v programu VHE VHE je 3D modelovací program, který umožňuje tvořit a prohlížet mapu ve 2D nebo 3D. Zdrojový kód mapy je ve formátu VMF (Valve Map File). Ten se kompiluje do formátu BSP, který se přímo spouští ve hře. O kompilaci a běh těchto programů se stará VHE sám. VTFEdit VTFEdit je open source program, který slouží ke konverzi většiny běžně užívaných obrázkových formátů do formátu VTF (Valve Texture File). Nejdříve se importuje obrázek, dále jsou nabídnuta různá nastavení renderů, převodu a výstupního formátu. Program umí mimo jiné vypočítat přímo i bump mapu pro danou texturu. NX 7 NX, též NX Unigraphics, od firmy Siemens PLM Software je komerční vyspělý CAD/CAM/CAE nástroj pro tvorbu trojrozměrných modelů určených pro podporu konstrukce a výroby. Katedra průmyslového inženýrství a managementu má knihovnu modelů vytvořených pomocí NX, které posloužily jako zdroje pro převod do Source engine. Ukázka původního modelu pásového dopravníku v NX je na obrázku 6 vlevo. 3dsMAX 2010 AutoDesk 3d Studio MAX 2010 slouží pro 3D modelování, na rozdíl od NX je však určen pro účely grafické tvorby. V této práci byl program využit k importu modelu z programu NX ve formátu VRML ke zpracování, aby se mohla provést závěrečná kompilace. Na obrázku 6 vpravo je ukázka toho samého dopravníku ve 3ds.
Obrázek 6: Ukázka modelu dopravníku v NX (vlevo) a toho samého modelu ve 3ds (vpravo)
GUIStudioMDL GUIStudioMDL je freeware nástavba pro StudioMDL. StudioMDL je program určený ke kompilaci souborů QC a SMD do konečného formátu MDL, který se dá použít v Source Engine jako model. StudioMDL nemá žádné uživatelské rozhraní a vše se provádí přes spouštěcí parametry. GUIStudioMDL toto uživatelské rozhraní poskytuje a umožňuje snadnou kompilaci modelu. MODEL DIGITÁLNÍ TOVÁRNY Model digitální továrny momentálně obsahuje přízemí se zázemím a výrobní linkou. Pohled zvenku je na obrázku 7. Dále obsahuje patro s kancelářemi. Model je stále v pracovním stadiu a přednost prozatím měla funkční stránka před tou vizuální. Model se zaměřuje na demonstraci možností interakce z funkčního hlediska. Zde se ukázaly hranice možností enginu, který nebyl určen k tvorbě takovýchto modelů. Byl problém přimět funkční prvky pracovat tak, jak by měly.
Obrázek 7:Pohled na budovu zvenku ve hře Základem pro tvorbu tohoto modelu byl již rozpracovaný model továrny, který obsahoval pouze nevybavenou budovu kromě přízemí, kde byly hotové jídelna (obrázek 8), toalety, konferenční místnost, vstupní hala a jedna kancelář.
Obrázek 8: Jídelna v přízemí Jako první byly doplněny kanceláře v patře (obrázek 9). Byly vytvořeny místnosti a ty byly naplněny nábytkem. Nyní zde lze nalézt kancelář ředitele, jeho sekretářky, konstrukčních pracovníků atd. Kanceláře zatím nejsou interaktivně zařízeny.
Obrázek 9: Kancelář v patře Do konferenční místnosti po pravé straně od vchodu byla převedena PowerPoint prezentace, která byla následně otitulkována. Z každého slajdu prezentace byla vytvořena textura. Prezentace jako taková funguje na principu výměny celých bloků, z nichž každý nese texturu jednoho slajdu. Ke každému slajdu náleží titulky. Pro spuštění prezentace stačí v místnosti zhasnout (zmáčknout klávesu „použít“ při přiblížení k vypínači). Celá prezentace je odladěná proti chybám způsobených tím, že by hráč vyšel z místnosti a opět do ní vstoupil nebo vícekrát zmáčknul vypínač. Jak už bylo zmíněno, model je v pracovní verzi a zbývá vyřešit věci estetického charakteru jako je třeba namluvení, vytvoření lepšího modelu přednášejícího a tak podobně. Při tvorbě výrobní haly bylo nutné převést modely z NX 7 do MDL. Dále byli doplněni dělníci a byl vytvořen předmět, který se může po dopravníku pohybovat s tím, že hráč si jej může kdykoli vzít, prohlídnout a vrátit zpět na místo na pásu, odkud jej vzal. Dělníci při průjezdu předmětu kolem nich spustí animaci, kde předvádějí, jako že pracují. Vidět to lze na obrázku 10.
Obrázek 10: Pohled na výrobek projíždějící okolo dělníka, který na něm pracuje DALŠÍ POSTUP Jak již bylo řečeno výše, model této digitální továrny je zatím takřka v počátečním stadiu. I tak však do něj bylo investováno hodně přes 200 hodin práce včetně ladění chyb, tvorby modelů a textur a návrhu algoritmů, jak který interaktivní prvek vytvořit. K použití je připraven v tomto modelu zatím neimplementovaný, ale odladěný dialogový strom. [6] Cílem dalšího postupu je vytvořit montážní halu s širokým rozsahem interakce. Po odladění funkčních prvků bude vylepšena estetická stránka. To bude spočívat ve vytvoření lepších modelů postav, lepších textur pro zařízení a celkově lepší grafice. Dělníkům kolem pásu budou přidány lepší animace. Na pásu se bude skládat model auta na dálkové ovládání, přičemž hráč bude moci sledovat postup montáže, případně se do ní v některých místech zapojit. Po vchodu do budovy nás přivítá slečna recepční. ZÁVĚR Po dosavadních zkušenostech nabytých během řešení tohoto projektu lze vyvodit závěr, že konvenční herní engine je přes jisté nedostatky vhodný k vytváření modelů digitálních továren. Největší problém je nepřipravenost Source Engine pro tento účel, díky čemuž je vkládání interaktivních prvků poměrně pracné. Tento projekt není zdaleka hotov a ještě na něm bude mnoho práce, především co se dalších interaktivních prvků týče a také vylepšení estetické stránky. V budoucnu se počítá i se zásahem do kódu pro vytvoření snáze implementovatelných interaktivních prvků. PODĚKOVÁNÍ Za zadání tohoto pro mě velmi zajímavého projektu a usměrnění mého postupu bych chtěl poděkovat panu Ing. Petru Hořejšímu, PhD. Za poskytnutí knihovny zdrojových modelů továrního vybavení v Siemens NX bych chtěl kromě p. Hořejšího poděkovat i panu Ing. Ondřejovi Kurkinovi.
LITERATURA Internetové zdroje: [1] Virtual reality – Wikipedia, the free encyclopaedia. [2011-04-13] Dostupné online:
[2] Source Engine – Wikipedia, the free encyclopaediea. [2011-04-13] Dostupné online: [3] SDK Docs – Valve Developer Community. [2011-04-13] Dostupné online: [4] INTERLOPERS.NET – Half-Life News & Tutorials. [2011-04-13] Dostupné online: [5] HALFWIT-2.com – Source Mapping. [2011-04-13] Dostupné online: [6] Adventure Game Dialogue Trees. [2011-04-13] Dostupné online: