Archiv novinek

Aktuální novinky
19.01.2005

Cosi

Tak jsem právě došel z materiálů, ještě algebra v úterý a mám po zkouškovým. Zatím jsem na tom 3,1,1 (matematika, obvody, materiály) - ne také nechápu ;-) Čekejte konečně něco nového...

13.12.2004

Winter Wars 2 - Michal Bubnár

Tato hra je FPS střílečkou se zdrojovými kódy. Má spoustu chyb a potřebuje opravit, ale OpenGL a 3D matematiku neumím zrovna do detailů. Pokud vás napadají nějaké dotazy ohledně vytváření, komentáře, návrhy a podobně, prosím pošlete mi je.

24.11.2004

Collisions in 2D world - Michal Bubnár

Tento program ukazuje, jak detekovat kolize ve 2D světě. Výpočty nejsou úplně přesné, ale dostačující pro herní vývojáře, kteří s programováním právě začínají. V archivu se nachází mimojiné i soubor Collisions.doc, který popisuje trochu teorie okolo.

19.11.2004

Gentoo žije!!!

Tak mám nový GNU/Linux, ale zatím je výrazně omezený. Momentálně se nachází ve stavu jádra a základních příkazů textového režimu (cd, ls, ...), o grafickém režimu a aplikacích můžu zatím jenom snít. Ano, všechno jsem kompiloval a editoval ručně, fakt drsný. Na druhou stranu mám (bych měl teoreticky mít :) kompletně všechno optimalizovaný pro hardware mýho počítače.

Měl jsem dva krizový momenty. První byl, když jsem měl editovat první soubor a zadal mc ... command not found. Jeho vestavěný editor byl jediný způsob, kterým jsem uměl doteď v textovém režimu editovat soubory. Takže jsem zkusil emacs ... command not found. Že by vi? Ano vi bylo přítomno, hurá! Budu schopen používat textový editor vi? No, mám u sebe kupu knížek o Linuxu (=2), takže sice těžkopádně, ale asi ano. Mimochodem vi umím z paměti zatím jenom vypnout. Stačí párkrát ťuknout na Esc a napsat ":q!". Nevím jestli je to obecně doporučované řešení, nicméně funguje zaručeně. Cosi jsem zmáčknul a začaly mi mizet řádky - och! Tak tedy vi neeeee.... Naštěstí asi na takový uživatele jako jsem já mysleli a přibalili editor nano - uffffff. Druhý zásek byl při instalaci zavaděče, ale aspoň u lila už vím, kde byla chyba (řešil jsem to přes Mandrake). Grub neměl svůj den, nevím proč, na mé straně chyba asi nebyla, ale možná jsem něco přehlíd.

Už o sobě nebudu říkat, že jsem BFU, protože jsem si právě zkompiloval, nainstaloval, nakonfiguroval a rozchodil svůj vlastní operační systém. I když je pravda, že bez krok-za-krokem manuálu, bych to nikdy nezvládl. Takže se oficiálně začínám považovat za maličko pokročilého BFU ;-)

12.11.2004

Fulltextové vyhledávání

Možná jste si všimli, že se něco stalo s vyhledáváním vlevo. Ano, máte pravdu, nahradil jsem svůj (pochybný ;-) PHP skript, linkem na http://www.google.com/, kterému předávám v parametru adresu těchto stránek. Mám pocit, že google je ve vyhledávání o trochu lepší - ale jenom o maličko :-]

Z bloku do bloku

Tak se mi stalo, že jsem se včera večer přestěhoval :o) Bydlím stále na Strahově, ale ve vedlejší budově, o patro výš a pokoj vedle. Abyste rozuměli, předtím jsem bydlel na bloku 3, pokoj 227, teď jsem na bloku 4, pokoj 328. Jinak škola zatím dobrý, příští týden píšeme první písemky, takže se ukáže co a jak...

22.10.2004

FreeType Fonty v OpenGL a česky - Lukáš Beran - Berka

Chcete používat ve svých programech FreeType Fonty i s českými znaky? Pokud ano, jste na správném místě. Tento článek doplňuje NeHe Tutoriál 43, ve kterém bylo popsáno použití FreeType s OpenGL, ale bohužel bez českých znaků. Použito s laskavým svolením http://programovani.wz.cz/.

15.10.2004

Plány do budoucna: Realita

Předně bych se chtěl omluvit, že jsem už měsíc nic nenapsal :-( Při minulé aktualizaci jsem uvedl spoustu plánů do budoucnosti, ale jak už to u mě bývá, v blízké době se nic z toho nestane :-(. Řeknu to na rovinu, prioritou je pro mě teď udržet se na vysoké škole - bažíci to mají těžký. V praze i na ČVUT jsem se už trochu zorientoval, co nedávám jsou především materiály, algebra, matematika a elektrické obvody. Kromě toho zbývají už jenom dva předměty a to programování s tělocvikem ;-) Je pravda, že mi sice ještě trocha volnýho času zbývá, ale život není jenom práce, takže ode mě v blízké době žádné převratné věci nečekejte. Nezní to jako moc optimistický konec, že? ... ale co se dá dělat.

Knihovna glaux pro Delphi

Michal Tuček poslal Delphi verzi knihovny glaux. Takže mu už o ni nepošte, najdete ji v downloadu.

19.09.2004

Lekce 0 - Předmluva k NeHe Tutoriálům - Michal Turek - Woq

Ještě než se pustíte do čtení tohoto textu, měli byste vědět, že není součástí oficiálních (anglických) NeHe Tutoriálů. Napsal ho "pouze" jeden z překladatelů, kterému chybělo něco na způsob trochu ucelenějšího úvodu do tak obrovské problematiky, jakou představuje programování 3D grafiky, her a ostatně všeho okolo OpenGL.

Můj osobní web

Asi jste si všimli, že jsem skoro měsíc tyto stránky neaktualizoval. Bylo to způsobeno pracemi na mém osobním webu http://woq.nipax.cz/, aktualizace po roce se zvrhla v úplné přepsání. Najdete tam kompletní přehled mé tvorby (články, překlady, programy...), pár nových textů a dokonce jsem se odhodlal i pro nějaká phota :-) Mimochodem, zareagoval na to Berny, se kterým si už hodně dlouho po netu píšu a poslal mi taky svoje photo, kdo bude další?

Plány do budoucna

Začínám mít pocit, že tento web začíná pomalu upadat, jedná se hlavně o čím dál delší intervaly mezi aktualizacemi. Najdete zde pořád sice spoustu věcí, ale pokud už máte vše přečtené, většinou nic nového. NeHe Tutoriály už jsou všechny přeložené, teď jsem dopsal dokonce i nultou (všechna pole, pokud na chvíli zapomeneme na Pascal, začínají od nuly, tak co se divíte? :-) lekci jako úvod, takže hlavní účel projektu byl splněn.

Pokud mi začátek vysoké školy dovolí (nevidím to moc růžově), chtěl bych všechny tutoriály znovu pročíst a doplnit je o pár podrobností, které jsem (jsme) v době překladu ještě neznal. Jedná se hlavně o prvních cca. 10 až 20 lekcí, kde opravdu chybí spousta důležitých informací.

Pokud by mi teoreticky zbyla ještě trocha času, našel jsem na internetu OpenAL (Open Audio Library) tutoriály, které se mi docela líbily. Dokonce uvažuji i o překládání, protože o zvucích v češtině moc textů není. Před tím, než se do toho pustím, bych se potřeboval někoho, kdo v OpenAL programuje nebo se mu alespoň chvíli zkoušel věnovat, zeptat na pár věcí. Nicméně než se někdo takový najde, práce určitě nezačnou... neznáte někoho? :)

Chtěl bych po roční přestávce přestat s psaním o programování a konečně začít opravdu programovat, znalostí už mám dost, ale ještě jsem je nepoužil :-(. Mělo by se jednat o archiv C++ tříd, které by co nejvíce zrychlovaly vývoj grafických programů (OpenGL), k tomu zvuky, síťování a podobně - multimediální knihovna pro hry, ale nejen pro ně. Napadá mě přirovnání k MS DirectX, ale free (GNU LGPL, vývoj ve stylu Katedrály a tržiště) a podobnost jenom rozsahem. Jestli se mi to podaří rozjet, chtěl bych, aby to byl co největší projekt, jak jen to jde - nejen česko, ale mezinárodní komunita, z toho plyne alespoň dokumentace angličtině, možná i komentování zdrojových kódů. Všechno by mělo být 100% přenositelné mezi operačními systémy a co nejméně provázané, aby nebyl problém používat jednotlivé třídy i samostatně. Z počátku to bude projekt jednoho, s trochou štěstí několika lidí (Hippo Games?), další by se mohli přidat až uvidí, že to myslím(e) vážně a budou nějaké výsledky. Pokud vás to zaujalo zkuste mi napsat. Nechci hned, abyste programovali, ze začátku bych potřeboval především kontakt na pár lidí, kteří by mi alespoň řekli, jestli je návrh dobrý nebo ne a případně ukázali lepší řešení. Když je špatný návrh, je všechno v ***, znáte to... takže mi prosím napište <WOQ (zavináč) seznam.cz>, dík.

27.08.2004

Načítání .3DS modelů - Michal Tuček

V tomto článku si ukážeme, jak nahrát a vykreslit model ve formátu .3DS (3D Studio Max). Náš kód bude umět bez problémů načítat soubory do třetí verze programu, s vyššími verzemi bude pracovat také, ale nebude podporovat jejich nové funkce. Vycházím z ukázkového příkladu z http://www.gametutorials.com/, kde také najdete zdrojové kódy pro C++ (článek je v Delphi).

Jdu do Prahy...

Že jsem na konci května odmaturoval, víte asi všichni (někde jsem to tu psal), ale nějak jsem zapomněl oznámit, na kterou vysokou školu se chystám. Měl jsem přihlášky na celkem tři, z nichž první, Západačeská univerzita, byla záložní. Opravdu jsem se rozhodoval mezi FIT VUT v Brně a FEL ČVUT v Praze. Do Prahy jsem byl přijat bez přijímacích zkoušek, v Brně jsem přijímačky bohužel neudělal (484 bodů z 1000 :-(. Zkoušel jsem poslat odvolání, ale nevyšlo to, takže jdu, nyní už na jisto, do Prahy. Mohli bychom založit nějakej vývojovej tým... ale až se trochu zabydlim :-)

20.08.2004

Vytvoření OpenGL okna v Delphi - Michal Tuček

Tento článek popisuje vytvoření OpenGL okna pod operačním systémem MS Windows ve vývojovém prostředí Borland Delphi. Já osobně používám Delphi verze 7, ale ani v nižších verzích by neměl být problém vytvořený kód zkompilovat a spustit. Z větší části se jedná o přepis prvního NeHe Tutoriálu z jazyka C/C++ do Pascalu. Takže směle do toho...

Offline všech článků

Byl jsem požádán o vytvoření offlinu článků, takže tady ho konečně máte :-] (download).

14.08.2004

OpenGL 2.0

Když jsem na http://www.root.cz/ viděl zprávu, že vyšlo OpenGL 2.0, byl jsem překvapen/nadšen/fascinován (nehodící se škrtněte :-). Po kliknutí na přiložený odkaz moje nadšení relativně opadlo, protože směroval na pro mě ne zrovna věrohodný web (zpracování, grafika, adresa), takže jsem zkusil pohledat na http://www.opengl.org/ a hned na hlavní stránce našel odkaz http://www.sgi.com/newsroom/press_releases/2004/august/opengl.html (OpenGL 2.0 opravdu vyšlo!!!!!), pravděpodobně oficiální dokument oznamující vydání nové verze OpenGL. Zatím jsem to jenom v rychlosti prolítl - má být zpětně kompatibilní s verzemi 1.x a hlavní novinkou je asi přidání vertext a fragment shaderů přímo do jádra základního standardu (ne jako extensions).

Soubory pro OpenGL (MS Windows)

Ondřej Rusman <ondra.rusman (zavináč) seznam.cz>: Posílám kompletní knihovny a .dll pro OpenGL kdyby je někdo chtěl. DLL zkopírovat do c:\windows\system\ (9x/Me) nebo c:\windows\system32 (NT/2000/XP). Archiv obsahuje soubory gl.h, glu.h, glu_.h, glut.h, glaux.h, glext.h, OPENGL32.DLL, GLU32.DLL, glut32.dll, glaux.dll a glut32.lib (download). Za všechny dík...

Nový program - hlsaver

Asi před měsícem mi přišel na email jeden program, ale až dneska jsem se konečně dokopal k jeho přidání na web. Jedná se o program (demíčko), "ktory kopiruje uvodnu miestnost z half-lifu, tu recepciu, kam pride vlak. Su tam 2 ludia, barney a scientist,... ktory nieco robia pri kompe, kamera lieta okolo. a to je vsetko ;o)". Bohužel bez zdrojových kódů :-(

Čtvrt milionu návštěv

:-))))) Jenom na index skoro třicet tisíc. Co víc dodat?

BTW...

Jestli jste minulý týden viděli v Praze na Staroměstském náměstí nějaké úletářské týpky, co uprostřed davů čtyři hodiny breakovali (takové to točení na hlavě do zvuků bubnů (rozuměj: Hip Hopu :-)), tak jsem tam byl taky. Já nejsem breaker, ale kámoši z vesnice (Wessani - Duzsty, Timmy...) to umí dost dobře.

31.07.2004

33D - Errata

Na této stránce najdete kompletní seznam nalezených a opravených chyb v 33D kódu... a taky jednu neopravenou - pár řádků, ale tohle prostě nedávám. PLEASE HELP ME!!!! já tam fakt nic nevidim :-(, hraju si s tím nejmíň čtyři hodiny.

33D 0.1.3 Download

Novinek je tentokrát víc: odstraněny chyby ve WApplication (ve Win se ztrácel OpenGL kontext při změně velikosti okna), možnost přepínání okna do/z fullscreenu i v MS Windows, možnost vytvořit okno bez rámečku (nastavení v ini), podmíněný překlad v závislosti na OS, vývojovém prostředí ap. - viz all.h a poupravovaná dokumentace - velmi mnoho velmi malých změn, šíleně únavný :-(

Brigáda

Jdu na brigádu, takže na počítač bude čas zase jenom o víkendu - asi nebude tolik novinek, jako v poslední době :-(

25.07.2004

33D - Vytvoření SDL projektu v Dev-C++

V emailu mi přešel dotaz na zprovoznění SDL ve free vývojovém prostředí Dev-C++. Takže jsem ho stáhl z internetu, nainstaloval a napsal návod. Najdete ho v dokumentaci 33D. Stačí takhle :-) ?

OpenGL a DirectX

Včera mě fascinoval jistý člověk, který ve článku o Unreal Tournament na http://www.root.cz/ pěti větami v rychlosti porovnal OpenGL a DirectX (Direct je prej THE BEST). V reakci na to se strhla diskuze, ve které bylo asi nejčastější spojení "moc tomu nerozumím". A měli OBROVSKOU pravdu - např. že OpenGL vytváří jeden člověk je ten ABSOLUTNĚ NEJVĚTŠÍ NESMYSL, JAKEJ JSEM KDY SLYŠEL, zvlášť v kontrastu s DirectX. OpenGL sice navrhla firma SGI, ale jak plyne z části slova OpenGL (Open), může ho implementovat naprosto kdokoli. Na rozdíl od toho Direct3D vytváří VÝHRADNĚ jistá nejmenovaná firma z Redmondu. To je jako byste o Linuxu (ve spojení s Windows) řekli, že ho vytváří jeden člověk.

24.07.2004

33D - Změny ve WIni

Doprogramoval jsem ukládání konfigurace a maličko jsem upravil i nahrávání, kód by teď měl být průchodnější a hlavně přehlednější.

33D - Kompletně přeprogramovaný WVector

Vím, že po uvolnění knihovny by se už její rozhraní nemělo nikdy změnit - doufám, že mě neukamenujete. Rozhodl jsem se přeprogramovat WVector z "obyčejné" třídy na šahlonu, díky které lze kdykoli specifikovat datový typ x, y, z složek (float, double, int...) a tak optimalizovat paměťové nároky. Dále je možné předat celou třídu jako ukazatel funkci glVertex3*v() - data jsou organizovány do pole. Asi nejlepší bude když se podíváte do dokumentace.

33D - Error ve Win :-(

V ukázkové aplikaci (WSimpleApp) se vyskytly nějaké problémy s depth testem po změně velikosti okna a přepnutí do fullscreenu (dík eMane za upozornění). Určitě se projevují pod MS Windows, zkoušel jsem i Linux a tam je to OK. Zkusím se na to co nejdřív podívat.

23.07.2004

Nový index

Už dlouho jsem si říkal, že by zasloužil změnu. Nyní se skládá ze dvou sekcí - směrová tabule pro začátečníky a deset nejnovějších novinek :-).

Octree - Michal Turek - Woq

Octree (octal tree, oktalový strom) je způsob rozdělování 3D prostoru na oblasti, který umožňuje vykreslit pouze tu část světa/levelu/scény, která se nachází ve výhledu kamery, a tím značně urychlit rendering. Může se také použít k detekcím kolizí.

Porty do Delphi

Lekce 48 (download) - poslední. Woq: Download jsem pro přehlednost uspořádal do pěti archivů, v každém deset lekcí.

33D - ChangeLog, NEWS

Stránka, na které se zaznamenávají změny v kódu, připrogramované věci, novinky a podobně.

10.07.2004

Free3D (33D) Basecode 0.1.1

Opravy chyb, čistota kódu... (download).

Free3D (33D) Basecode 0.1.1 - dokumentace

Kompletní HTML offline stránek, které jsou na webu (download).

33D - Rejstřík

Navigační mapa 33D - třídy, proměnné, metody, symbolické konstanty, závislosti, ovládání...

33D - WFont - Třída pro výpis textů do scény

Velice často je nutné vypsat text do scény. Třída WFont umožňuje vykreslovat jak jednořádkové tak i víceřádkové řetězce neproporcionálních znaků, které mohou být navíc zarovnány doleva, na střed nebo doprava. Pracuje na NeHe principu rozsekané textury namapované na obdélníky.

02.07.2004

Porty do Delphi

Lekce 45, 46, 47 (download).

Začínám ignorovat MS IE

Nedávno jsem objevil, jak velice snadno realizovat ikony u odkazů na cizí stránky. Doteď jsem je těžkopádně vkládal pomocí PHP, ale asi nejelegantnější cesta vede přes kaskádové styly. Tato vlastnost se v nich nachází už od CSS1 (okolo roku 1998, v součanosti CSS2, CSS3) a podporují ji snad všechny prohlížeče kromě textových (Links, Lynx), u kterých se ale obrázky jaksi nepředpokládají, a Internet Exploreru.

Kdysi byl IE absolutní špička, ale v současnosti stojí spíše na druhém konci. Možná je to tím, že i nejnovější verze 6.0 je extrémně zastaralá a jak to tak vypadá, nové verze se Microsoft rozhodl vydávat současně s Windows. Bohužel dokončení Win Longhorn se neustále oddaluje, udává se konec r. 2006. Dva roky na "Staré chyby jsme odstranili, na odstranění nových se usilovně pracuje..." :-) čekat nebudu, doporučuji zkusit jiný prohlížeč např. Operu nebo Mozillu. Mimochodem za těmi dvěma odkazy by teď měla být zobrazena malá černobílá ikonka znázoruňující dvě překrytá okna ;-)

Aby to někdo nepochopil špatně: Tato zpráva neoznamuje, že si web v IE nebudete moci přečíst, pouze to, že některé věci nebudou na stránkách zobrazené - v tomto případě se jedná o ikony odkazů na cizí stránky a souborů k downloadu. Prosím, nepište mi, že Internet Explorer je naprosto total best prohlížeč, není to pravda...

33D - WIni - Třída konfiguračního souboru

Proč vlastně konfigurační soubory? Nastavení vlastností programu pomocí externích souborů má spoustu výhod, asi největší je možnost změnit jeho chování bez rekompilace - typicky se jedná o rozměry okna, start ve fullscreenu ale i složitější uživatelská nastavení.

33D - WImage - Třída pro loading obrázků

Třída WImage je založena na knihovně SDL_Image, umí nahrávat obrázky ve formátech BMP, GIF, PCX, PNG, JPEG, TIFF, TGA atd. a vytvořit z nich OpenGL textury. Po prvním použití si ji určitě oblíbíte.

33D - W33DLogo - Třída vykreslující 33D logo

Jedna z absolutně nejdůležitějších tříd celého základního kódu: W33DLogo. Please, pokud to půjde, zkuste ho nenápadně vložit někam do programu - taková skrytá reklama :-).

33D - WVector - Třída 3D vektoru

Snad v každém 3D programu vznikne potřeba analytické geometrie. Základem všeho je bod a vektor ve 3D prostoru (souřadnice x, y, z), jejich implementaci najdete ve třídě WVector.

23.06.2004

Problémy s aktualizací...

Protože jsem včera dokončil školu a začínají mi prázdniny, budu mít kvůli malému přístupu na internet trochu potíže s aktualizacemi a s odpisováním na emaily. Takže jestli nebudu nějaký čas reagovat, je to způsobeno tímhle. Občas zkuste knihu návštěv, budu psát převážně tam. Díky za pochopení.

Generování planet - Milan Turek

Pokud budete někdy potřebovat pro svou aplikaci vygenerovat realisticky vypadající planetu, tento článek se vám bude určitě hodit - popisuje jeden ze způsobů vytváření nedeformovaných kontinentů. Obvyklé způsoby pokrývání koule rovinnou texturou končí obrovskými deformacemi na pólech. Další nevýhodou některých způsobů je, že výsledek je orientován v nějakém směru. To u této metody nehrozí.

Porty do Delphi

44. tutoriál ve dvou verzích - bez a s podporou rozšíření. Lekce 43 je zatím ve hvězdách, nemáte někdo verzi knihovny FreeType použitelnou v Delphi? (download)

33D - Index

Free3D (33D) Basecode je volně šiřitelným (GNU LGPL) základním kódem naprogramovaným v jazyce C++ pro 3D grafické aplikace založené na OpenGL a SDL. Díky portovatelnosti obou těchto knihoven je ho možné přenášet mezi nejrůznějšími platformami a operačními systémy - jeden kód pro všechny. Vývoj pro většinu z nich je u nás celkem neobvyklý (Mac OS, Sony Playstation II, BeOS, OS/2...) a z důvodu jejich nedostupnosti by byl celkem problém vše testovat. Práce tedy bude (alespoň u mě) probíhat pod operačním systémem GNU/Linux (KDevelop 3.0) a testovat se určitě bude i na MS Windows (MS Visual C++ 6.0).

33D - Úvod

Úvodní slovo k tutoriálům o Free3D (33D) Basecode a aplikací na něm založených. Idea, licence, hlavní znaky...

33D - all.h - nastavení na jednom místě

Abychom při přenášení 33D mezi různými prostředími a OS nemuseli složitě procházet soubory se zdrojovými kódy, vytvoříme hlavičkový soubor, který se bude inkludovat do všech 33D souborů. Bude obsahovat společná nastavení, jako jsou například inkludování často používaných hlavičkových souborů (stdio.h, math.h, sdl, opengl...) nebo definice nejrůznějších symbolických konstant a přepínačů pro podmíněný překlad.

33D - WApplication - Abstraktní třída aplikace

Konečně se dostáváme k něčemu zajímavému, k aplikaci. Asi bude dobré hned na začátku říct, že pokud tuto třídu nepochopíte alespoň na uživatelské úrovni, nemá cenu jít dál, protože je jádrem celého základního kódu. Všechny ostatní třídy budou obsahovat různá vylepšení a usnadnění tvorby programů, která slouží pro zrychlení vývoje, ale bez aplikace je nemáte, kde použít. Ne že bych to už nedělal, ale budu se snažit vše vysvětlit, jak nejlépe umím.

33D - WSimpleApp - Ukázková třída aplikace

V minulém tutoriálu jsem slíbil, že si konečně ukážeme spustitelnou aplikaci založenou na 33D základním kódu. Bude se jednat o trochu pokročilejší "Hello, World" vykreslující 33D logo.

25.05.2004

Mám maturitu :-)

Ve zkratce: matematika - 2, čeština - 2, odborné - 1, praktické - 1, angličtina (bonus) - 1.

Mandrake 10.0 Official

Na http://www.mandrake.cz/ jsem se před chvílí dočetl, že byly uvolněny ISO obrazy Mandrake 10.0 Linux Official.

Změna emailu

Přes svaťák mi přišlo přes šedesát spamů, takže asi chápete proč tahle změna. Nová adresa je <WOQ (zavináč) seznam.cz>, ale nějakou dobu budu kontrolovat i starý email, takže pokud se spletete, neměl by to být až tak velký problém.

Několik poznámek k tvorbě počítačových her (SDL, Allegro) - Bernard Lidický

Tento článek by měl být shrnutím mých zkušeností s tvorbou počítačových her a mohl by usnadnit život začínajícím amatérským tvůrcům her a zejména programátorům. Podíváme se v něm na několik obecných věcí o hrách a pak se vrhneme na grafiku, klávesnici s myší a nakonec na čas. V každé části se pokusíme vytvořit nějaké příklady a na nich předvést o čem je řeč. 193.3 kB - text článku (PDF, TEX) + příklady.

23.05.2004

Nový skin

Dneska je pátek a když nepočítám víkend, pomalu mi končí svaťák - příští týden v úterý maturuju (držte mi palce). Původně jsem chtěl za ten týden napsat nějaký článek, je jich v zásobě několik, ale protože mám menší memory overflow :-] a nejsem schopen cokoli vymyslet, začal jsem vytvářet nový skin. Nechal jsem se inspirovat jednou knížkou do literatury, která má docela kvalitní design. Pokud ji neznáte, možná vám napoví jméno skinu "Odmaturuj...".

Další port do Delphi

Tutoriál 40... (download)

10.05.2004

FAQ: Často kladené dotazy

Na emailu se mi některé, většinou začátečnické, dotazy neustále opakují, jako příklad lze uvést problémy s knihovnou GLAUX a symbolickou konstantou CDS_FULLSCREEN v Dev-C++. Doufám, že tato stránka trochu sníží zatížení, ale pokud si stále nevíte rady, nebojte se mi napsat. Doufám, že nebude vadit, když na ni umístím i ten váš problém.

A ještě jeden port do Delphi

Tentokrát 39. tutoriál... (download)

04.05.2004

Další port do Delphi

Michal Tuček mi poslal port 37. tutoriálu (download). Update: před chvílí mi poslal ještě lekci 38.

SOČ

Dneska jsem byl v Uherském Hradišti na krajském kole SOČ (s tímto webem) a ve své kategorii jsem byl druhý. Hezký výsledek...

20.04.2004

Další dva porty do Delphi

Michal Tuček poslal porty 35. a 36. tutoriálu do Delphi (download), díky.

18.04.2004

Prázdné emaily

Přibližně po týdnu jsem se dostal k internetu a na emailu jsem našel kolem půlky zpráv (asi deset) prázdných. Pouze klasická hlavička "od, pro, doručeno, předmět" a prázdný email. Na všechny emaily obsahující text zprávy jsem odpověděl, prázdné jsem nechal plavat s tím, že jestli v nich bylo něco důležitého, dotyčný je napíše znovu :-). Takže pokud jste ode mě nedostali odpověď, napište mi prosím ještě jednou. Přestože chyba není na mojí straně, velice se omlouvám.

Co chystám

No, když už sem píšu... asi jste si všimli relativně dlouhé odmlky při aktualizaci těchto stránek. Je způsobena především mojí přípravou na maturitu, ale nejen jí. Po kliknutí na tonto odkaz byste měli pochopit. (Smazáno, jednalo se o 33D Basecode.)

05.04.2004

SOČ

Před časem jsem tady psal, že jsem s tímto webem vyhrál školní kolo SOČ. Dneska se ve ValMezu konalo okresní kolo (nebyly náhodnou okresy zrušeny?) a výsledek se překvapivě opakoval. Jsem opravdu zvědavej, jak to dopadne v Uherském Hradišti... :-)

04.04.2004

Porty do Delphi

Michal Tuček mi poslal další porty do Delphi, tentokrát lekce 31 až 34. Najdete je v downloadu.

25.03.2004

O výpadku (...z emailu od Mirka Topoláře - správce opengl.cz)

Zdravím,

s největší pravděpodobností je výpadek způsoben překročením http limitu, protože nehe stranky jsou nějak moc populární :-). PIPNI.CZ změnilo pravidla a povolilo limit 1GB za měsíc, my uděláme 6 GB, takže jsem se rozhodl platit 1500 Kč za rok a za tu cenu budeme mít povoleno 15GB za měsíc, což bude stacit.

Dneska to zaplatím a uvidíme kdy to odblokujou. Jinak tím, že to bude placený budeme mít mnoho výhod a bude to mnohem bezpečnější, takže prosím vydrž.

Mira

Zprovoznění OpenGL v Linuxu (ovladače karty, kompilace) (Michal Turek - Woq)

Když jsem přibližně před půl rokem (podzim 2003) přecházel z MS Windows® na operační systém Linux, měl jsem relativně velké potíže se zprovozněním OpenGL. Nejedná se sice o nic složitého, nicméně pro tehdy nic nechápajícího Woqa uživatele (analogie na Frantu uživatele :-) to byl naprosto neřešitelný problém.

Komprimované textury a SDL_Image (Radomír Vrána)

V tomto článku si ukážeme, jak vytvářet komprimované OpenGL textury a jak za pomoci knihovny SDL_Image snadno načítat obrázky s alfa kanálem nebo v paletovém režimu. Třídu Picture jsem se snažil navrhnou tak, aby byla co nejjednodušší a dala se snadno použít v každém programu, zároveň díky SDL_Image poskytuje velké možnosti.

Prezentace CZ NeHe OpenGL

Před časem jsem umístil na web dokumentaci mé maturitní práce - tyto stránky. Jelikož měl u konzultanta, pana Biolka, docela úspěch, rozhodl jsem se přihlásit se na SOČ (Středoškolská Odborná Činnost). Nechci se chlubit, tak jo, chci :-), ve své kategorii Matematika a matematická informatika jsem vyhrál školní kolo a postupuji dál. V downloadu si můžete stáhnout prezentaci ve formátech .sxi, .ppt a .pdf.

21.03.2004

Trochu mimo téma OpenGL...

Převzato z novinek na http://www.root.cz/: Právě probíhá hlasování o názvu pro OpenOffice.org 1.1.1 a mezi nominovanými městy je i Praha. Pokusme se o to, abychom vyhráli :-)

17.03.2004

SDL extension

Radomír Vrána vytvořil jednoduché demo, které ukazuje, jak se v programu založeném na multiplatformní knihovně SDL používají OpenGL rozšíření (extensions). Kód vykresluje rotující krychli, na kterou jsou pomocí multitexturingového rozšíření (GL_ARB_multitexture) namapované dvě textury najednou. Najdete ho v programech - mimochodem, minulý program byl poslál téměř před třičtvrtě rokem!!!

14.03.2004

Aktualizace CHM verze tutoriálů

Peter Hrabčák mi poslal aktualizaci CHM verze tutoriálů, takže už je i ona kompletní, díky. Najdete ji v downloadu.

Osobní statistiky

Nahoře ve statistikách můžete najít celkový počet vašich přístupů na tyto stránky. V případě jednouživatelských operačních systémů (toto není narážka na MS Windows (toto už ano)), kdy jeden uživatel pracuje pod účtem úplně někoho jiného, se jedná o počet přístupů z tohoto počítače. Aby se hodnota počítadla zvyšovala, musíte mít v prohlížeči zapnuté cookies. Globálně vzato, snad nejdůležitější věc na celém webu :-)

11.03.2004

Nové fulltextové vyhledávání

Jak je vidět, využíváte vyhledávání čím dál víc, v současné době je zaznamenáno celkem 573 logů a každý den jich přibývá přibližně 5 nových. Rozhodl jsem se ho trochu poupravovat, aby bylo maličko inteligentnější.

Při zadání víceslovného výrazu se nehledená kompletně celý řetězec najednou, ale každé slovo zvlášť. Před slova lze zadat buď znaménko plus '+' nebo mínus '-'. Mezi znaménkem a slovem nesmí být mezera! Pokud zadáte slovo bez znaménka, musí stránka obsahovat toto slovo. Naopak mínus specifikuje, že stránka nesmí obsahovat toto slovo. Plus slouží pouze pro "informaci", zda stránka obsahuje toto slovo nebo ne. Jsou-li splněny všechny ostatní podmínky kromě této, je vše v pořádku, stránka se vypíše. Při použití plus u více slov najednou, vystupuje ve funkci logického součtu. Vše by mělo být jasné z příkladů níže. Chcete-li, aby se při vyhledávání rozlišovala malá a velká písmena, zatrhněte checkbox vedle tlačítka pro odeslání.

09.03.2004

Aktualizace odkazů na zdrojové kódy

Někdy před rokem jsem umístil na stránky tutoriálů odkazy na download zdrojových kódů. Během této doby byly u každé lekce vytvořeny přibližně 3 až 4 porty do nejrůznějších programovacích jazyků a systémů. Nyní by měly být všechny aktuální.

BTW: Jestli se dá ještě něco na tomto webu zaktualizovat, dejte mi prosím vědět... :-]

01.03.2004

Aktualizace PDF verze tutoriálů

Už jsou v ní také kompletně všechny tutoriály. Původních 291 stran expandovalo na plných 337 a soubor teď zabírá rovné 3 MB - hezké, co říkáte? Najdete ji v downloadu.

Dokumentace k CZ NeHe OpenGL

Naše škola má takovou tradici, že by měl každý student před maturitou vytvořit nějaký větší projekt. Když jsem tak uvažoval, co by to mohlo být, řekl jsem si, že nebudu dělat nic nového, ale použiji tento web. Chcete-li vědět, na jakých technologiích staví nebo co se skrývá "pod pokličkou" jeho vytváření, podívejte se na tuto dokumentaci (download).

24.02.2004

Aktualizace HTML offlinu tutoriálů

Můžete ho stáhnout v downloadu. Zároveň bych chtěl poprosit kohokoli, kdo umí pracovat s CHM soubory, aby prosím aktualizoval i tuto verzi a poslal mi ji. Jestli to chápu dobře, mělo by stačit pouze "zkompilovat" HTML stránky do CHM formátu. Předem díky.

23.02.2004

Kvalitní web o programování v OpenGL a DirectX

Munki mi poslal odkaz na stránky http://www.mizanin.szm.sk/. Tento web doslova praská pod tunami opravdu kvalitních programů, které jsou i se zdrojovými kódy. Určitě se na něj podívejte.

Vzkaz pro bráchu: Najdeš tam i nějaký fraktály a vertex/pixel shadery v OpenGL i DirectX. Napsal bych to na email, ale takhle je to efektnější :-]

22.02.2004

Dokončení překladů NeHe OpenGL Tutoriálů !!!

V pátek jsem do knihy návštěv napsal zprávu, že jsem před deseti minutami dokončil poslední ještě nepřeložený tutoriál. Je neděle 13:49:23 :-] a můžu říct, že je konečně přepsaný do elektronické podoby, na web ho uploaduji až večer, kdy přijedu na intr a dostanu se na internet. Tím skončí (nejen moje) přibližně dvouleté snažení. Jsem přesvědčen, že bylo alespoň k něčemu. Když nic jiného, alespon jsem se naučil počítačovou angličtinu... :-)

Otázkou zůstává, co dál. Pro mě je teď sice prioritou především maturita a přijímačky na vysokou školu, ale myslím si, že nějaký volný čas by (čistě teoreticky) mohl zůstat. Napadlo mě, naprogramovat něco ve stylu NeHeGL Basecode, ale místo Win API použít SDL a na něm začít vytvářit české OpenGL (SDL) tutoriály. Jestli se vám tento nápad líbí nebo máte vlastní nápady, co dál, dejte mi určitě vědět.

Lekce 41 - Volumetrická mlha a nahrávání obrázků pomocí IPicture

V tomto tutoriálu se naučíte, jak pomocí rozšíření EXT_fog_coord vytvořit volumetrickou mlhu. Také zjistíte, jak pracuje IPicture kód a jak ho můžete využít pro nahrávání obrázků ve svých vlastních projektech. Demo sice není až tak komplexní jako některá jiná, nicméně i přesto vypadá hodně efektně.

100 000 přístupů...

No, díval jsem se na statistiky a tohle číslo je tam sice relativně nenápadný, ale je tam :-), jedná se o součet všech návštěv na jednotlivé stránky webu. Průměrně na jednu stránku, kterých je mimochodem 87, to činí něco přes 1150. Nejvíce navštěvovaný je index - 11500 přístupů.

17.02.2004

NeHe v Delphi

Včera mi Michal Tuček poslal další porty NeHe Tutoriálů do Delphi, jedná se o 26. až 29. lekci. Najdete je v downloadu.

14.02.2004

Přímka ve 2D (Michal Turek - Woq)

Radomír Vrána mě požádal o radu, jak vypočítat průsečík dvou 2D přímek. Rozhodl jsem se, že mu místo obecných matematických vzorců pošlu rovnou kompletní C++ kód. Nicméně mi trochu přerostl přes hlavu, a tak vznikla kompletní třída přímky v obecném tvaru. Kromě průsečíku umí určit i jejich vzájemnou polohu (rovnoběžné, kolmé...), úhel, který svírají nebo vzdálenost libovolného bodu od přímky. Doufám, že tento můj drobný úlet nebude moc vadit :-]

MesaGL - http://www.mesa3d.org/

Nedávno jsem měl v Linuxu trochu problémy s OpenGL, takže jsem po internetu hledal ovladače grafické karty a způsob, jak můj problém vyřešit. Při tom jsem narazil na knihovnu MesaGL, která je free implementací OpenGL a funguje v mnoha operačních systémech (Linux, BeOS, Win a další). Ale proč to tady všechno píšu... když rozbalíte stáhnutý archiv, zjistíte, že se distribuuje ve formě ZDROJOVÝCH KÓDŮ!!! V Linuxu je to sice zvykem, ale stejně to pro mě byl šok.

09.02.2004

Eric S. Raymond: Katedrála a tržiště

Kvalitní překlad článku, který popisuje myšlenky a principy otevřeného vývoje software, který lze vidět mimo jiné i u operačního systému Linux. Na základě tohoto článku byly uvolněny zdrojové kódy internetového prohlížeče Netscape, na kterých byl položen základ free Mozilly.

Woq: Je tomu přibližně půl roku, kdy jsem o Katedrále a bazaru poprvé slyšel a zkusil ji sehnat. Nepodařilo se mi to (tak moc jsem zase nehladal :-) a po nějakém čase můj zájem opadl. Když jsem článek včera konečně objevil a přečetl, zjistil jsem, že jsem přesně na těchto myšlenkách (neúmyslně) vystavěl tento web a celý projekt překladů NeHe Tutoriálů. Pokud se štítíte zveřejňovat své zdrojové kódy, určitě si ho přečtěte, uvidíte vše z naprosto jiného úhlu...

08.02.2004

Lekce 47 - CG vertex shader

Používání vertex a fragment (pixel) shaderů ke "špinavé práci" při renderingu může mít nespočet výhod. Nejvíce je vidět např. pohyb objektů do teď výhradně závislý na CPU, který neběží na CPU, ale na GPU. Pro psaní velice kvalitních shaderů poskytuje CG (přiměřeně) snadné rozhraní. Tento tutoriál vám ukáže jednoduchý vertex shader, který sice něco dělá, ale nebude předvádět ne nezbytné osvětlení a podobné složitější nadstavby. Tak jako tak je především určen pro začátečníky, kteří už mají nějaké zkušenosti s OpenGL a zajímají se o CG.

27.01.2004

CHM

Peter Hrabčák aktualizoval CHM verzi tutoriálů. Můžete ji najít downloadu.

NeHe v Delphi

Michal Tuček mi poslal dalších pět portů (21-25) NeHe Tutoriálů do Delphi. Opět je najdete v downloadu.

Nové statistiky

Našel jsem si trochu volného času a vylepšil statistiky. Kromě přístupů na jednotlivé stránky, se nyní sledují i přístupy v jednotlivých dnech, dnech v týdnu, denních hodinách a nastavení skinů.

26.01.2004

Lekce 46 - Fullscreenový antialiasing

Chtěli byste, aby vaše aplikace vypadaly ještě lépe než doposud? Fullscreenové vyhlazování, nazývané též multisampling, by vám mohlo pomoci. S výhodou ho používají ne-realtimové renderovací programy, nicméně s dnešním hardwarem ho můžeme dosáhnout i v reálném čase. Bohužel je implementováno pouze jako rozšíření ARB_MULTISAMPLE, které nebude pracovat, pokud ho grafická karta nepodporuje.

Lekce 48 - ArcBall rotace

Nebylo by skvělé otáčet modelem pomocí myši jednoduchým drag & drop? S ArcBall rotacemi je to možné. Moje implementace je založená na myšlenkách Brettona Wadea a Kena Shoemakea. Kód také obsahuje funkci pro rendering toroidu - kompletně i s normálami.

20.01.2004

Delphi verze NeHe Tutoriálů

Před chvílí jsem dostal email od Michala Tučka obsahující port NeHe Tutoriálů do Delphi. Jedná se o lekce 1-20, ale má v plánu pokračovat i na dalších. Můžete si je stáhnout v downloadu.

Malá úprava vyhledávání ve fulltextu

Nedávno jsem něco hledal a úplně jsem se zděsil, jak vypadají výpisy výsledků. Poupravoval jsem je, aby vypadaly trochu k světu...

05.01.2004

Please, help me

Asi jste si v minulé aktualizaci všimli zmínce o instalaci ovladačů grafiky v Linuxu. Před chvílí jsem to zkoušel i tady na intru, kde mám ATI Radeon 7000, ale RPM balíček má konflikt s XFree. Vypsalo mi to zprávu níže. Nevíte někdo, co s tím? Pište prosím na <WOQ (zavináč) seznam.cz>.

Chyba při instalaci: file /usr/X11R6/lib/libGL.so.1.2 from install of fglrx-glc22-4.3.0-3.2.5 conflicts with file from package libxfree86-4.3-24.1.92mdk

04.01.2004

Můj email

WOQ@email.cz ne WOG@email.cz !!!

Skin Nice

Nedávno mi Jaroslav Antoš poslal grafický návrh (trochu HTML+PHP zdrojáků a obrázky) na nový skin. Původně jsem ho nechtěl na stránky vůbec dávat, protože byl samá tabulka (<table> <tr> <td> </td> </tr> <tr> <table> <tr> <td> </td> </tr> </table> </tr> </table> PROGRAM BEGIN IF THEN BEGIN FOR TO DO BEGIN END IF THEN BEGIN END END ELSE BEGIN END END END. ...mi to něco připomnělo :-] ), otevřete si zdrojový kód a uvidíte. Musel bych překopat kompletně celý web, současný skiny taky a o rychlosti načítání takový spousty obrázků v menu ani nemluvě. Ale čert to vem! Zrušil jsem "pevné" vkládání hlavního menu, menu tutoriálů, informací, které se inkludovaly do stránek u všech skinů stejně. Několik jednoduchých funkcí, které volaly pouze obyčejné echo se jménem obrázku, zmutovalo do tříd (i s dědičností) :-(, osobně mám radši přímočarost a jednoduchost. Už si s tím hraju skoro třetí den a to jsem ještě ani netestoval IE® (textový Linx a Links už ano :). Jestli mi zítra někdo napíše, že se mu něco blbě zobrazuje...!!!!!

Takže skin je hotov. Stránky jsem projel ve spoustě prohlížečů a zdá se, že se správně zobrazí na minimálně 95%. Absolutně bez problémů jsou v Opeře 7.21, Mozille 1.4, Galeonu 1.3.8, Lynxu a Linksu. IE® 6.0 má problémy na stránce My, nevím proč. Konqueror 3.1.4 neumí zobrazit správný layout formuláře diskuze u článků a tutoriálů u všech skinů, kromě tohoto nového (po 2 hodinách jsem to vzdal).

Lekce 43 - FreeType Fonty v OpenGL

Použitím knihovny FreeType Font rendering library můžete snadno vypisovat vyhlazené znaky, které vypadají mnohem lépe než písmena u bitmapovvých fontů z lekce 13. Náš text bude mít ale i jiné výhody - bezproblémová rotace, dobrá spolupráce s OpenGL vybíracími (picking) funkcemi a víceřádkové řetězce.

Lekce 44 - Čočkové efekty

Čočkové efekty vznikají po dopadu paprsku světla např. na objektiv kamery nebo fotoaparátu. Podíváte-li se na záři vyvolanou čočkou, zjistíte, že jednotlivé útvary mají jednu společnou věc. Pozorovateli se zdá, jako by se všechny pohybovaly skrz střed scény. S tímto na mysli můžeme osu z jednoduše odstranit a vytvářet vše ve 2D. Jediný problém související s nepřítomností z souřadnice je, jak zjistit, jestli se zdroj světla nachází ve výhledu kamery nebo ne. Připravte se proto na trochu matematiky.

Lekce 45 - Vertex Buffer Object (VBO)

Jeden z největších problémů jakékoli 3D aplikace je zajištění její rychlosti. Vždy byste měli limitovat množství aktuálně renderovaných polygonů buď řazením, cullingem nebo nějakým algoritmem na snižování detailů. Když nic z toho nepomáhá, můžete zkusit například vertex arrays. Moderní grafické karty nabízejí rozšíření nazvané vertex buffer object, které pracuje podobně jako vertex arrays kromě toho, že nahrává data do vysoce výkonné paměti grafické karty, a tak podstatně snižuje čas potřebný pro rendering. Samozřejmě ne všechny karty tato nová rozšíření podporují, takže musíme implementovat i verzi založenou na vertex arrays.

Třída kamery a Quaternionu (Michal Turek - Woq)

Chcete si naprogramovat letecký simulátor? Směr letu nad krajinou můžete měnit klávesnicí i myší... Vytvoříme několik užitečných tříd, která vám pomohou s matematikou, která stojí za definováním výhledu kamery a pak všechno spojíme do jednoho funkčního celku.

OpenGL v Linuxu

Nešly mi kompilovat OpenGL programy a i šetřiče se mi zdály "maličko" trhané (cca. 2 FPS). Jestli máte stejný problém, jako jsem měl já, nainstalujte si ovladače grafické karty (u Mandrake 9.2 na Bonus CD), všechno běželo na softwaru - jsem debil, co?

18.12.2003

No spam

Už mě přestalo bavit nekonečné mazání reklamních emailů, a proto jsem ze stránek "odstranil" (většinu) emailových odkazů. Všechny jsou nyní vloženy jako čistej text a pro zvýraznění vypadají např. takto: <WOQ (zavináč) seznam.cz>. Když denně dostanete deset emailů a šest z nich je spam, tak začnete hledat jádro problému. Já jsem ho našel na webu.

O Vánocích nejsem online !!!

... takže nebudu moci odpovídat na emaily, aktualizovat web a podobně. Hezký Vánoce a šťastný nový rok!

13.12.2003

PDF verze tutoriálů

Po týdnech zápasení s PDF tiskárnami ve Windows® i v Linuxu jsou konečně tady. Stahujte na stránce Download.

Matice v OpenGL (Radomír Vrána)

V tomto článku se dozvíte, jakým způsobem OpenGL ukládá hodnoty rotací a translací do své modelview matice. Samozřejmě nebudou chybět obrázky jejího obsahu po různých maticových operacích.

11.12.2003

... jenom tak píšu... :)

Jak to tak vypadá, s novými autory a překladateli se tak říkajíc roztrhl pytel. Přemysl Jaroš přeložil dva články z http://nehe.gamedev.net/, Pavel Hradský mi včera poslal překlad lekce 43 a jako třešňičku na dortu jsem dneska dostal email od Radomíra Vrány se článkem o maticích v OpenGL. Předevčírem jsem už podobný přidával, ale tento jde ještě o trochu více do hloubky a obsahuje navíc povedené vševysvětlující obrázky. Vše by se tu mělo objevit během příštího týdne. Do Vánoc to chci stihnout, protože nebudu online. Dále mi Jaroslav Antoš poslal grafický návrh pro nový skin stránek, na který se můžete podívat na této stránce (Prosím vyjádřete se do knihy návštěv.). Přes vánoce se chystám vytvořit pár nových skinů a upravit dosavadní engine tak, aby se daly vzájemně kombinovat (layout, barvy). Doufám, že se mi to povede.

Další důležité oznámení spočívá v tom, že mohlo být knižní vydání tutoriálů. Ještě sice být může, ale už tomu moc nevěřím. Martin Šamonil mi poskytl pár adres do nakladatelství Grada (Momentálně jsem v kontaktu se šéfredaktorem oddělení počítačové literatury panem Jaroslavem Škárkou.). Musím říct, že narozdíl od CPressu, v Gradě reagují na emaily (neúspěšný pokus někdy před letními prázdninami). Jsou však dva problémy/překážky - autorská práva by se myslím dala vyřešit celkem rychle, hlavním problémem je však umístění na internetu (toho se nevzdám). Asi mají pravdu, že by se kniha dostupná i v elektronické podobně prodávala méně, ale v koutku duše jsem doufal, že si vezmou příklad třeba z knihy Linux - Dokumentační projekt. Její elektronická podoba se dává prakticky ke každé distribuci Linuxu. No nic, alespoň jsem se pokusil. :-( :-( :-( :-( :-(

Mimochodem, štastný a veselý...

09.12.2003

Operace s maticemi (Přemysl Jaroš)

Zajímali jste se někdy o to, jak fungují OpenGL funkce pracující s maticemi? V tomto článku si vysvětlíme, jak fungují funkce typu glTranslatef(), glRotatef(), glScalef() a jak je případně nahradit vlastním kódem.

01.12.2003

Používáme gluUnProject() (Přemysl Jaroš)

Potřebujete transformovat pozici myši na souřadnice v OpenGL scéně a nevíte si rady? Pokud ano, jste na správném místě.

30.11.2003

Lekce 35 - Přehrávání videa ve formátu AVI

Přehrávání AVI videa v OpenGL? Na pozadí, povrchu krychle, koule, či válce, ve fullscreenu nebo v obyčejném okně. Co víc si přát...

Cool stránky o C++ - http://cplus.wz.cz/

Soukromá zpráva pro ViPEra: Ne, nevadí ;-], doufám, že to aspoň trochu zvýší návštěvnost...

25.11.2003

Diskuze

Vzhledem k tomu, že jste nějak moc nezareagovali na moji prosbu o zátěžovou zkoušku fóra, odstraňuji červený text "BETA!!!" a nasazuji diskuzi do plného provozu. Jestli spadne, tak je to z části i vaše chyba... Abych nepsal, že opravdu nikdo netestoval. Pokud nepočítám sebe, svého bráchu a osobu, která napsala (cituji): "Kdo vymyslel tyhle zašukaný stránky soudruzi!!!!!???? Polibte mi prdel, zjebové!!" - aspoň něco :-(((, testoval jednou zprávou jeden jediný člověk, Přemysl, za což mu tímto děkuji.

Doufám, že to stihnu...

Někdy příští týden čekejte tutoriál 35 o přehrávání AVI videí v OpenGL scéně (bohužel pouze Win). V současné době mám hotových cca. 70% a konečně jsem dodělal protokol do ELM - Měření sítě charakteristik bipolárních tranzistorů :-( Dá-li paní Šimurdová (čeština), bude trocha času.

Proč nikdy nemůže vzniknout plnohodnotné porovnání libovolného OS s Bill's Woknas ?!

Na http://www.root.cz/ jsem narazil na druhý díl článku Porovnání systémů Linux a FreeBSD. Na výše zmíněnou otázku si zkuste odpovědět sami, uvádím pouze malou nápovědu. ...a ten článek si přečtěte, stojí opravdu za to. Ukazuje opravdové problémy (které jistě denně řešíte) při návrhu aplikace podporující multithreading (v tomto případě je ta aplikace operačním systémem na počítači s několika procesory).

Nejdříve malá oprava k předchozímu dílu, na kterou mě upozornil někdo v diskusi ? FreeBSD při wakeup neprochází všechny procesy, ale používá hashování ? adresa je zahashována do 128 front. Při čtení zdrojáků jsem si toho nevšiml.

Například v jádře Linuxu 2.4.18 byly opraveny SMP race-conditiony při alokaci PID procesů, v implementaci syscallu dnotify a v netfilteru. Já jsem našel SMP bug v Linuxu 2.4.18 a 2.5.23 ve funkci mark_inode_dirty, který mohl způsobit, že inoda nebude zapsána na filesystém, pokud ji jeden procesor modifikuje a druhý zapisuje (bug spočíval v nerespektování možnosti, že procesor přehazuje instrukce, a nepoužití bariéry). Jak vidno, nejedná se tedy o nepodstatné drobnosti, které se běžným uživatelům neprojevují.

V Linuxu 2.2 je spousta dalších neopravených SMP bugů, například jsem v 2.2.21 našel špatnou implementaci funkcí wait_on_buffer a wait_on_inode, která může vést k zatuhnutí a nekonečnému čekání na inodu nebo buffer, který je již načten (nastane v situaci, kdy současně jeden procesor dokončuje načtení a druhý začíná čekat ? jedná se rovněž o nerespektování možnosti přehazování instrukcí). V jádrech 2.4 jsou tyto bugy opraveny.

18.11.2003

Diskuze ke článkům - BETA !!!

Přibližně třetí týden programuji PHP skripty pro diskuzní fórum. Ty nejdůležitější věci by už měly být, chybí jenom upravit drobnosti a hlavně ho otestovat. Všechny objevené chyby, návrhy nebo dojmy prosím pište na tuto speciální stránku (pokud spadne, tak samozřejmě ne :) teda :(. Samozřejmě, že formuláře jsou i na konci každého článku/tutoriálu. Jestli vám tento text připadá zmatený, tak mě prosím omluvte. S tím fórum si dneska hraju snad přes pět hodin (ze školy jsem přišel ve tři a teď je půl devátý). Na beta testing nechávám týden až dva, teprve pak se odvážím... zároveň začínám dělat na plnohodném diskuzním fóru, které bude pracovat na enginu diskuze ke článkům.

06.11.2003

CHM archiv tutoriálů

Asi před půl hodinou mi poslal Peter Hrabčák <f300 (zavináč) atlas.cz> tutoriály zkompilované do formátu CHM. Můžete si je stáhnout na stránce s downloadem. Protože mi tady (v Linuxu) CHM nefunguje, začínám pracovat i na obyčejné HTM verzi (archiv stránek), která by měla jít otevřít všude. Nechci předbíhat, ale v hodně blízké době by se mělo objevit i PDF, takže vytisknout vše najednou, by potom neměl být žádný problém.

HTM archiv tutoriálů

Tak jsem to stihl celkem rychle. Upravil jsem pár PHP skriptů a prohlížečem stránky uložil - slabá hodinka práce. I tuto verzi můžete stáhnout na stránce s downloadem.

Články o OpenGL, SDL, 3D matematice, fyzice...

Podívejte se na stránku http://magazin.ceskehry.cz/...

02.11.2003

Nové NeHe Tutoriály

Vyšly nové NeHe Tutoriály (47, 48), ale jsou zatím jenom v angličtině :-(

Článek - Timer (Marek Olšák - Eosie)

Představte si, že děláte nějaký velký dynamický svět, pro který potřebujete mnoho výpočtů závislých na uplynulém čase (pohyb, rotace, animace, fyzika). Pokud synchronizujete klasicky pomocí FPS, neobejdete se při každém vykreslení bez spousty dělení. Základem všeho je, tyto operace provádět co nejméně, abychom zbytečně nezatěžovali procesor.

Přeložena Lekce 36 - Radial Blur, renderování do textury

Společnými silami vytvoříme extrémně působivý efekt radial blur, který nevyžaduje žádná OpenGL rozšíření a funguje na jakémkoli hardwaru. Naučíte se také, jak lze na pozadí aplikace vyrenderovat scénu do textury, aby pozorovatel nic neviděl.

23.10.2003

Přeložena Lekce 40 - Fyzikální simulace lana

Přichází druhá část dvoudílné série o fyzikálních simulacích. Základy už známe, a proto se pustíme do komplikovanějšího úkolu - klávesnicí ovládat pohyby simulovaného lana. Zatáhneme-li za horní konec, prostřední část se rozhoupe a spodek se vláčí po zemi. Skvělý efekt.

20.10.2003

Slohové cvičení na téma: Instalace fontů v Linuxu

Tak jsem na netu našel jeden článek o instalaci fontů v linuxech a zkusil jít podle něj. Pod uživatelem root jsem přikopíroval fonty, nějakými záhadnými příkazy je nainstaloval a upravil dva konfigurační soubory. Vše v pořádku. Poslední krok: restartovat počítač.

Moje rada zní: NIKDY NEINSTALUJTE FONTY !!!!!

Po nabootování, před spuštěním XWindows, mi systém vyhodil přes tři obrazovky chybových zpráv, ale spustil se - do textového režimu. Se svými znalostmi příkazů startx, ls, cd, exit a některými dalšími, které jsem v rychlosti našel, jsem asi mikrosekundu uvažoval nad opravou. No nic, tak ho přeinstaluju :( Zas hodina v p*eli. Nabootuji z CD do instalátoru a zvolím jazyk. Systém se mě zeptá, jestli chci systém opravit nebo vše přeinstalovat. Opravit?!?! Zkusím opravu a jenom se modlím. Po pěti minutách začínám psát tento článek.

Závěr: MILUJU LINUX !!!!!

Abych nezapomněl. Při instalaci fontů jsem přikopírovával nové do adresáře ke starým. Hádanka: mohu v tuto chvíli používat i ty nové? :-)

19.10.2003

Z internetu (zrušeno, ne moc legal)

Nedávno, při brouzdáním internetem, jsem našel opravdu kvalitní seriál článků o OpenGL. Začal jsem je postupně stahovat, abych si je mohl doma hezky v klidu přečíst. Napadlo mě, že bych je mohl umístit i s downloadem jako archiv na web.

Nechci profitovat na těžké práci jiných lidí. Chci pouze zpřístupnit vše na jednom místě - proto také předkládám vše v podobě archivů a ne kopírováním textů do svých článků, jak to dělají někteří jiní lidé. Vzhledem k tomu, že jsou tyto články na svých domovských stránkách volně přístupné, tak předpokládám, že nebude vadit, když je sem umístím. Pokud s tím jako autor nesouhlasíte, napište mi a já vše, co pochází od vás, odstraním.

7.10.2003

Validace stránek

Minulé tři dny jsem strávil kontrolou validity stránek a případnými opravami chyb. Výsledkem je, že nyní jsou všechny stránky webu validními XHTML 1.0 dokumenty a mají i validní kaskádový styl. Možná se ptáte, proč dělám takové blbosti. Pro mě to blbosti byly také, ale pouze do té doby než jsem se v jedné chytré knížce :-) dozvěděl, že kolem 70 procent kódu internetových prohlížečů slouží k odstranění chyb v HTML.

5.10.2003

Ještě jednou statistiky

Zdá se, že úpravy pomohly, protože od čtvrtku statistiky nepadly. Dokódoval jsem ještě procentuální graf.

Počet online čtenářů

V informacích (dole) se zobrazuje počet čtenářů, kteří mají ve svém prohlížeči nahranou některou ze stránek tohoto webu - další jednoduchý PHP skript. Momentálně jsem sám, ale asi před čtvrt hodinou nás bylo pět. Musíte víc surfovat :-) !!!

2.10.2003

Upravené statistiky

Jak to tak vypadá, tak původní statistiky návštěv měly skrytý bug, protože se celkem kvalitně hroutily. Prošel jsem celý skript a nalezl několik testování nepřidělené paměti, ale myslím si, že chyba byla způsobena vícenásobným zápisem do souboru (ve stejnou chvíli). Doufám, že se mi to podařilo najít a odstranit. Dále jsem statistiky rozdělil na sekce: Obecné stránky webu, NeHe OpenGL Tutoriály, Články.

30.9.2003

Přeložena Lekce 42 - Více viewportů

Tento tutoriál byl napsán pro všechny z vás, kteří se chtěli dozvědět, jak do jednoho okna zobrazit více pohledů na jednu scénu, kdy v každém probíhá jiný efekt. Jako bonus přidám získávání velikosti OpenGL okna a velice rychlý způsob aktualizace textury bez jejího znovuvytváření.

29.9.2003

Totální výpadek webu

Asi před dvěma nebo třemi týdny spadl souborový systém serveru http://www.pipni.cz/, na kterém tyto stránky hostují. Nyní (KONEČNĚ) jsou kompletně v pořádku. Děkuji všem, kteří se v emailech a na fórech ptali, co s nimi je. Vidím, že o ně máte zájem. Doufám, že všechny výpadky na dlouhou dobu skončily.

Co je Linux?

"Linux is like wigwam. No Gates, no Windows, Apache inside..." - Anonym

Článek Pomoc, začínám

Víte, vzpomněl jsem si na své začátky s OpenGL, kdy člověk nemohl sehnat téměř žádné informace o OpenGL, jednoduše proto, že žádné neexistovaly. To byl vlastně důvod pro překlady NeHe Tutoriálů a následný vznik tohoto webu. Informací je už nyní relativně dost, ale stále zůstala otázka: Kde začít?

Nové NeHe Tutoriály

43, 44, 45, 46... boužel, zatím jenom v angličtině.

Maximální šířka obrázků

Asi jste si všimli, že pokud při prohlížení NeHe Tutoriálů zmenšíte okno, musíte používat vodorovný posuvník, protože obrázek na konci nedovolí stránce zmenšit se. Problém je zvlášť markatní při rozlišení 800x600 (např. u nás na intru). Tuto nepříjemnost odstraňuje CSS vlastnost max-width, kterou jsem nedávno objevil. Bohužel v IE 6.0 nefunguje, ale pokud používáte Operu nebo Mozillu, máte vyhráno.

Bílý skin kompletní

Vytvořil jsem první (respektive druhý) skin webu, který tu sice už byl, ale nyní vypadá alespoň trochu k světu a je prakticky použitelný. Mimochodem nyní můžete určit, jak dlouho má být daný skin aktivní. Po uplynutí této doby se prohlížeč vrátí k defaultnímu.

Menu nahoře (skin)

Bílý skin vypadá úplně stejně jako defaultní, upravuje pouze jeho barvy. Tento jde o trochu dále - mění rozložení prvků. Menu v horní části stránky se hodí především při čtení článků a tutoriálů, kdy se někdy zalamují výpisy zdrojových kódů.

9.9.2003

Poprázdninová ultra-gigantická aktualizace

Omlouvám se, že jsem stránky neaktualizoval průběžně, ale bohužel jsem neměl šanci dostat se o prázdninách na internet. Proto až teď. Pokud jste navštívili knihu návštěv, mohli jste najít zprávu, že všechny nově přeložené tutoriály jsou provizorně umístěny u Wessana (jeden z překladatelů), kterému jsem je posílal emailem.

Asi nejdůležitější novinkou je, že jsem se pokusil celé stránky přepsat do XHTML 1.0 Strict (ještě neprošly validátorem!) a hlavně, že jsem JavaScripty nahradil PHP, což umožní velice jednoduché vytváření a nastavování skinů. Transformace do PHP má, ale i jednu velkou nevýhodu - stránka se kompletně generuje na serveru a prohlížeči se odesílá čistý HTML kód. Z toho plyne, že už nemá cenu poskytovat offline těchto webových stránek, protože bez webového serveru je nezobrazíte. Pokusím se proto vytvořit speciální verze článků a NeHe Tutoriálů určené pro offline prohlížení.

Odstranil jsem také veškeré tabulky a zastaralé tagy (font ap.) - nyní je web kompletně formátován kaskádovými styly. Velikost písma je určena relativně, abyste ho mohli i v Internet Exploreru zoomovat prohlížečem (Menu - Zobrazit - Velikost textu). Například Mozilla a Opera to zvládaly bez problémů i dříve (asi proto, že nejsou od Microsoftu).

Tolik asi na úvod, že přibyla spousta NeHe tutoriálů a článků si jistě všimnete sami.

Přeložena Lekce 27 - Stíny

Po dlouhém a hlavně náročném překladu je 27. lekce konečně tady. Je sice hodně efektní, ale absolutně ji nedoporučuji nováčkům v OpenGL!!! Také byste měli perfektně ovládat práci se stencil bufferem, matematiku a dokázat pochopit mnohokrát vnořené cykly a podmínky. Pokud bude v překladu něco špatně prosím upozorněte mě. Snažil jsem se pochopit všechno, ale některé věci opravdu nešly (cca. 10%). Jo, abych nezapomněl, tutoriál v angličtině je trochu jiný (názvy struktur, proměnných, kód ap.) a hlavně kratší. Při překládání jsem se ho sice držel skoro doslova (když o tom člověk nemá ani páru...), ale když jsem ho začal přepisovat do HTML, zjistil jsem, že kód neodpovídá. Nejdříve jsem myslel, že mám starou verzi, ale byla úplně stejná, jako ta, kterou jsem si pro jistotu stáhl znovu. Celý překlad jsem tedy znovu přepsal tak, aby odpovídal zdrojovým kódům. Doufám, že to alespoň někdo ocení :-]

Přeložena Lekce 28 - Bezierovy křivky a povrchy, fullscreen fix

Tak tady máme další lekci NeHe Tutoriálů. Vůbec nechápu, že jsem překlad zvládl tak rychle - pouhé tři dny! Nevím, ale asi se mi ta angličtina začíná vrývat do paměti. A to je dobře.

Přeložena Lekce 29 - Blitter, nahrávání .RAW textur

Tento překlad má zajímavou historii. Asi před čtvrt rokem (tehdy jsem pracoval myslím na 21) mi ho poslal Wessan, ale co čert nechtěl, přeložil nějakou starší verzi, která absolutně neodpovídá této. Oba nás to celkem dostalo. No, co se dalo dělat? Jedině přeložit všechno úplně od začátku. Alespoň jsem věděl, jak kód pracuje a na co se mám zaměřit. Pod lekcí jsme podapsaní oba.

Přeložena Lekce 30 - Detekce kolizí

Co napsat? Když jsem překrádal Stíny, říkal jsem si: "Tak tohle nemám šanci přeložit!", ale podařilo se. Když jsem začal překládat Kolize bylo to snad ještě horší. Samá matematika, samé rovnice, samý odborný termín, zdrojové kódy téměř bez komentářů (o popisu ani nemluvě) a šíleně dlouhé teoretické texty - co víc si může překladatel přát? Snad jenom pravý opak. Ale zvládl jsem to. Abyste probírané téma pořádně pochopili, doporučuji číst nejméně třikrát a hrabat se měsíc ve zdrojových kódech.

Přeložena Lekce 31 - Nahrávání a renderování modelů

Z pohledu překladatele a čtenáře anglického originálu asi nejhorší NeHe tutoriál, jaký byl kdy napsán. Jednou je zdrojový kód umístěn pod popisem, poté nad, na některých místech nad i pod a mnohokrát není vůbec. Komentáři autor také nehýřil. Tímto ale nechci vsugerovat pocit, že tutoriál nestojí za nic, to vůbec ne! Jak načítat modely ze souboru jsem se chtěl naučit už dávno. Celý text jsem přetvořil, aby byl trochu srozumitelnější, takže se nebojte.

Přeložena Lekce 32 - Picking, alfa blending, alfa testing, sorting

Jedna z maličko delších lekcí, ale hodně zajímavá. Rozhodně jsem se naučil spoustu nových věcí. Především jak nastavit blending, aby polygony neprosvítaly a klikání myší na objekty. Ani jedno není vůbec složité, jak jsem si naivně myslel. Tento tutoriál se mi opravdu líbil.

Přeložena Lekce 33 - Nahrávání komprimovaných i nekomprimovaných obrázků TGA

Na začátku týdne si vytisknu anglickou verzi, pak denně chodím do práce (na brigádu) a na překládání si ani nevzpomenu. Sobota ráno, po snídani, kolem 8:00 - "Jaj, už jsem dlouho nepřekládal NeHe tutoriály!" Tak jsem v poklidu začal. Během této činosti dělám spoustu dalších věcí - poslouchám rádio, potom čučím :-] na televizi, jdu ven a podobně. No, abych se dostal ke smyslu tohoto textu (pokud je vůbec nějaký)... s tužkou v ruce otočím na dalších stránku a on tam začátek tutoriálu. "To je asi nějaká blbost!!!" Podívám se na hodinky a tam 13:44. Nyní je 21:09 a zrovna píši tento komentář do novinek na webu. Nejsem skvělej?!

Přeložena Lekce 34 - Generování terénů a krajin za použití výškového mapování textur

Člověk by nečekal, jak ty totálně, giga složité věci bývají absolutně jednoché. Věřili byste tomu? Po dočtení tohoto tutoriálu určitě budete.

Přeložena Lekce 37 - Cel-Shading

Asi před dvěma týdny mi Wessan poslal překlad 37. lekce. Právě jsem dokončil přepisování do HTML, když v pravém dolním rohu monitoru problikla osmička na devítku. Pokud nechápete, co to mělo znamenat :-), koukněte se na hodinky. Tedy tehdy byste se museli podívat na hodiny. Bylo přesně 22:09 :-] Dobrou noc.

Článek Analytická geometrie (Matematika)

Když jsem asi před dvěma měsícemi listoval ve fóru o OpenGL, někdo se tam dotazoval na body, vektory, roviny, přímky a podobné záludnosti z matematiky. To mě inspirovalo k napsání tohoto článku, který je výtahem ze zápisků do matematiky v druháku na střední škole. Psal jsem ho skoro týden, takže informací by mělo být dost.

Článek FPS: Konstantní rychlost animace (OpenGL)

Samozřejmě vím, že tohle už jistě všichni znáte a bez problémů používáte, ale existují i lidé, kteří teprve začínají. Článek o tom, jak zajistit, aby program běžel stejně rychle jak na počítači s procesorem 300MHz, tak i se 2GHz.

Článek OpenGL okno v dialogu (MFC)

Byla volná chvíle, tak jsem se rozhodl napsat článek o tom, jak propojit ovládací prvky dialogu s dětským OpenGL oknem.

Lepší fulltextové vyhledávání

Zdokonalil jsem vyhledávání ve fulltextu tak, aby vypisovalo i část stránky v okolí hledaného řetězce. Nyní je mnohem více použitelné. Další novinkou je možnost rozhodnout, jestli se mají brát v úvahu malá/velká písmena.

Statistiky návštěv

Naprogramoval jsem relativně jednoduché počítadlo zobrazení jednotlivých stránek. Jeho výsledky můžete najít na této adrese.

Lepší kniha návštěv

Provizorní knihu návštěv jsem vylepšil tak, abych se za ni už nemusel stydět. Mimo jiné jsem odstranil všechny tabulky a přidal výpis prvních deseti zpráv. Na ostatní se dostanete kliknutím na odkaz pod výpisem.

Navigační mapa

Stránky se začínají hezky rozrůstat a tím pádem začínají být méně přehledné než kdysi na začátku. Pokusil jsem se vytvořit jednoduchou navigační mapu, která by, již zmíněné přehlednosti, měla hodně pomoci.

Zdrojové kódy všude na stejném místě

Hledal jsem něco v dříve napsaných článcích a zaboha jsem nemohl najít odkaz na zdroják (proč hledat na disku). Víte kde byl? Úplně na začátku! Řekl jsem si: "Takhle teda ne!!!". Na konci každého článku je od teď hezký nadpis Zdrojové kódy a pod ním odkaz(y) pro jejich stáhnutí. Takovéhle situace vždy přijdou, když si řeknu, že už je web ideální a nebudu nic měnit. Cituji jistého popravčího (rozuměj Kata): "Nic není ideální... ani ideální kondenzátor není ideální!". Chápete?

Optimalizace HTML kódu stránek

Nedávno jsem si naprogramoval do svého textového editoru (WQ WórdPed 2.0) funkci, pomocí které můžu nahrazovat text ve více souborech najednou. Rozhodl jsem se odstranit zbytečné formátovací parametry ze stránek a přesunout je do externího kaskádového stylu. Abych to zkrátil. Předtím měly stránky (čistě text) velikost 1,41 MB a nyní mají 1,28 MB. Možná, že si říkáte: "Nic moc...", pokud ale rozdíl čísel převedete na byty (1 byte = 1 znak), tak vám vyjde něco kolem 136 000 znaků - kratší kniha. Už to vypadá lépe? Všechny texty zůstaly a vypadají úplně stejně, optimalizoval jsem jenom HTML kód.

Odstranění tabulek

Trochu jsem si hrál s kaskádovými styly a přišel na nápad, jak s jejich pomocí odstranit tabulky. Tato akce by měla maličko urychlit nahrávání stránkek.

Kontrola správnosti linků

Na Chip 07/2003 jsem našel perfektní prográmek Xenu 1.2, který kontroluje validitu odkazů na webových stránkách. Doporučuji ho všem správcům internetových stránek - během pěti minut nemáte co dělat (sám jsem tomu nevěřil). Umí také do HTML stránky vygenerovat mapu odkazů, které stránky ukazují na konkrétní stránku ap. Jediné, co mi v něm chybí je, že (asi) neumí prohledat soubor skriptu, ve kterém generuji menu. Můžete ho najít na http://home.snafu.de/tilman/xenulink.html. Určitě doporučuji. A jak jsem dopadl já? Nevěřil bych, ale na tomto webu bylo špatných odkazů opravdové minimum :-)

23.6.2003

NeHe na Chip CD

Chtěl bych poděkovat redaktorům časopisu Chip, konkrétně Martině Bartůňkové <martina.bartunkova (zavináč) vogel.cz>, za to, že na Chip CD 06/2003 umístili offline těchto stránek. Najdete ho v rubrice Ze světa internetu/Off-line verze nebo v hlavním grafickém menu, které se zobrazí po spuštění. Mimochodem... to, co dělám asi stojí za to, protože jsem v hodnocení získal 10 z 10 bodů!

No... je tam sice jedna drobná chybka (trochu větší než obrovská), ale jestli jsem něco z diktovacího výkladu v kydech těžce vyextrahoval, tak to, že nic není úplně ideální. Stejně děkuji.

Tisk

V pravém menu naleznete obrázek tiskárny s popiskem tisk. Asi tušíte, že kliknutím na tento odkaz můžete vytisknout aktuální stránku, která bude navíc speciálně naformátovaná (černá barva textu, skryté menu a další vymoženosti). Osobně bych chtěl poděkovat tomu, kdo vymyslel kaskádové styly dokumentu, které mi umožnili přidat tuto funkci přibližně za hodinu bádání ...hlavně nad tím jak má obrázek tiskárny vypadat. Stejně jsem si ho nakonec "vypůjčil" :-]

28.3.2003 - Obrázek zrušen a odkaz přesunut do levého menu.

"Překopání" kódu stránek

Strávil jsem v poslední době celkem dost času čtením článků ze serveru http://www.interval.cz/ o moderních technoligiích používaných při tvorbě stránek a webových standardech. Získal jsem několik hodně dobrých nápadů, takže jsem se rozhodl poupravovat tyto stránky. Vypadají celkem dobře (v rámci mezí) ať už při nepřítomnosti kaskádových stylů u starších prohlížečů nebo při vypnutém JavaScriptu kvůli bezpečnosti (nevypíše se menu, takže je téměř nemožná navigace). Každopádně by se nyní měli zobrazovat korektněji než dříve. Úpravy mi zabraly kolem tří dnů, ale myslím si, že stály za to.

Přeložena Lekce 26 - Odrazy a jejich ořezávání za použití stencil bufferu

Asi třetinu přeložil můj bratr a zbytek já. Říkal, že ho to nebaví, ale když jsem začal překládat pochopil jsem... Doporučuji, pokud něčemu ze starších lekcí nerozumíte, vraťte se k tomu. Tahle lekce je opravdu hodně náročná! Vytvoříme opravdu realistické odrazy. Díky použití stencil bufferu se zobrazí pouze na těch plochách, kde mají.

Lekce 42 anglicky

Byl napsán další tutoriál! Tentokrát se jedná o vícenásobné pohledy (viewports) v jednom okně. Podívejte se na screenshot.

Woq Saver

Mám dva týdny praxe, takže můžu zase chvilku pracovat na počítači (na intru jsou zakázaný). Zkusil jsem si naprogramovat šetřič obrazovky, který zobrazuje moje logo. V archivu najdete i osekaný kód vykreslující trojúhelník a čtverec - něco na způsob 2. lekce - hodí se při vytváření nového šetřiče. V zápětí jsem o tom napsal i článek Jak na šetřič obrazovky ve Win API.

Články

Založil jsem obsah článků, které jsou na tomto webu. Nepočítám-li NeHe tutoriály, tak jich zase moc není, ale doufám, že časem přibydou. Pokud byste měli zájem něco napsat, kontaktujte mě.

Článek Jak na šetřič obrazovky (Win API)

O pár řádků výše jsem deklaroval články. Ihned jsem tedy jeden napsal. Myslím si, že název hovoří za vše.

Další článek Kopírování OpenGL okna do DIBu (MFC)

Bratr se také rozhodl něco napsat :-) Snímání OpenGL scény vykreslené na monitor a její uložení do obrázku DIB, se kterým se může dále pracovat.

A ještě jeden článek: Tisk a náhled před tiskem OpenGL scény (MFC)

Ještě jednou od bratra. Jedná se o převedení "teorie" článku Kopírování OpenGL okna do DIBu do praxe. Získaná bitmapa se pošle na tiskárnu a vytiskne.

MFC Tutoriály

S OpenGL sice moc společných věcí nemají, ale určitě se na ně podívejte. Nedávno je začal psát můj bratr a vypadá to, že mají celkem úspěch. Najdete je na jeho stránkách http://farao.czweb.org/.

Zdrojové kódy k NeHe Tutoriálům

Počátečním úmyslem bylo na jednotlivých stránkách aktualizovat odkazy na zdrojové kódy k lekcím NeHe Tutoriálů. Bez problémů. Nicméně když už jsem byl v tom, tak jsem vytvořil i stránku, na které jsou všechny pohromadě. Asi byste nevěřili, ale tato stránka zabírá skoro 120 kB ... a to jsou jenom odkazy! Všechny linky už tradičně vedou na http://nehe.gamedev.net/. Mám tušení, že by mě asi administrátor zabil, kdybych je dal i sem :-]

Projekt - Dialog

Max Zelený <prog.max (zavináč) seznam.cz> mi poslal program (20.9 kB), který demonstruje vytvoření dětského OpenGL okna uvnitř dialogu (pod MFC). Když jsem poprvé přečetl jeho email, chtěl jsem o tom napsat článek, ale myslím, že je kód pochopitelný na první pohled. Už dlouho jsem o něčem podobném uvažoval. Díky, byl jsi rychlejší :-)

19.5.2003

Lekce 24 - Výpis OpenGL rozšíření, ořezávací testy a textury z TGA obrázků

Konečně jsem se dokopal k tomu, abych ji konečně přeložil a hodil na net. Hurá! Jste taky štastní? Já určitě. Takový výkon jsem snad ještě nikdy nepodal - během čtyř dní byl překlad na světě a během čtyř hodin i v HTML formátu. Plánuji teď dopřekládat lekci 26, kterou začal, ale nedokončil můj bratr, protože ho to přestalo bavit. Ale já to zvládnu. Nebojte se.

Skrývání menu

U malých rozlišení obrazovky (800x600 a méně) začíná být nedostatečná velikost okna akutním problémem (Mám to z první ruky. Na intru dokonce jeden monitor nevykresluje červenou složku barvy, obraz je zeleno-modrý. Na to, že mají patnáct let, jsou ale v perfektním stavu.). Maličko jsem si pohrál s JavaScriptem a během dvou hodin pokusů a omylů se mi podařilo naprogramovat zobrazování a skrývání menu. Tlačítko volající tuto funkci najde vlevo pod hlavním menu. Bez problémů funguje v IE 6.0 a Opeře, jiné browsery jsem netestoval. V případě problémů mi prosím napište.

14.5.2003

Lekce 38 - Nahrávání textur z resource souboru & texturování trojúhelníků

Tato lekce je pro všechny z vás, kteří mají rádi přírodu - obzvláště motýlky :-)

Dva kvalitní programy

Už dávno mi je poslal Petr Vaněček <pet (zavináč) kiv.zcu.cz>, ale k tomu, abych je přidal na web jsem se dostal až teď :-( Je to opravdu škoda, protože se na nich dá naučit spousta věcí. Ve Vertex Arrays (215.5 kB) je po stranách renderovaného objektu zobrazena nápověda vysvětlující principy, na kterých program pracuje. U Světel (224.6 kB), šel autor ještě dál. Pomocí ovládacích prvků si můžete dynamicky, při běhu programu, nastavovat snad všechny parametry, se kterými se pracuje. Pokud u světel s něčím tápete, po půlhodině nebude mít nejmenší problémy!

Nedávno se mě v emailu kdosi ptal, jak vytvořit spot světlo. Objevil jsem to v tomto programu. glLightf(GL_LIGHT1, GL_SPOT_CUTOFF, ...); Tahle funkce je v MSDN podrobně vysvětlená. Neměly by být problémy.

5.5.2003

Lekce 39 - Úvod do fyzikálních simulací

Vy pozornější jste si asi všimli, že už tu byla minulý týden, ale jenom z části. Teď už je celá. Přeložil ji Václav Slováček - Wessan.

Ikona stránek

Člověk by nevěřil, že jde specifikovat i ikona stránek. Mimochodem - první věc, o které vím, že nefunguje v IE 6.0, ale v Opeře 7 ano.

Vyhledávání ve fulltextu

V PHP jsem naprogramoval fulltextový vyhledávač (v levém menu). Do editboxu vepíšete hledané slovo a kliknete na tlačítko. Postupně se projdou jednotlivé stránky a otestuje se přítomnost zadaného slova. Výstup skriptu je ve formě: stránka, počet nalezených výskytů slova. Myslím si, že by kód měl být bez chyb, ale znáte to... v případě problémů mi prosím napište.

Pokud se vám líbí, můžete si ho stáhnout na http://woq.nipax.cz/ a umístit na své stránky.

Autoškola

Mám řidičák!!! ...takže zase bude trocha (spousta) času navíc. Všichni, kteří jste z Valašského Meziříčí nebo jeho okolí a plánujete dělat řidičák, popřemýšlejte o http://www.autoskola-venglar.wz.cz/, je fakt na úrovni, možná nejlepší.

Zdrojové kódy

Minulý týden jsem přidal program 3D-Engine. Jeho autor se rozhodl, že zveřejní i zdrojové kódy.

NeHe rusky !!!

Čeština není jediným jazykem, do kterého se tutoriály překládají. Ruskou verzi můžete najít na adrese http://pmg-ru.narod.ru/russian/nehe/index.html. Doufám, že umíte azbuku...

28.4.2003

Prosba

Nedávno jsem nainstaloval Mandrake Linux. Je v něm i Netscape Navigator, ale moje (tyto) stránky v něm nefungují. Ve statistikách se také neobjevuje. Proto vás všechny, kterým nefungují tyto stránky nebo se na nich zobrazují chyby, prosím, abyste byli tak hodní a napsali mi to do knihy návštěv nebo na <WOQ (zavináč) seznam.cz>. Doufám, že se alespoň tohle zobrazí :-) :-(

Další program

Zdá se, že rubrika programů bude mít úspěch - ani ne dva dny po jejím založení se mi na mailu objevil program 3D Engine od Pavla Baráka z http://www.flashsoftware.cz/. Jedná se o upravený 3D svět z lekce 10. Přibyly mu detekce kolizí se stěnami, rozšířené ovládání klávesnicí a několik textur. Díky moc.

Domovská stránka

Konečně jsem zjistil, jak prohlížeči pomocí JavaScriptu nastavit domovskou stránku. Tato funkce bohužel nefunguje v Opeře, v MS IE 6.0 bez problémů. Jiné prohlížeče jsem netestoval.

21.4.2003

Oprava

Velmi se omlouvám za chybný popis stránek http://3dgames.maly.cz/. Tento web se nazabývá pouze 3D grafikou, ale také programováním v DirectX a hlavně grafickým enginem Revolution 3D. Najdete na něm tutoriály jak pro Visual Basic, tak i pro Visual C++ a něco málo (spíše více) o JavaScriptu. Ještě jednou se omlouvám.

Další ikona odkazů

... budu jí označovat odkazy na email. Jo, také jsem jim přidal tooltipy (když na ně najedete myší a chvilku jí nebudete hýbat, zobrazí se popisek).

České OpenGL programy

Na popud Petra Vaněčka (http://herakles.zcu.cz/~pet/) jsem založil novou stránku, na které budu shromažďovat programy od českých koderů s tematikou OpenGL. Ještě nevím, ale asi budu přidávat pouze programy se zdrojovými kódy, na kterých se dá programování nejlépe naučit. Pokud tedy máte zájem zviditelnit se, posílejte mi svá dílka (nebo odkazy pro stáhnutí) na adresu <WOQ (zavináč) seznam.cz>.

Aby stránka na začátku nezela prázdnotou, tak jsem na ni umístil svůj program Texture Font Creator umožňující vytvořit obrázek fontu (českého) ze 17. lekce a bratrův hóóódně kvalitní šetřič obrazovky Komety. Částicové systémy vypadají opravdu skvěle.

Ořezané novinky

No, začaly se trochu rozrůstat - už měly skoro 20 kilo, takže jsem tento soubor trochu zkrátil a založil starší novinky.

14.4.2003

Nové logo

Řekl jsem si, že by už potřebovalo změnu - přestalo se mi líbit.

100% lekce 25 - Morfování objektů a jejich nahrávání z textového souboru

V této lekci se naučíte, jak nahrát souřadnice vrcholů z textového souboru a plynulou transformaci z jednoho objektu na druhý. Nezaměříme se ani tak na grafický výstup jako spíše na efekty a potřebnou matematiku okolo. Kód může být velice jednoduše modifikován k vykreslování linkami nebo polygony.

Oblíbené položky

Do hlavního menu jsem přidal odkaz pro umístění těchto stránek k vašim oblíbeným položkám. V IE funguje bez problémů, ale třeba v Opeře vůbec. Hele, nevítě někdo název funkce, která v prohlížeči nastaví webovou stránku jako výchozí? Kolikrát už jsem ji viděl v knížkách, ale nikdy jsem si ji nezapsal do svého sešitku :-]

7.4.2003

Lekce 41 - anglicky

Zavítal jsem na http://nehe.gamedev.net/ a objevil nově napsanou lekci 41. Koukněte se na screen shot, vypadá fakt dobře.

Odkazy na nepřeložené lekce

Řekl jsem si, že by mohlo být dobrý připravit si stránky na ještě něpřeložené lekce (začalo se překládat na přeskáčku). V céčku jsem napsal zdroják, který v cyklu projde čísla od 24 do 40 a podle řídící proměnné vygeneruje stránku. Upravil JavaScript, který vkládá odkazy do menu. Během čtvrt hodiny bylo hotovo. Nicméně... až mi příště přestanou skripty fungovat, tak mi připomeňte, že v JavaScriptu se u deklarace proměnné nepíše int. Blbost, ale dala zabrat. Sice na těchto stránkách uvidíte jenom obrázek s textem "Ještě není přeložena", ale můžete se na ně podívat kliknutím na obrázky, které najdete úplně dole v obsahu tutoriálů. Do menu (vpravo) odkazy ještě nedávám.

Knihovna SDL Image

Určitě se vám nelíbí mít všechny textury uložené v BMP souborech, které nejsou zrovna přátelské k místu na disku. Bohužel SDL žádný jiný formát přímo nepodporuje. Nicméně existuje malé rozšíření v podobě knihovničky SDL Image poskytující funkci IMG_Load(), která umí načíst většinu používaných grafických formátů. Napsal Bernard Lidický.

Nový web o 3D

Zdá se, že začíná vznikat nový kvalitní web o 3D grafice. Byl jsem požádán, abych na své stránky umístil odkaz. Tady ho máte: http://3dgames.maly.cz/.

Aktualizace stránky download

Zjistil jsem, že tuto stránku vůbec neaktualizuji. Teď by tam mělo být všechno, co je na tomto webu ke stažení.

31.3.2003

Označení odkazů pro download

Odkazy otevírající se v novém okně (většinou na cizí stránky) označuji ikonkou. Rozhodl jsem se, že něco podobného vytvořím i pro odkazy na download. Doufám, že opět maličko zvýší přehlednost a uživatelskou příjemnost webu.

100% lekce 21 - Přímky, antialiasing, časování, pravoúhlá projekce, základní zvuky a jednoduchá herní logika

Konečně hotová! Teď musím ještě stihnout vlak, abych dojel na intr :-]

Odkazy na zdrojové kódy

NeHe nedávno aktualizoval svůj web - od základů. Mimo jiné změnil i adresářovou strukturu, takže odkazy u jednotlivých lekcí směřovaly na špatná místa. Už by mělo být všechno v pořádku.

České kódování

Berny (viz http://hippo.nipax.cz/) onehdy surfoval na netu. Normálně by to nebylo nic neobvyklého, kdyby nebyl na počítači s operačním systémem SunOS - někdy se sám sebe ptám jestli je normální (nic proti) - ale asi je. Každopádně, protože se mu české znaky zobrazovaly jako zmaty, napsal mi email. Díky za upozornění.

Nový překladatel & 100% lekce 22 - Bump Mapping & Multi Texturing

Přibyl další překladatel, Václav Slováček - Wessan (momentálně jsme tři: já, brácha a on).

Co se týče obsahu 22. lekce... nevim, ale moc mu nerozumím. Doufám, že vy ostatní z něj budete chytřejší. Podle mého názoru se jedná o hodně pokročilé techniky počítačové grafiky.

Překlepy a pravopisné chyby

V knize návštěv se objevila zpráva, že je v tutoriálech celkem dost pravopisných chyb a překlepů. Projel jsem všechny stránky kontrolou pravopisu ve Wordu a pokusil se je opravit. Bylo jich celkem dost... díky za upozornění.

10.3.2003

100% lekce 23 - Mapování textur na kulové quadratiky

Hurá, brácha se po dlouhý době zase vrátil k překládání. Po 23 pokračuje lekcí 26 - sice na přeskáčku, ale co už?

75% lekce 21

Sobota 2.9.2003 17:48:57 "Ťuk, ŤuK, ťUK... klep."
Sobota 2.9.2003 20:13:29 "Právě jsem napsal dvacet kilo znaků!"
:-]

Smajlíci v knize návštěv

Bez komentáře...

3.3.2003

Optimalizace pro ne-IE prohlížeče

Vy, kteří používáte Operu nebo Mozzilu (možná, že i Netscape Navigator) už nebudete mít posunuté menu do vlastního obsahu stránky. Vše bylo způsobeno MOJÍ chybou, která spočívala v tom, že jsem opět naivně věřil Microsoftu, že něco dokáže udělat správně (mimochodem přecházím na Linux). Chyba byla způsobena tímto (velmi zjednodušeně):

body { margin-left: 200; }
.main_menu { width: 200; float: left; margin-left: -100; }

Bill Gates pravděpodobně nechodil do základní školy protože neví, že 200-100=100 a ne nula. Děkuji časopisu Chip, který na své CD umístil několik alternativních prohlížečů - asi zůstanu u Opery 7. Teď už není hlavní zarovnání stránky definováno pomocí CSS, ale celá stránka je rozdělena do tří sloupců tabulky. Naštěstí oprava nebyla moc komplikovaná, protože jsem upravil pouze cca. 10 řádků v JavaScriptu, který se vkládá z externího souboru.

50% lekce 21

... ale už mohlo být víc, protože když jsem jel na intr, tak jsem zapomněl všechno doma (vytisknutou anglickou verzi i sešit, do kterého si píšu překlady). Nicméně, v současné době je napsáno 24 963 viditelných znaků a html kód zabírá 40 376 znaků - všechno ručně. Jsem DOBREJ :-]

Aktualizace offline verze

V downloadu je odkaz pro stažení kompletního offlinu stránek.

Maličká úprava knihy návštěv

Pokud není zadána některá z položek, nezobrazuje se - např. odkaz na prázdnou webovou adresu.

17.2.2003

40% lekce 21

Tato lekce je opravdu gigantická, takže jsem se rozhodl, že ji nepřidám až po úplném přeložení, ale postupně jako puzzle.

Vytvoření SDL OpenGL okna

Poprosil jsem Bernyho, jednoho dobrýho kámoše, kterej se trošku věnuje Linuxům, aby napsal něco o multiplatformní knihovně SDL. Výsledek můžete najít zde. Jedná se o přepsání lekce 2.

Počítadlo návštěv

Naprogramoval jsem si v PHP počítadlo návštěv (v hlavním menu). Vymyslet, jak toto číslo vložit na každou stránku mi ale dalo pořádně zabrat, protože menu generuji pomocí JavaScriptu, který je navíc vložen v externím souboru. Asi mi dáte za pravdu, že je to pro PHP smrtící kombinace. Vše jsem po dlouhém přemýšlení vyřešil pomocí nové htm stránky vložené přes <IFRAME>. Návštěvy se inkrementují na indexu.

Kniha návštěv!

Druhým prográmkem v PHP je totálně jednoduchá, ale celkem efektní kniha návštěv. Pište, pište, pište!!!

27.1.2003

Odkazy na zdrojové kódy a bezrámový engine webu

Kompletní offline webu si můžete stáhnout v downloadu!!!

Rozhodl jsem se, že na konec každé lekce přidám download zdrojových kódů. Nicméně jejich velikost není zrovna nejmenší, takže všechny odkazy vedou na http://nehe.gamedev.net/. Zároveň byly z downloadu odstraněny zdrojové kódy pro Visual C++.

Dole na každé stránce přibyla velikost HTM souboru, datum jeho vytvoření, poslední aktualizace... Vše je naprogramováno pomocí Java Scriptu, který se vkládá z externího souboru.

Na stránce obsahu tutoriálů přibyly obrázky lekcí 39 a 40 (viz. minulá novinka). Pokud používáte MS IE 6.0 (tady fungují určitě) uvidíte místo klasických šedých barevná rolovátka (scrollbar). Web byl zaregistrován na http://www.navrcholu.cz/ - v levém menu jsou nyní odkazy na opravdu podrobné statistiky návštěvnost webu - takže prohlížejte co nejvíce, ať číslíčka rostou :-]

Stránky už nejsou vytvořené v rámech, ale pomocí JavaScriptu se vkládají menu na každou stránku. Najedete-li krysou nad odkazy v menu, zobrazí se spešl efekt nápovědy půjčený z anglického webu. Zprovoznění a následné úpravy mi neplánovaně ukořistily asi 7 hodin, nicméně stojí za to.

20.1.2003

Přeložena 20. lekce

V úterý jsem dopřekládal 20. lekci - Maskování, v pátek ji přepsal do počítače a dnešní pondělí jsem ji zkopíroval na internet. Původně jsem se chtěl pochlubit, že už jsem konečně za půlkou, nicméně jistá osoba v Kanadě mi to překazila. Na http://nehe.gamedev.net/ totiž přibyly lekce 39 a lekce 40. Teď nevim mám-li se radovat nebo nadávat - přibyla další práce...

13.1.2003

Web je kompletní

Konečně jsem dokončil transformaci i 1. lekce do CSS, takže web by měl být asi kompletní. Menší statistika: Již zmiňovaná první lekce dříve zabírala 116 kB, teď pouze 55,1 kB. Celková velikost všech lekcí byla 734 kB, nyní pouze 350 kB. Myslím, že je to poznat na rychlosti stahování stránek...

6.1.2003

Nová adresa webu

http://www.opengl.cz/ mi poskytlo webhosting, pro NeHe-ho, takže celý web byl přesunut na http://nehe.opengl.cz/. Takovou adresu jsem si vždy přál, děkuji moc.

Na každé stránky vpravo jsou umístěny odkazy na jednotlivé lekce. Script se vkládá z externího souboru. Poprvé jsem něco programoval v JavaScriptu. Umím nový programovací jazyk - jsem prostě DOBREJ!!! ;-]

Přes Vánoce jsem zkonvertoval všechny lekce (kromě první - ta je strašně dlouhá) do kaskádových stylů (CSS). Byla to práce zdlouhavá, psychicky namáhavá a především jednotvárná, ale stála za to. Během pěti minut, můžu změnit celý design webu, vše je menší, přehlednější a snadno editovatelné bez FrontPage.

16.12.2002

Přeložena 19. lekce

Grafické menu. Dopřekládána 19. lekce - Částicové systémy NeHe-ho Tutoriálů, ale ještě není barevně upravená. Víkendy jsou moc krátké, aby se všechno stihlo.

9.12.2002

První verze webu

Dokončení první verze webu. Asi nejdůležitější byla dekrementace rámů - teď jsou pouze dva. Pozadí stránky a logo v levém horním rohu úplně změnily vzhled Menu, ale jednalo se jen o změnu dvou řádků v HTM kódu. Tutoriály ještě nebyly konvertovány pro užití kaskádového stylu. Byly jen barevně upraveny, aby vypadaly, že sem patří :-) Nicméně na použití CSS se už pracuje.

2.12.2002

Základní kameny webu

Přidán Úvod, Novinky, Download, odkazy.

11.11.2002

Na internetu

Web byl zaregistrován u poskytovatele Web Zdarma (http://www.webzdarma.cz/).

4.11.2002

Index

Byl vytvořen index a kaskádový styl (CSS), který určuje celkový design.

Dříve

Poté, co jsem začal překládat (asi červenec 2002; lekce 11) byly tutoriály umísťovány na můj web http://woq.czweb.org/.

Ještě dříve

Překlady byly umísťovány na http://www.webprostor.cz/pocitace_a_internet/MFC a http://tek.d2.cz/soft/. Jsou to stránky prvních překladatelů.