Essential Maths For Beginner Gamedevs - Which Math is Useful?

แชร์
ฝัง
  • เผยแพร่เมื่อ 22 ธ.ค. 2024

ความคิดเห็น •

  • @seraaron
    @seraaron 3 ปีที่แล้ว +240

    To add to your list: I would say *Probability* theory and *Statistics* are pretty crucial for system design and making the numbers work for you (and also for understanding the analytics once you release your game). *Physics* , or classical mechanics and galilean relativity at least, is definately up there too if you're making anything real-time. And by extension, *Calculus* : since like 90% of of physics is just multivariable vector calculus. *Matrices* are also useful, though typically only if you're working in the nittygritty parts of an engine. And this last one bridges the gap between maths and computer science, but it's been sooo useful to me in hindsight, and i rarely hear anyone ever talk about it: the very badly named topic of *Functional Programming* . A functional programming or operations research course will basically teach you how to take all of the maths theory you just learned and actually turn it into useful computer code.

    • @GavenJr
      @GavenJr ปีที่แล้ว +1

      Man, multivariable vector calculus is a pain in the ass 😢
      At least, it was thanks to my Uni teacher...

  • @zambonni
    @zambonni ปีที่แล้ว +241

    I am a High School MATH teacher. This is the most AMAZING video I've ever seen to explain WHY and HOW we use math in video games. Kids love video games so this appeals to them! SUPER AMAZING AWESOME JOB. Thank you for making this. I hope this gets a million views!

    • @acertainredburnygirl5265
      @acertainredburnygirl5265 ปีที่แล้ว +10

      W teacher

    • @phutureproof
      @phutureproof 10 หลายเดือนก่อน

      I hope you don't talk like you type I don't enjoy being shouted at

    • @zambonni
      @zambonni 10 หลายเดือนก่อน +5

      @@phutureproof I DO TALK THIS WAY> BWAHAHAHAHAHAHAHAHAHA

  • @iambakuhatsu
    @iambakuhatsu ปีที่แล้ว +2

    Found a video suggested by you yesterday and ended up binging about three quarters of your vids. I feel like you have a very unique perspective among youtube gamedev channels and you really clicked with me, thanks for all the work you put into your channel, there are a few things I'll definitely come by to watch again. Hope you're well!

    • @Madbook
      @Madbook  ปีที่แล้ว +1

      Ah thanks, this really means a lot to hear! Doing well and plan on making new videos at some point (no timeline on that though...). Started a PhD so things have been 200% busier than usual (hence the lack of new videos). Thanks again for stopping by!

  • @viniciush.6540
    @viniciush.6540 ปีที่แล้ว +17

    i had my journey of learning unity and going through my education alongside one another. As i progressed in maths, i became a better gamedev, and vice versa. I think it's fundamental to learn math in order to be a good gamedev

    • @Calmdownnn12
      @Calmdownnn12 ปีที่แล้ว +2

      how much discrete math should i learn for game developing?

    • @rushikeshpale
      @rushikeshpale ปีที่แล้ว +4

      @@Calmdownnn12 it's depend on you how complex is your game. Are you want to make game more complex. The more complex game is more maths needed... Such as integration calculus trigonometry you should understand the physics like forces velocity angles etc it's more i can't explain here every thing

  • @TealComet
    @TealComet ปีที่แล้ว +44

    I learn math on my own because I knew it was somehow useful in game development, but recently I was starting to lose motivation, asking myself when/why would I ever use this super complicated formula or that property. Thanks to this video, I understand better, and I'm ready to keep increasing my math knowledge and skills ! This is an excellent video :D !

    • @lufenmartofilia5804
      @lufenmartofilia5804 9 หลายเดือนก่อน

      I felt in the exact same scenario before where I forced my self studying math for 6 month and in the end lost motivation

    • @TealComet
      @TealComet 9 หลายเดือนก่อน

      @@lufenmartofilia5804 Maybe you should start to make a small game to see the benefits of your learning? Sometimes, direct confrontation really does its job at showing you where you lack skill.

  • @UnderfundedScientist
    @UnderfundedScientist 3 ปีที่แล้ว +4

    This is the best explanation of normalized vectors I've ever seen

  • @seraaron
    @seraaron 3 ปีที่แล้ว +25

    I did my undergrad degree in maths, so I've been delighted to learn through game dev that a bunch of the stuff that I learned there finally has a direct use for me! Although, I have to say, when I found the quaternion function I was initially disapointed that the unity function basically does all the work for you, haha, then I remembered how difficult it would be to *not* have most of that be automated. So yeah I mostly agree that you need to know how to use quarternions, but not how they work necessarily, unless you're building your own game engine from scratch.

    • @Madbook
      @Madbook  3 ปีที่แล้ว +3

      Totally agree!
      It's pretty odd how out of all the places that maths could appear.. it had to be videogames where it appears (for me) the most aha

    • @UnderfundedScientist
      @UnderfundedScientist 3 ปีที่แล้ว +4

      Now I have to Google Quarternions .

  • @GameDevArtisan
    @GameDevArtisan ปีที่แล้ว +2

    Great video! I really liked the attention given to Vectors, as that seems to be where many people spend time spinning their wheels, so it's nice to see such detail given in consumable portions. Nice work!

  • @sansavatar5929
    @sansavatar5929 ปีที่แล้ว

    This guy is criminally underrated, as a beginner game dev I find this channelsuper resourceful

  • @vini_artist
    @vini_artist ปีที่แล้ว

    Fantastic! I’m learning game programming using Lua language and pico8. I limited myself in a small environment to focus on the fundamentals. Big engines can be really handy for those that know what they’re doing, but for me now, it’s like use a full car workshop to fix my bicycle. This video was everything that I needed! Thanks!

  • @RecklessRaven_
    @RecklessRaven_ 4 หลายเดือนก่อน

    Very useful video! I'm reorienting my career towards game development. I haven't done math like this in about 12-15 years. It's helpful to know what math is needed, when it's used, and why it's important. This will allow me to review the necessary math before starting my university degree in video game programming and animation.

  • @darrennew8211
    @darrennew8211 ปีที่แล้ว +2

    I will say I studied calculus for three years before I got to a physics class advanced enough that I needed it. Then I went "Oh! That makes so much more sense." It took another 20+ years to figure out why I read Great Expectations and Macbeth in high school. As for "numbers," you need to learn the limitations of floating point too.

  • @tauheedgamedev2388
    @tauheedgamedev2388 3 ปีที่แล้ว +3

    Great video, The learning never ends but vids like this make it so much easier.

  • @Robyamdam
    @Robyamdam 8 หลายเดือนก่อน +3

    Bro literally dropped a banger and dipped

  • @MrZAPPER1000
    @MrZAPPER1000 5 หลายเดือนก่อน

    10:40 yes but also because the Greeks did it with triangles. Eastern math systems used arcs and strings before triangles. Super cool history to it

  • @johntryl8009
    @johntryl8009 2 ปีที่แล้ว +2

    This was surprisingly refreshing. It often feels like there's too many disjointed tutorials, with no roadmap or motivation. You did a good job with this one. Glad I found this vid. Calc is more useful in controls and electrical engineering; if you want write software for airplanes and helicopter and you get the idea, that's where you'll use calculus, otherwise, study your linear algebra if you wan to make games. Basically exactly what you said. Nice work.

  • @pcrdn8938
    @pcrdn8938 3 ปีที่แล้ว +2

    This channel is just amazing!

  • @AnonTen
    @AnonTen ปีที่แล้ว +1

    You missed that a game is basically a big Euler method integrator at its core. When you do things like "pos += velocity * dt" it's literally integration using Euler method.

    • @Madbook
      @Madbook  ปีที่แล้ว +1

      I agree that your example can certainly be described with euler integration!
      However, for the vast majority of beginner gamedevs, especially those who are relatively unfamiliar with maths as a whole, I don't think pointing them in the general direction of 'calculus' as a topic is optimal. I have seen far to many beginners get overwhelmed with differentiating/integrating/manipulating arbitrary equations that have no practical relevance to gamedev.
      As people progress to being more intermediate/advanced developers, framing some of these problems with calculus can certainly be useful - I just don't think it is needed for beginners. It's like telling them they need to learn how to operate a wrecking ball when all they really need is a hammer.
      I don't want this to come across as "I don't think calculus is important at all" either, and if it specifically interests an individual, then by all means study to your heart's content! It is fundamental to countless applications, and a very rich/interesting topic!

  • @omaryahia
    @omaryahia ปีที่แล้ว

    ❤ this is simple and to the point, you showed us in general , the usage of topix x in games is like this

  • @tejaswithme3713
    @tejaswithme3713 ปีที่แล้ว +5

    Oh man... I'm shocked! For past 3 weeks or so I've been learning Godot from Heartbeast's old platformers video & i remember that he used *Vector normalizers* & finding that it's the same concept as he told just refreshed my memory!!!
    Thanks for this amazing video Sir ❤
    Love from India 🇮🇳

  • @notecolt2742
    @notecolt2742 ปีที่แล้ว +2

    Dude just summed up my high school maths and my first 2 years at uni

  • @NotifrikiTV
    @NotifrikiTV หลายเดือนก่อน

    this was an amazing video!

  • @kjmyer
    @kjmyer ปีที่แล้ว +2

    Great video. Well done on telling my why and how. So important!

  • @lukeskywalker2255
    @lukeskywalker2255 ปีที่แล้ว +5

    I personally don't use quaternions, because for me it is easier to use matrices (theoretically e.g. coordinates are stored in x,y,z variables so they are not technically matrices but spiritually...)

    • @jmvr
      @jmvr ปีที่แล้ว

      that's fine for most game engines, since they'll typically convert everything for you. If they don't, then you may run into issues using Euler angles, like Gimbal Lock.

    • @lukeskywalker2255
      @lukeskywalker2255 ปีที่แล้ว

      @@jmvr I can avoid Gimbal Lock just using rotation matrix that uses u axis in replace for the other two angles (so quaternions' method but with matrices!)

  • @preetierajdeo149
    @preetierajdeo149 5 หลายเดือนก่อน

    Amazing Man!!!! I am just speechless
    Maths is sooooo wonderful! Hats off to you!!

  • @ccstudios2960
    @ccstudios2960 3 ปีที่แล้ว +1

    Really helpful video man! Can’t wait for the next one!

  • @Joombiful
    @Joombiful 2 ปีที่แล้ว +9

    Kind of upsetting that you've stopped uploading, just found your channel and I'm kind of astonished of how you have such good content but such little recognition

    • @Madbook
      @Madbook  2 ปีที่แล้ว +8

      Thank you so much!
      I plan to start uploading again at some point in the future - but I've become quite busy studying for a PhD, so I have a lot less free time to make videos at the moment!

    • @charliecharliewhiskey9403
      @charliecharliewhiskey9403 2 หลายเดือนก่อน

      @@Madbook I hope your PhD has been going well :)

  • @jimjohnson1810
    @jimjohnson1810 2 ปีที่แล้ว +1

    This video is a GOLDMINE for me.

  • @GoldDeniel
    @GoldDeniel ปีที่แล้ว +3

    Brrruuuh you just explained a bug that I made years ago.. I never knew why my character was moving faster sideways... I thought the normalization was kind of automatic I guess...

  • @matthewmathis62
    @matthewmathis62 ปีที่แล้ว

    This video is seriously cool.
    2 Thumbs up!!
    👍👍

  • @thedude4795
    @thedude4795 4 วันที่ผ่านมา

    can some one say what games are displayed from 1:03 to 1:39 ? The side scrolling shooter on the river, the knight jumping on the dragon, and the 3d platformer where they jump and race to the finish?
    Edit: please also, if you know, the jump to the finish at 3:26

  • @RalphOpinion
    @RalphOpinion ปีที่แล้ว

    Can you elaborate on how to use the dot product in a 3d game?

  • @4115steve
    @4115steve ปีที่แล้ว +1

    mentioning vector normalization reminded me of James Bond Golden Eye on n64. I think you would move faster if you moved side ways.

  • @arvinsloane6715
    @arvinsloane6715 3 ปีที่แล้ว

    Thank you for this comprehensive video and for putting all that quality in it !!

  • @Chadderbox
    @Chadderbox 3 ปีที่แล้ว +2

    This was an awesome video. I just need to get my hand around dot product and quaternions and then I can find more stuff I don't know.

    • @Madbook
      @Madbook  3 ปีที่แล้ว

      Cheers!
      I found that the visualiser I put in the description for the dot product really helps with understanding what the operation does. I can always help you in the discord if you have any questions or are struggling with it (this goes for anyone else reading this too)!

  • @VincenzoSacco-wh9te
    @VincenzoSacco-wh9te ปีที่แล้ว +4

    I think that also physics and rigid body related stuffs need an honourable mansion, especially for 3D games, maybe you can make a variant of this video for physics
    BTW sorry for my bad English, I'm Italian.

  • @viggojonsell9754
    @viggojonsell9754 3 ปีที่แล้ว +2

    DUDE why isnt your channel bigger XD Even though I dont really do game dev anymore Im sure this could be a great resource for many people, keep it up

  • @cristian021492
    @cristian021492 5 หลายเดือนก่อน

    Thanks so much for this video, really helped a lot!

  • @marxy3720
    @marxy3720 3 ปีที่แล้ว +2

    Math... It's a love-hate relationship: My head explodes every time i hear of this magic word, yet it's so usefull, and to a certain extent, cool i'd say... Anyway great vid madbook!! Glad to see u back in activity!! (^D^)

  • @6pakAL
    @6pakAL 3 ปีที่แล้ว +6

    Great video! Meta tutorial sources are one of the most under produced resources on the internet and I'm ecstatic to see more people adding them!
    One thing that bugged me in the video however, cos is pronounced cosine. Sin = sine, cos = cosine, tan = tangent.

    • @Madbook
      @Madbook  3 ปีที่แล้ว +3

      Thank you so much!
      Yeah, you are 100% correct - I think I say 'cos' out of years of bad habit... or because 'cos' and 'sin' verbally sound more different? Or maybe I'm just making excuse's now.. 😅 I'll try to be more accurate next time!

  • @jjophoven
    @jjophoven ปีที่แล้ว +2

    When I have to do math I just keep trying random things until its what I want

  • @TylerGreen
    @TylerGreen 3 ปีที่แล้ว +3

    Dang this gave me some university flashbacks haha, great video though. Much better explained than most of my profs :)

  • @trsiam7779
    @trsiam7779 3 ปีที่แล้ว +1

    How does this channel only have 1k subs? I think he diserves 100k.🙂

  • @titiksasanti2205
    @titiksasanti2205 2 ปีที่แล้ว

    that was exactly what I needed , thank you so much

  • @loszhor
    @loszhor ปีที่แล้ว +1

    Thank you for the information.

  • @filippocucina7001
    @filippocucina7001 2 ปีที่แล้ว

    One of the best videos !! Thank you

  • @pirateskeleton7828
    @pirateskeleton7828 ปีที่แล้ว +1

    With regards to Calculus, have to slightly disagree. While I don't find too much use for the limit or integration, the derivative is quite useful, especially given that it can be used to understand how to calculate stuff like velocity. My educational background is electrical engineering, specifically control system engineering. For my game project I end up applying quite a lot of concepts used in both control and signal processing systems. Stuff such as lag filters can be used to create smooth camera movement and eliminate high frequency noise. Concepts such as negative feedback loops, that have roots in differential equations, can be quite useful for making simulated automated systems that are meant to behave within your games physics environment. That being, said, I do agree with your other mathematical suggestions. I use trig in combination with vectors quite a lot.

    • @muddtheboss415
      @muddtheboss415 ปีที่แล้ว +1

      I was gonna say the same thing, I've used calculus in pretty much all the projects I have worked on. Especially for velocity and acceleration calculations. Knowing the calculus behind these physics concepts can actually do a lot to make a game feel better. When he was talking about this, he was showing the guy falling and using a parachute and I was just remembering a project where I did something similar and had to use calculus to smoothen a character's falling physics.

  • @dreamleaf6784
    @dreamleaf6784 ปีที่แล้ว

    I'm doing discreetskeet math right now. And it includes graph theory. I'm a snhu comp sci student

  • @StigDesign
    @StigDesign 3 ปีที่แล้ว +2

    Really Great Video and Awesome Advice for others that need it :D
    there is much of learning on internett but not much good explanation with showing examples etc, your did it really good and pointing in right direction i think :)
    My case am not so good with math, but some how yes when you do it practically its much easy to understand especially visual like in game :D
    Sim City 2000&3000&4 learned Country infrastructure better than school(Like taxes& tax Classes, Power line Water lines pumps etc) XD
    and i remember when i had done vector without knowing it in Dark-Basic(Long time ago) :D

  • @Mr-JJ-
    @Mr-JJ- ปีที่แล้ว

    THANK YOU FOR THIS!

  • @Blaineworld
    @Blaineworld ปีที่แล้ว

    marble blast gold messed up the diagonal movement thing

  • @TorQueMoD
    @TorQueMoD ปีที่แล้ว

    OMG, I was wondering why it always seems like you move faster in diagonal directions. This happens in Unreal Engine games all the time. I'm pretty sure they're normalizing the vectors, but it's still noticeable.

    • @konradswart4069
      @konradswart4069 3 หลายเดือนก่อน

      If you have two permendicular normalized vectors e1 and e2, and you move an object with speed V = v(e1 + e2), then its diagonal speed is sqrt(2) v = 1.414 ... v, and not just v. To have the same speed you must therefore divide the velocity V by sqrt(2) to have it the same speed as either the horizontal speed exclusively or the vertical speed exclusively.

  • @liber8r
    @liber8r 2 ปีที่แล้ว

    Very thorough! Well made.

  • @JoeChillius
    @JoeChillius 28 วันที่ผ่านมา

    I watched your video getting ready for a college class, and they then used your video, so thank you I guess, lol

  • @Kwauhn.
    @Kwauhn. ปีที่แล้ว +6

    It's weird to me that you mentioned quaternions but not matrices. I feel like when discussing game maths I'd bring up things in this order: vectors > matrices > quaternions. Especially how vectors and quaternions can both be represented as matrices, it feels like a natural bridge to the quasi-4d weirdness of quaternions.

    • @TealComet
      @TealComet ปีที่แล้ว

      What are matrices used for in game development ? Any example ? I'm curious.

    • @akashbagchi8341
      @akashbagchi8341 ปีที่แล้ว +1

      ​@@TealComet They're used alot in game engines to convert a 3d object to a 2d image which a player can see. This is the basic foundation of 3d rendering

  • @RayRay-uw6ms
    @RayRay-uw6ms ปีที่แล้ว

    "Until next time, good bye!"
    I don't think he's coming back guys.

    • @Madbook
      @Madbook  ปีที่แล้ว +2

      I plan on making videos again - just very busy doing a PhD at the moment!

    • @nexolec109
      @nexolec109 ปีที่แล้ว

      @@Madbook good luck

  • @Motivational-Mango
    @Motivational-Mango 3 หลายเดือนก่อน

    well the math like plus and the minus is good also multipliction like 5 x5 or 10 x 5 is also good. some people saying you need vectors but not that important! i just use plus minus multipliction and i made many game like zeldas, the super mario nintendo, the dragon of steel, the spyro ratchet clank and bandicoot. thanks

  • @phlipclip5097
    @phlipclip5097 17 วันที่ผ่านมา

    11:03 You use Trackmania footage and didn't use a cool Press W (Forward) map. Missed Opportunity

  • @GeomeTeamCraft
    @GeomeTeamCraft ปีที่แล้ว +2

    Basic Integral and differential calculus can be quite useful

    • @Madbook
      @Madbook  ปีที่แล้ว +1

      Agreed! I think most beginners can get by with "position += velocity * deltaTime" until they get to the more intermediate/advanced parts of game development though!

    • @udyfrost6380
      @udyfrost6380 ปีที่แล้ว +1

      @@Madbook True. It's like how overtime, I found realized "position += velocity * deltaTime" isn't always ideal, it should be "position += (formerVel + currentVel) * 0.5f * deltaTime" because of acceleration/deceleration .

    • @chappie3642
      @chappie3642 ปีที่แล้ว +1

      @@udyfrost6380 Well technically if you wanna implement accelleration you can just use Newton's motion equations, which are the double integral of a costant acceleration, meaning this is the real mathematical rule that governs the motion of a body with a constant acceleration, your update function would look like:
      "position += velocity*deltaTime + 0.5f*acceleration*(deltaTime^2);
      velocity += acceleration*deltaTime;"
      obviously you can make your acceleration vary in your program, as long as at each step you use the rule above with its current value. Also remember that a negative acceleration means that your body is either decelerating or accelerating in the opposite direction to the axis that the position specifies

  • @springcar
    @springcar หลายเดือนก่อน

    hey northwest same amount and northeast same amount is not "similar to each others" in most cases. so that branded " dot product" math fools us. and with calculating amounts of two actors compass directions ( even if you need know two directions similarity amount) could give better results

  • @theman7050
    @theman7050 9 หลายเดือนก่อน

    Brilliant!! Thanks

  • @exterminator9676
    @exterminator9676 ปีที่แล้ว

    14:13 Neither does Goldeneye 64 for the Nintendo 64!

  • @TheAgentAPM
    @TheAgentAPM ปีที่แล้ว

    You didn't mention series. These are also useful in programming. In simpler environments than Unity though.

  • @HalkerVeil
    @HalkerVeil วันที่ผ่านมา

    I would add Probability and Statistics.
    Anything with noise. Perlin specifically.

  • @rakhelkhongsaiaccount99
    @rakhelkhongsaiaccount99 9 หลายเดือนก่อน +1

    Why did he stop uploading

  • @shaheerahmed9231
    @shaheerahmed9231 ปีที่แล้ว

    BRO THANKS FOR MAKING THIS VIDEOO❤❤❤❤

  • @Zzkkb98
    @Zzkkb98 ปีที่แล้ว

    Freya holmer has a playlist of 10 videos about math for game devs that would change your life

    • @Madbook
      @Madbook  ปีที่แล้ว

      Yep! They are excellent videos that I would highly recommend for anyone wanting to get stuck into these topics!

  • @klaesregis7487
    @klaesregis7487 ปีที่แล้ว

    Randomness and chance are also a really important part of game development.

  • @doomera5911
    @doomera5911 ปีที่แล้ว

    would this also aplly to someone who has forgot everything from school?

  • @Syntaxify_dev
    @Syntaxify_dev 8 หลายเดือนก่อน

    what is the name of the game with the parachute 2:06 ?

  • @Devilnero1991
    @Devilnero1991 4 หลายเดือนก่อน

    I suspect there would be highly specialised software which can take care of movement and vectors. Is it necessary to learn math to code games these days?

    • @sjoerdmpfrgh
      @sjoerdmpfrgh 3 หลายเดือนก่อน +1

      I think it depends on how much control you want over the lower level mechanisms of the game. You can get away with using build-in functions but at some point you'll want to tweak things for the specific requirements of your game

  • @naoboyz8259
    @naoboyz8259 10 หลายเดือนก่อน

    That was helpful, thank you

  • @somedude5951
    @somedude5951 ปีที่แล้ว

    What about functions?
    Shouldn't one know thier mathematical use, before using them in programming?

  • @Fabsi111
    @Fabsi111 2 ปีที่แล้ว

    ty cuz ive been having a hard ti getting started.

  • @eduardo13355
    @eduardo13355 2 ปีที่แล้ว

    have. But, your tutorial was amazing and I have made a semi-decent soft. Thanks!

  • @robertmock4636
    @robertmock4636 ปีที่แล้ว

    Is there a good book to show me the maths I need and teach me step by step? I’m looking to get into game development myself like work for a game studio like naughty dog

  • @aik21899
    @aik21899 ปีที่แล้ว

    Which game is played at 3:31?

  • @OmG21097
    @OmG21097 ปีที่แล้ว

    Your video is really helpful

  • @cityonthemoon36
    @cityonthemoon36 11 หลายเดือนก่อน

    very informative
    thank you

  • @sanetrayy
    @sanetrayy 3 ปีที่แล้ว

    i love ur channel. u give me hope :)

  • @goosifyed9717
    @goosifyed9717 ปีที่แล้ว

    the entirety of this intro sounds like a squarespace ad

  • @forbiddenbox
    @forbiddenbox 2 ปีที่แล้ว

    Do more of these maybe go a bit more in depth? Loved this

  • @dorago4139
    @dorago4139 2 ปีที่แล้ว +1

    Hey there! Could you please recommend which degree would be worth choosing for game development, Software Engineering or Computer Science

    • @FunctionallyLiteratePerson
      @FunctionallyLiteratePerson ปีที่แล้ว +1

      I would suggest software engineering. Computer science is more like how programs and computers/computing works. Software dev is probably more relevant if the school doesn't have a game dev major

    • @dorago4139
      @dorago4139 ปีที่แล้ว

      @@FunctionallyLiteratePerson oh alright, thanks for the advice! btw would taking a game dev major be risky?

  • @scoopydevy
    @scoopydevy 3 ปีที่แล้ว +1

    awesome!

  • @aes_ria
    @aes_ria 13 วันที่ผ่านมา

    Lowkey inspiring gamedev,, I've been trying to run away from complex math but it keeps following me... I think it's cool but i don't have enough brain cells to understand shiii

  • @konradswart4069
    @konradswart4069 3 หลายเดือนก่อน

    The assertion about dot product, as stated, is not correct. The assertion applies only to normalized vectors. When two vectors are not normalized, their dot product can have _any_ value!

  • @Kayotesden
    @Kayotesden ปีที่แล้ว

    This is so amazing! As a software engineer, I dont need Math daily, however, I have always felt the need to learn it to get deeper into the field. This is a great starting point!

  • @orestesdd
    @orestesdd ปีที่แล้ว

    What language do you use? Is it C++ or some other computer language? Thank you. 🤔

  • @UltramarineAfterglow
    @UltramarineAfterglow 3 ปีที่แล้ว +1

    interesting, i'm too dumb to really understand quaternions, but i kinda know how to use them to get the result i want :)

  • @Unigma
    @Unigma 3 ปีที่แล้ว +2

    I like this video, but you say calculus isn't needed then proceed to list around 4 items directly related to calculus (vector calculus: Quaternions, Dot Products, Cross products, Normalizations).
    For those unaware of what vector calculus is (normally called Calculus 3, or multivariable)
    "Vector calculus was developed from quaternion analysis by J. Willard Gibbs and Oliver Heaviside near the end of the 19th century, and most of the notation and terminology was established by Gibbs and Edwin Bidwell Wilson in their 1901 book, Vector Analysis. In the conventional form using cross products, vector calculus does not generalize to higher dimensions"
    So it directly deals with vectors, especially in 3D. If you are making a game in 3D and get intimidated by the daily math required, you are most likely lacking in calculus.
    So why the hell is knowing calculus essential to not only vectors but 3D math? Because of the tangent. Calculus teaches you how to use derivatives and manipulate slopes. Knowing this helps tremendously as the tangent is the most easily accessible 3D Vector. The essence of calculus is literally just finding the tangent.
    Let's take a vision cone system. A spotlight. Think to breathe of the wild guardians that use a spotlight to find the player. Note, I will simplify a bit as the math can get long.
    Naive approach. Let's just make a cone by creating a circle that gets larger as it approaches the ground. Concentric rings so to speak. We get the following vector: v = (cosine(angle), sin(angle)). v*d, where d is the distance from the ground.
    However, now move this cone to the X-axis and it squishes, the Y-axis and it breaks. For each axis, you need to figure out the appropriate ring...Because a circle in 2D is XY, a circle on the Y plane is XZ, a circle from the X plane is YZ. But what is a 2D circle projected onto 40% Y, 30%, X 15% Z ??? That is, as you travel on this 2D plane, you move in all 3 axes. A plane that is within all three axes, how do you create a circle then?
    More general approach:
    You get two vectors tangent to the plane, but perpendicular to each other and rotate them to form a circle. Oh boy, tangents, perpendicular, rotation, and speed, this is literally screaming derivatives and calculus.
    To do this you need the normal on the plane (how to do this, calc), get the tangent from that (how and why? Calculus), get the bitangent (how and why? Calculus), then do the following math:
    v = (tangent * cosine(angle) * radius) + (biTangent * sine(angle) * radius). (how and why? calculus)
    And now the guardians in BoTW can see link anywhere in 3D.
    And this leads to the final point, what is calculus? Well, calculus is all about approximations which is so important for computers. Things like floating-point precision are directly related to sequences and series. Along with that, calculus deals with analytical geometry, speed, physics...all of which are needed in a lot of games. There are so many examples of everyday effects in which knowing calculus is useful.

    • @Madbook
      @Madbook  3 ปีที่แล้ว +3

      Hey, thanks for the feedback!
      Whilst I agree that calculus is incredibly useful, I still don't think it falls into the 'Maths for Beginner Gamedevs' category at the level of detail shown here. It would likely fall into 'Intermediate/Advanced Maths for Gamedevs', as calculus doesn't find it's way into most curriculums until the latter half of the education roadmap.
      To add to this though, most calculus problems that arise in gamedev are usually vastly simplified by the game engine being used. I agree that if you want to build your own engine, you'll need a very deep understanding of calculus - but for making a game, all of the mainstream engines will simplify out a ton of the complexity for you. Because of this, we will often use the practical outputs of calculus, without doing any calculus ourselves.
      Glad you liked the video on the whole though!

    • @FunctionallyLiteratePerson
      @FunctionallyLiteratePerson ปีที่แล้ว

      At least in the USA, a good portion of that is covered more by linear algebra than calculus (vectors, dot and cross products, coordinate systems, etc).

  • @scottwarner9856
    @scottwarner9856 ปีที่แล้ว +2

    Just popping in to say that if you go into discrete math without first having *at least* done pre-calculus, you're going to have a bad time.

    • @FunctionallyLiteratePerson
      @FunctionallyLiteratePerson ปีที่แล้ว

      Usually they have a retirement for that, but I personally think even some.linear algebra and calc 1 can be a great help.

  • @DjangoLowe
    @DjangoLowe ปีที่แล้ว

    Matrix maths can be hand in game dev.

  • @cathean19
    @cathean19 ปีที่แล้ว

    "Quaternion" *VINE BOOM*

  • @Nammedit
    @Nammedit 8 หลายเดือนก่อน

    Hey! Great video and you're a great teacher, but the music in the background is really distracting.

  • @_sphnx
    @_sphnx 3 ปีที่แล้ว

    It's been a while

  • @emperor8716
    @emperor8716 4 หลายเดือนก่อน

    guys: don't learn discrete maths. you will die.

  • @kgoblin5084
    @kgoblin5084 ปีที่แล้ว

    Quick commentary on programmers

  • @hughy897
    @hughy897 ปีที่แล้ว

    School depends on where you live. Here in Brazil you’re forced to learn math, Portuguese (to write better), spanish (most schools), english (very introductory), geography, history, physics, art (only stuff like drawing and paintings, that will compose your final grade), chemistry, sociology and writing (you learn how to write better to be ready for national exam’s essay you need to do get into a public University).
    Also fight against bullies and a culture that don’t value studying for anything besides exams. My whole school system was made just to prepare use for this national exam. Nothing more than that + teachers are underpaid and disrespected by their students.

    • @hughy897
      @hughy897 ปีที่แล้ว

      So, maths are a tool. You can represent irl world problems in different ways using it. Thats what most people dont know or rather don’t get.

  • @YuMiGaNdARockstarVA
    @YuMiGaNdARockstarVA 2 ปีที่แล้ว

    thanks BRo

  • @Temulgeh
    @Temulgeh ปีที่แล้ว +1

    i start the video and hear "calculus is not very useful" excuse me
    i need calculus every time i make a movement system lmao it's the only reason i want to learn some calc (otherwise i don't really like it)
    (pinned comment is pretty good though)

    • @Madbook
      @Madbook  ปีที่แล้ว

      Agreed! I think most beginners can get by with "position += velocity * deltaTime" until they get to the more intermediate/advanced parts of game development though!
      Pinned comment is amazingly helpful!