What do you experts think of this guys statement?

Interesting… In the interview the guy also stated that the high poly models are actually used to calculate light- and shadowsmaps in game.

I wonder how often those are calculated since one 500k poly modell weights in a couple of megabytes and hence trashes the caches for good let alone bringing the memory subsystem to its knees.

Sure they most likly use octrees or something similar when they do that but I am just thinking what will happen when there are mulitple players/bots/modells “onscreen”.

Hmmm good food for thoughts I think

LG

Have a look at what Crytek will be releasing soon:
http://www.crytek.de/polybump/index.php?sx=polybump

That will definately be a cool toy for any modern engine that supports per pixel lighting

LaBasX2, that HAS to be what DOOM 3 is going to use. That is REALLY cool!

lgrosshennig,

I think those light and bump maps for models are calculated exactly once: at export time. Once the game loads the data, it’s already much lower res, with the difference made up in the maps applied.

jwatte I agree with you on the bumpmaps, calculating those take some time but how would you precalculate the lightmaps for the model?

From what I have seen so far every lightsource effects a model in Doom3 as well as every object casts shadows on every other object.

From what I have read in FAQ at doomworld the guy says that they use the highpoly model inside the game as well as the lowpoly model (the highpoly model is used for lightmap and shadowmap computation at runtime). IMHO what would require one hell of an optimization job or an very clever algorithm (if the guy wasnt mistaken what I think is the case).

Its worth thinking about that for a monent if its:

a. makes sence
b. would increase image quality
c. is possible at all on current hardware (assuming a decent framerate)

Well I personly doubt that it would make much of a difference quality wise (the bumpmaps make the difference) on the other hand I havent tried that yet.

Anyway as I said, its good food for thoughts nevertheless.

>>jwatte I agree with you on the bumpmaps, calculating those take some time but how would you precalculate the lightmaps for the model?<<

easy u have a 100,000 tri model + a 1000 tri model right?
thus each lowres tri has approx 100 tris in it, (which means 100+ vertices inside the 3 verts of the triangle) each of the these verts can be uses as a height sample extrapolate the in between ones for the rest + u have a bumpmap.
hmmm did u understand that?

btw im doing something similar with displacement mapping + have changed my tune, displacement maps are quite a bit better looking than bumpmaps

Well I understand that. But actually we are talking about 500K & 1500 tris per model.

the 500K one takes approx 12MB of RAM (assuming around 250k verticies) going through that takes some time and cant be done on a per frame basis (it probably takes some seconds for the reduction). Havent tried it yet though.

Anyway you need the high poly model in the game. If you want a shadow that looks realistic you have to calculate it from the highpoly one since the bumpmaps only fake the details and the shadow casted by the lowpoly model would not match its visual apperance, right?

lgrosshennig, there is no precalculated lighting in Doom3. They precalculate bumpmaps, but no actual lighting.

As mentioned above, what they do is simplify the high-poly model offline, and generate bumpmaps on which they recreate the discarded details. From then on, I don’t see why the high-poly one would ever need to be touched again.

It’s the low-poly one that gets rendered in-game. Because the bumpmaps don’t affect the model’s silhoutte, it’s perfectly okay to let the low-poly model cast the shadows.

– Tom

If you think about it, when you look at a low polycount model with a bump map reconstructing the high resolution version, the silhouette of that object is a low polycount silhouette. So it’s not just the shadow that suffers, but it doesn’t seem to matter too much. There’s a limit but you get away with many fewer polys than you need in the high resolution model. I’d say the shadow shape is probably the least of your worries, an approximation should be fine, especially if the visible outline of the object is acceptable.

did i miss some link or something, or what program or techique do they use to translate the highpoly model to textures and give the texturecoords to the lowleelmodel?? seams like a dull job (hope that someone allready have done this :slight_smile:

Before I look like a complete fool:

Now, the hi-poly is user for shadow/bump calculations. Since it’s not being rendered, it doesn’t need all that skin data, but the model keeps eating a fair amount of RAM.

Anyway, we have 2 models. The hi poly model is being hit by the lightrays in the game, resulting in both shadow/highlight pixel values, and bumpmap results.

Have you ever seen a really good texture job in a model? It generally makes up for the jaggy edges. Now, taking this data in account, the textures will be upgraded by both the shadows and the bumpmaps in real time, as I explained in my article. But this time the position data comes from a MUCH MORE ACCURATE model, meaning that the result will not match the low poly mesh, but actually looking better.

So is it just my weak Englisch or is he saying that they use the highpoly model for certain computations in the game (sure they DONT draw it)?

How would they use the high poly models to cast shadows without ever drawing them? You use stencil shadows and then you have to render them (twice even), or you use a shadowmap and then you render them + readpixels.
I don’t think that this is possible with multiple 250k models.

That is EXACTLY my point.

I know how its “usally” done today, I appreciate the effort but I dont need to be educated in this area anymore.

Just because everybody is doing it “that” way people tend to think its the “only” way (if the only tool you know is a hammer, then every problem looks like a nail)

I was trying to tease people to come up with new ideas looks like I failed.

O well, we will see how and what they do when Doom3 comes out.

Thx for nothing.

Originally posted by lgrosshennig:
[b]Before I look like a complete fool:

So is it just my weak Englisch or is he saying that they use the highpoly model for certain computations in the game (sure they DONT draw it)?[/b]

I believe the guy is talking out of his ass on this one. He posted other comments on the forum. He seems knowledgeable, but not very technical.

They are in no way drawing it, because they don’t need to. Shadows can look nice from low-poly objects. Just look at operation flashpoint.

>>Just because everybody is doing it “that” way people tend to think its the “only” way (if the only tool you know is a hammer, then every problem looks like a nail) <<

not me mate, ive explored at least 6-8 different methods of producing shadows + ive prolly only just scrapped the top of the barrel.
as ive stated before on these forums, i dont believe doom3 is using stencil shadows ( a red herring), we’re gonna have to wait and see to see if im RIGHT

Carmacks reversal?
I don’t understand why you think they need to toss a red herring into things.

if you think logical then you get those results:
they create highresmeshes in the editor
they sample them down and generate like that lowresmeshes with bumpmaps etc…

they use those meshes in the game

everything else is just not possible on a simple pc with a simple gf3

they use stencil shadow volumes
thats why carmack worked so hard to get a perfect solution (and found carmacks reverse)

there are no other ways for getting shadows more or less easy for pointlights. there are no cubic shadow maps possible without a lot of hacking around on todays hardware… and carmack did not made that sort of hack (else we would see demos of this and descriptions how to do this…)

and i think it will not look THAT impressive after all…

hope it’ll be fun to play… the most important part for me…

Originally posted by Gorg:
[b] I believe the guy is talking out of his ass on this one. He posted other comments on the forum. He seems knowledgeable, but not very technical.

They are in no way drawing it, because they don’t need to. Shadows can look nice from low-poly objects. Just look at operation flashpoint.
[/b]

Wow!!! Knowlegdeable **** man I am flattered!

The forum is all yours dude.

What I wanted to say was that they of course dont draw the hipoly model (I have to admit I placed the question mark at an odd place it was intended for the sentence before the brackets).

That “Sure they DONT draw the hipoly model” was meant to be a statement not a question.

I never said lowpoly shadows look bad but if you would take the time and review the footage about Doom3 (the mpeg file not the crapy asf file) you would notice that the shadows look awesome and dont look like projected from a low-poly model (but I am probably just talking out of my ass again).

Gorg I prefer to do/think about new stuff, so you do what ever suits you.

CASE CLOSED

Dude you’ll only look like a complete fool when you get defensive and insist on defending a position that is obviously incorrect and has been demonstrated to be so by the underlying principal of the method being used.

Once again, if when you draw the low polycount object the silhouette is acceptable then it should be more than enough complexity for your shadow. Most other calculations like collision, shadows etc actually require less poly complexity than the primary visual representation IMHO. Feel free to form your own opinion and code accordingly.

You’re not fooling anyone pretending to be the one with the open mind. You and your thoughts should be able to stand some friendly scrutiny (knackered’s comments aside).

[This message has been edited by dorbie (edited 05-07-2002).]

Zed:

You seem a little paranoid with this red herring talk. In my mind, John Carmack has always been honest and as open as commerically possible regarding the directions he takes with his engines. There is ample information linking the DOOM3 engine and stencil shadows (eg http://www.shacknews.com/onearticle.x/15230/ ). He did say, maybe in a .plan, that he was considering taking another look at shadow maps but it stands that he considers stencil volumes a viable method, to the degree that he’s spent time optimising for static cases (gamespot video interview).

Oops, I missed daveperman’s reply. I can definitely concur that cube map shadow maps are hacky given present format/rendering restrictions.

[This message has been edited by SnowKrash (edited 05-07-2002).]