Přidat aktualitu mezi oblíbenéZasílat nové komentáře e-mailem First person střílečka, 96kB

Pokud vás už nebaví sledovat, na kolik GB se nacpou nové hry, zkuste Kkrieger, zajímavou 3D gamesku, která má jen 96kB a nevypadá tak špatně. Vyžaduje DirectX.Asi už o ní hodně z vás slyšelo, ale neuškodí si to připomenout. Nepochopím, jak to do těch 96kB všechno nacpali.screenshot: 003.jpg

Předmět Autor Datum
předpokládám, že používají technik, kterých se používá u demoscény (tj. generování objektů a textur…
touchwood 16.05.2008 08:43
touchwood
The entire game uses only 97,280 bytes of disk space. Much of this small size is attributable to the…
Moas 16.05.2008 09:06
Moas
jo, tak je to tak jak jsem si myslel. Jednoduše řečeno nemají např. textury uloženy v programu jako…
touchwood 16.05.2008 09:59
touchwood
Běží to na tzv. fraktálové datové kompresi (nevím jak oni to nazývají). To je metoda, které patří bu…
Flash_Gordon 16.05.2008 16:40
Flash_Gordon
Mne to uplne zasukovalo muj ntb.
Radek 16.05.2008 09:17
Radek
Taky mi to totálně zpomalilo PC, ale po restartu v poho
marekdrtic 16.05.2008 13:26
marekdrtic
No a pred chvilkou mne to zasukovalo i celkem vykonny 2-jadro a musel jsem restartovat, neslo to nij…
Radek 16.05.2008 16:23
Radek
Mě to ani nezašuklo. Rovnou to ohlásilo chybu. :-D
kmochna 16.05.2008 17:34
kmochna
To ja jsem chvilku hral a pak jsem to dohral az do konce, ale neslo z toho ven. Sakra to psani bez d…
Radek 16.05.2008 18:09
Radek
No podle toho co tu píšete (zasukovalo, zašukovalo, hlásilo chybu....) tak to radši ani nebudu zkouš…
drdys 17.05.2008 12:35
drdys
No tak to je tvoje minus. Ten algoritmus velmi vzdalene a nepresne receno bezi na podobnych principe…
Flash_Gordon 17.05.2008 13:45
Flash_Gordon
Cele kouzlo spociva v tom, ze kdybychom meli tento algoritmus psat primym zpusobem, tak by zabral na…
MaSo 17.05.2008 20:37
MaSo
Porovnávat příklad faktoriálu s potenciálem "fraktálních technologií" je nedůstojné samo o sobě. Je…
Flash_Gordon 17.05.2008 21:17
Flash_Gordon
Ja som to presiel v poho. Na druhykrat. Neodporucam stat vo dverach, ked sa za vami zatvaraju. ]:)…
2laak 17.05.2008 13:51
2laak
Takze teoreticky by to mohlo bezat i na ZX Spectre 128 :-D [joke]
pravy-exolon 17.05.2008 21:56
pravy-exolon
To asi ne :-) na odkazech vyse je receno, ze to pri spusteni se to natahne na 300MB pameti a tou ZX…
JR_Ewing 17.05.2008 22:53
JR_Ewing
No tak jsem to teda zkusil, na podruhý jsem to dokázal spustit, je to dobrý na 96KB to teda čumim, a… poslední
drdys 21.05.2008 16:48
drdys

The entire game uses only 97,280 bytes of disk space. Much of this small size is attributable to the game's use of procedurally generated content. In contrast, most popular first-person shooters fill one or more CDs or DVDs. [1] According to the developers, .kkrieger itself would take up around 200–300MB of space if it had been stored the conventional way.

Textures are stored via their creation history instead of a per-pixel basis, thus only requiring the history data (possibly as low as ~300 bytes per texture at any resolution) and the generator code to be compiled into the executable, producing a relatively small file size.

Stejně tomu nerozumim.:-)

Kkrieger

Běží to na tzv. fraktálové datové kompresi (nevím jak oni to nazývají).
To je metoda, které patří budoucnost.
Bohužel zatím nejsou natolik dokonalé algoritmy a ani dostatečně výkonné mašiny, aby se to dalo používat stejně často jako např. RAR nebo ZIP.

Tato metoda má strašnou nevýhodu v asymetrii. To znamená, že komprimace zabere exponenciálně dlouhý čas v porovnání se samotným vybalením.
+ Veškerá grafika či objekty jsou samozřejmě ve formě matematických rovnic, žádná bitmapa.

UPDATE (August 2006): Recently several users report that their Anti-Virus Software reported the file to contain a trojan. This is a false detection, based on heuristics.
We are in contact to ACG and Avira to get this solved.

No tak to je tvoje minus.
Ten algoritmus velmi vzdalene a nepresne receno bezi na podobnych principech jako je rekurze.

// Například uvažujme následujcí fci

long int factorial(int n)
 {
  if (n<=1)
	return(1);
  else
	n=n*factorial(n-1);
	return(n);
 }

//volání funkce může vypadat následně:
long vysledek = factorial(10000);

Cele kouzlo spociva v tom, ze kdybychom meli tento algoritmus psat primym zpusobem, tak
by zabral namisto 8. radku 80000. radku.

Tento priklad algoritmu je totiz tak chytre nastaven, ze je schopen vypocitat se sam ze sebe v zavislosti na parametru - nespocetne mnoho funkci, ktere generuji "inteligentne" "samy sebe".

No a na vzdalene podobne technologii, ale jeste mnohem slozitejsi a to nejen na vypocet, ale i svou podstatou by mely byt zalozeny tyto naprosto revolucni algoritmy. Jejich hlavnim rysem je take napriklad to, ze libovolne uzivatelovo navolene rozliseni je okamzite nativni.
[flame]
To ze se to nekomu "zasukovalo" na nejakem AMD me tudiz ani neprekvapuje :-D ...
[/flame]
Hlavnim duvodem proc se tato technologie nepouziva bezne je, ze neni ani poradne doresen algoritmus a tudis je spise samotne zadani upraveno pro potreby samotneho algoritmu, kdezto praxe vyzaduje presny opak = upraveni algoritmu pro konkretni zadani.....

Porovnávat příklad faktoriálu s potenciálem "fraktálních technologií" je nedůstojné samo o sobě.

Je pravda, že ten můj hloupý příklad je možno zapsat i ve foru, ale for je uboze stupidní oproti funkci.
Protože for bys musel vkládat následně všude (pokud bys jej zase nevložil do těla jiné funkce), a kde bys chtěl počítat znovu nějaký faktoriál bys mu ještě také musel staticky upravovat vstupní proměnnou do smyčky.
Takže z obecného pohledu je for naprosto neflexibilní.

Tím samozřejmě netvrdím, že se cítím být "tím povolaným", kdo do toho všeho vidí natolik, že to může popisovat.
Určitě se to dá aplikovat na fůru dalších věcí, komprese je jen jedna z aplikací.

Něco o tom je uvedeno třebas zde.

V podstatě se jedná o algoritmus, který dokáže nějakým "podobným" způsobem "iterovat" a vytvářet na základě nějakých vstupních údajích nekonečně složité struktury( pro každý z údajů nekonečno ).
To jak ta struktura bude vypadat záleží (snad) na dvou věcech.
1) Jaký bude "vstupní" údaj
2) Kdy přesně algoritmus zastavíme

Přičemž i malá odchylka "vstupního" údaje může způsobit naprosto neuvěřitelně odlišný výstup.

Tím jenom naznačuji, proč se dnes distribuují hry na dvouvrstvých DVD a proč je náhle možné taky vydat hru, na kterou se můžeš podívat v notepadu, že má 96.řádků a po spuštění to dělá takové věcí, že kdybys to neviděl na vlastní oči, tak bys každého kdo ti to řekne prohlásil za úplného blázna nebo šílence.

Také závěry na odkazovaném článku jsou docela husté:

V Euklidovské geometrii má každý útvar tzv. topologickou dimenzi. Bod má topologickou dimenzi nula, přímka jedna, čtverec či kruh dvě, krychle nebo koule tři a tak dále .....
No a v podstatě tam píšou, že Geometrie tak, jak ji známe je jen speciální případ, kdy její dimenzi tvoří celé číslo. Jenomže to o čem tam oni píší tvoří libovolná čísla, tedy i necelá a celá čísla, která známe jako přirozená jsou jen zanedbatelné množství vzhledem ke všem existujícím číslům(=dimenzím).....

[http://upload.wikimedia.org/wikipedia/commons/6/6d/ Animated_fractal_mountain.gif][http://upload.wikimedia.org/wikipedia/commons/thumb /f/fd/Von_Koch_curve.gif/250px-Von_Koch_curve.gif][http://upload.wikimedia.org/wikipedia/commons/thumb /e/ed/Phoenix%28Julia%29.gif/200px-Phoenix%28Julia% 29.gif]

Obrázky jsem převzal z Wikipedie.

Zpět na aktuality Přidat komentář k aktualitě Nahoru