Video není dostupné.
Omlouváme se.
Essential Mathematics For Aspiring Game Developers
Vložit
- čas přidán 17. 08. 2024
- This video outlines what I believe are some of the core principles you need to understand to make dynamic computer games, covering vectors, angles and motion. I've tried to present it in such a way that highlights the relationships between these principles, so you can identify when to use one or the other, or combinations of them. It is by no means an exhaustive list, but gives the beginner/aspiring games programmer a place to start.
Patreon: / javidx9
CZcams: / javidx9
/ javidx9extra
Discord: / discord
Twitter: / javidx9
Twitch: / javidx9
GitHub: www.github.com...
Homepage: www.onelonecod...
Due to some IRL scheduling issues, my videos are a bit out of order. Anyway, I hope this helps all those that have asked me about "maths for games programming" over the last few weeks. Take care, stay safe!
Great Video. Well I guess basic knowledge of Physics like Motion and Optics will also help.
This is the best video, I really wanted something like that, thanks
thanks a lot!
I recently begin watching your videos and I really like how clearly explain the concepts. Here will help us some knowledge of linear movement, but the idea is very clear... thanks
(opinion, by someone who pass by to time to time)
I've heard this expression (don't remember when, but was said by one of Joe Rogan's guest) "...people tend to have something called the learning curse..." which means that people usually tent to avoid information because they believe everyone knows that kind of information.
First of all I find this video amazing to all the people who want to dive into math for game programming. But by watching your youtube feed some of the titles seem kinda alienating or the content is way too specific.
Some comments for sure will have excellent content for beginners, but we are all here because it's one of yours.
Anyway I really like the video and it will be nice to see similar content like this one in other areas.
Pythagoras' Theorem 0:30
Vectors 4:29
Angles 13:04
Sine and Cosine functions 19:12
Dot Product 24:09
Linear Interpolation 35:07
Simple Motion 40:26
Optics is also necessary.
Javid should add this to the video description now that youtube can create video margins.
Pin this comment
UP UP UP UP
Headache 47:06
I think you chose the right angle to start this series on.
That joke was a sin().
@@sheepuff5999 I wave goodbye to you....
si(g)n..
a slight tangent, but that was almost acute joke
don't try angle jokes
It seems like he's getting in shape
He's gonna be all jacked next flick.
Also noticed!!
@@vgarzareyna r/woosh
@@crapyguy1234 Go back tor eddit
@@Xperto_ butthurt noob
For the first time in my life math actually made sense, and I enjoyed every second of the video. Thank you so much for actually sparking my interest in maths.
RHCP album cover
Consider that this is "simplifief" math! If he had to go trough all the demonstrations he would've bored the spectators.
These topics are not even that hard
That's constructive...
Make your words my words dude! Thanks so much javidx9!
I may not benefit from this video in particular, but I like that you made it, each one like this is another barrier removed for aspiring programmers. And thank you again for all the others. I hope you feel appreciated, because you are.
Why couldn't the angle get a loan?
His parents wouldn't cosine
This is like the missing puzzle on the youtube when it comes to programming tutorials. Appreciate it!
Yes, those hundreds of BEGINNER tutorials then they stop uploading what to do next
A good book I'd recommend is: _Foundations of Game Engine Development: Mathematics_ by Eric Lengyel.
Not a paid ad and no relation; it's just one of the better books I've read that I'd recommend.
Thanks for sharing, I'm gonna read this book.
I had a professor recommend me _Game Coding Complete_ by Mike McShaffry. I highly recommend that if you are at an intermediate or above level of programming.
Sorry to necro this but are the explanations complete? Like are there proofs for every procedure presented, for example, inversing a tangent function out of nowhere?
@@daniboy2619 The book is intended to give you understanding on what things are (e.g. quaternions, vectors, matrices, etc), how they work, what things mean, etc. It has good explanations on how things relate to other things (e.g. quaternions to matrices) and so on.
It's not a _pure maths_ text book; it's a text book about math, but _focused_ on and aimed at game development, so you must understand that maths here are a means to an end, not an end in and of itself.
it's a great book, but the grassman stuff towards the end gets pretty hefty
I think it's impossible to be a programmer without liking math. Math is logic, programming is logic. The thing is high school math is a bunch of formulas. People don't see the logic behind it, and that's why I think aspiring programmers hate or fear math, but once you start programming, you inevitably starts seeing the beauty in mathematics.
agree 100%
I couldn't have put it better myself.
Well, if my teacher in high school would make an example to use these vectors, like in a game, I would've actually payed attention. I just had a hard time learning things that I did not see any purpose at the time, but now I see why it's important. Very good explanation!
Same bro
Same. Math is more understandable and enjoyable if they could connect it to a game. Would've love math fr
L mindset
@@Untoldanimationsmore like L education system
@@JungoFunko if you have access to the internet you can’t blame your education system
Easily the clearest, best explained yet most concise maths for games video out there. Well done! I really like that you included actual applied examples for everything - why doesn't everyone do that!?
Anyway you've gotten a sub out of me for this video alone!
Hey thanks Isaac!
For the first time, I have understood the use of high school mathematics in a practical video game.
Thanks for sharing ✨✨
Cheers
It's more like middle school.
that's not high school maths
@@antongerasin3871 ?? a lot of this is not taught in middle school and if it is its probably in brief..
Wished all your contents were available 20 years ago.
its avaliable now
why?
I'm loving this video lesson. Having an understanding of Math & Trigonometry becomes a MUST when you want to make videogames as I would like (in a professional way), and it's something that it's not frequently trivial for us programmers to approach. This video puts lots of clearance on these subjects in an intuitive and metabolizable way.
Great work, man. Thank you!
Hugs from Argentina.
Spent the last three months of lockdown relearning all the math I forgot from school and college so this is very timely
For what?
@@andso7068 it's good to not forget Maths
He is 47,so it's not surprising
@@Tech.Library It doesn't mean that everyone over a certain age forgets mathematics or physics, or whatever.
me too! I exempted all my math in college, so I haven't actually studied this since the late 80's!
Possibly the best and most straight forward explanation of a vector I've seen.
Javid, you are the man. This breakdown and your visualizations are going to help so many people young and old, where the classical teaching methods would cause a severe disinterest. Know you are very much appreciated!
This channel is a gem, all these videos need to be released on DVD so they're preserved for far into the future.
Your videos are awesome but each time you post a new video I feel discouraged to start my own channel because, well, you basically cover every topic and much better than I could. Otherwise, your channel is really a golden nugget in the youtube game
Thanks, but don't be discouraged - everyone has their own way of putting a spin on things, when my stuff doesn't click with viewers, chances are someone else's stuff will, it's always good to have a range to choose from as people have different ways of absorbing information.
@@javidx9 You're a legend.
Go for it, because the level at which you 'can' teach will appeal to people who absorb information in a different way; people function best under differing methods from others and that's why you find you'll click with some teachers but not with others (just like college or school math). I started a math channel in another account a few years ago and did only one video ( like you I hesitate to start it up (again) ). It was such a simple video but I still got people thanking me for clarifying things for them and helping them through tests. If you bring your own experience of how you solved problems to your audience it will help other people who similar obstacles.
That example with the platformer game really helped me get my head around normal vectors and dot product. Thank you.
There is a second important difference between atan() and atan2(): atan2() has a larger range of outputs, as simple atan() cannot tell the difference between x and y being both positive and both negative, while atan2 can. atan() will return a number between -pi/2 and pi/2; atan2() will return a number between -pi and pi.
This is a second important reason to use atan2() when dealing with screen coordinates, as atan() will never return a direction pointing left of the origin.
I'm not even aiming for game dev, but studying math and this is by far one of the clearest explanation I've heard regarding unit vectors and how they are used, dot product etc. Linear algebra dealt with this only in terms of functions so it was hard to understand their practicality. In fact I only understood how vectors were orthogonal or perpendicular or going in opposite directions by algebraically manipulating the formula we were given, i.e. cos(theta) = (v1*v2)/ (magnitude v1 * magitude v2), but your example with the unit circle has shown me exactly 'WHY' a dot product of zero means an angle of pi/2 between the two vectors and so on. This has clarified so much. Thank you.
1 useful tidbit: calculating square roots are computationally expenisive (usually nothing huge but many times per frame could cause problems. Of course you should profile and consider your project's specifics). If you can avoid them its usually worth doing. For instance if you are comparing vector magnitudes to see which is larger it would be preferable to square the right side of the equation rather than sqrt-ing the left
8 bit game development taught me a lot about maths. Doing trig in 256 segments and sines thereof taught me about fixed point arithmetic, Pythagoras taught me about binary shifted multiplication and division and did you know that there are always 2 more rounded integer square roots than the previous square?
I punished my step-son for skipping his maths homework by teaching him trig and giving him a 3 dimensional robot arm problem to figure out what angles to set at each joint to move the end to a given x,y,z co-ordinate. I did it too well though - after we'd gone through it, he asked me to give him another one!
The importance of math in game design is really understated. Unity only shows euler rotations as positive numbers from 0-360 and I needed it to be to be from -180 to 180 for error handling so that if my door overshot and went below 0 when it was closing I could manually snap it back at zero. I then remembered about piecewise functions, added one where basically y = -(x - 180) if x is >= 180, and it fixed everything.
Great thinking! Will definitely be needing this when working with Unity.
Being currently in software engineering, i find it nice to see all those concept, that i learned formally in physics and mat classes, applied to programming and game logic. Very nice, concise teaching. Love the video, keep em coming !
Thanks Chris, will do!
I keep watching these and hoping that my brain just switches on one day. In college I actually happened to learn enough about vectors and complex numbers that I could solve the tasks in the text book but I fear that I didn't deeply understand it but just learned coping mechanisms that worked well enough for solving the simple tasks at the time. And it was quickly forgotten. I tend to not stay focused on something for too long before I find something other to do.
The order in which you taught this and how each topic merges seamlessly into the next one is perfection. Excellent work!
Best channel for C++/coding hands down. So much good content, great style, always deliver. Thank you for all your hard work.
I remember making a car drive on the screen using the angle en COS and SIN. But then I needed to work out collision, and that proved to be difficult. Especially when the thing my car was colliding with, would also collide with something else.
You are programming hero
I'm always floored by your videos. They're so well organized and the logic flows from one point to another perfectly. Sometimes it's hard getting my head wrapped up in details and these fundamental building blocks are a phenomenal way to refresh/reorient my perspective to help me understand what's going on. Your channel is so awesome, I appreciate it more than I can explain.
If someone asks about math required for electrical theory, show them this video. It's all triangles and unit circles.
Also, that shortcut of seeing the relation between things (starts at 1, starts at 0, starts at maximum, starts at minimum) is very useful when trying to use an angle for something but not understanding exactly how it should be drawn as a problem. For example, if I know that I apply maximum force on a rope when I pull at an angle of 0, I should probably use cosine to calculate how hard I'm effectively pulling when I'm at a slight angle. I tutored a few kids in high school math and that shortcut helped a lot of kids solve problems they otherwise couldn't conceptualize.
Man I was very good at this stuff in high school but now I haven’t used it in 15 years and it hurts my brain. Another one of those situations though where back then you think when am I going to use this stuff, and here I am...extremely relevant even in the early stages of game development. This helped me understand how to solve the problem of my character moving faster when moving diagonally. Thank you!
Maths is absolutely "use it or lose it"... its frightening when I think back to doing maths quite competently at degree level, and now struggle to differentiate a polynomial XD
I had so much trouble finding an algorithm for finding an arbitrary point on an arbitrary line, but you just made it so easy. You're such a legend.
A simple optimization you can make for the first lesson about Pythagoras, is that you don't need to take the square root of the right side of the equation. Instead square the distance you are comparing, so "(c < 50)" becomes "(c < 2500)" which is 50^2.
Of course, if you need to display the actual distance to the user then yeah you would need to do that square root calculation.
I watched many videos on youtube trying to figure out what is in fact the dot product and its usage on graphics stuff... This video was the only that I got pleased! Perfect explanation javidx9!
Another use for sine and cosine, if one has cycles to spare, is to use them coupled with a continuously increasing value (such as the time a program has been running for) as the source of a simple oscillating movement:
pos = initial_pos + sin(t) * vector(0,1) allows one to make a bobbing up-and-down movement, such as a collectible pickup;
rotation = initial_rotation + sin(t) * max_rotation allows one to make something tilt left and right, such as a ship on water.
(Among other cool things, such as Lissajous curves)
Nevertheless, this video is awesome as always, and I'll definitely share it as I think these things should be more widely known. Thanks!
These are all great, it's not only great for game development, but using these in programming will significantly help with your understanding and grasp with mathematics in general. I personally began learning Python and Java in early High School, and my fascination with programming collision in particular helped me get an extremely good grasp on concepts such as sine, cosine, dot products and the such before even really beginning those subjects in my own classes. Not to mention, it made physics one of my easiest classes.
This is why I'd always recommend to younger people learning programming, and game development to never shy away from the more complex seeming subjects. They not only do a good job in teaching programming but High School level math as well.
As someone that's looking to breakaway from the doldrums of desktop app programming to writing a 3d game in my spare time this is really helpful
Thank you so much. So many people show you how to plug some numbers in but don’t explain why things work the way they do. This video explained things in a way that promotes learning rather than memorizing.
You're a great teacher and really lay everything out in an understandable way. The quality of your videos is hard to top, Big thanks!
Cheers! Much appreciated Mikey!
For Pythagorean theorem, you don't have to sqrt if you are just comparing distances. Remember, if |a| < |b| then a^2 < b^2. Computationally squaring is less intense than square rooting.
I came here because a specific feature i wanted in a game project and it helped me. Thank you very much.
Sent this to my non-programmer classmates studying Game design. Never seen these explained in such a clear way, great job!
34:51 That was genius, I was actually able to get this to work in the Unreal Engine by mapping the Dot Product to a Curve!
Loved this! Very clean and incredibly well-articulated format! Each moment of the video is a wealth of digestible information, of which amounted to several semesters worth of mathematics knowledge in a single go.
Of course, one has to actually DO the work as well for any of it to make sense! But nonetheless, it's as great a starting point as any - better than most if you ask me!
Cheers!
I can not thank you enough, This video taught me more about vectors than the other 100 tutorial videos on CZcams about this subject.
This guy explained Vectors in 9 minutes, and gave me a thorough understanding of them, something my maths teacher could not do in 2 weeks.
0:33 Теорема Пифагора
4:30 Векторы
13:02 Углы
19:05 Синус и Косинус
24:05 Скалярное произведение
34:55 Линейная интерполяция
40:25 Простое движение
спасибо!
Lovely as always, David.
Keep on doing more educational vids, please.
Thanks.
Great video; took me from having a superficial understanding of vector math to at least feeling like I understand how to properly use vectors in game development. I'd love to see more videos like this, perhaps a deeper dive into some of the topics presented here.
Why have I not try to understand this more, awesome video, I just learned some of these a while ago, I will continue to learn
Every one of your videos is GOLD.
Thank you, thats very kind of you to say!
Couldn't agree more. They're always very informative, well-structured and also pleasing to watch. Bravo!
A whole course in a lunchtime. I wish this would have been available when I started. Even now it makes the jumble a whole lot neater. Thank you so very much for this. I will return here many times.
Bless you, your family and all your friends. I've been hoping for this video for months now, I think I left a message about it once but I cant remember now.
Have a great lockdown!
Aaaaand once again Javid goes and teaches everybody what it took years for me to teach myself. Nice. ;)
You're absolutely brilliant. This has been a great tool to review math I learned years ago as I apply for game dev positions.
The section on dot products is explained so much better than any math lecturer did in my time at University
To point out, Pythagoras' theorem works with 3 and I'm pretty sure any number or variables so 3d distancr is just dist=sqrt(a**2 + b**2 + c**2)
Excellent video on the really useful math stuff without the boring details.
BTW (to the general public):
Angles in degrees look easier because we can do most of it with integer numbers instead of dealing with the "irracional" Pi, but also out of habit, because we get familiar with degrees as kids, way before the concepts of PI and radians could make any sense. When we learn to read maps, use a compass or basic geometry, its all in degrees.
Also degrees are a bless for navigation, latitudes, longitudes, hours, speed (in knots) this all make for easy calculations with simple numbers.
But from a stand point of maths, already high school level, radians make more sense because PI unifies the relationships between the radius of a circle, its perimeter, its area and also the surface and volume of the sphere. not to mention that computers approximate the value of trigonometric functions using series, that yield results in radians.
And there is still a third unit of angular measurement, the "gradian". Its a more obscure and less used one. I only have seen it in use once, in the army, for calculating the elevation angle for a given distance to the target of an artillery piece.
Just ran across this, I really struggled with math in school, now that I'm older I wish I would have had someone to guide me through it. This is wonderful information, it makes a ton of sense, I've stopped along the way and looked up individual topics to get a deeper understanding. This shows that even us old people can learn something new. Thank you :)
before watching this i only had knowledge of trigonometry and polar coordinates, and i learnt how the vectors work(which i skipped in school because they don't know the way of explaining)😅, thanks for the video you explained vector very well 🤝🙏🙏🙏
Linear algebra and trigonometry you simply can't do without..but it shouldn't stop there, all math is useful. Become a math master and your games will truly shine.
Pretty amazing. I am in the process on making a 2d scrolling engine from scratch, with no knowledge on how to do it. I happened to figured out by myself a lot of what you say here except for the angles part. Your explanations makes a lot of sense and will help me to make a better code has now I better understand my intuitions. I had totally forgotten everything about vectors that I learned at school but somehow I used them anyway in a nasty way that I can clean up thanks to the fact you remind me of them :)
Arrrrrg, my brain!
Reminiscent of attempting to wrap my brain around quaternions a few years ago for a space themed game and coding the pitch/yaw/roll of the ships.
Thank you for the explanation. It's simply the best I've seen on this subject.
If I find a better explanation, I'll edit this comment. So if you're reading this, then it's still the best.
Fantastic. I hoped you’d speak to this topic. Kudos sir. Hope you and yours are doing well during these crazy times.
Thanks Tom, we're doing just fine, but crazy times indeed. Stay well!
I know most of this stuff , but the way you discuss it , is so enjoyable which I couldn't stop watching. great job.
That was the best explanation of the basics of Vectors and so on for the ones new to Game Development. Bravo !!! You are the best.
One of the best ways I've seen of understanding sine and cosine is that they're coordinates of a point at the edge of the unit circle
Brilliant video!
Please never stop! Your videos have made me love C++!
you're an OG for explaining the oldschool notation for vectors! thanks a lot for that
i don't understand traditional math/algebra notation, always need pseudocode to understand what is being said lol
Love the videos - Who needs to go to university when there's guys like this on CZcams ? Really appreciate the neat diagrams and concise explanations . This guy's a better lecturer than any i had (Studying chemistry), and payed £9000 a year for!
Your explanation is great! I liked how you explained some basic stuff involving tasks from gamedev. That sheds light on some aspects of how to use knowledge gained during math courses. Thanks a lot!
Sir, you're one of the most wholesome guys in not only the field of programming and computer science but the whole of CZcams, thank you and please keep up the amazing work
I'm always freaking out when I see the time on the bottom right corner and realize it's OLC time, not mine... Great summary of the basic maths for video games!!
XD its worse when im editing and do it to myself...
This video is reviving so much knowledge from my student days... It turns out I remember so much of it. Thanks for that.
I love the examples for each part to make it easier to understand the usage...
"If I wanted to do math I would become a math teacher... I just want to make games!" -any aspiring gamedev
Poetic justice it's called.
it is true, but what you got wrong here is the definition of "make games"
I'd argue that only a *gamer* would expect not doing math
if your aim was to make or build them, then it's incredibly shallow to expect you can do it just by fantasizing great worlds and characters, swords, spells and events. there is a great deal of technicality involved, from understanding geometry and trigonometry, to statistics and linear algebra, and further down to computation issues like data structures, memory management, randomization and encryption, file systems, design patterns, APIs, algorithms, and after all said and done, you still need to be tactful, appreciative of human cognitive and emotional psychology, computer usage practices and user experience in general, general arts and architecture, humanistic design, storytelling, and finally game design.
so I'd argue that whoever thinks like that is not an aspiring gamedev, but an uninspired lazybag.
and this is why it seems to be contradictory, when in fact it was a fallacy and severe underestimation from the get go.
nobody ever said that everybody should make games, and making them was never EASY to begin with. to play them, sure. but if you can't keep all of this inside your head and close to your heart, maybe there are other jobs out there that you might find more suitable.
@@milanstevic8424 Okay I was with you until you said encryption. Why would you ever need that as a game dev? I mean if you're working for a large studio and can't afford to have source leaks, sure, but your company will probably hire security experts for that.
@@magdiel6709 it sounds wrong nowadays, but encryption is not exclusively for security.
it has everything to do with data encoding, even wikipedia says "encryption is the process of encoding information" but modern usage makes it appear exclusively in cryptographic context.
in fact, you can almost consider this a typo and read it simply as 'encoding'.
regardless of how you use it, the mathematical concepts behind it are unavoidable. in its most basic format encryption is just a substitution. therefore even JSON is encryption.
but one may go a step ahead: JPEG is an encryption just as well (with more merits). it's just that these formats don't do much in terms of data obfuscation to any potential decoder. however try to read it as a human and it becomes painfully obvious that your sister's wedding picture is written in a cryptographic manner.
not knowing how data compression works, not knowing how to save game state, not knowing binary trees, or checksums, or CRCs, regardless of whether you need them or not, is equivalent to not knowing binary values themselves. such underappreciation leads to poor decision and poor performance. and there is a reason I have mentioned encryption right next to randomization and file systems, there is a huge deal of overlap.
saving game states in an efficient manner, as well as organizing memory accordingly, to minimize heap access frequency and maximize throughput, always assumes encoding and some form of data encryption, and is paramount for game programming.
@@w花b first try then preach, it doesn't work the other way around. you can prove me wrong at any time, just try to actually make a game first. pick your engine and do it.
This channel is one of those hidden, rare treasures we should all protect as a blessed relic of the internet.
Extremely useful even for someone not into game development but rather the engines and tools to facilitate it. Thanks so much for this content!
Love it. I am a game developer and this video is spot on. The better understanding of this math will make a large difference trying to understand game development.
Thanks. these concepts were not too difficult to understand.
If c < 50 then attack! Example, if you don’t take the root and make 50 50^2 you can save on some processing time
I'd like to add that there are two ways to perform linear interpolation. Both essentially do exactly the same but have slightly different numerical properties due to precision limitations of floating point numbers.
The first way is essentially the "vector" approach as described in the video. So we essentially calculate the vector from the start to the end, scale it by t and add it to the starting point. P(t) = Ps + (Pe - Ps) * t
One issue with that approach is that even when we pass in a perfect "1.0" as t, the outcoming point does not necessarily equal "Pe". There could be a slight error. This approach generally gives the best result to actually stay on the line but the end result might have a slight error
The other approach is to calculate the "weighted sum" between the start and end point. This is just a reordering of the same equation, but always yields the correct end result at t==1.0. P(t) = (1-t) * Ps + t * Pe
Here we simply have two inversely proportional factors (1-t) and (t). At a "t" value of "1.0" the first factor will be 0 so contribution of the start point to the result is zero. This will ensure that P(1) == Pe and (0) == Ps. However this approach at some extreme values for Ps and Pe might not represent a perfect straight line. So the numerical unstability here affects "the way in between" but not the end points while the first approach gives the best line approximation but might have issues at the target.
The second approach is also how linear alpha blending on the GPU is performed. The two factors that are commonly used are SRC_ALPHA and ONE_MINUS_SRC_ALPHA. This weighted sum approach is also often used in more complex interpolations like Bezier curves. Bezier curves are fundamentally just multiple nested linear interpolations over multiple points.
en.wikipedia.org/wiki/B%C3%A9zier_curve#Constructing_B%C3%A9zier_curves
Well.... as i never even had vectors in school and sin cos and tan where rarely needed. This is very informative but also alot of information. Gotta watch this multiple times and work practically with the Formulars.
Hope you do more complex stuff similar to this, these are the very basics.
Its essential math for aspiring game devs, what did you expect
@@FortyS something harder than preschool math
This is gold dust my friend
Another brilliant video, thank you javidx9.
thanks i was having trouble with math in school and i seem to understand better when you're the one explaining
In the last little bit of the video, you get really close to calculus -- close enough that I expected the last of the three items in the circle to be "calculus", and was a little surprised that it was "kinematics/physics" instead.
Of course, over the years, I have come to realize that physics and calculus are intertwined in ways that are very difficult to untangle -- but while it might seem easier to disintangle them, it should be kept in mind that the reason why calculus (and, for that matter, vectors, matrices, and linear algebra in general) was developed, was to *simplify* the work!
It may take time to understand these abstractions, but once they are understood, they give you a "superpower" that enables you to do hard things more easily, and make formerly impossible things become possible.
yours are among the best game dev videos of all time
A more accurate formula for the Position based on the Velocity and the Acceleration is this:
P[t+1] = P[t] + V[t] * t + ( A[t] * t^2 )/2
This is because Acceleration does not affect Velocity instantly but over time. This division by 2 accounts for that change-over-time effect on the Velocity.
Basically, we can visualize the Velocity during the frame by a right-triangle, where the X-axis is the time elapsed (or time delta) and the Y axis shows the Velocity at each point in time. The height of the triangle is the Acceleration. More acceleration - steeper slope of the triangle.
And the accumulated velocity is simply the Area of this triangle, which happens to be Acceleration * t / 2, plus the initial velocity at the start of the frame, so V + A*t/2. When you multiply is by the time elapsed you get the distance traveled.
Fantastic video, exposed me to some of the flaws I had in my ways of thinking about these topics and it really abstracted the concepts to a simple level that still conveyed a strong message, loved the examples as well. I'm sure it helps that I've learned it all before but still an amazing video! :)
I really appreciate your effort on putting this masterpiece, it really cleared some concepts that I saw them as black boxes.
Your teaching skills is gold, keep it up, thanks again!
More of like this please! I always wanted to upgrade my math level, but I didn't know how. Now I have some clue.
No questions asked,i'm watching this video my man.1 Hour,4 Hours,DOESNT MATTER!
Very nice tutorial, super simple smooth explanation, thanks a lot, deserves a big Like