前腐后继 发表于 2006-12-13 11:28:00

Java for Games: too slow?

<strong><br/><br/></strong>There&nbsp;is&nbsp;a&nbsp;mistaken&nbsp;belief&nbsp;amongst&nbsp;many&nbsp;commercial&nbsp;and&nbsp;hobbyist&nbsp;games&nbsp;developers&nbsp;that&nbsp;java&nbsp;is&nbsp;not&nbsp;suitable&nbsp;for&nbsp;games&nbsp;development.&nbsp;This&nbsp;is&nbsp;based&nbsp;on&nbsp;data&nbsp;that&nbsp;is&nbsp;5&nbsp;to&nbsp;10&nbsp;years&nbsp;old,&nbsp;and&nbsp;a&nbsp;misunderstanding&nbsp;of&nbsp;Java.&nbsp; <p></p><p>If&nbsp;you&nbsp;take&nbsp;a&nbsp;C++&nbsp;program,&nbsp;compile&nbsp;it,&nbsp;and&nbsp;wait&nbsp;ten&nbsp;years,&nbsp;it&nbsp;will&nbsp;still&nbsp;run&nbsp;just&nbsp;as&nbsp;slowly&nbsp;with&nbsp;all&nbsp;the&nbsp;same&nbsp;bugs&nbsp;it&nbsp;had&nbsp;10&nbsp;years&nbsp;previously.&nbsp;If&nbsp;you&nbsp;do&nbsp;the&nbsp;same&nbsp;with&nbsp;a&nbsp;java&nbsp;program,&nbsp;you&nbsp;will&nbsp;often&nbsp;find&nbsp;it&nbsp;runs&nbsp;faster&nbsp;-&nbsp;on&nbsp;the&nbsp;same&nbsp;hardware&nbsp;-&nbsp;ten&nbsp;years&nbsp;later,&nbsp;and&nbsp;with&nbsp;fewer&nbsp;bugs.&nbsp;</p><p>Up&nbsp;until&nbsp;1996,&nbsp;Java&nbsp;was&nbsp;very&nbsp;slow.&nbsp;Until&nbsp;1998,&nbsp;it&nbsp;was&nbsp;slow.&nbsp;Until&nbsp;2000,&nbsp;it&nbsp;was&nbsp;fast&nbsp;enough&nbsp;for&nbsp;most&nbsp;apps,&nbsp;but&nbsp;still&nbsp;on&nbsp;average&nbsp;only&nbsp;50%-75%&nbsp;of&nbsp;the&nbsp;speed&nbsp;of&nbsp;C++.&nbsp;</p><p>Since&nbsp;around&nbsp;2002,&nbsp;Java&nbsp;on&nbsp;average&nbsp;is&nbsp;less&nbsp;than&nbsp;5%&nbsp;slower&nbsp;than&nbsp;the&nbsp;best&nbsp;C++&nbsp;code.&nbsp;For&nbsp;most&nbsp;applications&nbsp;(including&nbsp;games)&nbsp;java&nbsp;is&nbsp;within&nbsp;1%&nbsp;of&nbsp;the&nbsp;speed&nbsp;of&nbsp;C++&nbsp;code;&nbsp;many&nbsp;of&nbsp;the&nbsp;improvements&nbsp;of&nbsp;the&nbsp;last&nbsp;few&nbsp;years&nbsp;have&nbsp;concentrated&nbsp;on&nbsp;making&nbsp;up&nbsp;the&nbsp;performance&nbsp;gap,&nbsp;so&nbsp;that&nbsp;now&nbsp;-&nbsp;finally!&nbsp;-&nbsp;Java&nbsp;is&nbsp;a&nbsp;realistic&nbsp;practical&nbsp;alternative&nbsp;even&nbsp;in&nbsp;games&nbsp;development&nbsp;-&nbsp;where&nbsp;RAW&nbsp;SPEED&nbsp;is&nbsp;usually&nbsp;the&nbsp;most&nbsp;important&nbsp;factor.&nbsp;</p><p>Note:&nbsp;Java&nbsp;also&nbsp;finally&nbsp;has&nbsp;full&nbsp;access&nbsp;to&nbsp;hardware-accelerated&nbsp;OpenGL;&nbsp;see&nbsp;the&nbsp;JGF&nbsp;tech&nbsp;page&nbsp;3D&nbsp;graphics&nbsp;section&nbsp;<br/></p>

前腐后继 发表于 2006-12-13 11:28:00

尝试着翻译了一下: <p></p><p>JAVA对于游戏:太慢了?</p><p>在很多商业的和沉溺于某中癖好的游戏开发者中有一种错误的信仰,就是JAVA不适合于游戏开发。这种错误的信仰是以5到10年前的旧数据为基础的,并且是对JAVA的误会。</p><p>如果你用C++编一个程序,之后编译它,然后等上十年,那么这个程序仍然会像十年前一样,运行的一样慢,带有先前一样多的BUG。如果你用JAVA编写同一个程序,你常常会发现,十年以后,在相同硬件的基础上,它运行的更快了,并且含有更少的BUG。</p><p>直到1996年,JAVA仍是很慢的。到了1998年,它速度慢。到2000年,对于大多数应用程序来说它已经足够快了,但平均速度仍只有C++的50%-75%。</p><p>从2002年左右开始,JAVA的平均速度只比设计的最好的C++代码慢5%。对于大多数应用程序(包括游戏),JAVA的速度比C++代码慢1%;最近几年所取得的多数改进都集中在缩短性能差距,因此现在——不可否认地——JAVA是现实实用的二中择一的选择,甚至在游戏开发领域——一个通常把RAW&nbsp;SPEED作为重要参考因素的地方。</p><p>注意:JAVA还有对OpenGL硬件加速的完全访问;参考JGF&nbsp;tech&nbsp;page&nbsp;3D图形部分。</p>
页: [1]
查看完整版本: Java for Games: too slow?