Ahoj, 3D světe!

Ostatní jazyky Petr Lite 3D grafika Ahoj, 3D světe!

Vítejte ve fantastickém světě 3D grafiky! Svět virtuální reality, ve kterém mizí rozdíl mezi skutečností a fantazií. Právem je dnes proto ve středu zájmu nejen herního průmyslu, ale i všech dalších odvětví jako prostředek k rychlé a názorné vizualizaci kvanta informací. A když se k tomu přidá ještě nástroj ke snadnému a rychlému použití 3D grafiky, jakým je Petr, co víc si ještě přát? Neuvěříte, jak je to snadné, dokud si to nevyzkoušíte. Proto - VSTUPTE PROSÍM!

3D

Svou cestu začneme založením nového programu, nazvěte ho třeba jednoduše 3D. Od 3D světa nás nyní odděluje už jen jediný příkaz - okno 3D grafiky. Příkaz naleznete ve skupině grafika / 3D grafika. Umístěte jej na začátek programu, nejlépe do skupiny Inicializace programu. Příkaz má nějaké další parametry, ale těch si teď nevšímejte.

Pokud byste teď program spustili, viděli byste na okamžik zelenou plochu okna Petra, která je v zápětí vystřídána černou plochou a hned na to program skončí. Samozřejmě musíme doplnit nějakou programovou smyčku, ve které bude probíhat obsluha programu. Takže vložte do programu podmíněný cyklus s podmínkou přerušení klávesou Esc a jedním čekacím příkazem. Asi takto nějak:

Když teď program spustíte, zůstane okno otevřené. Vidíte černou plochu a nezbývá vám nic než věřit, že se jedná skutečně o okno do 3D světa. Ale to hned napravíme a vytvoříme si první 3D objekt.

Připravte si do pole společných proměnných číselnou proměnnou. Nazvěte ji ID. Je to zkratka pro identifikační číslo. Každý objekt v našem 3D světě totiž má nějaké své číslo. Tímto číslem se budeme na objekty odkazovat, abychom s nimi mohli nějak manipulovat.

Připravte si proměnnou ID do skupiny inicializace programu, za prvek okno 3D grafiky. K proměnné připojte prvek koule ze skupiny grafika / 3D grafika / vytvořit. Tento příkaz vytvoří 3D objekt koule a jeho identifikační číslo uloží do proměnné ID.

A opět program spusťte. A co nevidíte - KOULE! Heuréka, je tu 3D svět!

No ano, máte pravdu. Tohle se snad ani koulí nedá nazvat, možná spíše špatně okrájená brambora. Tak si ji trochu vylepšíme. Objekty je možné vytvářet s různou složitostí detailů. Určuje ji prvek složitost objektu, který najdete ve skupině grafika / 3D grafika / objekty. Přidejte ho PŘED příkaz pro vytvoření koule a pomocí číselné konstanty mu nastavte hodnotu 15.

Jak můžete nyní vidět, koule nám zkrásněla. Teď ji už konečně můžeme hrdě nazvat koulí.

Abychom si ještě trochu blíže vysvětlili, jak vlastně objekty v 3D grafice fungují. Není to nic jiného, než hromada trojúhelníčků. Všechno ve 3D grafice jsou trojúhelníky. Udělejte si malý pokus - někam na začátek programu doplňte prvek vyplňování ploch ze skupiny grafika / 3D grafika / nastavení a připojte k němu logickou hodnotu ne. Po spuštění programu uvidíte opět kouli, ale tentokrát její síťový model složený z nevyplněných trojúhelníků. Zkuste si měnit složitost koule a sledovat změnu velikostí a počtu trojúhelníků, ze kterých je koule tvořena.

Prvek vyplňování ploch opět odstraňte. Teď si zkusíme kouli obarvit. Ve skupince grafika / 3D grafika / povrch si najděte prvek barva (-1=vnitřní, -2=implicitní). Vložte ho ZA příkaz pro vytvoření koule. Připojte k němu prvek barva ze skupiny grafika. Rozkliknutím prvku si vyberte nějakou barvu.

Program opět spusťte - koule bude mít vámi zvolenou barvu.

Přece jen, naše koule je nějaká mdlá a nevýrazná. Přidáme jí trochu lesku. Doplňte za prvek pro nastavení barvy ještě prvek matnost (0=vyp, 5=kov, 50=plast), nastavte ho na hodnotu 20, a dále doplňte prvek barva odlesku a připojte k němu tmavě šedou barvu.

A program spusťte. Bude již vypadat realističtěji. Případně si můžete s hodnotami prvků trochu pohrát a dosáhnout tak dojmu různých materiálů koule.

Hezká, co? Ale, přiznejme si to - jednobarevný svět by nás nenadchl. Potřebujeme realistické povrchy. Potřebujeme obrázky - textury. A není nic jednoduššího. Jen si připravte do pole společných proměnných nějaký obrázek, který použijete jako texturu. Například můžete použít texturu Země, kterou najdete na konci lekce.

Na konec skupiny inicializace programu přidejte prvek textura ze skupiny grafika / 3D grafika / textury a k němu připojte připravenou texturu. Ještě zrušte prvek pro nastavení barvy koule nebo ho jen znefunčkněte tlačítkem Vypnout.

Program spusťte. A pokochejte se vaším prvním opravdovým 3D světem, který jste právě stvořili.

Ahoj, 3D světe!


 

Stáhnout

Staženo 425x (317 kB)
Aplikace je včetně zdrojových kódů v jazyce Petr Lite (jsou obsaženy v EXE souboru, který lze v programu přímo otevřít)

 

  Aktivity (1)

Článek pro vás napsal Panda38
Avatar
Programátor C++, WinAPI, ASM.

Jak se ti líbí článek?
Celkem (3 hlasů) :
333 33


 


Miniatura
Všechny články v sekci
3D grafika
Miniatura
Následující článek
A přece se točí!

 

 

Komentáře
Zobrazit starší komentáře (2)

Avatar
adedf
Člen
Avatar
adedf:

Ano zkoušel,ale mě tam nefunguje prostě žádná textura:(

 
Odpovědět  +1 27.4.2011 17:33
Avatar
sdraco
Tým ITnetwork
Avatar
Odpovídá na adedf
sdraco:

A co to znamená nefungují, když příklad jen spustíte, tak vidíte otexturovanou planetu? Když ho spustíte v Petrovi, tak vidíte co?

Odpovědět 27.4.2011 18:31
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
adedf
Člen
Avatar
adedf:

No,já už si to nějak domyslím.Nebudu vás otravovat.Akorát tu ze sebe dělám hlupáka.
Omlouvám se že jsem vás obral o váš drahocený čas.

Naschledanou

 
Odpovědět 28.4.2011 19:58
Avatar
sdraco
Tým ITnetwork
Avatar
Odpovídá na adedf
sdraco:

Stačilo by napsat, co vám to dělá, ptal jsem se vás 2x a vy stále nic, to je pak těžké :)

Odpovědět 28.4.2011 20:35
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
sdraco
Tým ITnetwork
Avatar
Odpovídá na adedf
sdraco:

Ještě mě napadlo, zda nemáte starého Petra, v tom textury nešly, musíte si ho stáhnout odsud ze sekce Petr.

Odpovědět 28.4.2011 22:46
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
Dave
Neregistrovaný
Avatar
Dave:

Ahoj, mohl bys mi prosim prozradit jak do Petra nahraju tu texturu? dikes ...

 
Odpovědět 1.4.2012 12:56
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na Dave
David Čápka:

Pokud jsi článek četl, je to v něm vysvětleno.

Odpovědět 1.4.2012 18:18
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
Dave
Neregistrovaný
Avatar
Dave:

No heled vsecko podle navodu udelam, dam si obrazek do spolecnych promennych, ale nevim jak do toho obrazku vlozit tu texturu, chybi mi tlacitko Otevřít ..., jediny co najdu ze by slo vlozit je z knihovny promennych ale tam mi to nabizi jen soubory z cedecka, to musim tu texturu vypalit na cedecko abych ji tam moch vlozit?? dik za radu ;)

 
Odpovědět 2.4.2012 22:15
Avatar
Panda38
Redaktor
Avatar
Odpovídá na Dave
Panda38:

Textura se objeví v knihovně, pokud se soubor uloží do složky Picture ve složkách Petra. Buď je to v pracovní složce (typicky "C:\Documents and Settings\...\Do­kumenty\Peter\Pic­ture\") nebo v instalační složce (typicky "C:\Program Files\PetrLite\PIC­TURE\"). Jinak je možné obsah obrázku přenést ještě přes schránku Windows, kopií z nějakého jiného editoru nebo z prohlížeče.

 
Odpovědět 2.4.2012 22:54
Avatar
Dave
Neregistrovaný
Avatar
Odpovídá na Panda38
Dave:

ahaaa, diky moc :)

 
Odpovědět 2.4.2012 23:12
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 10 zpráv z 12. Zobrazit vše