Author Topic: Call of Duty: Black ops first level playthrough, without shooting  (Read 3329 times)

0 Members and 1 Guest are viewing this topic.

Offline Mika

  • 28
Re: Call of Duty: Black ops first level playthrough, without shooting
Interesting to hear that the ray checks are still rather expensive. Ray-tracing software tends to say otherwise, but they have several methods of overcoming of these limitations. The most commonly used trick in real lens design softwares is to use sequential ray-tracing, meaning that the program always knows what surface follows which and is unaware of the surfaces outside the now intersected and the following to be intersected surface.

But this can't be used in a dynamic environment. The other trick is to use bounding volumes, no doubt they are already used in the FPSs, or are they? Custom data structures sounds a bit like that to me. For bounding volumes, polygon intersection testing is indeed quite expensive procedure, even triangle or a cube tends to be considerably slower than a sphere or a cylinder. I recall seeing some FPS kind of engine that used spheres as a primitive instead of triangles and was able to pull of something that current polygon engines couldn't, but that was some time ago.

Generally, I'd think that the LOS determination can be done parallel to some extent.

What I have heard of path finding, the most common thing seems to be several predetermined way points along the level, more than this I don't know.

There are some other things that are usually not considered in AI, like the contrast of the player against the surrounding environment, and the type of motion player is currently doing. Motionless person is very hard to see from 150 m away, while a moving person is considerably easier to see. This is usually somehow wrong in most of the games I have seen.

EDIT: the name of the game that uses spherical primitives is AntiPlanet 2, and the engine is called VirtualRay. It is developed by a Russian guy.
Game can be seen here
« Last Edit: June 22, 2011, 03:14:05 pm by Mika »
Relaxed movement is always more effective than forced movement.

 

Offline The E

  • He's Ebeneezer Goode
  • 213
  • Nothing personal, just tech support.
    • Steam
    • Twitter
Re: Call of Duty: Black ops first level playthrough, without shooting
Quote
Interesting to hear that the ray checks are still rather expensive. Ray-tracing software tends to say otherwise, but they have several methods of overcoming of these limitations.

Uhh, no, raytracing is still incredibly expensive. There's a reason why raytracing isn't used in interactive graphics.

Quote
The most commonly used trick in real lens design softwares is to use sequential ray-tracing, meaning that the program always knows what surface follows which and is unaware of the surfaces outside the now intersected and the following to be intersected surface.

But that's something you can't do in raycasting. Not that you'd have to; a raycast delivers a boolean result, true if there is a line to target, false if not.

Quote
But this can't be used in a dynamic environment. The other trick is to use bounding volumes, no doubt they are already used in the FPSs, or are they?

Bounding boxes are used extensively, especially when it comes to determining hit locations on actors (an actor being defined as being anything under AI or player control, as opposed to level geometry).

Quote
Generally, I'd think that the LOS determination can be done parallel to some extent.

Oh, certainly. And I believe modern engines do this quite often, but this only distributes the cost, it doesn't really reduce it.

Quote
What I have heard of path finding, the most common thing seems to be several predetermined way points along the level, more than this I don't know.

As i said above, and as mentioned in the article battuta linked, this is indeed so.

Nevertheless, finding good paths across a waypoint grid is a very hard problem and setting up waypoint grids is a nontrivial task as well.

Quote
There are some other things that are usually not considered in AI, like the contrast of the player against the surrounding environment, and the type of motion player is currently doing. Motionless person is very hard to see from 150 m away, while a moving person is considerably easier to see. This is usually somehow wrong in most of the games I have seen.

Metal Gear Solid, Splinter Cell, any stealth game in recent years has done this. Doing it correctly however is once more a hard problem that involves a lot more raycasting. The pseudocode for it looks like this:

Quote
for every actor
    for every target in sight
        evaluate level geometry surrounding target
        evaluate target camouflage

It's a lot of processing to do this "realistically", so most games fudge around a bit in order to speed the process up. For example, Metal Gear Solid 3 only computes a global visibility for the player based on his current camo and surroundings as well as movement, then used that as a modifier for the probability to get spotted.
If I'm just aching this can't go on
I came from chasing dreams to feel alone
There must be changes, miss to feel strong
I really need lifе to touch me
--Evergrey, Where August Mourns

 

Offline Scotty

  • 1.21 gigawatts!
  • Moderator
  • 211
  • Guns, guns, guns.
Re: Call of Duty: Black ops first level playthrough, without shooting
Can we get the AI discussion split out?  I'd hate to have it buried in a topic people might not come into.  It deserves its own.

  

Offline Ghostavo

  • 210
  • Let it be glue!
    • Skype
    • Steam
    • Twitter
Re: Call of Duty: Black ops first level playthrough, without shooting
While people are discussing AI, are there any standard ways a real-time game AI is dealt with (for example, in board games with low to medium complexity, alpha-beta pruning seems to be the gold standard), and are there any articles about these types of game AIs?

Most games I've dealt with AI and implemented it are not real-time (mostly board games).
"Closing the Box" - a campaign in the making :nervous:

Shrike is a dirty dirty admin, he's the destroyer of souls... oh god, let it be glue...