A 28 éve megjelent Nintendo teljesítménye:
CPU: 8 bit, 1,66MHz, 2kB RAM
GPU: 5,32 MHz, 2kB RAM
A HTML 5 változat az 1,6 GHz-en futó Athlon processzorom egyik magját 100%-ban lefogja, valamint kb. 80 megabájt memóriát eszik.
Elegem van abból, hogy a Flash reklámoktól meghal a gépem, kifejezetten örülök neki, hogy az újabb Androidokon már nincsen, Apple termékeken pedig nem is volt.
A kettő azért nagyon távol van egymástól technikailag. Az egyik Assembly-ben van megírva egy célhardverre, míg a másik egy általános hardverre van megírva egy nagyon magas absztrakciós rétegben. A Nintendo alkalmazás közvetlen a hardvert célozza a JS alkalmazás pedig eleve nagyobb felbontást támogat, valamint szinte akár milyen hardveren fut, amin fut egy megfelelő képességű böngésző, egy megfelelő operációs rendszerrel karöltve. Ugyanúgy valószínűleg egy első generációs Xbox-on jobban futnának a játékok, mint az 1.6 Ghz-es procidon, pedig az Xbox-ban csak egy 733Mhz-es Pentium van.
Az összehasonlítás nyilván nem teljesen állja meg a helyét, de azért az árat kissé nagynak tartom ezért az általánosságért, nagyjából négy nagyságrendnyi különbségekről beszélünk, és mégiscsak egy nagyon primitív játékot kapunk ennyiért.
Mégis sokkal jobban leköti az embert egy ilyen primitív (platform) játék, mint az egyszer-játszós, agyon-szkriptelt FPS-ek 99%-a (beleértem a CoD-ot is).
A mai napig is, ha már nagyon unom magam és minden játékból elegem van, egyetlenegyet azért bármikor elő tudok venni: Transport Tycoon :)
Programozásügyileg értettem a primitívséget. Mostanában én is OpenTTD-vel múlattam az időt, előtte pedig a Deluxe-szal, de a Colonization is lassan húsz éves.
Megnéztem Chrome alatt is, a fenti hardveren egy processzormagon 50 és 70% közötti terheléssel fut (a 100%-os terhelést Firefox alatt mértem a program nem Chrome-ra optimalizált verziójával, ráadásul akadozott, a Chrome-os nem).
Vesd össze:
Az egyik Assembly-ben van megírva egy célhardverre
szinte akár milyen hardveren fut, amin fut egy megfelelő képességű böngésző
Azért jórészt itt is kemény optimalizáció van, hogy ekkora különbségek vannak a különböző böngészők között.
Addigra kb. az 5. réteg a procimag felett...
Ezért jó az assembly.
Nekem lefagyott a FF tőle, nem volt elég a hardver... :( Pedig játszottam volna.
Az ilyen játékokat bizony újra meg kéne rajzolgatni és végigprogramozni js-ben. Akkor talán. (Mindenképp jobb eredmény érhető el, de nagyon sok munkával.)
Az Assembly gyors, de abban nem fejleszt senki, nem véletlenül. A kérdés az, hogy megéri-e és mennyit kell várni a hardverek fejlődésére, hogy platformfüggetlenül lehessen dolgozni, azaz egyszer megírom, és az mindenhol jól működik. 28 év alatt annyit fejlődött a technológia, hogy egy Super Mario-szintű játék egy bizonyos böngészőn jól megy, a többin meg nem (ugyanazon a hardveren). Várjunk, vagy pedig maradjunk a kaptafánál, és használjuk a HTML-t arra, amire kitalálták: statikus dokumentumok megjelenítésére?
Az Assembly gyors, de abban nem fejleszt senki, nem véletlenül.
Velem azért néha-néha még előfordul - nem véletlenül. Persze én senki vagyok. :)
A platformfüggetlenségben én valahogy sosem tudtam hinni.
Igen, jelenleg maradt a HTML-CSS-JS. Nem véletlen írtam, hogy kb. JS-ben kellene újraírni. Ezek az ingyom-bingyom emulátorok megtöbbszörözik a hardverigényt, és ugyanúgy platformhoz kötöttek.
Mindig ahány réteggel több (mennél messzebb megyünk a procitól), annál hardverigényesebb. Lehet gyártani az erőműveket, meg havonta új gépet venni.
Vagy elkezdünk programozni, nem plugineket dugdosni egymásba.
NES emulátor, gyakorlatilag bármilyen ROMot be lehet adni neki. Teljes szoftveres emuláció nyilván drága (hiszen egy teljesen más architektúrájú processzort kell emulálni, amit csak szoftveresen lehet), ezért izzasztja meg a mai gépeket is.
Az absztrakció ára
CPU: 8 bit, 1,66MHz, 2kB RAM
GPU: 5,32 MHz, 2kB RAM
A HTML 5 változat az 1,6 GHz-en futó Athlon processzorom egyik magját 100%-ban lefogja, valamint kb. 80 megabájt memóriát eszik.
Ugyan...
Más
Az összehasonlítás nyilván
Nagyon primitív?
A mai napig is, ha már nagyon unom magam és minden játékból elegem van, egyetlenegyet azért bármikor elő tudok venni: Transport Tycoon :)
Programozásügyileg értettem a
Érdekes, nekem csak 23-29%-ra
Megnéztem Chrome alatt is, a
Vesd össze:
Mire a böngésződ futtatja,
Ezért jó az assembly.
Nekem lefagyott a FF tőle, nem volt elég a hardver... :( Pedig játszottam volna.
Az ilyen játékokat bizony újra meg kéne rajzolgatni és végigprogramozni js-ben. Akkor talán. (Mindenképp jobb eredmény érhető el, de nagyon sok munkával.)
Az Assembly gyors, de abban
Na-na!
A platformfüggetlenségben én valahogy sosem tudtam hinni.
Igen, jelenleg maradt a HTML-CSS-JS. Nem véletlen írtam, hogy kb. JS-ben kellene újraírni. Ezek az ingyom-bingyom emulátorok megtöbbszörözik a hardverigényt, és ugyanúgy platformhoz kötöttek.
Mindig ahány réteggel több (mennél messzebb megyünk a procitól), annál hardverigényesebb. Lehet gyártani az erőműveket, meg havonta új gépet venni.
Vagy elkezdünk programozni, nem plugineket dugdosni egymásba.
http://fir.sh/projects/jsnes/
NES emulátor, gyakorlatilag bármilyen ROMot be lehet adni neki. Teljes szoftveres emuláció nyilván drága (hiszen egy teljesen más architektúrájú processzort kell emulálni, amit csak szoftveresen lehet), ezért izzasztja meg a mai gépeket is.
Amikor megjelent a blogmark,