☰ Menu

Scene.hu

Magyar demoscene portál – grafikusok, zenészek, programozók alkotói közössége

Home Forums A Demokészítés művészete Programozás Demokészítés – alapok, tippek, trükkök Reply To: Demokészítés – alapok, tippek, trükkök

#2922
avatarBery
Member

Így van, a demoscene partikon meg bizony lehet nevezni versenyekre grafika kategóriában is :) Lurvig, a helyedben ezt sem hagynám ki. Még néhány gondolat a demókészítésről. Ha PHP-ban jó vagy, akkor nem lesz gond a programozás résszel sem, mert ha nem is ismered a C-t, vagy a Pascal-t, vagy bármilyen 3. generációs nyelvet, ami nem interpreter, hanem compiler kódot ad (ez azért nem árt, ha demóban gondolkodunk, bár persze erre is akadnak kivételek, hogy cáfolva legyek :)), akkor is csak szintaxist kell megtanulnod szinte, a lényeg az algoritmikus gondolkodás, amit bármilyen programozási nyelv kapcsány jó eséllyel elsajátít az ember. Én például Delphi/(Object) Pascal-ban írom a demoimat. De fellelhetők itt olyan ritkaságok, mint a Haskell, ami egy nem túl elterjedt, funkcionális programozási nyelv, és persze egy fanatikus programozó matematikus, Blala az, aki ebben írja a demóit, mindnyájunk megrökönyödésére :) Szóval lehetőségek, eszközök vannak bőven, csak egy kis lelkesedés kell hozzá. Ami viszont tény, hogy a C nyelvhez van a legtöbb példaprogram, kiegészítő, tool, illetve, hogy a DirectX jobban támogatott és fejlesztett, mint az OpenGL (de persze az OpenGL is egy nagyon jó grafikus API, mielőtt valaki megkövezne ezért a kijelentésért :)). Szóval, ha nincs érzelmi kötődésed más programozási nyelv, vagy grafikus API felé, akkor észérvek alapján ezeket (C, DirectX) érdemes választani kezdőként. Aztán szépen elindulni a példaprogramokon: – először beváltani DirectX-be / OpenGL-be; – aztán kirakni egy háromszöget; – aztán egy kockát; – aztán egy texturázott kockát; – aztán egy megvilágított kockát; – aztán egy texturázott, megvilágított kockát; – aztán multitexturing, enviroment mapping, stb. Nem kell megijedni, ez az 1-2 nap ismerkedés után elérhető szint, ha már megy a C, Pascal példaprogramok fordítása. És itt kb. rájösz, hogy kellene egy saját demo engine, amiben egy utasítás baváltani DirectX-be, meg betölteni / generálni 3D-s testeket, megadni a materiáljukat, bevilágításukat, texturáltságikat, stb. Ha ez megvan, akkor aztán jöhetnek a finomságok, mint a vertex- és pixel shaderek, a post process, meg a kiegészítő dolgok, mint szövegek, 2D-s képek megjelenítése, átlátszóság, stb. A vicces tényleg az, hogy sok látványos effektet meg lehet apró kis trükkökkel, vagy az API áltál tálcán kínált lehetőségekkel oldani. Szóval némi lelkesedéssel és próbálgatással néhány hét alatt már összehozható egy egyszerűbb demo is. Aztán persze jönnek olyan dolgok, mint a háttérzene. Ez igazából nem gond, mert van 1-2 bevált publikus zenelejátszó, de akár még DirectShow hívással is le tudsz mp3-at játszani (a DirectShow a DirectX része). És itt szembesülsz majd azzal, hogy a megjelenő látványt jó lenne a zenére időzíteni. Időzíteni, de hogy? :) Na, ez sem nagy kaland. És igazából itt már kész is az első demód. Hát ennyi lenne ;)

Ugrás a lap tetejére Ugrás a lap aljára