Follow Slashdot stories on Twitter

 



Forgot your password?
typodupeerror
×
First Person Shooters (Games)

Code Review of Doom For the iPhone 161

Developer Fabien Sanglard has written a code review for id Software's iPhone port of Doom. It's an interesting look into how the original 1993 game (which he also reviewed to understand its rendering process) was adapted to a modern platform. "Just like Wolfenstein 3D, Doom was rendering a screenframe pixel per pixel. The only way to do this on iPhone with an acceptable framerate would be to use CoreSurface/CoreSurface.h framework. But it is unfortunately restricted and using it would prevent distribution on the AppStore. The only solution is to use OpenGL, but this comes with a few challenges: Doom was faking 3D with a 2D map. OpenGL needs real 3D vertices. More than 3D vertices, OpenGL needs data to be sent as triangles (among other things because they are easy to rasterize). But Doom sectors were made of arbitrary forms. Doom 1993's perspective was also faked, it was actually closer to an orthogonal projection than a perspective projection. Doom was using VGA palette indexing to perform special effect (red for damage, silver for invulnerable...)."

Comment Re:Maybe off topic but... (Score 1) 156

Absolutely. Most links I open I come back to later (sometimes much later - months even), unless I really do need to look at them now. I tend to have a window per "subject area", with many tabs per window. So my news window has tabs from all the news sites I visit, tech window has all tech related tabs etc. Admittedly many of the tabs get closed quickly when I do eventually go back to them, as they can often be duplicates (easy to forget whether I have opened a tab before or not) or not very useful. The thing that generates the most tabs for me is visiting a forum. If I haven't been there for a while then it can get very busy........ FF makes it easy to recover due to tab and window restore. I find NoScipt is a must to stop FF from hogging the CPU if one of the sites has Flash or unnecessary JavaScript.

Slashdot Top Deals

It's a naive, domestic operating system without any breeding, but I think you'll be amused by its presumption.

Working...