Doom Comic
Register | User Profile | Member List | F.A.Q | Privacy Policy | New Blog | Search Forums | Forums Home
Doomworld Forums : Powered by vBulletin version 2.2.5 Doomworld Forums > Misc. > Doomworld News > Doom Classic Code Review 2 : The gift and the curse
 
Author
All times are GMT. The time now is 14:59. Post New Thread    Post A Reply
AlexMax
Forum Regular


Posts: 986
Registered: 01-03


Fabian Sanglard, the author of an article describing the rendering process of classic Doom a few weeks ago, is back. This time, he plumbs the depths of the recently released iPhone Doom source code. Unlike the last article where he simply dissected the renderer, he now goes into quite a bit of depth on many of the different aspects of the source, including the new main game loop, the new OpenGL renderer, and more. Like the last article, there are nice little Quicktime videos that show a single frame being rendered.

Old Post 02-03-10 17:26 #
AlexMax is offline Profile || Blog || PM || Email || Search || Add Buddy IP || Edit/Delete || Quote
Ledmeister
Junior Member


Posts: 235
Registered: 10-03


Good readin'. :)

BTW, slightly off-topic, but... iPhone Doom is... huge.
77MB download from the App store.

Old Post 02-04-10 05:50 #
Ledmeister is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
TheDarkArchon
Forum Staple


Posts: 2281
Registered: 08-04


That's what happens when you take a 12Mb WAD and replace the music the MP3s

Old Post 02-04-10 06:12 #
TheDarkArchon is online now Profile || Blog || PM || Email || Search || Add Buddy IP || Edit/Delete || Quote
udderdude
Senior Member


Posts: 1342
Registered: 04-02


Excellent technical read.

Old Post 02-04-10 14:00 #
udderdude is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
_bruce_
Forum Regular


Posts: 732
Registered: 11-07


Excellent - a joy to read...

Old Post 02-05-10 12:11 #
_bruce_ is online now Profile || Blog || PM || Email || Search || Add Buddy IP || Edit/Delete || Quote
Mr. T
Senior Member


Posts: 1136
Registered: 12-03


Awesome... cheers

Old Post 02-05-10 12:19 #
Mr. T is online now Profile || Blog || PM || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
Quasar
Moderator


Posts: 4484
Registered: 08-00


Not quite informative as the first article IMO. From the information in it, you got a good grasp of how DOOM's renderer worked from top to bottom. This one kinda skimps on the overall architecture and only talks about a few things that are specific to the modifications needed to render on iPhone, and not addressing much about the OpenGL engine overall. For example you'd get the impression from the article that each wall can only generate one polygon, and that's not true, since there are upper and lower textures to account for as well ;)

Old Post 02-05-10 20:20 #
Quasar is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
Gez
Why don't I have a custom title by now?!


Posts: 6454
Registered: 07-07


code:
// JDC: E3M8 has a map error that has a couple lines that should // be part of sector 1 instead orphaned off in sector 2. I could // let the non-closed sector carving routine handle this, but it // would result in some pixel cracks. Instead, I merge the lines // to where they should have been. // This is probably not the right solution, because there are // probably a bunch of other cases in the >100 Id maps. extern int gameepisode, gamemap; if ( gameepisode == 3 && gamemap == 8 ) { void IR_MergeSectors( int fromSector, int intoSector ); IR_MergeSectors( 2, 1 ); }


This should be very scary for anyone thinking about using PWADs on their iDoom...

(By the way, how do various ports handle issues like these?)

Old Post 02-05-10 21:12 #
Gez is offline Profile || Blog || PM || Search || Add Buddy IP || Edit/Delete || Quote
Graf Zahl
Why don't I have a custom title by now?!


Posts: 6960
Registered: 01-03



Gez said:

(By the way, how do various ports handle issues like these?)




They don't. PrBoom is the only port using the GLU tesselator. With GL nodes this becomes a non-issue because despite the map error the nodes are usable without rendering glitches.

There's indeed more mapping errors in Doom. E1M3, for example also contains an unclosed sector that might cause problems.

Regarding PWAD compatibility this hack clearly is not a bright idea - but it's somewhat fitting to add yet another dirty hack to the already long list of dirty hacks in Doom's official history.

Old Post 02-05-10 21:52 #
Graf Zahl is online now Profile || Blog || PM || Email || Search || Add Buddy IP || Edit/Delete || Quote
Gez
Why don't I have a custom title by now?!


Posts: 6454
Registered: 07-07


Could have taken a leaf from ZDoom and used the level's MD5 sum to identify it as needing the hack.

Or, given that they're Id Software and distributing the IWAD, they could have fixed the map bug with an editor... I wonder if it even occurred to them that they could.

Old Post 02-05-10 22:29 #
Gez is offline Profile || Blog || PM || Search || Add Buddy IP || Edit/Delete || Quote
myk
webbed digits


Posts: 14316
Registered: 04-02



Gez said:
Or, given that they're Id Software and distributing the IWAD, they could have fixed the map bug with an editor... I wonder if it even occurred to them that they could.
That would make people not using the new or patched IWAD have problems. After all, their priority was getting the game itself to run fine, and PWADs, which are unsupported, are well below that priority.

Due to Carmack's generosity, anyone with enough talent can provide a general fix from the source if they really want to see PWADs running on the iPhone without issue. Practically all add-on work for the DOOM games has been done by the community independently, short of id disclosing some helpful information.

Old Post 02-05-10 22:37 #
myk is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
Quasar
Moderator


Posts: 4484
Registered: 08-00



myk said:
That would make people not using the new or patched IWAD have problems. After all, their priority was getting the game itself to run fine, and PWADs, which are unsupported, are well below that priority.

Due to Carmack's generosity, anyone with enough talent can provide a general fix from the source if they really want to see PWADs running on the iPhone without issue. Practically all add-on work for the DOOM games has been done by the community independently, short of id disclosing some helpful information.


But thanks to iPhone's TiVoization, distributing such a modified version is relatively useless. Code signed for development testing purposes only won't execute on the commercial units, AFAIK.

Old Post 02-07-10 00:19 #
Quasar is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
All times are GMT. The time now is 14:59. Post New Thread    Post A Reply
 
Doomworld Forums : Powered by vBulletin version 2.2.5 Doomworld Forums > Misc. > Doomworld News > Doom Classic Code Review 2 : The gift and the curse

Show Printable Version | Email this Page | Subscribe to this Thread

 

Forum Rules:
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is OFF
vB code is ON
Smilies are OFF
[IMG] code is OFF
 

< Contact Us - Doomworld >

Powered by: vBulletin Version 2.2.5
Copyright ©2000, 2001, Jelsoft Enterprises Limited.

Forums Directory