The Strangeness of Video Game Gravity Explained (feat. Portal, Minecraft, MW2, and more)

Поділитися
Вставка
  • Опубліковано 13 чер 2024
  • Part 1: • Is "Realistic" Video G...
    In this video, I attempt to show how video game gravity and/or air resistance is so odd by comparing it to the real world, and I try to explain why in-game gravity is the way it is.
    This is quite an ambitious video for me, so in some areas I may be wrong in my analysis, particularly the jerk/jounce stuff. However, I did my best with the knowledge I have. Feel free to correct me in the comments.
    My data (formatting may be funny due to Excel to Sheets conversion):
    drive.google.com/file/d/1XwX1...
    I'm not sure what's up with the rendering errors at 12:36 and 32:49. Odd. Plz forgive my computer.
    Nontrivial sources of information:
    Realistic drag coefficient value: university2.taylors.edu.my/EU...
    Realistic cross-sectional area: self-measurement (including forearms and assuming chest is approximated by an oval)
    Air resistance calculator: keisan.casio.com/exec/system/...
    Bowling ball acceleration plot: www.quora.com/What-does-the-a...
    Skyrim height mod: www.nexusmods.com/skyrim/mods...
    Gameplay clips used:
    ArmA 3 gameplay: • CONVOY SUPPORT WITH A ...
    PUBG gameplay: • Video
    Space Engineers gameplay: • Your First Mining Ship...
    • Space Engineers - How ...
    • Stranded In Paradise E...
    Colorful arcade machines: • POLYBIUS - The Video G...
    Music used, in order:
    Overture - Honka
    Subject Name Here - Portal OST
    Robot Waiting Room #5 - Portal 2 OST
    Stop What You Are Doing - Portal OST
    Impossible Worlds - Monument Valley 2 OST
    No Turning Back - Introspect
    Legendary Ratio - Forza Motorsport 4
    Swallowing Teeth - If These Trees Could Talk
    Moog City -Minecraft - Volume Alpha
    Aria Math - Minecraft - Volume Beta
    Haggstrom - Minecraft - Volume Alpha
    Reconstruction - Minecraft UUST
    Axolotl - Minecraft OST
    Old Comrades - Call of Duty: Modern Warfare OST
    Gravity (Orchestral Version) - Fleshgod Apocalypse
    Cliffhanger - Call of Duty: Modern Warfare 2 OST
    Multiplayer Menu - Call of Duty: Modern Warfare 2 OST
    Contingency - Call of Duty: Modern Warfare 2 OST
    The Enemy of My Enemy Is My Friend - Call of Duty: Modern Warfare 2 OST
    Dust - M.O.O.N
    Black Lake Niðstång - Agalloch
    Whales - Eleventh Vibration
    Den Helige Anden - Vildhjarta
    Jin Jie’s Revolution - Battlefield 4
    The Unknown - Space Engineers
    Ezio in Florence - Assassin’s Creed 2 OST
    Honorable Intentions - Halo 3 OST
    Three Gates - Halo 3 OST
    Main Menu Ambiance - Battlefield 3
    Solomon’s Theme - Battlefield 3
    Far Horizons - TES V: Skyrim OST
    Tooth and Claw - TES V: Skyrim OST
    Procedural Jiggle Bone - Portal OST
    Through the Valleys - TES IV: Oblivion OST
    Grauer Wald - Aesthesys
    Discovery of Gravitation - Gravity Rush OST
    The Horizon Effect [Inst] - Mechina
    • Original and Inaccurat...
  • Ігри

КОМЕНТАРІ • 250

  • @AlmostUselessPenguin
    @AlmostUselessPenguin 4 роки тому +302

    14:28 You could've spent 15 minutes flying up or just teleported 7000 blocks directly up instantly using /tp ~ ~7000 ~ (or any other height by replacing 7000 with the number of blocks).

    • @SovernGaming
      @SovernGaming  4 роки тому +106

      Almost Useless Penguin Interesting. I didn’t know that was a feature on PC. (I play on Xbox like the peasant I am)

    • @fuuryuuSKK
      @fuuryuuSKK 4 роки тому +75

      @@SovernGaming there is also the F3 screen which lets you view your coordinates similar to Portal

    • @felipevasconcelos6736
      @felipevasconcelos6736 4 роки тому +12

      Sovern Gaming, are commands still not a feature on Xbox? AFAIK, if you hold a map on some Minecraft editions (like legacy xbox 360°) you can see your coordinates, couldn’t you have done that instead?
      Also, I think time measurements could’ve been considerably more precise if you used a scoreboard that you reset at some point and stop when you reach the ground.

    • @SovernGaming
      @SovernGaming  4 роки тому +36

      I don't really know. I am less familiar with Minecraft than most people. I feel like my measurements were precise enough for the conclusions I was trying to draw, but it indeed would have been more convenient to know my exact location.

    • @rammy6942
      @rammy6942 4 роки тому +8

      ​@@SovernGaming According to www.digminecraft.com/game_commands/teleport_command.php, right on the dpad will bring up the chat window, in that you can enter the command
      If not right on the dpad, then I'm sure you could bind it to another button on the controller to bring it up

  • @petersmythe6462
    @petersmythe6462 4 роки тому +63

    "My calculated heights will have an error too."
    Press F3!!!!!!!!!!

    • @Fastwalker27
      @Fastwalker27 4 роки тому +8

      He is on console
      He should have switched on show coordinates

  • @MidnightSt
    @MidnightSt 4 роки тому +55

    24:00 developer here, yeah, usually when setting up the physics, I start from the default values (which are set to earth gravity), and then I half-randomly tweak all the values involved until I get something that feels right, and then I don't touch it ever again. Combined with the fact that I often forget to set the player's mass to something realistic, meaning it stays too low, I usually end up with gravity that's two or three times stronger than earth's one.
    and yes, most of the times, games are made "at different scale", yes, usually smaller scale, but more precise would be to say "inconsistent scale", since the things are being resized both up or down, depending on what it is, and where. again, the thing we're trying to achieve (most of the time) is for the game to *feel good while played*, not to depict to-scale reality or something. if you're supposed to fall from 100 meters, but actual 100 meters kinda feels like it's just 50 meters, then sure, you go ahead and make the drop to be 200 meters, or 180, or whatever number so that when you actually play/experience the fall, your response is "yes, finally, this feels like (what I think) 100 meters (would feel)!"

    • @spindash64
      @spindash64 4 місяці тому

      So far, I've been finding a "2.5x" rule for my 2D platformer game physics (which I intend to have a more "ballistic" approach to physics like Sonic 3, rather than the "positional" approach of a precision platformer) to feel pretty good, which can either be looked at as forces and accelerations being 2.5x greater than in real life, or as everything in-game being built at 40% scale. For example, gravity is roughly akin to 25m/s/s, but terminal velocity is still around 50m/s.

  • @bourbonbobo
    @bourbonbobo 4 роки тому +87

    This series was super interesting, I am a game developer (mostly hobbyist) and have built lots of fake gravity for various projects so it was interesting to see how real values could work.
    The truth is no matter how realistic they are, games need to feel good to play and developers just keep messing about values for stuff like this until it feels good. There's no game with perfect physics and building a character movement system is enough work already without trying to make the physics perfect AND the gameplay feel good.
    It's also worth noting that I can't think of a single game that accurately simulates individual leg movement or range of movement so things like jumping over short walls where in real life you'd lift your leg to get a purchase on it and sort of vault over are never physically recreated so having an unrealistically high jump just compensates for that.
    In the end the most important thing is that a game feels good, AAA games and developers use realism as a marketing tactic and they only use it where it makes sense in assets like sound effects or art and don't use it in things that directly affect the players experience. I suspect a similar analysis of run and walk speeds would show some superhuman values.

    • @ABaumstumpf
      @ABaumstumpf 4 роки тому +1

      "It's also worth noting that I can't think of a single game that accurately simulates individual leg movement or range of movement so things like jumping over short walls where in real life you'd lift your leg to get a purchase on it and sort of vault over are never physically recreated so having an unrealistically high jump just compensates for that."
      Many games - even the ones he used - just go the simple route of always lifting the legs of the player - and the jumpheights reflect that.

    • @KuraIthys
      @KuraIthys 4 роки тому +3

      I would imagine you could fudge it the same way a lot of things are fudged in game engines;
      The collision logic doesn't match the player geometry.
      Obstacles below a certain height could simply be treated as non-existent for collision purposes, with the only distinction being some flags that control parts of the animation system.
      But, while I've never really given it much thought, I can certainly see how tweaking gravity could be an easier solution.
      It's interesting to see gravity in platformers like say, Mario as well.
      Not only is the force of gravity quite high, but you also have some degree of control over how fast you fall.
      Hold the jump button down and Mario falls slower than if you let it go.
      That has almost no correlation to anything in the real world, but it makes sense why you'd do that.
      Being able to influence the descent rate gives you more control over your landing.
      Just like being able to course correct in mid-air does (some claim this isn't possible in the real world, but that's not entirely accurate, since you can alter your rate of rotation, centre of mass and other things by pulling in or extending limbs - some of what this allows is demonstrated best by ice skaters - even so, I would doubt you have as much aerial control in the real world as you would in a game.)
      Platformer physics is truly something strange...
      But again, it's based on feel...
      And of course, when jumping is your primary gameplay, you end up with characters that are very good at it...

    • @ABaumstumpf
      @ABaumstumpf 4 роки тому +2

      @@KuraIthys "Obstacles below a certain height could simply be treated as non-existent for collision purposes, with the only distinction being some flags that control parts of the animation system."
      normal walking over small objects , stairs etc does that - in a way simpler way even.
      characters have a step-height - a height that they can walk over with no extra action needed.
      There is no need for flags on objects.
      When the character-model reaches that object the feed are placed on the ground by inverse kinematic.
      To get a good animation for stair the object is usually flagged as such so that the stride is adjusted to the step-size.
      "since you can alter your rate of rotation, centre of mass and other things by pulling in or extending limbs"
      the rate of rotation yes, but not the angular momentum. And no chance of moving the center of mass.

    • @matthillfromcollege4109
      @matthillfromcollege4109 3 роки тому

      Qwop

    • @mr.jamster8414
      @mr.jamster8414 3 роки тому

      I can think of one game that does all of that, and another game that has both exaggerated jump height and the option to pull your legs up in the air.

  • @sandralenardova9944
    @sandralenardova9944 4 роки тому +7

    Hello, former developer of Space Engineers here. The gravity value displayed in the hud (so 1G on Earth-like planet) is what is actually being applied to all objects, EXCEPT the player. The player's gravity is doubled to "make it feel better". Interestingly, this was only tweaked about a year ago - until then, the real value was being applied on the player too.

  • @ghostoastt
    @ghostoastt 4 роки тому +17

    4:50 dude that was a nice ass transition

  • @platinumpro54
    @platinumpro54 4 роки тому +24

    4:45 for those of you who are wondering, the derivatives of displacement are:
    0th: displacement (obviously)
    1st: Velocity
    2nd: Acceleration
    3rd: Jerk
    4th: Jounce (or Snap)
    5th: Crackle
    6th: Pop (I am not joking here)
    7th: Lock
    8th: Drop
    9th: Shot
    10th: Put
    The chance that you will use anything higher than a Jerk in any of your physics calculations is incredibly unlikely because most people will only need the change in velocity of acceleration for their calculations.

    • @spindash64
      @spindash64 4 місяці тому

      Is there an _integral_ of displacement? And if so, does it see any practical use?

    • @ajh3461
      @ajh3461 2 дні тому

      @@spindash64 My guess would be position, but these are all derivatives with respect to time, suggesting that the integral would have a unit of meter*seconds, which position does not.

  • @yaelm631
    @yaelm631 4 роки тому +144

    Wait; for minecraft you didn't use f3 to show your coordonate ? why

    • @Hlebuw3k
      @Hlebuw3k 4 роки тому +80

      He is playing on console, like a filthy casual

    • @yaelm631
      @yaelm631 4 роки тому +34

      The coordinates are still possible to show in the option. I don't know if the speed is the same in java and bedrock

    • @jayveerisdabest7500
      @jayveerisdabest7500 2 роки тому +1

      he was on xbox

    • @Endermyne2
      @Endermyne2 2 роки тому +2

      It’s still possible to show coordinates on xbox

  • @Zahn-rad
    @Zahn-rad 4 роки тому +34

    "There isn't much imperial evidence in Skyrim"
    [Laughs in Stormcloak]

    • @theblancmange1265
      @theblancmange1265 4 роки тому +4

      The stormcloack bear isn't roaring, it's mouthbreathing.

    • @epicpants2314
      @epicpants2314 4 роки тому +2

      "We drink to our youth, to the days come and gone. For the age of aggression is just about done"

    • @PB-ji5rb
      @PB-ji5rb 4 роки тому

      Zahn Rad filthy rebel

    • @spartanwar1185
      @spartanwar1185 4 роки тому

      Guys guys!
      We all hate elf scum, why should man fight man when men can both fight those damned elves together?

  • @SovernGaming
    @SovernGaming  4 роки тому +43

    I was having a ton of trouble exporting this video properly which lead to some compromises being made, including the video being in 1080p.
    Edit: I figured out the problem, and here is the higher quality version (1440p, higher bit rate, and a couple rendering errors fixed): ua-cam.com/video/fhS1l2xesJI/v-deo.html

    • @SalveMonesvol
      @SalveMonesvol 4 роки тому +2

      You know what game might have the most realistic gravity? Crysis. Maybe GTA SA too. Both feel floaty when driving, and in crysis you really carry momentum, in speed mode if you run off a slope you follow a realistic parabollic trajectory.
      TRY CRYSIS! ALL 3!

    • @jdjjvykk1880
      @jdjjvykk1880 4 роки тому

      In minecraft you cold Have used a mod that can Show you your speed

    • @mr.jamster8414
      @mr.jamster8414 3 роки тому +1

      I tried out this "realistic gravity" thing myself, but with another game (Mirror's Edge). It actually worked out fine in that game, because of the ability to vault over obstacles and lift your legs in midair to gain more height. Never had a problem with small bumps or anything like that, either. Slowed down my speedrun time, though.

  • @pchris
    @pchris 4 роки тому +14

    In game engines, you can encounter a problem where your character travels so far between frames (if you're moving/falling fast) that one frame you haven't touched the ground yet, and the next frame the ground is above you and because you didn't touch the ground either frame the game might not realize you fell through it.
    I think a reason for why in Portal and possible Skyrim you slow down just before you hit the ground is because the game probably checks how close you are to the ground (through a downward raycast/hitscan) and then slows you _just enough_ that when you won't fall through it. I know this is a cheap workaround I've used a few times in my own personal projects.
    A more sophisticated game engine would have a means of checking collision between previous and current positions instead of just the current position each frame.

    • @SianaGearz
      @SianaGearz 4 роки тому +2

      Portal... I think it slows you down for other reasons. At least on BSP it's impossible (apologies, "impossible") to fall through the floor since the detection is continuous, you're casting a vector in the movement direction into the structure, and the result is the same whether your BV would land in the volume or wouldn't. If you would land in the volume, this is easily caught. Moving platform are a tad more complicated, as it IS possible to go through them, but you kinda just need to extend them down, and then treat every contact as if it's coming from the movement direction. Or use a raycast. Crucially, the same raycast as necessary to slow you down in advance would also prevent you from falling through the floor! So slowdown is unnecessary.
      I think what is happening there is NOT deliberate slowdown, but interpolation. The Source engine is client-server, and the server (also locally run) is run at a fixed tickrate of probably 30Hz, and is interpolated by the client with a bit of smoothing. If the server is 30Hz, there's necessarily an at least 3-frame interpolation period (assuming 60Hz display) due to lack of frame alignment, but actually more than that because it's unified with the case where server is on a network, which needs to be more resilient. So i think from the point of view of the game physics and server, you are stopped abruptly upon hitting the surface, it just happens to be smoothed out in the presentation layer just because it's a pervasive mechanism that applies to all object position updates.
      Skyrim, no idea. Probably not too different.

    • @SianaGearz
      @SianaGearz 4 роки тому

      I was thinking more. The velocity to push through geometry would be around 400m/s, while the game limits it... well this video reaches just beyond 30m/s, which is not nearly bad enough!

    • @pchris
      @pchris 4 роки тому

      @@SianaGearz you only really need to get your center of gravity under the ground for it to work though because the ground will push you out of it by pushing you down. Also I don't know for sure, it's just my theory. Plus they'll probably still have a function like this running even when you don't reach fast enough speeds. It runs all the time even at 30m/s just in case you get going fast enough

    • @SianaGearz
      @SianaGearz 4 роки тому +1

      @@pchris Center of gravity? No, why? The pushback depends on the contact surface normal and prior movement direction. I forget the exact formula, anyway it has nothing to do with centre of gravity.
      Anyway the way this would be handled would be by a velocity clamp, not by letting the objects travel faster and then attempting to brake them.

    • @KuraIthys
      @KuraIthys 4 роки тому

      I've written a few very simple 2d games where collision detection is based around determining if a point will pass beyond a vertical or horizontal plane.
      It does this by extrapolating the expected position on the next frame.
      Collision for rectangular objects simply amounts to doing this 4 times.
      Even here though, it's easy to get into a situation where an object will phase through another rather than colliding.
      For instance, one example is a very simplistic breakout clone;
      The ball moves quite slowly relative to the width of a brick, so generally collisions work without issue.
      Except that the ball travels diagonally;
      This means if you catch a collision on the edge of a brick, there is a probability that the predicted location on the next frame will be on the side of the brick, rather than inside it.
      If there's another brick there, this will cause that brick to process a collision, followed shortly after by a side impact on the brick you phased through (since a collision causes the ball to be reflected)
      It's surprisingly easy to create problems with collision detection.
      But the faster an object moves in each frame/physics tick relative to the sizes of things it can collide with, the more likely it is to go wrong.
      One option is to calculate physics more often (this has the practical effect of making distances smaller per calculation)
      Other options get increasingly more complex, but I still don't know if there is even a theoretically 'perfect' solution.
      Somehow I doubt it.
      Though perhaps parametric line intersection would work for the pure 2d case...
      Since this gives you an actual point of intersection in time, telling you if there was a collision at any point between two time intervals, not just guestimating it based on whether one object's predicted position lies inside another object...

  • @mauritsvanriezen8119
    @mauritsvanriezen8119 4 роки тому +6

    FYI all games have terminal velocity, it's a limitation of physics engines. You would glitch through the floor if you fell too fast. Most games might not simulate proper air resistance though, just hard cap the speed instead.

  • @samdugan3511
    @samdugan3511 4 роки тому +50

    You deserve more views for the effort you put into these videos

  • @alansmithee419
    @alansmithee419 4 роки тому +54

    2:00
    You would never reach light speed due to relativity. But, assuming Newtonian physics, that may well be correct.

    • @KuraIthys
      @KuraIthys 4 роки тому +1

      Your game engine will break well before that.
      Assuming 32 bit floating point. Taken as a decimal value this will be accurate to within 6 to 9 significant figures.
      so... if we assume 1 whole unit = 1 metre...
      (or 1 m/s or whatever equivalent unit is relevant to the calculation)
      Then our worst case of 6 significant figures shows we only have to reach 1000.00 metres for our accuracy to be reduced to the nearest centimetre
      At the scale of a single person, you wouldn't want your error to be much more than a few cm...
      What's worse, if your velocity gets too high, your collision detection will likely fail.
      A typical form of collision detection would be to check where an object is now, and where it's predicted to be on the next physics tick, then assume a collision happened if this puts the predicted location inside an object.
      If the speed is such that the predicted position is out the other side of the object though...
      Well, the result is usually that you phase through the object (unless your collision code is exceptionally clever or very carefully written)
      Game engines do not like high speed + high precision.
      You can basically think of it as the gaming equivalent of Heisenberg's uncertainty principle.
      Though in terms of positional accuracy for instance, it depends on the origin of the world.
      Which is to say, if world coordinates were 32 bit integers, and you were standing 10,000 metres from the origin, you could expect to see positional accuracy problems just walking around.
      Obviously larger game worlds would tend to use larger position variables...
      Or try and figure out a way to use a different point of reference to overcome these issues...

    • @alansmithee419
      @alansmithee419 4 роки тому

      @@KuraIthys I think I just assumed that the values on-screen were talking about the real world, but doing the calculations it seems he's used a higher gravity than the true value to calculate them, presumably the game's gravity.
      So now it looks like I'm an idiot who thought they'd program relativity into portal. :(

    • @Henrix1998
      @Henrix1998 3 роки тому

      @@KuraIthys I think current games all use continuous physics anyway so you don't get teleported through objects no matter how fast you go

    • @spindash64
      @spindash64 4 місяці тому

      I mean, if you're _falling_ with eternal acceleration, then that implies falling towards something with an event horizon, where escape velocity exceeds c, and space time kinda just folds in on itself

  • @MidnightSt
    @MidnightSt 4 роки тому +9

    "position is changing but velocity is zero... huh"
    makes perfect sense. transform (position) of the object isn't exactly tied into the physics system, it's just that physics system influences transform's value.
    so if you want to do a physically correct movement, you do object.physics.move(new position), which will "simulate" the object moving to that position, also calculating what the necessary velocity would be, etc etc.
    but you can also do object.position = new position, in which case you (hopefully deliberately) go around the physics system, "teleporting" the object to new position, without the physics being aware of it, kind of, so the object's velocity stays 0.
    in portal's case, this happening about 6 frames after landing, makes sense, the game is trying to stabilize the contact point, since physics systems are messy, but you want your player to be very stable in contact with surface, so you just force the velocity to be 0 so that the physics engine doesn't mess with your calculations, and you spend a few frames to sneakily "teleport" the player to the actual contact point. something like that.
    the skyrim slowdown also makes some logical sense, you don't want your collisions to happen at too large a speed, otherwise your objects will start warping through each other. so just asking for a distance of ground, and slowing player down if we're nearing the collision, is a bit lazy, but simple and effective way to prevent most warping through the ground later, when the actual collision is supposed to happen.

  • @bruhmoment2403
    @bruhmoment2403 2 роки тому +1

    This is absurdly underrated content, geez. It’s been 2 years and you would have thought this would be one of the many videos that ranks up over millions of views. Very sad to see that’s not the case, I enjoyed this a lot.

  • @bodziex88
    @bodziex88 4 роки тому +6

    Wow the amount of time you had to spend for these videoes!
    Huge appreciation for you, love ya

  • @beorangecrush
    @beorangecrush 4 роки тому +6

    once you showed the terminal velocity i noticed a split second of slowing when you enter a portal

  • @ABaumstumpf
    @ABaumstumpf 4 роки тому +17

    Specially Minecraft shows how wrong your approach was.
    MC is using the simplest form and still that is a physical accurate simulation - no idea how you managed to get such strange numbers there to begin with.
    Basically MC - and most other games - use the simplest approach there is: constant acceleration, constant friction.
    At every step in time the characters vertical velocity first gets increased by a fixed amount, something like "vel_y += gravity" and then multiplied by a friction-coefficient to simulate drag "vel_y *= (1 - drag) ".
    For Minecraft these value depends on what is falling and are well known (well - we can look at the code directly after all). Acceleration is 0.08 blocks/tick², drag is 0.02.
    Most games use that (or rather a vector-version) of that as it is the simplest yet most robust and accurate depiction.
    (In MC you also got the overlay that would tell you all the exact information you'd ever want for this................ F3 is your friend)
    There are games like mario where the acceleration is different for 3 stages - the jump button being pressed, button released but still some upward-motion, the fall. That is similar for many platformers/Jump'n'run that have jump-control, but most of the time the underlying mechanics are still the one described above.
    The leap-height........ you are comparing apples and oranges there. The numbers from wiki and your own are with STRETCHED legs, while the games measure with a in-air-croutch. This makes a huge difference as it is quit easy to jump up a 90 cm table in real life, but virtually impossible if you try that with stretched legs.

  • @yada8767
    @yada8767 4 роки тому +6

    damn that portal above and below falling forever would be mad crazy irl

  • @ThreeProphets
    @ThreeProphets 4 роки тому +17

    When using MCC, make sure to take a few extra measurements, since some of the physics got messed up when ported over to 60 FPS. Halo 3 usually runs best out of all of them, but I've definitely seen it misbehave sometimes. If something just doesn't seem to add up, try to use the original version of the game, even though the lower framerate is harder to measure
    Can you take a look at Arma 3's physics? It's the only game that claims to be realistic. If you want to take ballistics into account, make sure to try it with the Dagger mod

    • @SovernGaming
      @SovernGaming  4 роки тому +5

      I actually used the original version of Halo 3. The frame time measurements were at 60 FPS because my video project was at 60 FPS as well, but the actual gameplay was 30 FPS.
      As for Arma, I have heard about its insane levels of realism, but I have zero experience with the game. I don't know how I could test gravity.

  • @MidnightSt
    @MidnightSt 4 роки тому +1

    oh, I just remembered, regarding the minecraft G value...
    Unity3D default first person character controller has something like that too, it's called something like "Stick to ground helper force", and it activates within certain distance from the ground. It's meant for when player is going down a slope, mainly, to prevent him hopping down, and make him just slide/walk down instead.

  • @Charm_Dragon
    @Charm_Dragon 4 роки тому +8

    Dude, thank you fore making videos like this, they are great.

  • @GoldSrc_
    @GoldSrc_ 4 роки тому +1

    This video was so good, that I didn't saw it was 40 minutes long until I saw the timeline at 36 minutes lol.
    You deserve a lot more subs.

  • @ivandagiant
    @ivandagiant 4 роки тому +7

    Did this dude seriously measure the speed of flight instead of just using a map to see exactly where he is? Or just press F3 on PC?

  • @MidnightSt
    @MidnightSt 4 роки тому +1

    we never use actual air resistance calculations and values (unless it's a flight sim), precisely because of how it scales based on object size, and is thus hard to intuitively understand and tune. and also because actually calculating it (meaning having to calculate surface area of the affected object) would be surprisingly difficult, and not at all worth the trouble. we usually just use "drag", which is a per-object setting in percent, and is basically "the object will loose X percent of its velocity each second, due to our pretend drag".
    also, "rotational drag" is usually a separate setting, completely unrelated to the "drag" setting in any way. another separate percent value determining how fast the rotation of the object decreases.

  • @EmApex
    @EmApex 4 роки тому

    I was ready to call you out on this video for not just checking the console with Portal, but you did, and actually went further. I had no idea the portals reset your speed but now I'll never be able to unsee the speed difference when exiting a portal. Nice work

  • @rolerroleris533
    @rolerroleris533 4 роки тому +17

    Even though there are still some mistakes (like with MC), this was an interesting video. Might not be very acurrate or even useful but it shows how you want to learn something and do it your own way. Respect for that.

  • @petersmythe6462
    @petersmythe6462 4 роки тому +2

    One thing about jump height: it isn't the same as obstacle clearance. IRL, a fit person can relatively easily leap onto a table 90 centimeters high. But leaping that high with straight legs requires top tier Olympic level performance.

    • @jojoprocess2820
      @jojoprocess2820 3 роки тому

      35 inches isn't Olympic performance. Plenty of highschool basketball players can jump that high.

  • @sirdogs8766
    @sirdogs8766 4 роки тому +1

    Dude your videos are so good. It reminds me of old game theory and it's so wonderful. Thanks

  • @OmegaSpaghetti
    @OmegaSpaghetti 4 роки тому +1

    The thoroughness and science used in these videos are amazing! Keep up the amazing content :)

  • @Omaricon
    @Omaricon 4 роки тому +1

    My theory as to why gravity is so different is that on a screen scale is hard to grasp. I remember trying VR on a few games I had played a lot without VR and was surprised how big things really are, screens take up little of our "fov" and therefore I believe our brain looks at everything like miniatures without us thinking about it. With realistic values our brain will actually think that it feels unrealistic to some degree, so developers all end up increasing gravity to make it feel more real for us, even if it isn't.

  • @lucasmaciel4385
    @lucasmaciel4385 4 роки тому +2

    Hey man, thank you for all the analysis you've done, i really like physics but i wont study nothing that includes them so this kind of videos are the things i like the most, pretty interesting video, i loved it

  • @petersmythe6462
    @petersmythe6462 4 роки тому +3

    The actual code of Minecraft has gravity at 32 m/s^2, which is absurdly high.

  • @Incilite
    @Incilite 4 роки тому +1

    This is an amazing channel, why very intressting content. Keep up like this man !

  • @dtgs4502
    @dtgs4502 4 роки тому

    Oh thank god, I've been waiting ages for another analysis of game physics since back when game theory and shoddycast used to do that.

  • @lukeduncan56
    @lukeduncan56 2 роки тому

    This entire video read like my lab reports for my AP Physics class. Well Done.

  • @angelorodriguez4593
    @angelorodriguez4593 4 роки тому

    I was so hyped for that video! Thank you!

  • @grantlauzon5237
    @grantlauzon5237 4 роки тому +2

    23:55 Halo Reach and all Halos afterwards have an increased gravity while you’re near and/or on ground. I think it’s so you don’t break traction when going over bumps like you said. This makes calculating tricky past Halo3 because walking off ledges gives a massive speed boost down. Also ramps feel bad in Halo 3 after you notice.
    Also Spartans are big. In Halo 5 (my crude measure) g=1.353 .
    If a Spartan IV is 6ft10in then with messing with numbers that I think I got right the jump time would feel normal for a 5ft 6-10in average person. Sure you can jump more than your entire head height but the time to fall is that of average person not an NBA player.
    Note that doubling or shrinking map size doesn’t mean reducing fall time by 1/2 because g=m/s^2. This is because when doubling the drop distance the second half takes less time because you’re already at speed.

  • @soejrd24978
    @soejrd24978 4 роки тому

    I've been looking forward! Love the vids. Might even make them technically a bit more basic or faster to produce :)

  • @electra_
    @electra_ 4 роки тому +1

    With regards to the weird Minecraft gravity curve, I did some testing myself and found no such thing. I used a mod that allowed me to see position and velocity down to three decimal places in the corner of the screen, and additionally a mod that slowed the game down to 1/20 the speed so I could record the values on each frame and pause the game in between. I found the curve to be perfectly smooth, with the maximum acceleration at 31.360m/s^2, dropping by 0.4m/s^2 for each extra m/s you are falling down (with the terminal velocity therefore being 78.4m/s). I compared a longer, simulated trial with these exact numbers to a trial of the game's gravity without the slowdown effect to reach near terminal velocity, and the position was within 0.001 of the simulated position. Graphing the calculated values from the g=2*h/t^2 approxmation averaging out the gravity and ignoring air resistance yielded the same result, a perfectly smooth graph as one would expect. This weird gravity curve you discovered may be exclusive to console edition. It could also be some sort of measurement error.

    • @SovernGaming
      @SovernGaming  4 роки тому +1

      Fascinating! I really don’t know how I got my results, but I have replicated them two more times, so it must not have been a fluke. I wonder why there is the discrepancy between what I got and what you found with the more concrete values from in game

  • @EmanueleShows
    @EmanueleShows 4 роки тому +1

    This whole video, especially the part at 9:50, gave me strong pannenkoek vibes. I was expecting you to throw in parallel universes the whole time.

  • @ImTakingYouToFlavorTown
    @ImTakingYouToFlavorTown 4 роки тому

    Yo, I've been waiting for this.

  • @petersmythe6462
    @petersmythe6462 4 роки тому

    You can reach terminal velocity when skydiving because the air gets thicker as you descend. Also because if you change your orientation you change your drag which changes your terminal velocity, so you can in fact reach or exceed it.

  • @glorytoarstotzka330
    @glorytoarstotzka330 4 роки тому

    the amount of time you've spent doing measurements and this- video is amazing

  • @tunnfisch7548
    @tunnfisch7548 4 роки тому +1

    I have to say I respect your effort to get the height value in Minecraft.

  • @spartanwar1185
    @spartanwar1185 4 роки тому +1

    I believe the reason gravity is heavier in games is because of this:
    Perspective
    It would definitely not feel the same if you actually were there jumping or not
    I can't describe it but we either feel smaller or larger in video games than we do in real life, or something akin to that
    So games have to work around that altered feel a little
    On top of that, as someone who has tried to make a good jump before
    We usually try to make meaty hefty jumps, so high gravity and high jump height usually achieves that effect, it's just so it feels good to jump
    Besides, nobody would want to jump if it felt as awful, wimpy and exhausting as it does in real life (then again i don't exercise as much as i want to so that part is probably just only on me)

  • @irmaos500
    @irmaos500 4 роки тому +2

    Pretty Cool video, Hope you do some more testing like this in the future. And, Did you use Gravity Rush OST at 38:39 but didn't test the game?

  • @whydoineedthisB
    @whydoineedthisB 4 роки тому

    I didn't expect a sequel, loved the first one

    • @Astrobay13
      @Astrobay13 4 роки тому

      He literally said it several times in the first video, he split it in two parts 😂

  • @hedgehog3180
    @hedgehog3180 4 роки тому

    I think the thing about the jump height is that in games jumping acts as a stand in for other forms of movement such as vaulting or climbing. It's obvious that you should be able to traverse a 1 meter high wall without much issue but irl you'd either vault it or step up it and then jump down on the other side. Now some games like Arma do have vaulting but the majority of games don't, and this means that jumping becomes our default option for scaling medium height objects, which leads to these weirdly high jumps which require high gravity to compensate. You jump for anything that's larger than a step more or less which irl you'd just take a long step over. But traversing these things IRL requires a lot more conscious thought than just taking a step so in game we need them to be a separate action, especially because in a shooter you might also want to use it for cover. In Minecraft it's even more obvious, jumping up 1 meter tall blocks is how you climb things and you need that to be a conscious action since again irl if you were trying to scale a steep hill you'd be putting conscious effort into doing so. That's why the jump has to be the way it is, and of course for going down irl you wouldn't be jumping every meter you'd be stepping down every meter so you'd barely have any air time and that's why Minecraft needs this really high gravity for small falls.

    • @ChucksSEADnDEAD
      @ChucksSEADnDEAD 4 роки тому

      I agree with this, a 50cm jump while loaded with gear would make most maps impossible to transverse because the feet would only clear 50cm at the peak of the jump, essentially causing the player to constantly get stuck even on 30cm ledges. On real life, one clears objects by not just using the jump but also raising the front leg to touch the object and then boosting with the rear leg. This makes it possible to go over reasonably tall objects without performing a "vault" so it's more natural to allow it to happen in game with a jump.

  • @tanookimariorocks
    @tanookimariorocks 4 роки тому +2

    Since you play Minecraft on Xbox, you can see coordinates and access commands on Xbox for more accuracy

  • @Ash-bx6kq
    @Ash-bx6kq 4 роки тому

    Damn, that destiny 1 gameplay really took me back

  • @petersmythe6462
    @petersmythe6462 4 роки тому

    Robocraft changes gravity and atmosphere characteristics between Mars, Earth, and GJ-421b or whatever it is. The consequence is that it's possible to design vehicles that perform well on one map but don't really function on the others.

  • @dsdy1205
    @dsdy1205 4 роки тому

    22:18 Makes sense if CoD actually does a rudimentary traction calculation for the snowmobile chase, since traction force is proportional to the force pressing you into the surface, i.e. weight

  • @BolarolaBoi
    @BolarolaBoi 2 роки тому

    I think one thing to take into consideration with jump height and why it needs to be inflated so much is because in real life, you can raise your legs to reach higher spots. A lot of the obstacles you couldn't jump over in the video likely wouldn't even require yourself to jump in real life, you would just have to step upwards. In order to allow people to go upwards about as much in-game as you would be able to go in real life, the jump heights need to be way higher.

  • @adamnielson42
    @adamnielson42 Рік тому

    19:43 those jump types are very different though, the flop that high jumpers do can actually make it so that their center of gravity is always below the pole they clear, while the guy jumping on weights needs his center of gravity to be above the weights.

  • @petersmythe6462
    @petersmythe6462 4 роки тому

    One game that does have accurate gravity (unless you hack it) is Kerbal Space Program. The one caveat is that it has weird implications about the density of planets (since without mods they're around 1/10th the scale of Earth) or the gravitational constant (since a higher gravitational constant eliminates most of the need for absurd densities).

  • @grantlauzon5237
    @grantlauzon5237 4 роки тому

    The screen slows down when you get near the ground when moving quickly (damage taking speed) in Minecraft. It’s like a smoothing animation like Portal.
    That could explain the hump.
    I also got a (crude) g=3.22
    Also everyone else already said f3... I played on XBOX (bedrock) but had the same stat. But I didn’t have capture equipment so I used a slomo setting on my phone and filmed the screen.

  • @AdrianHereToHelp
    @AdrianHereToHelp 4 роки тому

    I still can't believe I found such a high quality channel from Lego: Star Wars

  • @klooger28
    @klooger28 4 роки тому

    That was actually a pretty solid pit run, most people struggle somewhat to get sub 20, not bad.

  • @spindash64
    @spindash64 4 місяці тому

    Actually, im pretty sure drag SHOULD scale appropriately to match:
    Force_Drag = Coeff_Drag*Area_Ref*Density_Fluid*Velocity*Velocity
    Acceleration is Force/Mass
    0.5x length scaling gives 0.125x weight, and 0.25x frontal area
    Since mass and gravitational force scale at identical rate, gravitational acceleration is constant.
    Meanwhile, while the _Reynolds Number_ of an flow (basically a ratio of how much you're shoving thru the air vs how "sticky" the air is) will decrease with decreasing scale, but a simple 2x change in scale wont create a large enough change in this number to dramatically change the Drag Coeff, especially for a very rough and blunt body at roughly human scale and falling speed. In fact, it's possible for our Drag Coeff to slightly _increase_ with this drop in Reynolds Number
    As such, the drag FORCE at any given speed is roughly quartered, but the drag ACCELERATION at any given speed is roughly doubled. Ergo, terminal velocity is halved, matching our half scale
    To give a practical, real world example, a large mouse weighs in at around 50g, between 1/1000th and and 1/2000th the mass of a person. That checks out to being between 1/10th and 2/25th of the linear scale of a human, and a frontal surface area crudely between 1% and 0.6%, and this suggests a mouse's terminal velocity should be _around_ 1/10th that of a human
    Mouse (according to online values): 8m/s
    Human: 50m/s
    So not a perfect match, but considering the difference in shape between a mouse and a human AND the crude numbers, it's still obvious that Terminal Velocity decreases with reference scale
    Unless that's exactly what you were trying to say and I'm just bad at comprehension. In that case, i think drag is artificially buffed specifically to keep collisions with reasonable speed bounds, rather than needing to check at real world terminal velocity

  • @austinbevis4266
    @austinbevis4266 2 роки тому

    I love how when it comes to videos games, some people just go full blown physicist

  • @Just.Kidding
    @Just.Kidding 2 роки тому +1

    26:13 Ah, a CoD player's typical experience trying to play CS:GO

  • @tnk4me4
    @tnk4me4 4 роки тому

    What I love as a pop culture reference is that delta snap = crackle and delta crackle = pop.

  • @overestimatedforesight
    @overestimatedforesight 4 роки тому

    Fascinating stuff.

  • @EvanOfTheDarkness
    @EvanOfTheDarkness 4 роки тому

    Jump height is doubled (or sometimes quadrupled) in games, because you can't *climb* over obstacles, jump height is effectively your real world climb height. As you said gravity is adjusted, so jump *times* feel consistent (but play Skyrim just once in VR, and the moment you press the jump button, you're flying!).
    Cars flying is just the result of them being balanced for the "higher" gravity. Everything must be super light, to balance out the high gravity, to the point where their own suspension can send the cars flying in normal gravity. I doubt that drag is calculated based on actual weight, its probably just a straight decrease in gravity over time, but if it is, low weight could explain the high drag values.

  • @caderidley2309
    @caderidley2309 4 роки тому +3

    "It's as likely as you the viewer being a female..." oh so 50%?
    "... and subscribing to my channel" nvm those must he some spot on measurements

  • @HenrikMyrhaug
    @HenrikMyrhaug 4 роки тому +1

    99%of games don’t have air resistance.
    They just accelerate really fast, and at a certain velocity, stops accelerating.
    You are assuming the velocity graph would be a curve (like in real life), but this would be much more difficult to program. Programmers make it easy for themself by programming falling velocity as
    V=g*t
    and then programming a velocity cap.
    In some cases, they change G at a certain velocity, but that is rare.
    In most games, the graph of v looks like this (y- axis is v and x- axis is time):
    _________________
    /
    /
    /
    /
    Because you assumed g is constant for your earlier tests, after V hit the cap, you got lower and lower values for g the higher you jump. You then assumed the reason for the seemingly decreasing G was air resistance.
    Many games look like you keep accelerating, because the camera keeps zooming out, and this is done to make it look more realistic.

  • @YaddleGaming
    @YaddleGaming 4 роки тому +7

    Jerk and Jounce sounded so made up ^^

  • @Virsho
    @Virsho 2 роки тому

    19:18 I was playing with trypods like they were muskets another day

  • @leerypixel
    @leerypixel 4 роки тому +1

    14:00 you can do a tp up on the Y x and z exes

  • @Mr.YeeHawMan
    @Mr.YeeHawMan 4 роки тому

    Here's a little bit of information on Minecraft Steve's physical strength one cubic meter of solid Stone weighs approximately 2.5 to 3 tons according to Google going with the weight of 2.5 tons one stack of cobblestone would weigh approximately 160 tons assuming that cobblestone has either the same or at least a very similar density to real life stone

  • @robertharris6092
    @robertharris6092 4 роки тому

    @18:51 carrying a gun? Your average soldier carries arpund 80 pounds of gear.

  • @AnUncleanHippy
    @AnUncleanHippy 4 роки тому

    I would suppose Halo doesn't have a terminal velocity, because in the background of falling there is a timer, where if you surpass that time in the air (even travelling upwards) you will just be killed. Because of this, Bungie probably never felt the need to introduce terminal velocity since any fall that would get you remotely close would just kill you with the fall timer anyway. Basically, it doesn't exist because there's no need for it to.

  • @Endermyne2
    @Endermyne2 2 роки тому

    14:28 I’m deffinetly not the first one but Minecraft has a coordinate screen with very precise data (in Java) seeing as your using bedrock the coordinate screen is less precise but still quite helpful (love the vid tho it’s all great stuff)

  • @SalveMonesvol
    @SalveMonesvol 4 роки тому

    Just what I needed.

  • @DerAua
    @DerAua 4 роки тому

    Fantastic. Thank you.

  • @jort93z
    @jort93z 4 роки тому

    32:00 overwatch has a map that is set on the moon and when you go outside you are in moon gravity. Makes no sense, since it is just a moonbase that has higher gravity, but it is kinda fun.

    • @igorthelight
      @igorthelight 4 роки тому

      Base probably have artificial gravity generators :-)

    • @jort93z
      @jort93z 4 роки тому

      @@igorthelight Well, thats not something that exists ofc, but if it did, it would also affect outside you'd think.

  • @SianaGearz
    @SianaGearz 4 роки тому

    Wait. I am female and subscribed to your channel.
    The reason Assassin's Creed has a terminal velocity that is quickly reached, is that it has a guaranteed streaming and geometry LOD replacement rate which should not be exceeded, or bad things WILL happen. In all big open-world games, you will break them at least visually if you move too fast and if you're on a console or a minimum-spec PC, and the maximum speed limit really isn't that high, because the lower you can keep it, the higher you can ramp up the world detail, which is particularly relevant for games which are very visually focused and less gameplay optimised. This maximum velocity can differ between horizontal and vertical, which can allow for more leeway on the terminal velocity. It's often just a hard clamp, jerk etc be damned.
    Walking down the stairs when you have standard gravity but no legs (are a capsule) is kinda extremely rough :(

  • @YaddleGaming
    @YaddleGaming 4 роки тому +1

    Why didnt u use the given y-coordinates by pressing F3 (or f5 im not sure) in Minecraft?

  • @calebchoi6517
    @calebchoi6517 4 роки тому

    14:15 mixes units with his error bounds

    • @SovernGaming
      @SovernGaming  4 роки тому

      The “in” means in, as in “I travelled 1 mile in 5 minutes. Sorry for the confusion/ambiguity

  • @5GentleGiants
    @5GentleGiants 4 роки тому

    Tha call if the void so tempting

  • @mrspecs4430
    @mrspecs4430 4 роки тому

    was just wondering if you've ever heard of the debug screen (F3) but then you said "...holding the A Button"

  • @AKKK1182
    @AKKK1182 2 роки тому +1

    19:40 I don't get this comparison. The soldiers in game are not vaulting, they are jumping. If anything the running jump would be lower because you would have to you know, be running.

  • @Drawoon
    @Drawoon 4 роки тому

    you do actually reach terminal velocity IRL. As you get closer to earth, the atmosphere gets denser so terminal velocity gets lower, and if you're falling from high enough it passes your speed.

  • @tunnfisch7548
    @tunnfisch7548 4 роки тому

    I think making a game with realistic gravity and air resistance which feels good is totally possible but it requires a really good and fledged out vaulting system to compensate the low jump height. It's not like a human is not able to climb over a 1.5m tall wall, he just can't jump on the wall.

  • @SilaDrenja
    @SilaDrenja 4 роки тому

    for minecraft, press f3, that'll give ya coordinates and you can use y coordinate to calculate the exact height. also, /tp to teleport up

  • @YellowBunny
    @YellowBunny 4 роки тому

    On PC you can get to an exact height with teleport commands and also see your exact height by pressing F3.

  • @DarkIzo
    @DarkIzo 4 роки тому

    ah the mw2 trash talk and the hotline miami soundtrack
    bless

  • @deadmanrang
    @deadmanrang 4 роки тому +1

    Pervert: Hey, you know what jerk is? 😁
    Me: Yeah, a change of acceleration over time

  • @nosferatu9561
    @nosferatu9561 4 роки тому

    Wait i am indeed subscribed to your channel!!!!

    • @intensellylit4100
      @intensellylit4100 4 роки тому

      Its skewed because all his viral videos. (I think)

  • @Vanuma25
    @Vanuma25 4 роки тому

    Nice Video

  • @bvg129
    @bvg129 4 роки тому

    Hope one of the developers of mentioned games will stumble upon this video and tell you how they did gravity in game.
    Tbh, terminal velocity could be simply implemented just by "

    • @bvg129
      @bvg129 4 роки тому

      @@bakedpotato_1396 Where?
      I can ctrl+f username of the reply

  • @monad_tcp
    @monad_tcp 4 роки тому +1

    11:41 oh my god, such a roundabout way to avoid naming derivatives ! Its easy, just do an integration, lol, easy to those who know a bit of calculus.

  • @Jesse-fd5bv
    @Jesse-fd5bv 4 роки тому

    Good video.

  • @Drunken_Hamster
    @Drunken_Hamster 10 місяців тому

    Have you found much discrepancy between first and third-person games? And, as a personal request, could you please detail how gravity and air resistance work in the Prototype series?

  • @RoamingAdhocrat
    @RoamingAdhocrat 4 роки тому

    Can't believe you introduce `snap` without going on to introduce `crackle` and `pop` ;)
    The sequence is:
    Distance, Velocity, Acceleration, Jerk, Snap, Crackle, Pop

  • @mart3625
    @mart3625 3 роки тому

    What about assuming air density changes with heigth

  • @PineapplePizzaGaming
    @PineapplePizzaGaming 4 роки тому +5

    This guy found a use of what we learnt in math class

  • @adamk4775
    @adamk4775 4 роки тому

    doest it not show the Y access ones you pass Y 256 in Minecraft ?