Doom3: Will it have a separate SM3 codepath ?

991060 said:
Ok, thanks for clearing it up.
Now what happens when the framerate is higher than the tic simulation rate? Will the engine interpolate between states, or just give the renderer a "point-sampled" state?
Well, here is what Carmack has to say.
John Carmack said:
The game tic simulation, including player movement, runs at 60hz, so if it rendered any faster, it would just be rendering identical frames. A fixed tic rate removes issues like Quake 3 had, where some jumps could only be made at certain framerates. In Doom, the same player inputs will produce the same motions, no matter what the framerate is.
http://www.esreality.com/?a=post&id=530908
 
Alstrong said:
rendering identical frames.....doesn't that lead to a jitter in animation?
What exactly do you mean by jitter in animation ?

Judder in motion ? If so, no... as long as it doesn't fluctuate as much, and pretty constant..
 
John Carmack said:
A fixed tic rate removes issues like Quake 3 had, where some jumps could only be made at certain framerates.
I don't know how the physics system would like it, but movement code alone can be made independent from frame rates. The issue has been addressed in Q3 mods too, so I doubt it's too hard to fix.
 
anaqer said:
John Carmack said:
A fixed tic rate removes issues like Quake 3 had, where some jumps could only be made at certain framerates.
I don't know how the physics system would like it, but movement code alone can be made independent from frame rates.
anager,

you brought an interesting point. :)

This is my understaning of DOOM3's 60Hz tic simulation limit in regards to its rendering engine.

Simply....
if you get 61fps the last 1fps is an identical frame to one already rendered, if you get 120fps than 60 of those were repeated.

The graphics card could render it at 2 billion fps, and show 2 billion frames, but there would only be 60 different ones shown 2 billion times.

So....it can get more than 60fps, but doing so will not affect gameplay because internal tic simulation is limited to 60Hz. The CPU will only have to work on a 60Hz tic rate, but if the video card can render at 200fps, it will do it.

CPU will work on a 60Hz tic and the render will run as fast as it can.
Like I said above, if you get 120fps, it will actually show 120fps but half of them will be repeats of the frame just rendered because the game is running on a constant/limited 60Hz tic.
 
Seems like an awful waste to render frames that won't even ever be delivered to the display, no? You might as well just put an FPS cap on rendering too, and run a GPU equivalent of NOPs* to keep heat and power consumption down.

And "timedemo 1" could remove FPS lock entirely for benchmarking purposes - after all, when you're running a demo it's basicaly a scripted sequence of events, and physics calculations, that could be hurt by an uncapped master tic, doesn't even come into play.

*EDIT : I mean HLT. ;)
 
Alstrong said:
rendering identical frames.....doesn't that lead to a jitter in animation?
Look at a 3DMark benchmark in action - they're set to the test over a fixed amount of time, so if the GPU is charging ahead it just renders repeated frames. You can see for youself if the animations look jittery or not.
 
Neeyik said:
Alstrong said:
rendering identical frames.....doesn't that lead to a jitter in animation?
Look at a 3DMark benchmark in action - they're set to the test over a fixed amount of time, so if the GPU is charging ahead it just renders repeated frames. You can see for youself if the animations look jittery or not.

Game play is different from animation, and often require much higher framerates. Well made animations (and cinema film btw) simply avoid the kind of scenarios that makes the limted framerates obvious.

But this is ground covered ad nauseum.
 
One thing that crossed my mind is - AFAIK the essence of a frame rate cap is it's fixed nature, and not really the arbitrary *value* at which it's fixed. Shouldn't multiplying this 60FPS limit integral times have not much of an effect on the physics routines and such, as long as the new value stays constant over a game session?
 
anaqer said:
John Carmack said:
A fixed tic rate removes issues like Quake 3 had, where some jumps could only be made at certain framerates.
I don't know how the physics system would like it, but movement code alone can be made independent from frame rates. The issue has been addressed in Q3 mods too, so I doubt it's too hard to fix.

IIRC the mods didnt adress the issue that well.
It could happen that 2 players get stuck in each other, that the client registers hits but the server does not etc.
There once was some discussion about the outcome of a match in a major tourney (some years ago; one of the players was "Blue", one of the star players at that time, who registered hits but the opponent did not). If i am not mistaken it had something to do with such a mod. But it could have been, because not both players used the same sampling or something like that. I do not remember that event that well.

To cut a long story short: AFAIK such errors and abuses in the physics can only be avoided if all of the players use the same sampling rate. Obviously Carmack has opted for that route and set the sampling on all clients to 60Hz.

regards, alex
 
anaqer said:
One thing that crossed my mind is - AFAIK the essence of a frame rate cap is it's fixed nature, and not really the arbitrary *value* at which it's fixed. Shouldn't multiplying this 60FPS limit integral times have not much of an effect on the physics routines and such, as long as the new value stays constant over a game session?

Not to my knowledge.
In Q3 you had different physics characteristics for 120 and 60Hz.
Read: Youd could reach places with 120Hz FrameCap , that you could not reach with 60Hz FramCap. (obviously this can be explained by the different sampling of simple physics functions - like the gravitational fall etc)

It even gets more convoluted than just that.
In Q2 there were some obvious abuses where extremely low (single digit range) FramCaps could get you to places, that were in no way meant accessible (map1 of ThreePointCTF comes to mind - a map breaking abuse IMHO). Dont know how that could be explained though.

Just as a sidenote: To this date i have never heard of a game that had such a long and rewarding learning curve regarding movement (jumping and all that) like Q2. This was an art in itself (though prone to abuses).

regards, alex
 
Read my previous comments re: FPS independent movement code.
I can be done, it HAS been done in the Q3 engine. Without a fixed tic.
 
anaqer said:
Read my previous comments re: FPS independent movement code.

Can you point me to the said thread?
TIA

anaqer said:
I can be done, it HAS been done in the Q3 engine. Without a fixed tic.

Perhaps im not up to date, but the "125Hz mod" (i think it was called that way) had still some issues at the time. Im not sure how the Promod handles the movement in this aspect.

Care to point to a current mod without a fixed tic?
Thanks.

regards, alex
 
suicique said:
Can you point me to the said thread?
Sorry, didn't see your previous reply, so I assumed you were the one who overlooked my previous one. :oops:

Anyway, the "Blue Bug" you're referring to is not what I'm talking about (see this thread for some more info). CPMA has had the pmove anomaly fixed since version 1.1, and since it's just a mod, I doubt it could implement a game-wide master tic.
 
pmove_fixed 1 has fixed the 125hz mod. i think that variable has been in q3 since around the 1.25 point release.

i know that urban terror (mod for q3) has a variable cg_physics that solves these problems (where you jump further with the framerate at 125 or 250).
 
DaveBaumann said:
What was JC's quote? "Doom 3 is designed around the features and capabilities of GeForce2 style products, my next engine will be designed around nv30/nv40".

Dave.. Common.. I cannot believe Camrack would design anything around the NV30.... After seeing what an NV30/NV35 does with the new Farcry 1.2 patch I would say anyone still staying those are good cards are few and far between anymore.. Unless they are just in denial.
 
Back
Top