Carmack's QuakeCon Keynote Detailed 309
TheRaindog writes "In addition to announcing the Quake III source code's impending release, John Carmack's QuakeCon 2005 keynote also covered the programmer's thoughts on Microsoft and Sony's next-gen consoles, physics acceleration in games, and what he'd like to see from new graphics hardware."
Kenote? (Score:2, Funny)
Re:Kenote? (Score:2)
A usefull link (Score:5, Informative)
The actual keynote speech
Re:A usefull link (Score:2)
Although I can listen to the audio. not the same.
i'm bringing it to work today to watch there.
Re:A usefull link (Score:2)
See, this is why open-source isn't just the answer to crappy operating systems and spyware-laden p2p apps. There's an entire world of media out there in closed, patented formats just waiting for a little liberation. Thank you Ogg, but can people please start using it?
Procedural textures (Score:5, Interesting)
Of course procedural textures can never replace hand-painted detail, but layering on some infinite-resolution noise-detail onto a finite sized bitmap texture really brings materials to life.
Re:Procedural textures (Score:5, Interesting)
Maybe during the next-gen consoles' lifespan we'll start seeing more procedural stuff. It'll become more important as we start pushing more polys and going down the High Definition route, I think.
(I'm more interested in offline procedural content generation, personally - automatically generated cities, it's the way of the future!
Re:Procedural textures (Score:3, Interesting)
If you think that, play Daggerfall. Play it anyway actually, it's a great game - but it still shows that generated cities are a really bad idea.
Re:Procedural textures (Score:5, Interesting)
I should probably explain further. My approach would be to generate the basic street layouts, buildings, and maybe even internal floor & room layouts procedurally, say in a Maya/Max plugin. This would act as the basis for artists/designers to then tweak and adjust to produce something good, hopefully in a fraction of the time.
Using control maps (for population density, affluence, terrain, etc) it should be possible to have fairly fine control over how the city is generated. Add to that a decent set of rules to govern the generation, and a big stock library textures/shaders to give a nice looking generic output, that should give a decent start point.
I know some of the guys who worked on GTA3/VC/SA, and one of their big problems was generating the sheer amount of content to make these large play areas. Starting with a pre-populated one and using it as a base might let them concentrate on making it good...
Re:Procedural textures (Score:2)
Re:Procedural textures (Score:2)
Not really - it shows that one particular implementation didn't work well. There are certainly bad ways and good ways to do something like this - saying that because it failed once it isn't a good idea doesn't make any sense to me.
Your comment is about the same as saying "Look at the Apple Lisa - it shows that GUIs are a really bad idea."
Re:Procedural textures (Score:5, Informative)
Re:Procedural textures (Score:3, Informative)
Re:Procedural textures (Score:3, Interesting)
Re:Procedural textures (Score:2)
Player-editable content needs to be small for others to use it. Mods need to
Re:Procedural textures (Score:2)
even with big a** textures, the server admin should know enough about what he is doing to make the downloads http, which is a hell of a lot faster than the in-game bandwidth cap of say 10kb/s
Re:Procedural textures (Score:2)
You seem so opinionated, I'd hope you'd have examples of procedural shaders that are realistic.
Re:Procedural textures (Score:5, Interesting)
Renderman water shader [edit.ne.jp]
There's plenty. Try watching any film with decent CG effects, it'll be full of procedural shaders which are fairly realistic.
See, the thing about shaders is they can be as realistic as you're willing to let them get. The problem is how long it takes to calculate them - realtime games use more shortcuts, hacks and estimates to get something that looks "good enough". Not just in shaders, either. That's why we don't do realtime raytraced games, instead we use lightmaps or whatever to approximate them.
Re:Procedural textures (Score:3, Insightful)
Things like wood, metal, plastic, stone, grass, water, etc. can all be done once very well and then reused. This would help a lot to offset the huge c
Re: (Score:2, Interesting)
I attended this, and can offer some insight. (Score:5, Funny)
Now stop for a moment and think, What would have happened if Albert Einstein had worked creating amazing pinball games instead of creating the theory of relativity? Humanity would suffer! Jon carmack is unfortunately doing JUST THIS, using his gifts at computer coding to create games instead of furthering the knowledge of humanity. Carmack could have been working for NASA or the US military, but instead he simply sits around coding violent computer games.
Is this a waste of a special and rare talent? Sadly, the answer is yes.
Unfortunately, it doesn't stop there. Not only is Jon carmack not contributing to society, he is causing it's downfall. What was the main reason for the mass murder of dozens of people in columbine? Doom. It's always the same story: Troubled youth plays doom or quake, he arms himself to the teeth, he kills his classmates. This has happened hundreds of times in the US alone. Carmack is not only wasting his talents and intelligence; he is single-handedly causing the deaths of many young men and women. How does he sleep at night?
Carmack is a classic example of a very talented and intelligent human being that is bent on total world destruction. Incredibly, he has made millions of dollars getting people hooked on psychotic games where they compete on the internet to see who can dismember the most people. I believe there is something morally wrong when millions of people have computerized murder fantasies, and we have Jon Carmack to thank. Carmack has used his superior intellect to create mayhem in society. Many people play games such as quake so much that their minds are permanently warped. A cousin of mine has been in therapy for 6 months after he lost a 'death match' and became catatonic.
It is unfortunate that most people do not realize how much this man has damaged all the things we have worked hard for in America. Jon has wasted his intelligence, caused the deaths of innocent children, and warped this country forever. To top it off, he got rich in the process and is revered by millions of computer users worldwide. Perhaps one day the US government will see the light and confine Jon Carmack somewhere with no computers so he can no longer use his intelligence to wreak havoc on society.
Re:I attended this, and can offer some insight. (Score:2)
However you're missing out on a few things, what is the point in having a perfect world if you can't have fun and The advances in real time 3d graphics rendering continue to help in fields beyond the gaming world , medi
Re:I attended this, and can offer some insight. (Score:2)
Re:I attended this, and can offer some insight. (Score:5, Insightful)
Pr0n had a lot to do with pushing the massive webserver throughput / broadband increases we've seen in the past several years.
Gaming is directly responsible for the graphics technology that can later be used in training simulations for going to Mars.
Of course, if NASA uses the Quake engine for training for trips to Mars, they may also need to equip the astronauts with railguns...
Re:I attended this, and can offer some insight. (Score:2)
True, and piracy as well. I know a number of people who wouldn't be on their current lines if it wasn't for P2P.
NASA and DoD not short an talent (Score:2, Redundant)
No, there are many as talented and more talented people working for NASA and the DoD. Most of these people don't opt for video games and in other fields of programming you don't get "rockstar" press. You are merely looking at one of the bigger fish in a small pond.
Re:I attended this, and can offer some insight. (Score:5, Informative)
Don't worry so much. Carmack's talents are not wasted. He is already in the space business with his hobby: he's leading Armadillo Aerospace [armadilloaerospace.com] to work "on computer-controlled hydrogen peroxide rocket vehicles, with an eye towards manned suborbital vehicle development in the coming years".
Good! (Score:2)
- Scott Kim
AC has one fact wrong.... (Score:3, Informative)
Ken Silverman created the Build engine for Duke Nukem 3D, not Carmack. In fact, Carmack has never worked for 3D Realms.
Just a minor detail, everything else I can't speak about.
Re:I attended this, and can offer some insight. (Score:2)
Re:I attended this, and can offer some insight. (Score:3, Insightful)
Although I agree with your main point (military's purpose is to find better ways to kill) pretty much most of current evolutions in modern applications/devices have come from military innovations...
SO while many, many people have died because of militaries.. many, many, others have also had better lives because of it..
physics is here to stay (Score:4, Interesting)
Re:physics is here to stay (Score:2)
Re:physics is here to stay (Score:3, Funny)
Re:physics is here to stay (Score:2, Interesting)
Re:physics is here to stay (Score:5, Interesting)
what he meant (Score:5, Insightful)
I think you're misunderstanding his point. When he talks about level-of-detail, this has more to do with game design than with algorithms. What he's claiming is that detailed physics has much more of an effect on actual gameplay than detailed rending does, and that it's harder to write a game which graceful downgrades the player's physical interaction with the world. But a graceful downgrading is necessary for people who don't have a fancy physics-accelerating card.
For example, you can take an older game and change its appearance by giving it higher resolution textures, more detailed meshes for the AI models etc., without having to redesign the actual gameplay. (e.g., the SHTUP [att.net] and Rebirth [wanadoo.fr] mods for System Shock 2).
These steps are independent of each other and independent of the rest of the game. They can simply be dropped in, or not. The point is that if it's that straightforward to take a game forward in technology, it's even easier to go in reverse. So the player can choose low texture detail, etc., and the game may look worse, but it will still play the same.
The game physics on the other hand has historically been more closely connected to the way the player interacts with the world.. so it has a big effect on level design. If Half-Life 2 had a 'simple physics' option that would somehow revert the game physics to something equivalent to the physics in the original Half-Life (ignoring aside the difficulty in implementing such an option) then some areas would have to be substantially redesigned so that they would remain playable for people using the simple physics.
This is of course what he means by peripheral elements "such as flowing water" being accelerated. But I have two criticisms of this.
1) Yes, physics acceleration may affect mainly peripheral elements of the game. But in some ways, the same could be said about improved textures, filtering, etc. If it's done well, it can significantly improve the overall experience. If it's done poorly, the player will hardly notice.
2) As long as it's an upgrade of the basic design, it will probably be okay to let it affect critical elements as well. E.g.: due to the engine upgrade in the port of Half-Life to the Source engine, movable crates and such have a more realistic response than in the original implementation. It's not a big improvement, since the levels were really designed with that in mind. But it doesn't hurt.
For me, the real question is whether improved physics would really make a game more enjoyable. I think this depends more on graphics than on anything else. As objects are made to look more realistic, it becomes more satisfying for them to have real-seeming interactions.
If graphics get much better, accelerated physics will be important. But if for some reason graphics tend to stabilize (due to the end of Moore's Law, long load times caused by slow disk access, or whatever), then the usefulness of improving game physics is more questionable.
Dual-core CPU not that easy to take advantage off? (Score:3, Insightful)
Re:Dual-core CPU not that easy to take advantage o (Score:5, Informative)
This is considerably more difficult than one would think. Games typically have to perform tasks in a particular order, for example (extremely simplified): get inputs, move player, move AI players, move other objects, check for collisions, update parameters, display the next frame, loop.
Quite where we add this 2nd thread is difficult. Everything must happen in the same order in order for things like collision detection to function correctly. If we start a second thread to, say, calculate AI decisions and move the AI characters according to those decisions, we have to wait for that thread to complete before we can display the next frame. So it ends up that there are no advantages to utilising that second thread.
Now, I'm sure there are game developers on here who know how to utilise threads in games in a successful way. It'd be cool if one of them could inform the rest of us what the heck we're supposed to be doing with them
Re:Dual-core CPU not that easy to take advantage o (Score:5, Insightful)
Re:Dual-core CPU not that easy to take advantage o (Score:2, Interesting)
1. Read viewable universe state
I think that would introduce all of the issues multiplayer games have with network lag right into the game engine. If the AI characters aren't all working from the same data set (because it's changing while they're "thinking,") you're bound to have some pretty weird and difficult-to-debug timing issues. Even simple single-threaded code has a lot of wacky and unpredictable timing behavior on a PC, compared to actual real-time syst
Re:Dual-core CPU not that easy to take advantage o (Score:2)
The most obvious problem with my solution is to think of it like a Games Workshop game. There has to be some sort of turn basis, otherwise the winner is the one who can role the dice fastest.
But taking that metaphire further, there are no idle cycles in a games workshop style game. Even though only one player can update the universe at a time, everybody else is crunching numbers, trying t
Re:Dual-core CPU not that easy to take advantage o (Score:3, Insightful)
What's needed f
Re:Dual-core CPU not that easy to take advantage o (Score:2)
Could this be the age of LISP or Haskel? Everytime I sit down and think about a language that could easily be handled by multicores I start designing LISP. (T
Re:Dual-core CPU not that easy to take advantage o (Score:5, Interesting)
Quite where we add this 2nd thread is difficult. Everything must happen in the same order in order for things like collision detection to function correctly.
Not neccesarily. One big problem with games is that the typical order (beginscene/render/endscene/present) is implemented with a busy-wait loop in the present part. This is the part where all data has been sent to the graphics card and the driver waits in a loop until it gets a 'scene completed' message from the card. This is why games always run at 100% CPU.
Games that don't use threading well (only threading for network/input/sound) put stuff in the loop you describe. Draw a scene, the driver waits for an 'OK', then you update the player, update the AI characters, do collision, calculate all new positions and start drawing. Because the drawing takes eg. 10 ms per frame for 100 FPS developers limit the AI/collision part to run in something like 1 ms or else the frame rate starts dropping. So the real AT would be limited to say 10% of the CPU time.
For example the 'move AI' part could be a bunch of threads, calculating new positions based on direction, collision etc.
Right now games like DOOM3 typically only display a few NPC's at the same time because of the timing problem. If the move AI thread can just keep running on the second CPU while the first CPU waits within the driver a game could support a few 100 enemies on-screen.
Strategy games with complicated pathfinding with hundreds of units on-screen like Warcraft 3 or Age of Mythology would profit enormously, if programmed for multithreading.
Re:Dual-core CPU not that easy to take advantage o (Score:2)
Um, i don't believe that is why Doom3 has so few enemies at a time... The AI isn't that spectacular and companies like Croteam have games with 100s of enemies on screen with just as good AI implemented...
"Strategy games with complicated pathfinding with hundreds of units on-screen like Warcraft 3 or Age of Mythology would profit enormously, if programmed for multithreading."
This I could believe...
Re:Dual-core CPU not that easy to take advantage o (Score:2)
Re:Dual-core CPU not that easy to take advantage o (Score:2)
Re:Dual-core CPU not that easy to take advantage o (Score:2)
Re:Dual-core CPU not that easy to take advantage o (Score:2)
In some multi-threaded systems, each thread can act independently of all other threads. It doesn't matter whether thread-1 gets ahead of thread-2. In
Re:Dual-core CPU not that easy to take advantage o (Score:3, Informative)
Yes, things related to the drawing and basic movement of the character need to be done in sync in the main thread. However, the higher level reasoning of the AI can be done completely in a seperate thread.
Think of how multiplayer is done today. Low level stuff, including how the acutal character movements are done, are handled by
Re:Dual-core CPU not that easy to take advantage o (Score:2)
Re:Dual-core CPU not that easy to take advantage o (Score:2)
Check out Gabe Newell's comments [bit-tech.net] (One of the key developers of Half-Life 2). He also thinks multi-core/cpu machines aren't going to be bringing a lot extra to the table for game machines for some time.
When Newell and Carmack, the lead developers of the two hottest game engines out there, agree on this point, you realize we might not be taking that leap forward in gaming that we all thought we were going to.
Re:physics middleware takes advantage (Score:2, Informative)
Carmack does graphics, no physics (Score:4, Informative)
let me make myself clearer, once and for all. (Score:2, Interesting)
Half Life 2 (Score:2, Interesting)
Re:let me make myself clearer, once and for all. (Score:3, Insightful)
Thoughts (Score:2, Funny)
"Ladies and Gentlemen,
Interesting (Score:2, Interesting)
John Carmack's past pleas for graphics hardware changes have led to a number of developments, including the incorporation of floating-point color formats into DirectX 9-class graphics chips. We'll have to watch and see how the graphics companies addres
Re:Interesting (Score:3, Funny)
However unfortunately all the games would be about buying
Re:Interesting (Score:2)
All of these threads, however, may need to interact with each other. When objects collide, you get a callback and that callback may trigger rendering, AI, sound, et
Re:Interesting (Score:2)
Communication between agents isn't exactly a new problem. Queues (bounded or unbounded) could be used to implement asynchronous message passing. IIRC, bounded queues dont even need atomic operations.
Re:Interesting (Score:2)
Re:Interesting (Score:2)
What about the memory issues of the new consoles? (Score:2, Interesting)
I doubt that the next generation games will look like movies; except for some graphic demos like the Unreal Engine 3.
Here's an old quote from Tim Sweeney:
"Off-the-shelf 32-bit Windows can only tractably access 2GB of user RAM per process. UT2003, which shipped in 2002, installed more than 2GB of data for the game, though at that time it was never all loaded into memory at once. It does
Re:What about the memory issues of the new console (Score:2)
I've heard from plenty of people that you do need at least 2GB of RAM free for BF2 to be playable at the highest settings.
Kenote? (Score:2, Funny)
Every time Carmack speaks.... (Score:2)
irst and foremost on that list was full virtualization of texture mapping in graphics hardware. Carmack decried the "fallacy" that "procedural synthesis will be worth a damn," arguing that programmers spending hours creating procedural shaders isn't the best way forward. Instead, he said, tools should unleash artists. He called the current tiled texture analogy a crude form of compression, and argued that true unique texturing in graphics would be a massive leap in visual fidelity over current pract
Re:Every time Carmack speaks.... (Score:2)
YAY, Quake 3 source code (Score:2)
Will it include the source code to Q3 Arena and Q3 Team Arena?
Will it include the ports to other platforms? (i.e. linux, mac)
Will this release mean that other Quake 3 engine games can go Open Source too? (e.g. Return To Castle Wolfienstien, Enemy Territory etc)
Re:Spent! (Score:5, Insightful)
Re:Spent! (Score:5, Insightful)
JC isn't really responsible for the shortcomings of the games *as games*, except in as much as the ability of the engines he makes for them limits & influences gameplay decisions by those designers...
Re:Spent! (Score:2, Funny)
Re:Spent! (Score:3, Interesting)
XBOX 360 PowerPC != PowerPC G4, G5 (Score:5, Informative)
Finally, proof that Apple is over priced, under powered hardware.
Why does Carmack hate Apple so much?
Read up on the flavor of PPC that is in the XBOX 360...
http://arstechnica.com/articles/paedia/cpu/xbox36
It's far different from the G4 and G5 that Apple currently uses.
BTW, if Apple loved PPC so much, why did they announce the switch to Pentium M ?
Re:XBOX 360 PowerPC != PowerPC G4, G5 (Score:3, Insightful)
They didn't, they announced the switch to Intel.
And, BTW, people don't buy Macs for their hardware, wich I believe is much more slightly overpriced than you seem to think (spec it out like we have a billion times here at
Re:Carmack slates Apple (Score:4, Informative)
Carmack came out against the current crop of PowerPC CPU's to be used in the X360 and PS3 that are very different from the CPU's that Apple have been using in their PowerPC based computers. The PPC's in the consoles do not support out of order execution and a raft of other features. IBM have designed simpler cores that are being packaged on multi-core chips that can be run quicker and in parallel.
Carmack has plenty to bash Apple for in regard to their OpenGL implementation I'm sure - just browse the Apple developers OpenGL mailing list sometime.
Re:Here we go again.... (Score:3, Informative)
Re:Here we go again.... (Score:4, Funny)
Re:Here we go again.... (Score:2, Informative)
"In Ultra quality, we load each texture; diffuse, specular, normal map at full resolution with no compression. In a typical DOOM 3 level, this can hover around a whopping 500MB of texture data. This will run on current hardware but obviously we cannot fit 500MB of texture data onto a 256MB card and the amount of texture data referenced in a give scene per frame ( 60 times a second ) can easily be 50MB+. This can cause some choppiness as a lot of memory bandwidth is being consumed. It does howe
Re:Here we go again.... (Score:2)
Re:Here we go again.... (Score:3, Interesting)
You spent over a thousand pounds for a system that would only run the game at 800x600? What did you do, crank AA and AF to max and set the detail level to "Ultra"? I played on Ult
Re:Here we go again.... (Score:2)
Remember, performance is always relative when it comes to new graphics engines. They always require more power to get the same framerate or resolution than the previous generation did.
You can't compare Doom 3 to the Unreal 2 engine or to the Quake 3 engine in terms of performance. It's apples and oranges.
Re:Here we go again.... (Score:5, Funny)
If only there was some way for you to be able to decide not to buy Carmack's games.
But I guess that's just impossible.
Re:Here we go again.... (Score:2)
I'm being redundant, but still. Mad props.
Re:Link crashes FireFox 1.0.6 (Score:2)
Re:Link crashes FireFox 1.0.6 (Score:2)
b4n
Re:What GFX cards need to have in future (Score:2)
Also, I've seen alot of racing games lately using motion blur once you hit a very high speed (eg. GTA:San Andreas)
Re:What GFX cards need to have in future (Score:2)
Re:What GFX cards need to have in future (Score:2, Informative)
Project offset [projectoffset.com] have really nice motion blur in. There is a techdemo video of it in action too.
No! (Score:2)
Yeah, another "trick" that shitty programmers can overuse. Similar to image bloom, particle effects, and too much brown (see: Quake I, Deus Ex: IW). Keep your motion blur, thanks.
Re:What GFX cards need to have in future (Score:2)
Re:What GFX cards need to have in future (Score:2)
Thats propably because all games I have seen having a "motion blur" effect use a totally wrong kind of way to do it. The wrong way is to draw the current rendered frame as semi transparent over the last one. This is quite lightweight effect but looks really crappy (imo), nothing like proper motion blur. "Player on drugs" effect might be a better name for it.
The right way to do it in real time would require that you can
Re:Motion blur is bad (Score:2)
Re:Quake III source code's already available (Score:2, Informative)
Uh, where?
You do realise that "Game Source" means the game rules / mod source and not the Quake III engine source? Is there a Quake III download marked "Quake III Source (GPL)" yet like the other two?
Re:Quake III source code's already available (Score:2)
This is the combined source code for Quake III Arena and Quake III: Team Arena. It can be used to build the 1.27g point release or the Team Arena release. It contains buildable project files and all related game source code as well as prebuilt tool executables.
2.2MB Win32
Doesn't say GPL, but it looks like the source to the game
Re:Quake III source code's already available (Score:2)
Re:WTF? No mention of Nintendo? (Score:2, Insightful)
Re:XBox 360 or Playstation 3? (Score:2)
Thats like asking if you'd like the flying car or the personal rocket.