Jump to content
    1. Welcome to GTAForums!

    1. GTANet.com

    1. GTA Online

      1. Los Santos Drug Wars
      2. Updates
      3. Find Lobbies & Players
      4. Guides & Strategies
      5. Vehicles
      6. Content Creator
      7. Help & Support
    2. Red Dead Online

      1. Blood Money
      2. Frontier Pursuits
      3. Find Lobbies & Outlaws
      4. Help & Support
    3. Crews

    1. Grand Theft Auto Series

      1. Bugs*
      2. St. Andrews Cathedral
    2. GTA VI

    3. GTA V

      1. Guides & Strategies
      2. Help & Support
    4. GTA IV

      1. The Lost and Damned
      2. The Ballad of Gay Tony
      3. Guides & Strategies
      4. Help & Support
    5. GTA San Andreas

      1. Classic GTA SA
      2. Guides & Strategies
      3. Help & Support
    6. GTA Vice City

      1. Classic GTA VC
      2. Guides & Strategies
      3. Help & Support
    7. GTA III

      1. Classic GTA III
      2. Guides & Strategies
      3. Help & Support
    8. Portable Games

      1. GTA Chinatown Wars
      2. GTA Vice City Stories
      3. GTA Liberty City Stories
    9. Top-Down Games

      1. GTA Advance
      2. GTA 2
      3. GTA
    1. Red Dead Redemption 2

      1. PC
      2. Help & Support
    2. Red Dead Redemption

    1. GTA Mods

      1. GTA V
      2. GTA IV
      3. GTA III, VC & SA
      4. Tutorials
    2. Red Dead Mods

      1. Documentation
    3. Mod Showroom

      1. Scripts & Plugins
      2. Maps
      3. Total Conversions
      4. Vehicles
      5. Textures
      6. Characters
      7. Tools
      8. Other
      9. Workshop
    4. Featured Mods

      1. Design Your Own Mission
      2. OpenIV
      3. GTA: Underground
      4. GTA: Liberty City
      5. GTA: State of Liberty
    1. Rockstar Games

    2. Rockstar Collectors

    1. Off-Topic

      1. General Chat
      2. Gaming
      3. Technology
      4. Movies & TV
      5. Music
      6. Sports
      7. Vehicles
    2. Expression

      1. Graphics / Visual Arts
      2. GFX Requests & Tutorials
      3. Writers' Discussion
      4. Debates & Discussion
    1. Announcements

    2. Support

    3. Suggestions

Evolution/Fitness programming


deimossaturn
 Share

Recommended Posts

With all the talk about simulations and on-the-fly procedural animation in the RAGE engine...the Endorphin videos on youtube...and artificial intelligence, I was wondering something when I watched the new trailer: How did they program the codes for Niko and the non-player AIs? Did they simply engineer it from scratch and refine it through testing? Or did they take the easy route (which is becoming exceedingly popular in the engineering world) and let a program mutate over successive generations with a fitness selector evolve the animation engine?

 

If the latter is the case (which I think is the most likely) then what else did they let Darwinian programming tinker with? Driving AI? AI gun fight strategy? Come to think of it, of all the next gen games out now, how many of them have used Darwinian programming? Certainly some of the war games and Bioshock HAD to have had some darwinian programming...right?

 

It makes economical sense to use Darwinian programming since building the engine from scratch takes more time and labor which costs the company more money which means lower profits.

 

BTW, if you've no idea what the f*ck I'm talking about, wikipedia is your friend.

 

Anywho, if the animations for locomotion, balance, and self preservation are procedural, what about the fighting system? If that too is procedural, then how much code are we talking about here? Programming an arm with just 3 moving parts (humorous, radius, metacarpal) with a limitation on the ways these parts can bend is tough enough, to then program this arm to select an arbitrary point on a target (not to mention one that is moving!) to then cause the metacarpal to collide with the target and impart inertia from the acceleration on to the target must be a MASSIVE undertaking which I cannot even fathom.

 

Never mind the other limbs on the character including the head and torso, all of which are moving freely under the control of the animation engine and obey laws of physics, the amount of scripting required to have an arm select a target to then strike in a human like way must be staggering. The artificial intelligence to generate the animations on-the-fly in a manner that is unique every single time must take up half of the space on the disc!

 

But it gets even better!!!

 

Whenever Darwinian algorithms are used to build anything, there's always all this extra code that doesn't do diddly squat. Usually, MOST of the code is actually functionless, but gets run through the CPU anyway. If rockstar is using Darwinian programming to engineer any of the code in the game, they are A) dedicating a large quantity of hard disc space to doing NOTHING and B) dedicating a large quantity of processing power to doing NOTHING! Waste. I like to compare making a videogame to building a space ship. Like data, weight is the enemy! Anything that can be done to reduce weight without compromising the overall goal of the mission is how space ships are built. Anything that can be done to reduce the demand of the processor without compromising the illusion or fun of the game is how games a built.

 

So, yeah. Discuss.

Edited by deimossaturn
Link to comment
Share on other sites

You're thinking about this too much. Games today really don't use what you're talking about.

 

As of today, consoles are powerful, but not powerful enough to run simulations of that magnitude in realtime. I'm not sure what you mean by "Simply engineer it from scratch and refine it," either.

Link to comment
Share on other sites

You're thinking about this too much. Games today really don't use what you're talking about.

 

As of today, consoles are powerful, but not powerful enough to run simulations of that magnitude in realtime. I'm not sure what you mean by "Simply engineer it from scratch and refine it," either.

No...I don't think you know what I'm talking about.

 

Look up "breve creatures" and you could evolve your own polygon organism on your desktop. Those don't require very much processing power to operate, but those are no where near the sophistication of a bipedal anthropoid with arms that have to throw punches.

Link to comment
Share on other sites

I didn't deny that such systems exist.

 

Pretty sure you're just throwing big words up here without fully understanding their uses and applications.

Link to comment
Share on other sites

Wow, sounds pretty good.

Off topic:

Did you do your sig in photoshop? If so, what brush did you use.

Looks great.

Link to comment
Share on other sites

Wow, sounds pretty good.

Off topic:

Did you do your sig in photoshop? If so, what brush did you use.

Looks great.

My sig is actually stolen from a PS3 fanboy from this forum. IIRC I edited it in paint or something.

 

I forget his tag. sad.gif

Link to comment
Share on other sites

Wow, sounds pretty good.

Off topic:

Did you do your sig in photoshop?  If so, what brush did you use.

Looks great.

My sig is actually stolen from a PS3 fanboy from this forum. IIRC I edited it in paint or something.

 

I forget his tag. sad.gif

He was talking about Deimossaturn's sig.

Link to comment
Share on other sites

Wow, sounds pretty good.

Off topic:

Did you do your sig in photoshop?  If so, what brush did you use.

Looks great.

My sig is actually stolen from a PS3 fanboy from this forum. IIRC I edited it in paint or something.

 

I forget his tag. sad.gif

He was talking about Deimossaturn's sig.

Fact.

Link to comment
Share on other sites

Wow, sounds pretty good.

Off topic:

Did you do your sig in photoshop?  If so, what brush did you use.

Looks great.

My sig is actually stolen from a PS3 fanboy from this forum. IIRC I edited it in paint or something.

 

I forget his tag. sad.gif

He was talking about Deimossaturn's sig.

Fact.

Oh, nice. I'm not seeing a sig at all here.

 

Either way, here's how things typically go down:

 

AI and Animation are two different systems altogether.

 

The majority of animations in game are either mo-capped or keyframed by hand.

 

With a layer of something like endorphin, the animation system is affected by AI. I'm not sure exactly what goes on in here, because that's proprietary stuff that you have to license to get a hold of. No matter how it works, there are internal states which determine which type of animation will be generated.

 

In most cases when people speak of procedural animation, they're referring to transition animations. This is a tween between 2 or more animations where interpolation points are calculated between bone positions with respect to the keyed animations being blended.

 

With a game like Spore, for example, the animations are truly procedural. That is, the animations for every creature the player creates aren't predefined, but they're generated procedurally. Take a look at some of the stuff by Chris Hecker at the GDC from last year. He has some slides with something along the lines of "How to animate a creature that you've never seen." ...or something like that.

 

AI routines are based on states of objects, and usually a ton of math. Like I said before, artificial intelligence can be sort-of a performance hog even if you're doing simple stuff. In games, AI should really be referring to "Apparent Intelligence" or something similar, just because NPCs aren't actually smart- they're just putting on a show to make you believe that they are.

Link to comment
Share on other sites

A Keyframe is a static pose/image. It's not an animation.

 

With Endorphin, there is no conceivable or practical room to have tween animation. Automatic tweening is something that's already been done in previous games that moves the last frame of one animation into the first frame of another. It wouldn't be practical to animate the car on the road by hand, now would it? However, in the case with Niko, the Endorphin AI engine is generating the animation of the body based on the surface geometry of the ground and the momentum of the body.

 

So, if Niko is standing on top of the truck, and the truck is turning a corner, Niko will adjust his posture to remain standing and compensate for his forward momentum...the change in direction of momentum of the surface he is standing on...and the changes in pitch and roll of that plane he is standing on.

 

The Indiana Jones videogame footage on youtube shows this off.

 

What I'm wondering is which route they took to script the engine.

 

Also, I know the difference between the illusion of intelligence and the actual definition of intelligence. The element of locomotion for Niko is genuine intelligence. His posture is changing from moment to moment based on the situation and built in decision making scripts.

Link to comment
Share on other sites

 

A Keyframe is a static pose/image. It's not an animation.

 

With Endorphin, there is no conceivable or practical room to have tween animation. Automatic tweening is something that's already been done in previous games that moves the last frame of one animation into the first frame of another. It wouldn't be practical to animate the car on the road by hand, now would it? However, in the case with Niko, the Endorphin AI engine is generating the animation of the body based on the surface geometry of the ground and the momentum of the body.

 

So, if Niko is standing on top of the truck, and the truck is turning a corner, Niko will adjust his posture to remain standing and compensate for his forward momentum...the change in direction of momentum of the surface he is standing on...and the changes in pitch and roll of that plane he is standing on.

 

The Indiana Jones videogame footage on youtube shows this off.

 

What I'm wondering is which route they took to script the engine.

 

Also, I know the difference between the illusion of intelligence and the actual definition of intelligence. The element of locomotion for Niko is genuine intelligence. His posture is changing from moment to moment based on the situation and built in decision making scripts.

Please stop copy/pasting or just rephrasing from wikipedia.

 

Also, your tone makes me want to murder babies:

"It wouldn't be practical to animate the car on the road by hand, now would it?"

 

There's a physics engine in there too, you know.

 

Edit:

Point by point:

 

"With Endorphin, there is no conceivable or practical room to have tween animation. Automatic tweening is something that's already been done in previous games that moves the last frame of one animation into the first frame of another. It wouldn't be practical to animate the car on the road by hand, now would it? However, in the case with Niko, the Endorphin AI engine is generating the animation of the body based on the surface geometry of the ground and the momentum of the body."

 

There is room for tweening. Every bone in a skeleton has a position in model space. Skeleton animation is handled within model space, and then transformed to world space to position all bones correctly.

Car animation isn't animation btw, it's handled by a physics engine.

 

You're wrong about the last part, too. "Endorphin AI" doesn't generate animations for skeletons. That would be the physics engine as well.

Maybe check out Ragdoll physics, the area of dynamics (constraint solvers and such), and inverse kinematics.

 

"So, if Niko is standing on top of the truck, and the truck is turning a corner, Niko will adjust his posture to remain standing and compensate for his forward momentum...the change in direction of momentum of the surface he is standing on...and the changes in pitch and roll of that plane he is standing on.

 

The Indiana Jones videogame footage on youtube shows this off."

 

What was shown there was a combination of a few different things:

A physics engine

Endorphin

 

The physics engine handles the dynamics of the whole situation. That is, when someone needs to grab something, a constraint is created in the physics engine. At this point, the other bones would be simulated and endorphin would process the results.

 

 

Edited by JLarkin
Link to comment
Share on other sites

Wow, sounds pretty good.

Off topic:

Did you do your sig in photoshop? If so, what brush did you use.

Looks great.

I did it in painter IX. I only use custom brushes since all the built in ones suck balls. I also have an intuouse 3 tablet.

 

I rarely ever use photoshop for rendering, I consider that amateurish. Sometimes it's could for little touch ups and adjusting the colors and levels, but never pure drawing. Don't get me wrong, some awesome stuff has been painted by hand in photoshop from scratch, but it's really not the best tool for the job.

Link to comment
Share on other sites

Please stop copy/pasting or just rephrasing from wikipedia.

 

Also, your tone makes me want to murder babies:

"It wouldn't be practical to animate the car on the road by hand, now would it?"

 

There's a physics engine in there too, you know.

Umm...I haven't even looked at wikipedia at all. I only mentioned looking in wikipedia for your sake. I already fully understand the material.

*flabbergasted*

 

Anywho, I KNOW there's a physics engine for the cars. Or are you being facetious the way I was when I said "now would it?" That was a rhetorical question to show you that the older games have been using a simplified version of endorphin for simple objects such as cars.

Link to comment
Share on other sites

Read carefully, because I don't want to have to repeat it. Other than some small "toys" and proof of concept projects, there are no games currently on the market that have any code generated by mutating existing code and selecting best code by any form of fitness test. I don't know where you got the idea from, but that is not how it is done. That is not how games are developed. Granted, there is a lot of code scavenging going on, where some of the previous code is modified, but it is modified by coders who carefully adjust it to work with the new game. It is not randomly mutated.

Prior to filing a bug against any of my code, please consider this response to common concerns.

Link to comment
Share on other sites

Read carefully, because I don't want to have to repeat it. Other than some small "toys" and proof of concept projects, there are no games currently on the market that have any code generated by mutating existing code and selecting best code by any form of fitness test. I don't know where you got the idea from, but that is not how it is done. That is not how games are developed. Granted, there is a lot of code scavenging going on, where some of the previous code is modified, but it is modified by coders who carefully adjust it to work with the new game. It is not randomly mutated.

You've described it better than I could have.

Link to comment
Share on other sites

 

Read carefully, because I don't want to have to repeat it. Other than some small "toys" and proof of concept projects, there are no games currently on the market that have any code generated by mutating existing code and selecting best code by any form of fitness test. I don't know where you got the idea from, but that is not how it is done. That is not how games are developed. Granted, there is a lot of code scavenging going on, where some of the previous code is modified, but it is modified by coders who carefully adjust it to work with the new game. It is not randomly mutated.

Article from 2003

http://discovermagazine.com/2003/aug/feattech/

 

Another more recent article

http://www.cs.wlu.edu/~levy/pubs/AIIDE05OverholtzerC.pdf

 

This one says the gaming industry has not innovated AI very much even though it ought to be the source of AI innovation. But really, if the industries were using such devices, they would not want their competitors to find out about it. Cube is an open source laboratory...compare that to the immense resources and funding the big game companies have to throw around.

 

So, ultimately, you are talking squarely out of your ass. You haven't got a clue as to who is using genetic algorithms to engineer games and who isn't. You haven't got a clue as to who already used it or who didn't use it. It may very well be the case the Halo 2 enemies were evolved rather than fine tuned. After all, it would be practically impossible to tell a designed machine from an evolved one, that's the problem creationists have.

 

Furthermore, upon thinking more on the subject, I could easily imagine how file size could also be implemented as a fitness selector in a game program as its final bottleneck. It would strain out the very long code into something extremely efficient, in effect, automatically optimizing the CPU usage. I could even see how this might be applied to textures, lighting, and the environment, radically reducing the demand on the CPU and freeing up more disc space for more content.

 

If the gaming industries haven't already been utilizing these approached...then they are SURE to in the immediate future...unless they are all idiots...or I'm an incredible genius.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • 1 User Currently Viewing
    0 members, 0 Anonymous, 1 Guest

×
×
  • Create New...

Important Information

By using GTAForums.com, you agree to our Terms of Use and Privacy Policy.