8 votes

Turns out the hardest part of making a game is...everything

7 comments

  1. [7]
    onyxleopard
    Link
    The real issue is that, historically, we didn't have the compute power to actually simulate anything interesting in real time, so game creators faked most things with scripted actions and...

    The real issue is that, historically, we didn't have the compute power to actually simulate anything interesting in real time, so game creators faked most things with scripted actions and animations and approximated hit detection etc. And they still do this a lot. If you want realism, though, you need to start simulating things, esp. physics, which is hard to do with high fidelity and without embarrassing collision issues (like that video of the body getting stuck in the elevator in the Half-Life 2 clip). Hence games farming this out to dedicated physics engines (even Valve farmed Half-Life 2 physics out—mostly—to Havok).

    2 votes
    1. [5]
      raze2012
      Link Parent
      The other issue is that you DON'T always want realism in a game. You want good game feel. Sometimes that means letting some concrete cover be invincible to a barrage of bullets in an FPS, or...

      If you want realism, though, you need to start simulating things, esp. physics, which is hard to do with high fidelity and without embarrassing collision issues

      The other issue is that you DON'T always want realism in a game. You want good game feel. Sometimes that means letting some concrete cover be invincible to a barrage of bullets in an FPS, or altering the gravity/momentum in a platformer, or in a few games simply allowing for that hilarious ragdoll into explosion that happens from a punch that would at best send someone 5 feet

      That isn't to say some, even many, game wouldn't benefit from a scaffold that eliminates many of those physics bugs mentioined (Bethesda..), but it's still quite a climb even after that to tweak the physics to do what you want the player to experience. There's no real science to it outside of experience and playtesting, if you get that far.

      9 votes
      1. [4]
        onyxleopard
        Link Parent
        Yes, that's the point of having a programmable game engine that simulates a realistic world by default, and then affords making exceptions where it's decided by the designer as supporting the...

        Yes, that's the point of having a programmable game engine that simulates a realistic world by default, and then affords making exceptions where it's decided by the designer as supporting the gameplay they want to create. It's much easier to explicitly model deviations from physics than it is to build up a fake, non-physical model of things. If your game engine can't model a humanoid character's hand holding some other object, then you have that much more work to do to fake it. If your game engine can't model liquid materials (and the state transition from liquid to gas), then you have to do that much work to fake the simulation of pouring coffee. I see that as the main pain point being called out in the article—most games don't use game engines that support high fidelity real-time simulation, so you can't make realistic things happen on screen unless you do the work to fill it in manually.

        3 votes
        1. raze2012
          Link Parent
          You're correct. I just mention this because some certain Unreal/Unity games (older ones) definitely had this odd feel to them that made it feel like "an unreal/unity game", and not in a good way....

          If your game engine can't model a humanoid character's hand holding some other object, then you have that much more work to do to fake it.

          You're correct. I just mention this because some certain Unreal/Unity games (older ones) definitely had this odd feel to them that made it feel like "an unreal/unity game", and not in a good way.

          For Unreal, it's when non-FPS games were being made, especially when those games had to jump and it just feels stiff (which is "realistic". Jumping isn't this fluid action for humans on earth). For Unity, the default physics just always felt a bit floaty for some reason. I guess I just fear this shifting back towards the former in a quest for hyperrealism.

          most games don't use game engines that support high fidelity real-time simulation, so you can't make realistic things happen on screen unless you do the work to fill it in manually.

          You already mention this, but I'll emphasize: it's not like these things can't be simulated today on modern engines. It's just really expensive to do so, even for modern PC tech. And as a result, the defaults that the big engines do have are extremely inefficient (and not the default scaffolding). They COULD be more efficient, but most games don't require precision collision; they would accept a bit of clipping to save frame budget for other parts of the game.

          The ones that do tend to be from custom engines designed around that, or for use in more controlled areas of the game like cutscenes.

          3 votes
        2. [2]
          Tygrak
          Link Parent
          Are you aware of any engines that support stuff like that? I would love to know them. I am aware of mostly just the large engines but afaik simulations of that kind are only ever done with very...

          Are you aware of any engines that support stuff like that? I would love to know them. I am aware of mostly just the large engines but afaik simulations of that kind are only ever done with very specialized shaders on the GPU, so not really the job of the engine.

          1 vote
    2. talklittle
      Link Parent
      Video games are all about creating the illusion of a living breathing world inside your screen. It takes so much damn work. This example stood out to me. What looks on the surface like a "simple"...

      Video games are all about creating the illusion of a living breathing world inside your screen. It takes so much damn work.

      This example stood out to me. What looks on the surface like a "simple" 2D pixel art game.

      Glitch Factory artist and animator João Esse offered a problem from upcoming game No Place for Bravery, in which protagonist Thorn carries his son Phid on his back. The two characters have independent animations, where each character can perform separate actions at the same time. For example, Thorn might be fighting an enemy, while Phid is pointing to something of interest.

      “The duo's spatial relationship ends up being very complex in some animations, especially when Phid moves forward or backward in different frames. We have to go through every frame in every animation to correct each characters' position to solve this.

      [some GIFs showing how they fit the equipment to the character's body, when son is riding on his back and not]

      “We are talking about 142 animations, 941 animation frames divided into 97 layers, all of this only in the main character!” Esse concluded.

      4 votes