Nejnavštěvovanějšími stránkami jsou weblogy: ITSM/ITIL, VISIO, e-Learning, digifoto a j.
     

Doc. Ing. Arnošt Katolický, CSc

AKADEMIE MANAGEMENTU AKA-KONZULT

HOME

KONTAKT

Poradenství, vzdělávání a zpravodajství

SOUDNÍ ZNALEC

A K A   M O N I T O R


RECENZE
----------
DigiFoto
----------
E-books
 

 

NOVINKY
ČASOPISY

 

MAPA

 
E-books
Projekt. manag.
Znalost. manag.
E- business
E-learning
Nová ekonomika
Inovace
Reportáže
Recenze
Foto-Video
 

Měsíční
návštěvnost
AKA MONITORu
v lednu 07
285.326
přístupů

 
aaa

K N I H Y - R E C E N Z E - 2001 až 2008

 


DirectX

Začínáme programovat

Pavel Pokorný

 


 

         

DirectX je kolekce pomocných softwarových nástrojů tvořících programátorské rozhraní, pro tvorbu multimediálních a herních aplikací. Můžete se s nimi setkat v operačním systému Windows a proto se autor zaměřil na tvorbu aplikací ve Windows. DirectX poskytuje velice kvalitní nástroje pro práci s 2D i 3D grafikou, práci se vstupními zařízeními, se zvuky a hudbou, ale i pro komunikaci mezi počítači. Jde o věci, které jsou stěžejními u multimediálních a herních aplikací.
Cílem knihy Pavla Pokorného je poskytnout ucelené informace o jednotlivých komponentách DirectX. Snahou autora je vysvětlit základní principy a algoritmy, které může čtenář ve svých aplikacích použít.

Stručný obsah knihy

Úvod  
Bližší seznámení s DirectX  
Základní aplikace     
DirectDraw   
Direct3D      
Directlnput    
DirectSound a DirectMusic  
DirectPlay     

Pavel Pokorný zvolil promyšlenou koncepci knihy, odpovídající povaze obsahu.
Ve většině kapitol jsou jednotlivá rozhraní, jejich objekty a metody vysvětleny přímo na příkladech. Souvislý teoretický popis na začátku příslušné kapitoly je uveden pouze v místech, kde by uvedení větší partie teorie narušovala plynulost popisu programu.
V knize je zejména kladen důraz na popis rozhraní, objektu, funkcí a datových tvpu, které patří do DirectX. Až na poslední dvě kapitoly (věnované DirectSound. DirectMusic a DirectPlay) je v knize vše demonstrováno na funkčních programových ukázkách. Autor vyzývá čtenáře, aby v rámci studia knihy experimentovali a upravovali ukázkové programy.

Hlavní část knihy tvoří kapitoly popisující součásti DirectX. V jednotlivých kapitolách knihy, kde jsou představena jednotlivá rozhraní, která jsou součástí DirectX 9.0c, je po­psána tvorba programových aplikací využívajících tato rozhraní. Programová implementace rozhraní jsou si velice podobná, což vývojáři jistě ocení. Pokud se naučíme používat jedno z těchto rozhraní, nebude pro nás složíté zvládnout rozhraní další.

DirectX Graphics – v sobě zahrnuje DirectDraw a Direct3D.
DirectDraw se používá při práci s rastrovou 2D grafikou, přičemž důraz je kladen na maximální výkonnost. DirectDraw umožňuje vytvářet aplikace, jež běží v okně i v celoobrazovkovém režimu.
Direct3D je určeno pro práci s 3D grafi­kou (obsahuje i několik funkcí pro práci s 2D grafikou. Podobně jako u Di­rectDraw je i zde kladen
důraz na maximální rychlost a výkonnost. Mezi možnosti Direct3D patři kreslení a prohlížení objektů, definování formátu pixelu, používání světelných zdrojů ve scéně, vylepšování obrazu, mapování textur nebo animování.
DirectX Input, jehož součástí je Directlnput - rozhraní, které poskytuje služby nejrůznějších vstupních zařízení. Součástí je i podpora t.zv. action mapping.
DirectX Audio – API, jehož součástí je DirectSound.
Jde o rozhraní umožňující komunikaci se zvukovými kartami. Umožňuje vytvářet aplikace se zvuky a hudbou. Toto rozhraní je sdíleno.
DirectMusic - jde o seskupení objektů, které umožňuje podobně jako DirectSound přehrávání zvuků a hudby, ovšem na vyšší úrovni než DirectSound. Má více možností, například přehrávání více zvukových formátu (především MIDI), kompletní systém pro implementaci dynamických zvukových stop, které se mohou měnit na základě určitých událostí atd.
DirectPlay- jde o knihovnu objektů, určenou pro komunikací s jinými počítači, které jsou mezi sebou vzájemně sítově propojeny. Využití nalezne především v multiplayerových počítačových hrách nebo chatovacích aplikacích. Jednotlivé počítače mohou mezi sebou komunikovat přímo (peer-to-peer), nebo pomocí centrálního serveru (klient server komunikace).

Autor nás seznamuje s tím, jaké předpokládá u čtenáře znalosti a vybavení.
Pro úspěšné studium předpokládá autor knihy znalost programovacího jazyka C++ , neboť veškeré příklady a programové ukázky jsou právě v tomto jazyce.  Stejně tak předpokládá znalost obecných programovacích principů a základních pojmů jako proměnná, pole,ukazatel, objekt, zapouzdření, přístupová práva ve třídách atd. Za vhodné se považuje znalost určitých oblastí matematiky a počítačové grafiky (geometrie, trigonometrie, lineární algebra, grafické formáty. základy promítání a pod.). které usnadní práci s Direct3D. Za výhodu ( ale ne za nutnost) autor považuje také alespoň základní znalost Win32 API.
Jaké budeme potřebovat za vybavení? Především je to vývojové prostředí s kompilátorem.  Všechny programy uvedené v knize byly vytvořeny v nejčastěji používaném prostředí - Microsoft Visual Studiu – konkrétně v Microsoft Visual C++. Autor ho doporučuje čtenářům především proto, že v něm byly vytvořeny všechny programy. které v této knize nalezneme. U jiných vývojových nástrojů by mohly nastat problémy s nastavením a kompilací. Pro čtenáře, který by nechtěl používat Microsoft
Visual C+ + , nabízí autor  alternativy.
Druhou věcí, kterou bude čtenář pro programy potřebovat, je DirectX SDK ( Software
Development Kil).
Jde o softwarový balík, který si můžeme zdarma stáhnout ze stránek Microsoftu, kde také můžeme nalézt i podrobnou dokumentaci a spoustu ukázkových programů i se zdrojovými kódy, které čtenáři při studiu DirectX mohou velice pomoci. V současné době je k dispozici SDK pro DirectX verzi 9.0c.

Stručný obsah sám nevystihuje plně bohatství poznatků, které kniha Pavla Pokorného obsahuje. Pomoci může přehled, uvedený na záložce knihyCo se v knize dozvíme:
- Pohled do historie DirectX
- Základní aplikace s DirectX
- ednoduchá aplikace s DirectDraw
- Double buffering
- Triple buffering
- Off-screen surfaces
- Barevná paleta
- Barevný klíč
- Jednoduchá Direct3D aplikace
- Surfaces v Direct3D
- Práce s vertex bufferem
- Práce s index bufferem
- Práce se složitějšími objekty a formát .x
- Materiály a světla
- Textury a jejich využití
- Práce s texty
- Kamera a okolí scény
- Directlnput
- Práce s klávesnicí
- Práce s myší
- DirectSound a DirectMusic
- DirectPlay
- Komunikace peer-to-peer
- Komunikace klient/server

Kniha obsahuje několik cenných rad, jak pořídit nástroje s minimem finančních nákladů, především využitím nabídek programů ke stažení na internetu zdarma. Pokud zatím jen zkoušíme svoje schopnosti a dovednosti, chceme si zkusit vytvořit nějaký menší program (například počítačovou hru) sami, autor nás ujišťuje, že nemusíme vyna­kládat velké investice do grafických programů a vývojových nástrojů. Pro tvorbu 3D mo­delu si vystačíme například s programem Blender, který je zcela zdarma. Modely programů, které jsou součástí této knihy, byly vytvářeny právě v Blenderu. Stejně tak můžeme pro kreslení textur použít bezplatný gra­ficky program Gimp, který disponuje mnoha nástroji, jež jsou často součástí drahých grafických programů. Pokud se chceme vyhnout základům programování, můžeme využít  ho­tový graficky engine. Jeden z těch lepších, který je zdarma a podporuje i DirectX 9. je Irrlicht engine.

Kniha obsahuje spoustu zdrojových kódů. Není třeba se bát pracného opisování. Programové ukázky jsou nabízeny na domovské stránce nakladatelství Grada. Veškeré zdrojové kódy jsou navíc doplněny četnými komentáři, které usnadňují jejich pochopení.

Celé DirectX je velice rozsáhlé. V knize není zdaleka uvedeno všechno o DirectX. Čtenáře, který by se chtěl této oblasti věnovat opravdu důkladně, odkazuje autor na publikace, jejichž bohatý seznam se nachází na konci knihy. Dále doporučuje čtenáři pečlivě sledovat internetové servery, věnující se této problematice.

Kniha Pavla Pokorného je určena pro všechny, kdo chtějí nahlédnout pod pokličku tvorby multimediálních programů a herních aplikací. Provádí nás základy tvorby DirectX aplikací pro verzi DirectX 9.0c. Po pečlivém prostudování knihy by mněl být čtenář schopen ve svých programech používat jednotlivé komponenty DirectX. Důraz je v knize kladen především na pochopení problematiky. Autor vyjadřuje přesvědčení, že pokud čtenář pochopí popis a logické souvislosti u jednotlivých komponent DirectX, nebude pro něj velkou pře­kážkou programy rozšiřovat i o další prvky. které nejsou v knize uvedeny.

Doc. Arnošt Katolický ©
Doc.aka@akamonitor.cz
http://www.akamonitor.cz/
23. března  2008.

 

Další recenze ZDE

 
 

Nejnavštěvovanější  weblog věnovaný tématu "ITSM - ITIL"
(
IT Infrastructure Library)

PODCSASTING
nový weblog věnovaný PODCASTINGU

Katalog recenzí

 

   Autor obsahu a webmaster: doc.aka@akamonitor.cz