Hoofdcategorieën
Device Settings

John Carmack bezig met Doom-RPG voor mobieltjes

Door Willem Kerstholt, woensdag 30 maart 2005 10:00
Bron: Weblog Carmack, views: 16.108

De invloedrijke ontwikkelaar John Carmack, onder meer bekend van de Doom-serie, werkt op dit moment aan een op Doom geïnspireerde role-playing game voor de mobiele telefoon, zo schrijft hij op zijn blog. Nadat hij voor de grap eens een game voor zijn telefoon in Java schreef en merkte dat dit best gemakkelijk ging, kwam hij tot de conclusie dat het leuk zou zijn eens op Doom gebaseerd spel voor de mobiele telefoon uit te brengen. Carmack gaat op zijn blog in op de problemen waartegen hij tijdens de ontwikkeling aanloopt. De eisen die een telefoon stelt aan een spel zijn streng; zo mag de totale grootte van het spel slechts zo'n 200KB zijn, minder dan een texture in Doom III. Ook aan de besturing van games op het mobieltje kunnen niet al te hoge eisen worden gesteld; toetsen reageren traag en werken ook voor de gamer niet lekker.

John Carmack (cartoon) kleinHij ontwikkelde een concept waarin de speler stap voor stap beweegt door een driedimensionale wereld. Dit kan zowel voor de speler als de telefoon het maximale uit de mogelijkheden halen. Begon Carmack nog met een positieve indruk van Java, gaanderweg is deze omgeslagen in een aversie tegen de vele nadelen van Java. Zo is Java traag; waar de hardware van een telefoon vaak sneller is dan bijvoorbeeld een Gameboy Advance, vertraagt Java de boel aanzienlijk. Ook is Java lang niet zo portable als gedacht, op iedere telefoon lijkt wel een eigen variant van Java te draaien, met eigen problemen. Ook mobiele telefoons zijn niet echt een game-platform. Naast de eerder genoemde gebrekkige besturing, is de latency van datapakketjes zo hoog dat multiplayer bijna geen mogelijkheid is en valt een tijdige afhandeling van belangrijke processen ook niet binnen de kundigheid van de telefoon.

Volgende 10:08 Uitgebreide specificaties XGI Volari 8300
Vorige 09:09 Eerste Forward Versatile Disc-producten verwacht in april
Advertentie

Reacties

«  1  2  »

ik denk dat er voor de huidige gsm/gprs niet echt game toekomst is .

maar over een paar jaar als meer mensen een pda met belfunctie hebben met bv een uitrol scherm dan zou het wel een hit kunnen worden ,,, geheugen kaartjes kosten nu al erg weinig ......

Waarom niet, de gameboy was jaren geleden echt wel een hit hoor... En de playstation portable momenteel ook.

Ja, vooral na dat pixel-gedoe is t een echte hit :+

De bedienbaarheid en scherm is qua om,vang en resolutie niet te vergelijken met een gemiddelde 06.....
Je zult toch echt richting een combo pda/gsm moeten .. en dan zouden er ook nog een andere interface aan moeten anders is het niet te doen......
desnoots met een soort inklikbare uitbreiding , zijn er al blijkbaar

Had nokia niet al zo'n flop gebouwd ?

die flop heet de N-Gage en is met z'n tamelijk meevallende verkopen wellicht geen hoogdraver, maar als flop is ie toch ook wel gefaald.

Die NGage was vooral een kloteding in het gebruiksgemak, niet eens zozeer vanwege de prutte speelbaarheid van van alles: de games liepen prima, maar het beeld is bagger lelijk en even en andee game => batterij eruit om de MMC kaart te wisselen. Lekker handig.

De gameboy was geen telefoon!!! Dat is precies wat hij zegt: de huidige TELEFOONS zijn ongeschikt als mobielgaming platform omdat de apparaten niet bedoeld zijn voor dit gebruik. Het OS is vaak naadje, het Java gebeuren lijkt heel leuk maar natuurlijk waren de problemen van Java al bekend ("portability" die vaak gebakken lucht blijkt, traagte) en de invoer mechanieken zijn niet bedacht met het oog op reactiesnelheid.

Als je een Razor Boomslang muis bij je GSM geleverd krijgt kun je het gametoys noemen.Tot die tijd is een gsm een telefoon waar je fotootjes mee kan nemen en je office werkzaamheden op kan verrichten. Verdere functionaliteit is in negen van de tien gevallen ongewenst en overbodig.

een telefoon is inderdaad niet goed voor gamen, en een gameboy zal misschien ook wel niet goed zijn voor bellen...wie weet

Vergeet niet dat de meest 'non-grafische' RPG's héééél Populair zijn!
Dus als je niet je pc hoeft op te starten om dit toch te kunnen spelen, zal zeker een markt voor zijn!

volgens mij zijn de meeste mensen de text-based RPG al lang vergeten, of hebben ze ze zelfs nog nooit meegemaakt

Hij ontwikkelde een concept waarin de speler stap voor stap beweegt door een driedimensionale wereld.
Sorry, maar dit concept is toch oeroud, Dungeon Master, Eye Of The Beholder, etc?

Volgens mij waren er al zulke games voor mobieltjes, zelfs?

Maar dat is toch geen reden dat het zou mislukken? Elk idee is al een keer bedacht, maar het gaat om de manier van uitvoeren.

[no flame intended]John Carmack is ook nooit verantwoordelijk geweest voor vernieuwende spel concepten, of uberhaupt voor een spel concept. Hij is meer technisch dan creatief.

Hier op kantoor hebben de technische mensen vaak ook een inbreng op de uitvoering van een concept. Soms ontstaan deze ook op de werkvloer

Daarom gebruik ik ook het woord "verantwoordelijk".

[licht off-topic]Wat dacht je van first person shooters zoals wolfenstein, doom en daarna echte 3d met quake etc. Dit zijn de roots van fps spellen en toch echt het werk John Carmack.
Vernieuwend is hij dus wel degelijk geweest.
[/ licht off-topic]

Verder denk ik dat het nooit echt een grote hit gaat worden dat gamen op je mobiel. Er is teveel verschil kwa snelheid in types telefoons en het werkt nooit echt lekker. De 2 games die ik tot nu toe heb geprobeerd waren behoorlijk kort en de gameplay was al helemaal om te huilen (logisch een telefoon gamed niet lekker).

Het is zijn programeer werk. Maar niet zijn design\creatief werk.
Wolfenstein 3d was Tom Hall
Doom was o.a. Romero
Quake was o.a. Romero en American McGee

Wat mij leuk lijkt is als het Keen 4 tal weer eens samen een spel maken: Tom Hall (Creative design), John Romero (Code), John Carmack (Code), Adrian Carmack (Art).

1: je kan toch ook creatief zijn met technische dingen? een hele mooie manier een probleem weg-coden.

2: zonder die technische mensen hadden er nooit mooie games e.d. geweest

3: volgens mij was carmack in het begin van iD games maar met 1 of 2 anderen, dus dan zal hij ook wel het spelconcept naar iets goeds hebben uitgebouwd.

Zo is Java traag; waar de hardware van een telefoon vaak sneller is dan bijvoorbeeld een Gameboy Advance, vertraagt Java de boel aanzienlijk.
So what else is new? Dit gaat exact zo met Java op je desktop. Nou is de gemiddelde desktop-pc wel snel genoeg om het goed te kunnen draaien, maar het vertraagt altijd. Ook leuk om te weten dat de JVM sowieso al 50meg geheugen inslokt, nog voor dat het progsel überhaupt gestart is. Dat Java vergelijkbare taferelen kent bij J2ME is geen verrassing voor me.

Dit was wellicht jaren geleden zo, maar Java op desktops (of andere grote systemen) is flink verbeterd.

Er komt nog wel een dag dat VM's voor gemiddelde programmatuur native code gaat verslaan, lees maar eens over hoe het met de huidige performance en de nog komende technologiën staat.

J2ME is vooral traag omdat de VM's nog in een pril stadium zijn en er sowieso te weinig geheugenruimte is om échte leuke performance verbeterende technieken in te VM's te bouwen.

Java is niet verbeterd, de PC's zijn flink verbeterd.
Java op een 200MHz Pentium machine is nogsteeds traag als dikke strond, net als vroeger.

Je weet niet waar je over praat. De JIT-compiler die met Java 2 is geïntroduceerd maakt een groot verschil over de bytecode interpreter die daarvoor gebruikt werd; die voert alle Java code enkele malen sneller uit.

Tegelijkertijd zijn PC's natuurlijk sneller geworden, maar die snelheidsverhoging zit in dezelfde orde als de winst die op softwarenivo gemaakt zijn.

Ondertussen blijft Java relatief traag (ten op zichte van native executables) en heeft Sun's JVM relatief veel geheugen nodig. Op systemen met weinig geheugen zijn een heleboel snelheidsverbeterende technieken die wel in een PC-versie zitten opeens niet bruikbaar. Dat maakt Java juist op mobiele toestellen enzovoorts (die toch al niet de snelste processoren hebben) erg traag.

sowieso te weinig geheugenruimte? alleen de cheap ass telefoons waar toevallig ook java in gepropt is wel ja. Maar de normale telefoons hebben gewoon minimaal 6 mb, terwijl tegenwoordig 32 mb toch gangbaar aan het worden is.

En dat terwijl een telefoon met 1gb tegenwoordig makkelijk te verkrijgen is hoor (op verwisselbaar geheugen wel te verstaan).

Dat is storage ja, geen werkgeheugen, je wilt echt niet swappen naar een flash of mmc card.

het lijkt me nogal moeilijk dat een VM native code gaat verslaan...met een VM moet de code altijd weer een stapje (of een paar stapjes) meer worden omgezet naar andere code dan bij native code

vreemd bij mij vreet JVM 10mb.. en doe ik de meest zware berekeningen via java aangezien 't OS onafhankelijk is.
java kan zelfs voor 3d zeer snel zijn is het zo dat het zeker niet de makkelijkste taal is. zo zijn er ook heel wat java demo'tjes die toch echt wel goed eruit zien en zeker niet onderdoen aan andere talen qua grafische kwaliteit
ik denk dat de grootste moeilijkheid erin zit dat men in 200kb alles moet stoppen waardoor het qua routines zeker er niet sneller op zal worden.

Dat de JVM an sich 50 meg geheugen zou gebruiken is onzin. 18 Mb is more like it. Wat dat betreft niets uitzonderlijks, start maar eens Internet Explorer op, dan zul je zien dat iexplore.exe ook al 23 Mb gebruikt.

Verder is de perceptie dat Java per definitie traag zou zijn, deels waar, en deels achterhaald.

1) JVM's waren vroeger traag(er), inderdaad, zeker voor de komst van de Hotspot VM, toen er nog geen Just-In-Time compilation plaatsvond. De huidige realiteit is, dat de execution speeds van een JVM en bv. managed C++ of C# code in een .NET omgeving niet veel verschillen.

2) Een veelgemaakte fout door Java ontwikkelaars is om ALLES in Java te willen doen. Tot en met het pixel voor pixel 3D renderen toe. Dat moet je dus ook niet doen ! Dat zou je met C# of C++ ook niet doen. Als het echt snel moet, dan moet je gewoon gebruik maken van Direct3D of OpenGL. Hier zijn inmiddels ook goede Java API's voor. Voor een voorbeeld wat hiermee wel niet mogelijk is, verwijs ik naar Jake2 : http://www.bytonic.de/html/jake2.html . Dit is een Java port van de ID Quake2 engine. Al het 3D werk wordt door Jake2 uitbesteed aan de OpenGL binding voor Java, 'jogl'.
Op mijn Pentium M 1,5 Ghz laptop met ATI Mobility Radeon 9600 met 32 Mb (niets bijzonders dus) zie ik geen verschil in execution speed tussen Jake2 of de originele Quake2.

De reden dat J2ME voor (met name 3D) games niet goed presteert ligt in het verlengde hiervan: op veel (iets oudere) mobiele telefoons is de J2ME VM niet uitgerust met een Java 3D API. Dan blijft het natuurlijk behelpen, en moet een 3D game noodgedwongen alles zelf renderen.

Hoe kun je nu van een taal zeggen dat tie traag is?

C is even snel als Java...

Het is 'm die JVM die het doet.. Java is op alle systemen gelijk.. Wat de JVM er me doet dat wil nogal eens verschillen.

Ja er zitten nadelen in java, zeker maar die zitten in elke taal. Dat de jvm traag is, ligt niet aan Java.. dat ligt aan hoe de jvm gemaakt is.

Daarnaast er zijn wel degelijk compilers om Java ineens door te compilen naar machine code.. (gcj bijvoorbeeld). Wat ik daarmee gedaan heb leverde mij wel degelijk een snel werkend geheel op.

Mensen die hier Breed spelen, als ik me niet vergis zitten daar delen in die gecode zijn in java. Dus het kan wel.

Niet op telefoons natuurlijk...

Je kan het op meerdere manier bekijken:

execution time:
Java is geen machine code, daardoor zal de gecompilede byte-code altijd geintepreteerd moeten worden. Hierdoor is de taal traager dan een taal die wel machine code produceert (C\C++, Pascal, etc.).
Soms kan je Java code volledig naar machine code compilen, waardoor het net zo snel als elke andere programeer taal is. Maar vaak kan je de Java code niet volledig naar machine code compilen waardoor er een deel nog steeds als java byte-code uitgevoerd word. Natuurlijk is java is dat geval niet meer runtime portable, waar je vaak toch aan vast zit (in het geval van telefoons dus).

compile time:
Java is ook niet bijzonder snel in compilen. Ik weet niet of C en C++ sneller of trager zijn bij compilen (vast niet). Maar Pascal bijvoorbeeld is verschrikkelijk snel in vergelijking met Java.

development time:
Daar zou je lang over kunnen twisten of Java sneller is voor het ontwikkelen, of juist trager. Dus deze kan je net zo goed buiten beschouwing laten.

Je vergeet 1 ding: JIT

Just in time compile kan er voor zorgen dat een stuk bytecode efficienter kan worden omgezet dan een normaal stuk native gecompileerde code. Dat lijkt vreemd en tegenstrijdig, maar het verschil zit hem in het feit dat de Jitter de code kan optimaliseren volgens de op dat moment aanwezige randvoorwaarden. Een stuk vooraf gecompileerde code kan hier geen rekening mee houden.

JIT helpt maar in de praktijk is C++ altijd sneller dan java. Java is ook niet bedoeld als C++ substituut. Toch vind ik dat java overgewaardeerd is, op hoeveel hoge scholen en universiteiten leert men eerst java aan en dan pas in de laatste jaren C++ ... gewoonweg belachelijk.

@oeLangOetan: ze gebruik Java omdat Java redelijk makkelijk aan te leren is (onderandere voor de OO concepten). Vroeger werd vaak Pascal gebruikt, zelden word C of C++ gebruikt omdat het gewoon een verschrikkelijke taal is om mee te beginnen. Besides, je moet mensen niet een programmeer taal leren maar programeer concepten. In welke taal je het dan implementeerd boeit niet. In alle (procedural) programeer talen werkt een quicksort op dezelfde manier.

1 van de redenen waarom "Java" traag is, komt doordat men de meest domme dingen met die taal kunnen doen, wat MB's aan geheugenlekken oplevert (stucturen die naar elkaar blijven refereren), of bijvoorbeeld objecten bij de vleet aanmaken:

frame.setColor(new Color(23,43,21));

i.p.v.

static final Color myColor = new Color(23,43,21);
...
frame.setColor(myColor);

Het verschil in code is miniem, het geheugengebruik en de executietijd niet.

Verder blijf ik java wel traag vinden. Start java maar op met "-v", en zie hoeveel classes geladen worden om jouw simpele JFrame te tonen.. |:(

Dat is grappig, ik heb al een hele tijd Doom 1 op mijn telefoon staan, gewoon geport door iemand naar het Windows Mobile platform. Nu heb ik het geluk dat mijn telefoon Windows draait, een 200MHz processor heeft en 320MB geheugen (opslag) maar ik denk dat de meeste nieuwe telefoons van dit moment wel zo snel zijn dat ze dit soort graphics aankunnen.

Jeetje man, is dat niet een beetje overkill voor Doom 1 ;)

Uhm.. Doom 1 draaide op een 386 (33Mhz min) en 20MB diskspace. En VGA display grootte (320x240) lijkt me al groter dan een gemiddelde telefoon.

(edit: oops, het is 320x240 en niet 320x200, anders is het niet 4:3)<div class=r>[Reactie gewijzigd door El_Muerte_[TDS]]</div><!-- end -->

En VGA display grootte (320x200) ???

VGA was altijd naar mijn weten 640*480...


Overigens draait doom ook gewoon op een nokia 7650 met 3.6 mb intern geheugen. deze telefoon heeft een 66 mhz processor.

Wanneer je dat vergelijkt met een dos bak die draait op een 386 33 mhz waarbij de 7650 een veel geavanceerder OS op de achtergrond heeft draaien vergeleken met DOS is dat wel een geinige vergelijking. (Ja, rick is zich er van bewust dat op een 386 windows 3.11 kon draaien...)

640x480x4 is nog VGA ja. Dan heb je maar 16 kleuren.

doom en ook q1 draaiden onder dos in 320x240... een kwart van normaal vga, maar wel met 256 kleuren... VET MAN :P

De oh zo populaire modeX resoluties.

Ik draaide Doom ook al op mijn SonyEricsson P800. Werkte perfect.

No offense, maar dit zeg ik al járen van java! Dit sterft een langzame dood. Multi-platform my ass. Zo lang blizzard dingen als WoW op de PC en op de Mac kan laten werken, Atari hetzelfde kan met UT2004, en dat je toch nog saampjes kan spelen, vind ik dat er géén markt is voor Java.

Hanzehogeschool BI met afkeer van Java (en dat moeten we leren).

Leuk detail: op m'n Sybian foon staat ook Doom1, maar dat is niet in JAVA gemaakt, dat is in symbian z'n eigen API gemaakt (is ook geen 200KB ;))

Multi platform vindt ik juist een hele handige functie. Wat blizzard (of Id) doet is hun C code gewoon porten. Kost wat meer werk....

Java in J2EE is juist super snel en stabiel. Geen rare null pointers enzo

ja, natuurlijk is C/C++ portable, maar dan moet je de broncode hebben, en het schijnt gebruikelijk te zijn die niet mee te leveren. Bovendien moet je voor elke processor opnieuw compileren, en dat kan dus alleen de fabrikant doen, als de fabrikant het geen goed idee vindt om platform X te ondersteunen heb je dus dikke pech. Verder is java niet alleen processor-onafhankelijk.

Ben eigenlijk een groot voorstander van vrije software, en al helemaal op telefoons (ze zijn persoonlijk, dus wil ik ook zelf kunnen bepalen wat ie doet), maar zelfs dan kan java nog handig zijn.

Grappig om zoiets van een BI-er te lezen. Als ik jou was zal ik nog maar eens goed op gaan letten de komende jaren. De software ontwikkeling bestaat niet alleen uit games. Dat geldt al helemaal als je bedrijfsinformatica doet.

Wat wil je dan gaan doen later? .Net? Ik zal je uit je droom helpen jochie, dat is namelijk hetzelfde.

Jij hebt duidelijk nog niet goed opgelet op je opleiding. Heb je uberhaubt wel eens geprogrammeerd? Ik krijg het idee dat je van die leuke buzzwords leert en hier en daar er iets over leest er daar gelijk je sterke mening op baseert.

Dat een extra laag van abstractie de performance beinvloed is logisch, maar dat het daardoor gelijk onzin is slaat nergens op. Het concept is juist erg goed, je kunt op die manier een applicatie ontwikkelen door je puur bezig te houden met de essentie en niet met platform of systeem afhankelijke zaken. Dat dit een langzame dood gaat sterven is gewoon onzin, sterker nog, deze stijl van programmeren gaat langzaam aan (bijna) alle andere stijlen vervangen.

Er is nog genoeg werk te doen, dat is duidelijk. Maar jij stelt dat het bijna aan het eind van zijn tijd is. Technieken als deze beginnen pas net populair te worden en het staat nog maar in kinderschoenen. Je hoeft het niet gelijk zo af te branden als je niet weet wat het precies inhoud.

Het kan aan mij liggen, maaar het woord telefoon zegt toch al genoeg. Laten we de spullen eens gebruiken waar het voor bedoeld is.
Dus met een telefoon bel je en als je dan zo nodig spelletje wilt spelen koop dan een PSP o.i.d.

200k voor een mobiele javagame is al best een hele hap. 3D kan een stuk kleiner, helemaal met de Java3D Standaard. Dan krijg je bijvoorbeeld games als Speed Racer 3D In de praktijk valt het trage reageren van toetsen ook enorm mee, hangt er ook vanaf hoe zwaar de game is. Wat ik echter niet snap is dat zo'n hoogstaand figuur niet voor Symbian kiest. Dan programmeer je direct op de hardware waardoor 3D games ontzettend krachtig worden :P. Zelf heb ik op mijn telefoon bijvoorbeeld Clusterball en Xyanide 3D . Nadeel is alleen dat het aantal Symbian toestellen beperkt zijn :(

Zelf heb ik op mijn telefoon bijvoorbeeld Clusterball en Xyanide 3D . Nadeel is alleen dat het aantal Symbian toestellen beperkt zijn
Vreemd, ik zie bij de informatie van die spelen bij OS "java" staan? :7

Hij kiest voor java omdat daar verreweg de meeste toestellen voor zijn. Symbian is er alleen voor high end toestellen nog. Er zijn meer java toestellen als windows mobile + symbian + palm + BREW bij elkaar. En 80% van de windows mobile, sybian (100%), palm en BREW toestellen hebben zelf ook java.

Goed dat John zich ook eens uitspreekt over de programmeer mogelijkheden op de huidige mobiele telefoons. De meeste serieuze ontwikkelaars van programmas voor mobieltjes lopen hier regelmatig tegen aan alleen wanneer John het zegt wordt er misschien eindelijk eens serieus naar een oplossing gekeken :)

[offtopic]
Waarom hier toch altijd mensen Java verdedigen alsof ze het zelf geschreven hebben snap ik niet hoor.
Hoe je het ook wend of keert een JVM vertraagd de theoretische snelheid van Java programma's zonder uitzondering.
Misschien dat je dat tot een minimum kan beperken door heel net te coden maar dit gebeurt niet tot nauwelijks.

Waarom ik java verdedig?

Simpelweg op dit java wel een mooie taal vind, maar iedereen loopt er op te schelden omdat de jvm zo brak is.

Java is best een mooie taal (veel overzichtelijker dan bijvoorbeeld een c) maar jammergenoeg is die jvm zo brak..

wat ook jammer is dat veel mensen niet verder kijken dan hun neusje lang is en zeggen java is traag want jvm is traag dikke onzin..

Ik van de Java 5.0 JVM verre van brak.

Java is best een mooie taal (veel overzichtelijker dan bijvoorbeeld een c)
C (en C++ nog meer) is ook echt een gedrocht van een taal die in principe dood is voor verdere ontwikkelijk (hiermee bedoel ik dus de ontwikkeling van de taal zelf, niet de ontwikkeling met de taal). Eigenlijk is er niet veel ontwikkelijk nodig omdat de taal zo relaxed is that heel veel mogelijk is door (de gebruikelijke) enge dingen uit te halen.

Java begint steeds meer een mooie taal te worden. Vooral 1.5 of 5 (of whatever de nummering is). Oudere versie zijn gewoon niet fijn omdat je vieze dingen moet doen met enorme overheads voor door enig zins belangrijke taal concepten zoals enumerations en structures. Maar er zijn nog steeds een aantal dingen die mij niet echt bevallen (misschien dat die al lang opgelost zijn in 1.5). Het doel van een programeertaal is om de programeur het makkelijker te maken om een applicatie te produceren. Als ik dan continue bij elke functie alle exceptions die ge'raised\ge'throwed kunnen worden moet specificeren omdat ik het op een algemene plek wil afvanken word het voor mij te veel.<div class=r>[Reactie gewijzigd door El_Muerte_[TDS]]</div><!-- end -->

Voor zover ik het kan zien ben je vrijer in C en daarna C++ en moet je het strikst zijn in Java(qua programmeer styl). Hierdoor zal de code er gemiddeld netter uitzien. Maar ik zie mezelf de komende tijd nog echt geen games ontwikkelen in java, voor de pc dan. Een combinatie van Assembler, C en met als basis C++ is daar meestal de beste optie..

Wordt C Dood verklaart?
Kijk dan maar een snel op http://www.tiobe.com/tpci.htm
C is de laagste hogere programeertaal.
Je kan portable code schrijven en toch low level controle hebben over je applicatie (en eventueel hardware). Dat is de kracht.
Ja C is zo goed als uit ontwikkeld er zijn een aantal dingen overgenomen van C++, maar de basis staat al meer dan 30 jaar. En er is geen alternatief voor veel zaken waarvoor C gebruikt wordt.

C is zo belangrijk dat er alle processor fabrikanten altijd zorgen dat er een C compiler beschikbaar is voor zijn nieuw processor :) En het maakt niet uit of dit een 8-, 16-, 32- of 64-bits processor is.
of een 24-bits dsp.
C heeft een hele duidelijk plaats en het zal nog heel lang duren voordat C verdwijnt.

@rgp: ik bedoelde dat er aan de taal zelf niet of iig nauwelijk meer gewerkt word (ontwikkeling van de taal zelf), aan Java bijvoorbeeld nog veel aan geknutselt.

Vreemde statistiek eigenlijk. Delphi\Kylix staat apart van Pascal terwijl Basic en VisualBasic wel samengevoegd is.

Misschien heeft dat iets te maken met het feit dat veel Tweakers elkaar nabouwen met betrekking tot Java en daarbij zit veel (inmiddels) onwaarheden bij.
Java is niet traag: het opstarten van de JVM kan even duren en als je een slecht ontwikkelaar hebt die niet goed nadenkt alvorens te programmeren dan kan Java langzaam zijn (maar dat geldt evenzo voor andere programmeertalen), voornamelijk als er heel veel objecten worden aangemaakt en kort daarna weer worden weggegooid.

Zeker, de JVM voert een extra abstractielaag toe waardoor niet (direct) de maximale performance wordt bereikt, maar technologie zoals de hotspot compiler zorgt ervoor dat bytecode die veel wordt aangeroepen (runtime) wordt omgezet naar native code.
Overigens denk ik wel dat Java meer geschikt is voor business applicaties en applicatieservers dan voor games.

weet jij eigenlijk wel hoe java werkt; of wat een virtual machine is? Het hele principe van een vm is een extra laag tussen de byte code(platform onafhankelijk) en het operating system. Hoe dacht je dat het .NET framework werkt? dat maakt ook gebruik van een virtual machine... eventueel met just in time bytecode translation naar de .NET vm...(dus java byte code op .NET) nee das pas langzaam...

als je javacode niet meer compileert naar bytecode, maar naar machinecode (dus zonder vm) dan ben je het hele crossplatform idee kwijt, en dan is Java weer de zoveelste oo programming language, zoals bv c++


<nog meer offtopic>
windows vertraagt je systeem ook, waarom gebruiken zoveel mensen dat nog dan?
</nog meer offtopic>

Je kunt ook je bytecode naar machinecode kunnen compileren. Dan ben je ook je vm kwijt en blijf je nog wel crossplatform.
Je laat bv het installatieprogramma van je software die compile-slag maken.

IBM kwam al jaren geleden met dat concept voor Java. Weet niet wat er verder van geworden is. Maar als performance echt zo'n probleem is, dan zijn er dus hele acceptabele oplossingen.

@Eric1
Ik had Doom 1 op mijn Nokia 7650 met maximaal 1,7 MB geheugen. Het geheugen zat dan ook helemaal vol, maar ik had wel gewoon Doom op mijn telefoon. En het draaide als een trein. Maar goed, het pookje op de 7650 is wel verdraaid handig vergeleken met de meeste telefoons.

sorry, zag je post wat later. de 7650 heeft normaal gesproken 4 mb geheugen waarbij 3.6 mb vrij te gebruiken is voor de gebruiker. Of is dat 1.7 mb niet wat je bedoelde waarvan ik dacht dat je het bedoelde?

Nee sorry, je hebt gelijk. Het was idd 3,6 MB. Maar Doom gebruikte daar al gauw het grootste gedeelte van volgens mij. Soms crashte de telefoon als je het spel wilde spelen. Dan moest je eerst resetten tot er weer voldoende geheugen vrij was. :)
«  1  2  »

Op dit item kan niet meer gereageerd worden.

Volgende 10:08 Uitgebreide specificaties XGI Volari 8300
Vorige 09:09 Eerste Forward Versatile Disc-producten verwacht in april
VNU Media logo Hosted by True

© 1998 - 2012 Tweakers.net B.V. - Alle rechten voorbehouden - Contact - Jouw privacy - Algemene Voorwaarden

Uitgever van:

Website van het jaar 2011