Beta
×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

Carmack's QuakeCon Keynote Detailed

ScuttleMonkey posted more than 9 years ago | from the more-than-just-games dept.

Quake 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."

cancel ×

309 comments

Sorry! There are no comments related to the filter you selected.

Kenote? (1, Funny)

rasjani (97395) | more than 9 years ago | (#13328803)

mmmmmm.. Kenote! Delicious! [salive drool] mmmmmm.

Re:Kenote? (0)

rasjani (97395) | more than 9 years ago | (#13328811)

Oh for god's sake! TYPO!!!!! =)

Re:Kenote? (1)

empaler (130732) | more than 9 years ago | (#13328998)

in the bloody headline

I am currently looking for somewhere better to go, any suggestions?

(Yes yes, har har, hell, wow, that was funny)

Seriously, though.

Re:Kenote? (1)

rasjani (97395) | more than 9 years ago | (#13329077)

no, typo in my Reply - salive -> saliva Oh the embarrashment My defence: english is not my native tongue.

Re:Kenote? (-1)

Anonymous Coward | more than 9 years ago | (#13328818)

We've hit a new low. :) At least they can still spell their names?

Re:Kenote? (0)

Spacejock (727523) | more than 9 years ago | (#13328866)

The one where he discusses open-sourcing qake III?

Re:Kenote? (1)

Paleomacus (666999) | more than 9 years ago | (#13329100)

Open-source cake!?! Betty Crocker better watch out!

Keynote (-1)

Anonymous Coward | more than 9 years ago | (#13328805)

Better spellcheck the "Kenote"...

spelling nazi (-1)

Anonymous Coward | more than 9 years ago | (#13328806)

keynote in title

F7 for Spellcheck! (-1, Flamebait)

Anonymous Coward | more than 9 years ago | (#13328816)

Ok, so maybe reading their own site is too much work to prevent dupes, but can they really not spell check the title?

Re:F7 for Spellcheck! (0, Offtopic)

Weh (219305) | more than 9 years ago | (#13329119)

Agreed, it's a bit disrespectful to the ones that make this site (the readers/posters). Without readers/posters this site would be nothing.

Spent! (-1, Troll)

Anonymous Coward | more than 9 years ago | (#13328817)

Carmack is all hype and no substance. Ids last few games were poor imitations of each other - huge disappointments to the gullible sheep who buy into the propoaganda machine. What his Carmack or id done lately? What has he really contributed to the technology of gaming or done to further the scope of games? Here's a guy who gave up on DirectX because he couldn't understand it, only to sheepishly add it back in later when his colleagues embarrassed him buy pumping out tons of quality Direct 3D titles that put id's mindless shoot-fest to shame.

Re:Spent! (4, Insightful)

AuMatar (183847) | more than 9 years ago | (#13328864)

Carmack doesn't deisgn games, he makes engines. Doom and Quake are tech demos for whatever his latest engine is. If you buy an id game expecting it to be anything else, you're doomed to disappointment. Even Id doesn't claim its anything else.

Re:Spent! (0)

Anonymous Coward | more than 9 years ago | (#13328886)

Yeah right! Is that what id was claiming BEFORE they released Doom 3? Hardly...

Re:Spent! (4, Insightful)

MaestroSartori (146297) | more than 9 years ago | (#13328939)

It's worth pointing out that he doesn't design games because he's a renderer/technology programmer. Id (id? iD?) Software will have designers responsible for designing the gameplay and so on.

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...

A usefull link (5, Informative)

FidelCatsro (861135) | more than 9 years ago | (#13328822)

Re:A usefull link (-1, Offtopic)

Anonymous Coward | more than 9 years ago | (#13329149)

well aren't you just the pinnacle of +5 informative

Re:A usefull link (1)

zhenga (770390) | more than 9 years ago | (#13329183)

The file is a .nsv file, how can I play this under OS X?
My mplayer and VLC doesnt like it..

Audio is mp3, but the video is VP6..

Procedural textures (5, Interesting)

mnemonic_ (164550) | more than 9 years ago | (#13328824)

I was a bit taken aback by Carmack's opposition to procedural textures. No, they can't do everything but they can be real timesavers when you need to add some overall realistic looking details. Things like dirt, "roughness" and stains can be done effectively using Brownian noise and the like, and you've got the infinite resolution, low-memory features of procedurally generated data. It's efficient and looks good, especially when I used it to create realistic terrain [umich.edu] .

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 (0)

Anonymous Coward | more than 9 years ago | (#13328831)

I understood it that he does not like the fact that shaders have to be created by programers and are too complex for artists.

Re:Procedural textures (-1, Flamebait)

Anonymous Coward | more than 9 years ago | (#13328841)

The sample rendering you give there looks pretty amateur to me... I don't think you have a clue about creating realistic renderings!

Re:Procedural textures (1)

putko (753330) | more than 9 years ago | (#13328852)

Do you have something that looks better?

You seem so opinionated, I'd hope you'd have examples of procedural shaders that are realistic.

Re:Procedural textures (0)

Anonymous Coward | more than 9 years ago | (#13328881)

Maybe I am opinionated but you are truely clueless, even the grand parent poster stated that procedural textures are used in conjunction with other textures and not by themselves!

Even seen a recent hollywood movie with special FX? There are some examples of realistic rendering.

Re:Procedural textures (5, Interesting)

MaestroSartori (146297) | more than 9 years ago | (#13328926)

Nice shader example that I quite like:

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.

Looks pretty realistic to me (-1, Troll)

Anonymous Coward | more than 9 years ago | (#13328888)

Asshole

[Just some sample text to satisfy the lameness filter]

Re:Looks pretty realistic to me (-1, Offtopic)

Anonymous Coward | more than 9 years ago | (#13328933)

Thanks, in fact I am an Asshole. However I am not wrong about what I said!

Re:Looks pretty realistic to me (1)

raventh1 (581261) | more than 9 years ago | (#13329076)

Who is this Anonymous Coward guy, and why does he insist on fighting with himself? Procedural Textures != Shaders. Shaders make use of both procedural textures and artist made textures. Shaders usually deform or change a target. Be it texture or verts.

Re:Procedural textures (5, Interesting)

MaestroSartori (146297) | more than 9 years ago | (#13328863)

The argument generally is, as far as I know, that it's overkill for the current generation of hardware. Rather than procedural noise generated realtime, a few pregenerated detail noise textures can do the job with a fraction of the gpu time. It's pretty hard to tell the difference with a decent artist doing the noise maps, really.

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! :D)

Re:Procedural textures (2, Interesting)

m50d (797211) | more than 9 years ago | (#13328964)

automatically generated cities, it's the way of the future!

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 (4, Interesting)

MaestroSartori (146297) | more than 9 years ago | (#13328979)

Oh, that game :D

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 (4, Informative)

Andy_R (114137) | more than 9 years ago | (#13328925)

Procedural textures can go a lot further than you think. Take a look at how far you can go with Artmatic Pro [uisoftware.com] , a 'procedural graphics synthesiser' for the Mac, written by the original author of the Bryce landscape generator, and it's landscape-generating cousin Artmatic Voyager [uisoftware.com] . This can generate entire procedural planets, with no detail loss if you zoom into look at a single inch-wide rock [uisoftware.com] . This entire planet is decribed in a few k!

Re:Procedural textures (2, Informative)

Anubis333 (103791) | more than 9 years ago | (#13329097)

I think you guys misunderstood. He is talking about procedural bitmap texture generation vs. tiled. Not procedural displacement. Which is a whole different monster. Procedural bitmap generation has issues in realtime, procedural displacement is great.

Carmack slates Apple (-1, Troll)

Anonymous Coward | more than 9 years ago | (#13328840)

Carmack was less pleased with the PowerPC processors for the new consoles, questioning the choice of an in-order CPU architecture. He estimated the console CPUs' performance at about 50% that of a modern x86 processor

Finally, proof that Apple is over priced, under powered hardware.

Why does Carmack hate Apple so much?

XBOX 360 PowerPC != PowerPC G4, G5 (4, Informative)

green pizza (159161) | more than 9 years ago | (#13328911)

Carmack was less pleased with the PowerPC processors for the new consoles, questioning the choice of an in-order CPU architecture. He estimated the console CPUs' performance at about 50% that of a modern x86 processor

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/xbox360 -2.ars [arstechnica.com]
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 (1, Interesting)

should_be_linear (779431) | more than 9 years ago | (#13328929)

Finally, proof that Apple is over priced, under powered hardware. Why does Carmack hate Apple so much? ... BTW, if Apple loved PPC so much, why did they announce the switch to Pentium M ? :)
He said that Apple *is* over priced, under powered hardware, which is true. He didn't say it will stay that way forever.

Re:Carmack slates Apple (3, Informative)

xirtam_work (560625) | more than 9 years ago | (#13328923)

Ok, I'll feed you little troll....

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:Carmack slates Apple (0)

Anonymous Coward | more than 9 years ago | (#13328952)

PowerPC CPU's to be used in the X360 and PS3

The PS3's processor is not a PPC. I believe the processor used is called a POS.

Kenote? (-1, Offtopic)

Atario (673917) | more than 9 years ago | (#13328843)

Maybe they can also detail his ketone [wikipedia.org] ?

Re:Kenote? (1, Funny)

supertsaar (540181) | more than 9 years ago | (#13329009)

Obi Wan Kenote ?

I attended this, and can offer some insight. (5, Funny)

Anonymous Coward | more than 9 years ago | (#13328854)

Lets talk about Jon Carmack. Jon is the legendary programmer of such classic PC games as Wolfenstein, Doom, Duke nukem 3d, Quake 1, 2, and 3, unreal, and the upcoming doom3. Jon has single handedly created the genre known as the first-person-shooter. He has also popularized the OpenGL 3d format over Microsoft's competing Direct3d format, as well as caused public interest in 3d cards when he first released accelerated quake for the s3 virge chipset. Jon carmack has redefined gaming on PC's.

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. (1)

FidelCatsro (861135) | more than 9 years ago | (#13328891)

Interesting troll there would mod you funny if i had points ,
                                                                  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 , medical imaging for example , simulations etc. .

Better to have people keep the psychotic in fantasy realms and out of reality though.

Re:I attended this, and can offer some insight. (1, Insightful)

Aphax (727653) | more than 9 years ago | (#13328892)

Working for the U.S. Military furthers the knowledge of humanity? (Yes.. I know.. taken out of context, *ducks and grabs fireblanket*)

Re:I attended this, and can offer some insight. (1, Funny)

Patrik_AKA_RedX (624423) | more than 9 years ago | (#13329034)

Are you implying the US military hasn't advanced the knowledge of humanity? Thanks to the military (not just the US ofcourse) we've got a few million ways to kill all sorts of intresting people. Without it we would still be beating each other over the head with a bone and now you got to admit that a modern dressed man beating someone to death with a bone looks just ridiculouse, right?
So what is the purpose of military research? Simple: to keep our killing tools up with our latest fashion in clothing.

Re:I attended this, and can offer some insight. (1)

Aphax (727653) | more than 9 years ago | (#13329079)

Haha, ok... point taken =]

Re:I attended this, and can offer some insight. (1)

daniil (775990) | more than 9 years ago | (#13328913)

Not to mention that he is quite openly proclaiming what his intentions are -- what other is the 'Id' in Id Games than a reference to the Freudian Id [wikipedia.org] ?

MOD parent UP! (-1)

Anonymous Coward | more than 9 years ago | (#13328914)

The truth about JC (yes, same initials as our saviour but that's an old trick) must be told.

Re:I attended this, and can offer some insight. (5, Insightful)

CrazedWalrus (901897) | more than 9 years ago | (#13328966)

All kidding aside, it's amazing how "recreational activities" end up pushing the limits and levels of technology to a point that it can eventually be used for more "serious" purposes. Examples?

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: err lead programmer? (0)

Anonymous Coward | more than 9 years ago | (#13329030)

"Jon is the legendary programmer of such classic PC games as Wolfenstein, Doom, Duke nukem 3d, Quake 1, 2, and 3, unreal, and the upcoming doom3."

Umm no. Maybe you're thinking of ADRIAN Carmack (not related) who left id and joined Epic to create unreal.

Oh and BTW Doom 3 has been released! Rejoice!

- sigh

Re:I attended this, and can offer some insight. (0)

Anonymous Coward | more than 9 years ago | (#13329144)

"his intelligence to wreak havoc on society"

You misspelled Havok [wikipedia.org] .

Re:I attended this, and can offer some insight. (-1)

TrappedByMyself (861094) | more than 9 years ago | (#13329168)

Evil Scientist man. Why else do you think he's building rocket ships? To destroy the moon of course.

physics is here to stay (4, Interesting)

canozmen (898239) | more than 9 years ago | (#13328860)

Although Mr.Carmack says physics in game engines isn't easily scalable for level of detail, there is ongoing research about this producing good results. I remember a video from last years SIGGRAPH that had hundreds of plastic chairs falling from the sky, and bouncing realistically. The important part was it employed a level-of-detail hierarchy for interacting parts (i.e. an object doesn't have much physical detail if you don't touch it), but it will be some time before we can see such techniques in real time games.

Re:physics is here to stay (1)

bani (467531) | more than 9 years ago | (#13328894)

that kind of trick is actually pretty old. almost all existing physics engines use similar tricks to speed up calculations.

Re:physics is here to stay (2, Funny)

$RANDOMLUSER (804576) | more than 9 years ago | (#13328907)

Funniest. Subject line. Ever.

Re:physics is here to stay (2, Interesting)

vigilology (664683) | more than 9 years ago | (#13329081)

I think 'they' should concentrate most of their resources on just making natural animal movements realistic. We have walls that look like walls. We have shadows that look like shadows. We have toppling barrels that look like toppling barrels. We don't have animals that move like natural animals.

Re:physics is here to stay (4, Interesting)

aarku (151823) | more than 9 years ago | (#13329102)

As a game developer, I'll say it'll come sooner than you think. Engines such as Unity [otee.dk] will support Aegia's PPU when it comes out as it already uses the Novodex engine. From there it would take about 15 minutes to set up, tops. Expect some awesome things to come from little Indie developers.

Dual-core CPU not that easy to take advantage off? (3, Insightful)

Aphax (727653) | more than 9 years ago | (#13328872)

I found his views on dual core processers fascinating. Until now I had always believed they could give major boosts in performance in games as soon as the developers made their games multi-threaded. Maybe I should put off buying that dual-core cpu for a bit longer.

physics middleware takes advantage (1)

erwincoumans (865613) | more than 9 years ago | (#13328903)

Taking advantage of Dual-core CPU is as easy as licensing middleware. In a budget of 5 million dollar, a 50.000 dollar licensing fee (or less) is peanuts. See www.havok.com or www.ageia.com, www.meqon.com

Re:physics middleware takes advantage (2, Informative)

erwincoumans (865613) | more than 9 years ago | (#13328999)

And obviously the open source physics engines: ODE (ode.org) Bullet and free (but not open source) Newton (http://www.physicsengine.com/ [physicsengine.com] ) Tokamak http://www.tokamak.com/ [tokamak.com] and others.

Re:Dual-core CPU not that easy to take advantage o (5, Informative)

fistynuts (457323) | more than 9 years ago | (#13328916)

> ...as soon as the developers made their games multi-threaded

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 (0)

Anonymous Coward | more than 9 years ago | (#13328954)

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.

Why? If the AI isn't done in time, then the next frame is rendered with the character in the same position or moving at the same velocity. Seems quite realistic to me for the AI to have a real reaction time to things.

Re:Dual-core CPU not that easy to take advantage o (0)

domipheus (751857) | more than 9 years ago | (#13328961)

The problem being, that in that case the non-realistic image of a monster stuttering on screen then moving 2x its speed the next frame really does make it harder to sync up.

Re:Dual-core CPU not that easy to take advantage o (3, Informative)

Anonymous Coward | more than 9 years ago | (#13328993)

The problem being, that in that case the non-realistic image of a monster stuttering on screen then moving 2x its speed the next frame really does make it harder to sync up.

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 the main rendering thread. But all the high-level decisions (where the player goes, does he shoot or duck, etc.) are done by seperate threads (the player's brains). It's not really any different with AI NPCs.

Re:Dual-core CPU not that easy to take advantage o (5, Insightful)

el_womble (779715) | more than 9 years ago | (#13329002)

Or you could stop thinking of it like that and start thinking of it as: Thread 1: Wait for input
  1. Add to unprocessed que
  2. Grep for coded expressions
  3. add symbol to character action queue
Thread 2: Charactor Thread
  1. read action queue
  2. publish action
  3. recieve reaction
  4. update state
Thread 3-100: AI Threads
  1. Read viewable universe state
  2. Process against goals
  3. publish action
  4. recieve reaction
  5. update state
Please don't read this too literally, it only a slashdot post, but this is meta-outline of how I'd start thinking about the game universe in a multi cpu system. Of course it would run like shit on a single CPU (all those context switches (ugh)), but it would really utilize a multicore system.

Re:Dual-core CPU not that easy to take advantage o (5, Interesting)

robnauta (716284) | more than 9 years ago | (#13329021)

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.

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.

Multi-Core game programming (1, Interesting)

Anonymous Coward | more than 9 years ago | (#13329067)

If you look at it from a different angle, a lot of games already have very good multi-threaded support.

Start with online multi-user games. Instead of a remote server hosting a game which 5 different users around the world connected to it, all 5 instances of the client software run on the same machine as the server. Now take the final step and convert 4 of those clients from user-controlled to computer-controlled AI.

The beauty of this idea is that you're programming the single-user and multi-user game at the same time.

Re:Dual-core CPU not that easy to take advantage o (0)

Anonymous Coward | more than 9 years ago | (#13329108)

"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" - by fistynuts (457323) on Tuesday August 16, @06:27AM

IF this is the way things occur in games?

(waiting for the results of one variable to happen in order for the next variable result to occur?)

Then, you are dead-on & I agree 110%.

E.G. (simple example) ->

A=B+C
B=A+C

B cannot get anything done, until A gets its result...

Thus, putting A & B onto diff. threads is useless - the operations of both are not "parallelizeable" & blocking.

Perhaps this is indicating (assuming you're correct on how things are in games, & the AI for monsters for example) there's a "problem" in the AI as its technology implementation stands right now?

(E.G.-> Monsters AI being PURELY 'reactive' etc./et all is the "problem" & perhaps them being more "proactive" & less dependent on the user's input (& thus, their character's movements/actions) is the needed "correction" here).

OR

Perhaps, this indicates that the usage of threads has to be utilized possibly elsewhere in the game's engines.

APK

Re:Dual-core CPU not that easy to take advantage o (1)

TheRaven64 (641858) | more than 9 years ago | (#13328989)

I think he has just spent too much time on single-CPU systems. A lot of things in a game can be done in parallel, for example:
  • Each monster / NPC can run their AI in parallel and interact with the game system via the same API as the player.
  • Collision detection can be performed in boxes smaller than the entire scene, all in parallel.
These two are just off the top of my head, but I'm sure there are more things that can be added.

Carmack does graphics, no physics (4, Informative)

erwincoumans (865613) | more than 9 years ago | (#13328874)

His love for graphics is nice, but pity he lack s physics programming skills :) That's why Jan Paul van Waveren takes care of it, in Doom 3 etc. Physics Middleware will be of big importance for next-gen consoles, and it will rock the world :) http://www.continuousphysics.com/Bullet/phpBB2/ind ex.php [continuousphysics.com]

Re:Carmack does graphics, no physics (0, Offtopic)

domipheus (751857) | more than 9 years ago | (#13328901)

I'd quite like to know what you are trying to say with this post other than get a few hits to that site.

Re:Carmack does graphics, no physics (1)

erwincoumans (865613) | more than 9 years ago | (#13328921)

As I posted before, Carmack is a graphics programmer, not a physics programmer. On that link you can find all opinions by professional game physics programmers, and their opinions. If Carmack thinks next-gen is too difficult to code for, he can license middleware.

stop babbling (1)

domipheus (751857) | more than 9 years ago | (#13328936)

?

when has carmack said anything in that speech about next gen being too difficult.

He explains his view on why he thinks dedicated 'physics cards' would proove a non starter with him - and made some pretty good points, and any game programmer would understand him. I seriously just think your trying to advertise every physics engine out there.

open source physics engine (1)

erwincoumans (865613) | more than 9 years ago | (#13328976)

I'm advertising that the next-gen consoles can use their parallel power to run physics much faster.
Secondly, the link is advertising a forum and open source physics. And half of the serious professional game programmers are on the forum.

Here is the doom 3 programmer: http://www.continuousphysics.com/Bullet/phpBB2/vie wtopic.php?t=62&sid=9dc86d5b23a3d1099165eddc7aa982 48 [continuousphysics.com]
Or what about Halo 2 ? http://www.continuousphysics.com/Bullet/phpBB2/vie wtopic.php?t=54 [continuousphysics.com] Just scroll down to the bottom of that link.

let me make myself clearer, once and for all. (2, Interesting)

domipheus (751857) | more than 9 years ago | (#13329006)

Carmack was commenting on hardware vendors believing that more cores, more cpus, more hardware is good. But for the DEVELOPMENT OF A GAME in a GOOD AND REASONABLE TIME using a SIMPLE, ELEGANT, AND FAST METHODOLOGY, adding more cores and more cpus and more accelerators intruduces more places where bugs and glitches can occur, and thats only after you figure out a nice design, which will take longer to do and therefore cost more to make. It complicates things which shouldn't need to be. Not all companies want to introduce 3rd party code into their games for various reasons and you should not assume that everyone wants to.

Half Life 2 (2, Interesting)

erwincoumans (865613) | more than 9 years ago | (#13329025)

I perfectly understand what you say. And I discussed with Carmack over email a few month ago, exactly about this topic. It doesn't mean I agree. First of all, graphics is already heavily parallel, but in this case it is handled purely inside the hardware. For physics, this can be too, but he argues about the fallback path. Not only consoles are choosing multi-core. Even Intel and Apple are going the multi-core direction, for a good reason I think. I think it just frighens more game developers to jump on the next-gen multi-code machines. Instead of moaning, its better to just prove him wrong. Half Life 2 had some good physics, I think that is the way to go.

Re:Carmack does graphics, no physics (-1, Offtopic)

Anonymous Coward | more than 9 years ago | (#13328943)

Wow. Nice salesman routine, you almost came off as being a legitimate poster for a minute there.

Fucking prick.

Open source, ever heard of that ? (1)

erwincoumans (865613) | more than 9 years ago | (#13328962)

salesman ? I'm a coder, and the link is to a free forum and open source project. Open source, ever heard of that ? probably not, seeing your bad manners.

Re:Open source, ever heard of that ? (1)

domipheus (751857) | more than 9 years ago | (#13328969)

Which is great since you advertise 3 commercial engines in another post...

Re:Open source, ever heard of that ? (1)

erwincoumans (865613) | more than 9 years ago | (#13329005)

True. So I added an extra link with open source / free physics engines, satisfied ? But my point was, there is a physics engine for everyone, for any budget. And for a lot of the physics, you get a linear speed up in the number of processors, especially when you have local memory (not shared cache).

Re:Carmack does graphics, no physics (0, Flamebait)

TrappedByMyself (861094) | more than 9 years ago | (#13329179)

On that link you can find all opinions by professional game physics programmers, and their opinions.

Yeah, whatever. What I'm really interested in is their opinions.

Here we go again.... (-1, Troll)

Conor Turton (639827) | more than 9 years ago | (#13328889)

Carmack YET AGAIN giving us a list of things he wants to put in his next "tech demo" which will be foisted upon us under the guise of another Doom or Quake version whilst being nothing more than a "Look at me, aren't I clever?"

Carmack arselickers will say "Wow, look at the ultra realistic environment! Wow, those Strogg look dead real!" while the rest of us yet again go "What a stinking pile of unplayable shit that I'm expected to go and spend yet another £1000 on hardware just to get 30FPS in 800x600."

Personally I think Carmack is so far up his own arse that he can't see daylight anymore AND WE'RE PAYING FOR HIS INDULGENCE. He's living on a reputation built on the last decent games he wrote which are now OVER 5 years old. Doom3, whilst technically brilliant, was a crap game. I expect his next offering will be.

Re:Here we go again.... (2, Informative)

arose (644256) | more than 9 years ago | (#13328920)

Good news, Carmack is a programer not a game designer.

Re:Here we go again.... (0)

Foggerty (680794) | more than 9 years ago | (#13329075)

I'd love to mod you up, because yes, he is a programmer and graphics nut, who as far as I can tell, these days, leaves the game design largely up to other people. Somehow I think that he's come a long way from Commander Keen - engine development and game design can be now be totally removed from each other.

Re:Here we go again.... (4, Funny)

domipheus (751857) | more than 9 years ago | (#13328987)

Personally I think you are a moron, because if you paid £1000 to get 30fps in 800x600, you obviously went to PC world.

Re:Here we go again.... (1)

Conor Turton (639827) | more than 9 years ago | (#13329114)

Bought that 512MB graphics card to get all of the features you've paid for in Doom3? Have you even found one that you can buy?

Re:Here we go again.... (1)

ooze (307871) | more than 9 years ago | (#13329047)

I have to say, I enjoyed Doom 3 more than Halflife 2. Both good games. Halflife with so much more features and bells and wistles. But in the end Doom3 was just more fun. And a less pain in the ass to get going ;)

Thoughts (2, Funny)

williamhooligan (892067) | more than 9 years ago | (#13328991)

John Carmack's QuakeCon 2005 keynote also covered the programmer's thoughts

"Ladies and Gentlemen,

...I want more funky graphics things...

...I wonder if I left the gas on...

...My leg itches...

...That guy looks tired..."

Link crashes FireFox 1.0.6 (-1, Offtopic)

DeadPrez (129998) | more than 9 years ago | (#13328995)

Anyone check that?

Re:Link crashes FireFox 1.0.6 (2)

Zatic (790028) | more than 9 years ago | (#13329056)

same here - Firefox 1.0.6 runnning on 2.6.12-gentoo-r4 crashes as soon as I click the link.

Re:Link crashes FireFox 1.0.6 (1)

HighBit (689339) | more than 9 years ago | (#13329164)

it might be a badly written flash app that's killing your fox

What GFX cards need to have in future (1)

Synli (781075) | more than 9 years ago | (#13329008)

What GFX cards need to have in future is MOTION BLUR, above all. That is the single reason why the game intro videos look like real movies, while the game gfx still look like... well like game gfx. The lack of image processing circuits in todays gfx cards is the problem that needs to be fixed in future.

Re:What GFX cards need to have in future (1)

EvilMonkeySlayer (826044) | more than 9 years ago | (#13329073)

I don't know, motiom blur seems a bit of a fad.

All the games i've played which use it, I do not find to my liking. (the motion blur)

And if you want motion blur get a TFT with a 25ms response rate. :)

Re:What GFX cards need to have in future (1)

88NoSoup4U88 (721233) | more than 9 years ago | (#13329080)

Hmm, I think motion blurring, or at least an effect that is very similar to it, is apparent in today's games : For example, getting hit in Battlefield 2 will cause a temporary blurry vision.

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 (2, Informative)

domipheus (751857) | more than 9 years ago | (#13329125)

Motion blur can be added quite easily now with todays graphics cards, before they were seen as too costly in terms for what they gave, which was just a bit of eye candy.

Project offset [projectoffset.com] have really nice motion blur in. There is a techdemo video of it in action too.

Re:What GFX cards need to have in future (0)

Anonymous Coward | more than 9 years ago | (#13329127)

uh....

1. accumulation buffers have been around forever.
2. image processing is straightforward using fragment shaders + fbo's.

Re:What GFX cards need to have in future (1)

A Brand of Fire (640320) | more than 9 years ago | (#13329133)

If I recall correctly, 3dfx -- pre-nVidia buy-out -- had developed the hardware for anti-aliasing, over-brights, and other image processing effects in their briefly released Voodoo 5 series of graphics cards. In a http://www.hothardware.com/viewarticle.cfm?page=2& articleid=487&cid=2 [hothardware.com] series of screenshots released prior to the buy-out, they showcased working depth-of-field blur and motion-blur filters in Quake 3 Arena. To my knowledge, these effects should be present in modern nVidia graphics cards proceeding the purchase. I could be mistaken, but I'm fairly certain the image processing technology 3dfx was working on was included in said purchase. With that said, I'm certain many improvements upon these technologies could easily be made given the processing power of newer video cards.

Interesting (2, Interesting)

ribblem (886342) | more than 9 years ago | (#13329060)

Carmack's other wish-list item was that some attention be paid to the problems with handling small batches of data on today's GPUs. He said the graphics companies' typical answers to these problems, large batches and instancing, don't make for great games.

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 address these two problems over the next couple of years.


These are topics that the whole graphics industry acknowledges. While he is wise to focus on these as core issues, I'm not sure if I would say that the industry responded to his plea when these things get addressed.

One other thing that I'm a little confused by is why game developers always seem to think multithreading games is going to be nearly impossible to take advantage of in the near term. I admit it won't be a piece of cake and there will be evil bugs, but I don't see it as this big mystery. It will be more work, but it seems with some thought it can be handled fairly nicely on first generation games of next gen consoles. If I were to tackle the problem I would not break up the rendering into separate threads since this is just going to be trouble, but I would reduce rendering to truely only do the rendering which some developers seem to get confused. I would make one or more physics threads, one or more AI threads, a sound thread, a rendering thread, a resource managment thread, and perhaps a culling thread which assisted the VPU with geometry occlusion if the CPU is ahead of the VPU. I'd also put in a semaphore queue mechanism so some of these could get a frame or two ahead without syncing.

That said I'm not a game developer so perhaps I'm just missing something. If that's the case please enlighten me.

Re:Interesting (3, Funny)

CaptainFork (865941) | more than 9 years ago | (#13329198)

Jon Carmack is a typical male programmer. Like all males, he can only think of one thing at a time like a cold hearless single-threaded computer brain. That's why he can only write programs that way. There should be more female games programmers. Females have a compassionate multi-threaded mind which can be both more intuitive and more practical. Female programmers would naturally relate to multi-threading and reap the benefits in processing power.

However unfortunately all the games would be about buying shoes and your only weapon would be a handbag, which would suck.

Well the gameplay (1)

Mr. Fazer (906464) | more than 9 years ago | (#13329129)

To quote Carmack "it's not about the magic source code that's there...It's about the execution". guess grafix companies should come should focus on physics acceleration in games rather than programmers spending hours creating procedural shaders. Personally, i'm more onto gameplay... will Q4 've better than Q3 & yea ofcourse the pandora's box (source code).. Maaa Preciouuuuuuus !! :-)

opengl (1)

mdproctor (74927) | more than 9 years ago | (#13329184)

Shame he didn't mention whether he's still committed to opengl - with his move to the xbox it left me wondering. JC and ID are single handedly responsible for the still mass market appeal of opengl, lets hope it stays that way.
Load More Comments
Slashdot Login

Need an Account?

Forgot your password?

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>