head 1.12;
access;
symbols;
locks
bilbo:1.12; strict;
comment @# @;
1.12
date 2003.09.12.19.37.55; author bilbo; state Exp;
branches;
next 1.11;
1.11
date 2003.09.12.15.43.20; author bilbo; state Exp;
branches;
next 1.10;
1.10
date 2003.09.11.16.20.54; author bilbo; state Exp;
branches;
next 1.9;
1.9
date 2003.09.11.01.59.27; author bilbo; state Exp;
branches;
next 1.8;
1.8
date 2003.09.10.23.03.47; author bilbo; state Exp;
branches;
next 1.7;
1.7
date 2003.05.19.01.47.59; author bilbo; state Exp;
branches;
next 1.6;
1.6
date 2003.05.15.09.52.45; author bilbo; state Exp;
branches;
next 1.5;
1.5
date 2003.05.15.09.30.31; author bilbo; state Exp;
branches;
next 1.4;
1.4
date 2003.02.19.22.09.16; author bilbo; state Exp;
branches;
next 1.3;
1.3
date 2002.12.04.12.45.00; author bilbo; state Exp;
branches;
next 1.2;
1.2
date 2002.12.01.03.56.55; author bilbo; state Exp;
branches;
next 1.1;
1.1
date 2002.11.30.12.30.45; author bilbo; state Exp;
branches;
next ;
desc
@dokumentace
@
1.12
log
@*** empty log message ***
@
text
@
Scorch Blaster - dokumentace
Scorch Blaster - dokumentace
Vytvořil Martin Petříček <bilbo@@centrum.cz>
Obsah
Stručný popis programu
Je to hra. Pravidla jsou jednoduchá. Jde o to, nahrát co nejvíc bodů (neboli Fragů)
Za každého zabitého protihráče je 1 bod, pokud vás někdo zabije, tak se vám neodečte nic (ale jemu přičte),
pokud se vám podaří spáchat sebevraždu (např. nešikovnou manipulací s vlastní bombou), ztrácíte 1 bod.
Ve hře jsou různé módy hry:
- Nahrát co nejvíc bodů, kdy se protivníci po smrti znovu oživí na náhodném místě na mapě (respawnují se). Lze nastavit fraglimit (počet bodů)
- Survival, kde vyhrává ten, kdo přežije jako poslední.
K programu je i tato dokumentace:
Návod ke hře pro uživatele
Seznam příkazů pro konzoli
Popis souborů hry
Seznam funkcí entit
Seznam typů objektů
Definiční soubor hry pro editor Worldcraft
Použité knihovny
Všechny použité knihovny (a ostatně celý započťák) je multiplatformní
(což v tomhle případě znamená, že funguje na Windows a na Linuxu, nicméně by šel s minimálním úsilím rozchodit i na jiných unixech nebo i jiných systémech (například Macintosh), za předpokladu, že na těch systémech funguje OpenGL a za předpokladu, že bych se na tyhle systémy dostal.
OpenGL
Potřeba verze 1.1 nebo novější. OpenGL je vlastně už standardní knihovna, je standardně přítomna na všech Microsoftích systémech počínaje Windows 98 (na windows 95 ji lze doinstalovat), a je přítomna (nebo ji lze nainstalovat) na většině Unixů (snad kromě sálových počítačů bez monitorů, nebo jiných exotických konfigurací).
Při vývoji pod linuxem jsem použil knihovnu Mesa OpenGL, ačkoliv program funguje i na jiných OpenGL implementacích.
OpenAL
Knihovna pro přehrávání zvuku, s podporou pro prostorový zvuk a podobně.
V Linuxu je tato knihovna obsažena v balíku OpenAL, ve Windows standardně není a je nutno ji k programu přibalit.
Pozor, v některých linuxových distribucích je obsažena verze knihovny, která neobsahuje podporu pro nahrávání Wav souborů, v takových případech je potřeba rozbalit soubor sb_oalib.tgz dodávaný se hrou a rozbalenou knihovnou tu originální nahradit.
(alternativně rozbalenou knihovnu umístit do nějakého jiného adresáře a tento přidat do environment proměnné LD_LIBRARY_PATH)
The OpenGL Utility Toolkit (GLUT)
Potřeba verze 3.7 nebo novější, tato knihovna obsahuje několik funkcí pro usnadnění práce s OpenGL, především základní správu oken, myši a klávesnice, tedy věcí které závisejí na systému a které zde používám s jednotným API, ať už program je zkompilován pod Windows, Linux, nebo jiný systém.
V Linuxu je tato knihovna obsažena v balíku Mesa OpenGL, ve Windows standardně není a je nutno ji k programu přibalit.
zlib 1.1.4
Knihovna na rozbalování souborů ze .zip archivů. Sice toho umí víc, ale její ostatní funkce nevyužiju. Teoreticky bych se bez téhle knihovny obešel, nicméně některé textury (např. fonty) jsou velmi dobře komprimovatelné a lze tak ušetřit místo na disku.
Ve většině linuxů je standardně nainstalována, ve Windows opět není a je nutno ji přibalit k programu.
libjpeg 6b
Knihovna od The Independent JPEG Group's JPEG na nahrávání obrázků formátu .jpg. V tomto případě využívám na konverzi do formátu .tga (v paměti), formát .tga nahrává program bez jakýchkoliv knihoven. JPG textury zkomprimované ztrátovou kompresí zabírají při správném nastavení mnohem méně místa než .tga textury, byť by byly zakomprimované a degradace kvality může být minimální.
Ve většině linuxů je standardně nainstalována, ve Windows (jak by se dalo čekat) není a je nutno ji přibalit k programu.
Popis zdrojových kódů
Dokumentace je generována automaticky z okomentovaných zdrojových kódů (čímž si ušetřím práci, stačí "jenom" dobře komentovat zdrojáky, dokumentace se pak vytvoří automaticky)
Dokumentace je generována do samostatného adresáře doc/html
Poznámky ke kompilaci
Kompilace na Linuxu (nebo na unixech obecně)
Musí být nainstalovány tyto knihovny:
- OpenAL
- OpenGL
- Glut >=3.7
- libjpeg6b
- zlib
a to včetně hlavičkových souborů, ve většině linuxových distribucí to znamená kromě těchto balícků naistalovat i příslušné 'devel' balíčky.
Dále je ke kompilaci vyžadován nainstalovaný perl
. (na většině unixů je standardně nainstalován)
Hra vyžaduje ke svému spuštění systém XWindow s podporou OpenGL.
Po rozbalení se spustí configure a make:
chmod +x configure
./configure
make
Mělo by takto dojít ke zkompilování hry (vznik binárky b4d a binárek pomocných utilit (trans, glinfo, glmatrix), které však nejsou potřeba ke spuštění ani kompilaci, pouze byly využity během vývoje hry)
Pokud spustíte make clean
tak dojde k vymazání všech vytvořených dočasných a vygenerovaných souborů.
make distclean
smaže kromě toho i zkompilované binární soubory a konfiguraci vytvořenou skriptem configure.
Kompilace na Windows
Ke kompilaci jsou potřeba libovolné Windows s nainstalovaným Microsoft Visual Studio 6.0 (kompilaci na starších, či novějších verzích jsem nezkoušel, ačkoliv by měla být možná)
Pro kompilaci hry je nutné mít nainstalovaný perl, nicméně v balíku se zdrojovými kódy je již obsažena osekaná distribuce perlu, která na zkompilování zdrojových kodů stačí (je v adresáři perl_w).
Pokud je v systému nainstalovaná jiná distrubuce Perlu, lze nastavit k ní cestu v souborech b_ai_int.bat, prebuild.bat a prelink.bat
Perl se používá pro automatické generování hlavičkových souborů.
! Před kompilací se musí nastavit v Tools->Options->Directories
cesty k hlavičkovým a .lib souborům:
! Je nutno přidat podadresáře projektu include a include_w mezi Include files a Library files
Toto nastavení se neukládá do nastavení projektu, ale do nastavení Visual Studia, proto je tento krok nutno při přenosu projektu na jiný stroj zopakovat.
Pro zkompilování se musí otevřít soubor b4d.dsw a v menu Build zvolit Rebuild All
Vznikne binární soubor b4d.exe.
RCS
V adresáři RCS jsou uloženy pomocí RCS (Revision control system) i starší verze projektu.
Hardware nároky
Minimální doporučená konfigurace
- Procesor 300 Mhz
- 64 Mb Ram
- Grafický akcelerátor s 8 Mb paměti
Toto je jen hrubý odhad. Hra bude fungovat i na slabších konfiguracích, ale pokud bude počítač příliš zastaralý, tak bude hra natolik pomalá, že bude nehratelná. Hru se mi povedlo sputit i na počítači 486/66 Mhz s 24 Mb RAM, ale byla nahratelně pomalá
Hra byla testována na těchto grafických kartách:
Intel 82815 (integrovaný 3D akcelerátor)
Riva TNT2 M64
Riva TNT2 Ultra
GeForce2 MX
GeForce3 Ti500
GeForce4 Ti4200
ATI Radeon 9000 DDR
Features
- 3D zobrazení využívající hardware akceleraci.
- Libovolné množství polygonů, objektů a hráčů (omezeno pouze velikostí paměti a rychlostí procesoru a grafické karty, rychlost závisí přibližně lineárně na množství polygonů ve scéně).
V praxi se však více než cca 7 lidí nemá šanci vejít k jedné klávesnici a myši a rozumně ovládat hru (což je ale omezení dané hardwarem a s tím nic neudělám)
- Konzole, kam lze zadávat příkazy a měnit tak konfiguraci hry, debugovat, anebo zadávat různé pokročilejší příkazy
@
1.11
log
@*** empty log message ***
@
text
@d12 1
a12 1
h3{font-size:12pt;color:#ddffdd;text-decoration:underline;text-underline:single;font-family:Verdana;}
d14 1
@
1.10
log
@*** empty log message ***
@
text
@d23 1
a23 1
Popis programu
d39 1
a39 1
K dispozici jsou i další dokumenty:
d44 1
d68 1
a68 1
Dokumentace je generována do samostatného adresáře html
d126 1
@
1.9
log
@*** empty log message ***
@
text
@d7 1
a7 1
Zápočťák - dokumentace
d19 2
a20 2
Zápočťák - dokumentace
Vytvořil Martin Petříček
d31 1
a31 1
Popis programu
d36 1
a36 1
- Nahrát co nejvíc bodů, kdy se protivníci po smrti znovu oživí na náhodném místě na mapě (respawnují se). Lze nastavit fraglmit (počet bodů)
d38 2
a39 5
K dispozici je i:
a61 3
@
1.8
log
@*** empty log message ***
@
text
@d26 1
d43 5
a47 4
seznam příkazů pro konzoli
popis souborů hry
seznam funkcí entit
definiční soubor hry pro editor Worldcraft
d54 5
d65 1
a65 1