John Carmack On RAGE For iOS/Android 105
Andrew Smith writes "John Carmack has an article up on the Bethesda blog discussing the iPhone/iPad version of RAGE, which is said to run at an impressive 60fps. 'Managing over a gig of media made dealing with flash memory IO and process memory management very important, and I did a lot of performance investigations to figure things out. Critically, almost all of the data is static, and can be freely discarded. iOS does not have a swapfile, so if you use too much dynamic memory, the OS gives you a warning or two, then kills your process. The bane of iOS developers is that "too much" is not defined, and in fact varies based on what other apps (Safari, Mail, iPod, etc) that are in memory have done. If you read all your game data into memory, the OS can’t do anything with it, and you are in danger. However, if all of your data is in a read-only memory mapped file, the OS can throw it out at will.' And a tweet by Carmack yesterday suggests that an Android version of RAGE is on the way too."
Rage? (Score:5, Funny)
Is he angry about Android?
Re: (Score:2, Funny)
Re: (Score:2, Funny)
DROID ANGRY, DROID SMASH
Re: (Score:2, Informative)
RAGE is the 3D game engine Carmack/id Software wrote. Now they want to port it to smartphones and pads to enable others to build 3D games there.
Re:Rage? (Score:5, Informative)
No, the RAGE engine (which stands for Rockstar Advanced Game Engine) is the one used by Rockstar in their various recent games (GTA4, Red Dead Redemption and others). id Software's engines are called idTech and the one used for Rage the game is called idTech 5.
Re: (Score:1)
Re: (Score:3, Insightful)
I don't blame him, I would be hesitant of committing to shipping such a demanding, immersive application with the same performance on Android as can be delivered on iOS.
I got modded down the last time I tried mentioning this [slashdot.org], but as someone currently making an income from Android development:
Android audio is a MESS.
Even if it improves anytime soon, not all devices will be getting OS upgrades.
Other unresolved issues I've mentioned [slashdot.org] are why fragmentation is becoming a more and more valid criticism of the platf
Re: (Score:2)
Someone metamoderate the moderator '-5 no sense of humour'.
Re: (Score:2)
RAGE is a 3D game engine that ID has been developing, as well as a title of similar name. If it is everything they say it is, it may replace Unreal Tournament as the default go-to 3D engine for upcoming game development.
Re: (Score:1)
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
Each iteration of id Tech always tended to be designed for the game being made and not as a flexible engine, so basically anything that used it was more of an extension of the game id put out (which is to say, a shooter). I've only seen the open source code, but generally id's engines are much cleaner and easier to use than, say, Gamebryo, but Gamebryo has a lot more flexibility (and is a frightening mass of buggy code from when I used it, but that was before it was called Gamebryo, so I'm not sure where it
Re: (Score:2)
idTech 5 isn't going to compete with UE3. They aren't going to license it to other developers (except those publishing through Bethesda) mainly because it's too much hassle to support and they'd rather be in the business of making games than supporting engines.
Re: (Score:2)
LoB
Date of birth to read article? (Score:1)
Re: (Score:1, Offtopic)
Welcome to the world of video games, where everything is wrapped in thick layers of bubble wrap and plastered with warning signs because, "O-M-G, think of the CHILDREN!!!!!1`1"
Input your age to view this, input your age to read that, input your age to input your age so we can ask about your age and make sure you are of age! It's fucking ridiculous. But video games have been labeled as a bogey-man, so god help us we'll pressure and legislate the piss out of them until they are completely safe for your childr
Re: (Score:2)
Most big gaming companies have been putting all their content behind such an age-wall. I assume they think a 14-year-old won't be able to figure out how to get past it.
Re: (Score:1)
Re: (Score:2)
Y2K APOCOLYPSO MUCHO?!!! (Score:2)
honestly, I didn't die hunting down and exterminating mutants like you in the Ed Yourdon milita just to have to tolerate slurs like that!
so... (Score:1)
Re:so... (Score:4, Insightful)
Android applications are written in a Java style runtime. It's not native Linux code.
Android applications can call some native code, but it's a bit like JNI in Java.
One can expect the frame rate of the Android version will be lower than the iOS version for that reason, it's not 100% native code.
Re: (Score:1, Informative)
I think the only important Dalvik dependency for a native game is on audio and I/O -- stuff like app setup simply isn't relevant from a performance perspective. OpenSL ES should take care of the audio part, if/when that arrives (2.3? 3.0? who knows?).
Re: (Score:3, Informative)
That's not true. You call into native and you can stay there entirely for the rendering portion so there is no JNI back and forth overhead only native.
You need the Java code just to setup the windowing system and provide integration with the platform.
Currently Android has slightly lower FPS than iPhone because it uses an outdated FP library.
Re: (Score:2)
Re: (Score:2)
LoB
Re: (Score:2)
I wouldn't expect that at all. You can write as much or as little as you want natively. Why are you making stuff up?
Ported? (Score:1)
Re: (Score:3, Insightful)
Not out yet. iD and Epic are just having a bit of a pissing match with "Our latest nexest-gen video game engine with gobs of megatextures and pixel-threaded-hyper-polygons will run on *gasp* an iPHONE! So when you're looking to make your next craptastic overpriced piece of shit farmworld-on-an-iWhatever, developers, pick me! Pick ME!" Of course, this is ignoring from the fact that they look like ass and are utilizing the worst control scheme known to man.
I'm half expecting someone to announce next week that
Re: (Score:2)
It's not his newest game, but I wouldn't be surprised to learn, that John Carmack has ported Commander Keen [wikipedia.org] to the TI-82 ...
60fps on a phone? Why? (Score:3, Interesting)
To break down the question: Why do we need this much fps in a game on a ~4 inch screen?
To understand the importance of the question, we need to understand how human eye works, and how it processes images.
Essentially, we have two kinds of cells in our eye capable of sensing light. One is capable of sensing shades of gray, and other senses a certain color (there are three different cells in this category, sensing different light wavelengths). Notably, cells sensing shades of gray can track many more image changes/second then those sensing colors due to their original purpose - tracking movement (for hunter-prey scenarios). Another thing to note is that while focus of our vision, the area that covers a very small center zone of our field of view houses vast majority of the cells that can sense colors, most of the gray-sensing cells are housed outside focus, in area of peripheral vision.
As a result, when you play a game on a large screen at home, a large portion of the screen's image is sensed by the area out of focus, and when your frame per second counter is below 60ish, the out-of-focus area begins to see separate images, while your focus still sees the flowing animation. This is what causes the uncomfortable discrepancy during high motion scenes when viewer still sees the fluid animation in his focus, but his peripheral vision doesn't, making the image look "choppy".
Now, enter mobile phones. The screen is actually small enough to mostly, if not entirely fit into our focus. This drastically cuts the need for high fps.
So why is Carmack talking about 60 fps on a graphics engine designed for phones? Is he actually clueless about the issue, is it marketing speak, or does he simply want to advertise to developers who may not be as familiar with the issue as he himself is?
Re: (Score:1)
I personally get the impression that John Carmack is filled with geeky pride that he got Rage running at 60fps on an iPhone. I know I would. I don't think this is really any kind of marketing strategy.
I find a 60hz refresh rate on an iPhone device impressive, mostly as a feat of engineering. Carmack tends to be a developer who tries to get every ounce of computing power out of whatever platform he's working on.
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
Re:60fps on a phone? Why? (Score:5, Informative)
So why is Carmack talking about 60 fps on a graphics engine designed for phones?
Generating graphics is not the only task given to the CPU*. There are many other parts to a game that all require CPU time. So if a game can get high frame rates it implies that there will be some CPU available for the other important parts of a game.
*And I realize that the GPU does most of the work with graphics but the CPU is also an important part of the equation.
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
Re: (Score:3, Informative)
Or perhaps, just perhaps, he is happy about 60 fps on a phone, simply because it gives a 100% headroom for situations and games that require more than the RAGE demo?
I don't know about you, but personally I'd rather have 100% headroom than 0%.
Re: (Score:1)
But IMHO he's just bragging, he showed only some very low poly scenes there.
Re: (Score:2)
This is actually a physical impossiblity. The nerve signal conduction velocity is between 3 and 120 m/s for myelinated nerve cells, usually averaging around 20-30 for motor control cells (iirc, quick wikipedia search suggests same numbers).
This means that at around 1 meter length from brain to fingers, you get about 1/30 sec lag on finger response after signal being sent by the brain.
As a result, anything lower then this would likely be impossible to really affect due to biological limitations. You're most
Re: (Score:2, Interesting)
Re: (Score:2)
Well, numerically many if not most of these phones are nokia n8. These have a proper GPU, proper swapping and proper multitasking, and therefore aren't subjects to limitations discussed in the article.
Same goes for high end android in many cases as well.
Re: (Score:2)
Re: (Score:3, Interesting)
They're not in that market anymore. They do not want to license (and support) their new engines.
Re: (Score:2)
I can definitely see why you'd want it on a tablet, even if you don't on a phone.
Re: (Score:2)
"Is he actually clueless about the issue"
I'm sure the number of relevant issues that Carmack is ignorant about could be counted on no hands.
Re: (Score:2)
The majority of gamers would disagree with you.
Re:60fps on a phone? Why? (Score:5, Informative)
Sorry for sounding like a jerk, but your exposition on rods and cones is all nice and good, but it is _completely_ missing the point, and tells you have never actually shipped a game.
1. You provide "head room" or "breathing room" so when the level designers and artists go crazy, you don't blow you frame rate budget,
2. If you can't hit 60 Hz when you ship, you can still EASILY hit 30 Hz. It is MUCH harder when you are already barely pushing 30 Hz at alpha/beta and you need to guarantee every playable area needs to hit 30 Hz without having to drastically redo levels / models, and/or optimize code
3. 60 Hz is smoother then 30 Hz, (yes there are people that can tell)
> So why is Carmack talking about 60 fps on a graphics engine designed for phones? Is he actually clueless about the issue,
As he practically _invented_ 3d first person shooters on PC, I _seriously_ doubt that.
Re: (Score:2)
Re: (Score:2)
Sorry but that's absolutely wrong. The reason why movies and tv work at 24fps and games don't is simple: motion blurring. A camera captures all motion within a certain timeframe (equal to the shutter-time of the camera). A computer renders a single snapshot of this motion, which appears very sharp. For the first, your brain creates sharper images than there actually are, even at 24fps, and sees them as motion.
For the computer generated ultra-sharp snapshots however, you need a lot more images per second to
Re: (Score:2)
Correct.
Also, computer rendered images typically lack temporal aliasing, and depth-of-field.
Using the term "motion blurring" is a nice way to summarize the differences/problem.
Cheers
Re: (Score:2)
> The whole thing about certain frame rates being un-seeable is total crap.
Yup, completely agree.
Back in the CRT days I would prefer a 100 Hz monitor refresh rate for a steady image, with a frame rate of 72 Hz. Decreasing returns after that.
Re: (Score:2)
3. 60 Hz is smoother then 30 Hz, (yes there are people that can tell)
Indeed, the vast majority of people can tell the difference between 30fps and 60fps, even on a small device. Even the differences between 30fps and 40fps or 50fps and 60fps are quite apparent to many people.
Re: (Score:2)
Re: (Score:3, Insightful)
He's talking about 60 fps because he's proud to have achieved this level of performance on what is widely perceived to be a piece of shit platform for 3D graphics.
It's the same pride that keeps the demoscene alive to this day, spurring coders to cram dazzling animations and music in 4096 bytes of mind-twisting code. That drive to bring out a computer's fullest potential through tireless tweaking, profiling and creative thought.
It is far too easy to be lazy with today's fast PCs and GPUs. There is so much
Re: (Score:2)
Real big new games need real power ie gpu over large displays, cpu, physics, sounds, AI, networking.
This is why I don't buy console games. Something has to give to get it working on a few $10's worth of chips and its the stuff that makes a 'new' game worth playing imho.
Do you really want to be playing a PPC "Apple Mac" port in 2011?
Re: (Score:3, Insightful)
The quad-core PC, fancy GPU and gigs of RAM allow you to run your PC game at a much higher resolution and graphic quality than any current-gen console. If all you want is 1280x720 with no antialiasing, you can probably get away with a dinky $50 graphics card.
Personally, I like playing flashy games on 3 WQHD monitors with all the sliders maxed out. That's 12 times more dots than a standard HDTV, and a bit more rendering detail due to AA/AF postprocessing, so it's understandable that such ridiculous graphic
not really (Score:2)
I'd prefer that id spend a little more time on GAME, less on getting said product to run on the phone in your pocket.
I mean, have you actually PLAYED the last 3 crap titles from id? Bleargh.
I will always respect id for what they invented for computer gaming. The number of hours I wasted trying to control Canalzone alone....
But really, they haven't produced a game worth PLAYING since Quake2.
That reminds me Palm OS 3.x (Score:1)
iOS does not have a swapfile, so if you use too much dynamic memory, the OS gives you a warning or two, then kills your process. The bane of iOS developers is that "too much" is not defined, and in fact varies based on what other apps (Safari, Mail, iPod, etc) that are in memory have done
That clearly reminds me PalmOS (the 3.0 to 3.5 Palm time), where you didn't even have enough RAM allocated dynamically to be able to do such a simple thing as decompressing a Gif file (the lookup table didn't fit in it). Like with the iOS now, the doc was pretty much not clear about how much RAM you could allocate when running an application, but we finally found that we could only count on 32MB !!! So, at the end, after 10 years, phone operating systems didn't evolve much in terms of stupidity... :)
Re: (Score:2)
You do
Re: (Score:1)
As