Vectors & Dot Product • Math for Game Devs [Part 1]
Вставка
- Опубліковано 4 тра 2024
- Welcome to my four part lecture on essential math for game developers 💖 I hope you'll find this useful in your game dev journey!
This course will have assignments throughout, if you want to maximize your learning, I recommend doing them!
If you are enjoying this series, please consider supporting me on Patreon!
🧡 / acegikmo
00:00:00 - Intro
00:07:05 - Why math?
00:12:59 - 1D vectors
00:36:13 - 2D vectors
01:09:35 - Vector normalization
01:15:23 - Direction to point
01:23:11 - Length
01:31:49 - Distance
01:44:14 - Point along direction
02:00:45 - Radial trigger
02:26:21 - Dot product
02:44:30 - Examples from my game
03:03:13 - Assignments
03:03:29 - Asgmt. 1 (Radial trigger)
03:05:49 - Asgmt. 2 (Look-at trigger)
03:10:03 - Asgmt. 3 (Space transformation)
Assignments:
docs.google.com/document/d/1N...
Originally streamed as a course for students at futuregames.se/, who were super kind to let me both stream this live as well as upload it here! so massive thanks to the people at FutureGames!!
💖 Patreon ❱ / acegikmo
🐦 Twitter ❱ / freyaholmer
📺 Twitch ❱ / acegikmo
💬 Discord ❱ / discord
🌸 Instagram ❱ / freya_holmer
✫ Video Production by Higher Vision:
➥ / highervision1
➤ Edited by Stelly: / stelly47050876 - Наука та технологія
Hi Freya, I'm somebody who dropped out of high school and has struggled to grasp math concepts for a very long time. I'm 29 and it has always seemed completely inaccessible to me.
Sometimes your lessons make me cry a bit because I feel like for the first time in my life I'm actually able to comprehend the use cases for this stuff in a way that is both enjoyable to learn and actually useful.
Thank you so, so much for everything you do ❤️💕
I'm glad to hear that!
Waw ❤❤❤❤❤
Blessings, math is beautiful once you know how to use it. It gives you this creative freedom you just can't even consider without it
Sorry that our education system failed you. We must do better.
ditto kiddo
I cannot thank you enough for this.
I follow you on twitter and you really have made some amazing stuff,
it's so great that we get a literal full workshop's worth of knowledge, straight from your mouth.
Understanding math at this level could easily kickstart a whole life's worth of game development, and so SO few people really understand how to use it,
this series will definitely change some lives. AND I AM READY.
Thanks thanks thanks thanks thanks
…'k
I`m grateful like that too, I`m just watched few times the Linear Alg series from 3B1B channel and then the algorithm just recommended this video, so it`s all perfectly matching, the theoricals and practicals, thank you so much.
Sooo cool of you to put this up to youtube! I got so much out of this course the first time around, having the ability to refer to a condensed version of it whenever I want is so extremely very nice. Thank youuuu
First minute, and I am thinking, this girl has the same energy of her voice as 3blue1brown. Best of luck to you in the future:)
This "girl" isn't a girl
@@tehonionpotato6364 transgender?
@@dj_b1627 yeah
@@tehonionpotato6364 so a girl then
@@Isacc142 sure
These series are something I've been searching for for a long time. I set a goal to watch every math tutorial and work hard. Thank you for making these videos for strangers like me who need them
I'm so glad I decided to rewatch this. The first few times I watched, I really didn't understand much beyond the definitions of vectors and scalars, but now that I've gotten some experience with vectors and scalars in games, everything else is starting to make so much sense.
I learned more in a few hours than an entire semester of my vector physics subject during senior high. I agree with your intro statement where teachers really don't know how to make things interesting to students and just assume that everyone is willing to learn subjects voluntarily without giving how it is useful in real world cases or at least making the discussions interesting.
Vectors would be much more interesting to learn about if they were used as tools to solve interesting problems. Which is the genuine reason why they exist anyway.
Hands down, you're one of the best teachers out there. Pretty much love your energy.
As someone from a third world country stuck at home from COVID, thank you for this 🙏 I won’t be able to afford the courses in a million years anyway
And this is the reason I love the internet. There are some things that I hate about the internet, but the free information that's available for *everyone* is so valuable, especially for less privileged people. Hope you're doing great with this, and good luck :D
This is brilliant. Thank you Freya! Love that you're showing all these concepts in context - it's really helpful. Your students are lucky to have you :)
I use Godot, but your tutorials are absolutely amazing. Thank you for sharing your time and knowledge to help people like myself learn this stuff. You rock girl!
These are honestly some of the best game/graphics dev videos on UA-cam. I rewatch the math and shader videos all the time because there's so much great information there and it just reinforces it and helps me visualize. It's been a huge help at my day job and in my hobby projects, so I appreciate the hell out of Freya!
happy to hear they've been useful!
This is AMAZING! Sincerely, thank you so much for this series. I've just recently found this channel and I plan on digging through every video. You're really, really good at teaching.
Just want to echo what others have said, after years doing 3D artwork and recently trying to learn VEX for Houdini, but not fully understanding vector maths, it's now really clicked after watching this. Just brilliant! Your style of explaining is fantastic. Thank you. Really looking forward to watching all your content.
Great stuff! I wish I’d seen this 20 years ago but I’m happy to have found it now. Thank you 🙏
Took a Vector Calculus course in my college Computer Science program almost 30 years ago. Got an A -- then somehow forgot almost everything. This video brings back good memories. Thanks for the memories.
Very good intro for a high school math class answering student's ever-present "Why? What's that for anyway?"
Thank you so much for making it easy for me to get past the hurdle of learning game math. I've been fudging it for months now, putting off actually studying because I thought a class would bore me to tears. Your explanations are great, and the practical examples are exactly what my ADHD brain needs to stay engaged (and it doesn't hurt that I can pause the video whenever my mind starts drifting lol). Great work!
This is an amazing tutorial series! I didnt have vectors in school back then so this is helping me alot in uni now. Thank you so much and keep your style of education. The speed really is just right
I almost began to cry at how helpful this is. the fact that you started with the basics makes this so so so very friendly and intuitive, i can’t even put my gratefulness into coherent words. thank you infinitely.
Honestly the basics are the most important part. After years of not thinking about math you still have the advanced concepts in mind but you completely forget about the basics. Getting a full refresher on all basics within only a couple hours is absolutely amazing. I couldn't possibly find all of those topics one-by-one by myself and a lot of beginner courses are simply too focused on the technical when all I need is a little bit of an overview to remind myself of terms and how they relate to each other.
I've been working on a game for almost 2 years with no prior knowledge, and I've been hesitant to learn math-related stuff coz I hated math when I was in school. Eventually, math problems really did appear and I wish I knew these stuff before I did some of those. Now I want to learn more! Thank you for these videos. Amazing job!!
Well, that was a great way to spend my Sunday afternoon. I wish I had such a great teacher like you back in the days. Thanks for sharing!
Thank you! I had a problem with understanding the whole concept of vectors, but you explained it perfectly and now I think I'm ready to use them efficiently.
39:06 "I'm also left-handed"
"Neat! I'm glad you figured out your chirality"
I'm laughing too much at this exchange lol
Oh my god, we've just been blessed. Thank you ! :D
I like when people are passionate about the work they do...it's so inspiring!!
It's always a good sign when the teacher is using professional audio gear for a maths demonstration. AKG are underappreciated for sure, being a producing metal musician, I try to help out with production mix on all videos when I can and you know what's up.
So, translating these values, classes, and functions into arrays is difficult for someone that struggles to apply the concepts into code. I'm trying to learn python after a short run of learning c++ basics some years ago, because python is maths and ease of use is more efficient for learning and applying in linux programs.
Thank you for all of these.
The way that you color labels and create diagrams is marvelous.
the projected velocity for a bounce volume is such a wonderfully tactile example use case for dot products, we love it!
This is fantastic. I only just stumbled onto your channel, through your Bezier curve video. And though I love maths channels like 3b1b, the only time I really get to play with what I consider fun or interesting maths is in video game development (last time I touched a Bezier curve was when I was writing a game entirely in C++ using only Assimp), so this is a perfect marriage of theoretical knowledge and the kind of practical application that's relevant to me. I haven't done any game dev stuff for a few years, so maybe this will get me back into it.
The kitten is the second best part of this They have such a cute meow
The best part is finally learning this math in a fun way after public school ruining it for me with constant homework and no purpose of learning it, being able to visualise it helps so much, thank you!
I would like to thank you!
I'm really bad with math and watching your videos or twitter feed help me REALLY well.
So thank you again !
Hi there! Just bumped into this video by accident (been studying 3d math for a few months for a project with fractals) and found out you created the best plugin for unity I ever used! Shaderforge is a masterpiece and I am honored and very pleased to meet you!
These lessons are so awesome and Im actually looking forward to learning math! I think the problem with schooling is that they never get you excited about it's possible applications, at least my teachers never did. If they told me how it could be used creatively I might of actually paid attention lol.
If you're only learning to try and get something material, every second of it will be like pulling teeth.
It's a bad attitude, and you can let go of it anytime.
Freya you are amazing! I've recently gotten into graphics programming and been delving into more advanced math to fill the gaps in my knowledge, and this is EXACTLY what I needed. 3blue1brown is great, but it can get a little abstract and I always end up thinking "cool, but what can I do with this?". The way you tie it to game dev and give real-world examples makes it much easier to grasp imo. Thank you so much, you're a great teacher!
Yep, dude. Same with 3blue1brown. I am a frontend developer but want to do some cool 3d staff in canvas using javascript. After watching videos about math I am always wondering how I can use it right now to create something. Hope this video will help me.
Yessss, my love and passion for math is gonna be super helpful. ❤️❤️❤️❤️ Thank you for these videos!!
MATH is so essential for everyone 's day life not just for an IT guy. I am happy to find some time to be back here to brush off my math knowledge also enjoying watching your teachings on MATH. I wish you could be my teacher when I was at the university, I would love MATH more!!!
watching you first thing I learned is to be calm when studying math . because before everytime I do it feels like going to war. Great video ^^
I loved that distance check optimization. Thanks for sharing all this!!
if i had someone like you as my math teacher when i was younger i‘m pretty sure my dyscalculia wouldn’t have traumatized me to the point where even the thought of math can be triggering. this is so well explained and soothing and genuinely makes me want to learn. thank you
You have no idea how much this series means to me. Thank you so much
I'm glad you like it!
We're blessed that u provide such an awesome, amazing and productive content.
Wish I could've attend a class like this at my university. Great stuff! :)
This is soo good. I cant even exaplain to you how useful I found this. I came with 0 knowledge of 2D/3D vector maths, it was always monkey see monkey do. But now I actually understand them. Thank you so much!!
I've only randomly dipped into a her livestreams a few times and still I've learnt things just from passing by on Twitch. She's kinda awesome, making all this really good educational content available for all
It seems like suddenly I got a whole lot of studying I need to do ʕ•ᴥ•ʔ Thanks a lot Freya for these videos! Just what I wanted to learn these days.
That was unbef***inglievable! Huge respect; thank you so much.
To verify the 3rd exercise, one could add a transform as a child of the first point and set it the calculated coordinates of the world space point. That way, if the formula is correct they should stick together! Thanks a lot for this video Freya! :)
I just understood the usage of the dot product way better than all the books I read. I am more of a hands on person and your videos are amazing!!!
This series is just really really helpful. Thank you so much.
What a great lecture. Very clear and detailed explanations. This helped me so much with some vector concepts I was having problems really comprehending, like normalization. I understood it returned a vector with a length of one, but that was it. You explained it and everything else very well.
A very in depth and expansive course indeed. Love the way you teach. The photoshop examples really help visualize the problems. Also you don't draw that bad!!
Thanks for youtubeing this. Really. Maths look really scary and your way of explaining them makes them easier and approachable. Not many teachers achieve this, ever.
you are an EXCELLENT teacher!! thanks for this series
Thank you for this series of math tutorials! You are awesome :)
The dot product really clicked during the example with finding the loudness relative to angle of impact. Really great video and very insightful
Yay, cool tutorial series are here! thank you!
you got the best game dev explanations out there. have a great skill for explaining quite complicated things in simple terms, which is a skill in itself.
are we the same person
@@jeffreyg7260 Identity theft moment
dude.. this is absolutely f*#$%ng amazing. showing the math, then showing the code, then showing it working in unity.. Tho i wish this was in unreal this is still extremely unique to see someone teaching these things in this much applied depth... thank you so much for this. kinda makes me wanna learn c#. bless you for this...
I consider myself a bit of an intuitive and clever scripter, but I never did get any formal education in higher or specialized maths. Thanks for helping me brush up a bit!
I loved this first class, this is my first step on game development :D
Thanks Freya for this amazing tutorial series !
So I've used shaderforge for ages and played budget cuts heaps. Then in the matter of 2 minutes you reveal you made both of them. Star struck!
Wow, hi Tarodev
@@berkekaancetinkaya8721 hey there Berke 😉
you're simply the bestest. ♥
I was fortunate enough to learn most of these concepts, but I love watching your videos, and I learned a few things.
Very good tutorial for beginners, very well explained. Thank you very much!
Thank you for this amazing free course
When I was noobier, I almost always forgot to normalize vectors before dot operation. When for some reason normalization not needed, put both vectors at world center first.
Polygon normal still need to be normalized too, because there are possible situations where it's not length of 1… I had that in Houdini, though it's rare.
Also I've found trick in Unreal Engine, casting Rotator to Vector returns normalized vector.
I'm taking a break from college after being somewhat burnt out on studying maths. But Something like this could get my enthusiasm up a bit. Just seeing your title piqued my interest.
I'm here trying to learn vector math, click this video, and only find out you're the developer of one of my favorite VR games i've seen.
I haven't watched all of the video yet, but I'm excited.
Two hours in! Would be further along but taking some in depth notes, practice problems, and coding alongside. Has me so friggin excited for the next vids :D
Helt enastående serie! Sättet som du förklarar kod och matematiken kring det är inte bara visuellt vacker utan även lättillgänglig och greppbar. Du är så cool och ödmjuk. Stort tack 🙏🏼
You’re an absolute legend Freya. Thanks so much for this. I can’t believe I didn’t need a subscription to get this. Your approach is clear and concise. Looking forward to watching the rest in the series.
I want to improve my math skills to help with coding. 45 minutes in and this is extremely interesting so far. I’m interested in math now. Thanks.
Thank you for this. My dad has a PHD in mathematics and as a kid would try to teach me. I found that my biggest hurdle with math is most if not all teachers would explain math and how to do it. But they never really explained WHY one would even want to do it. Im still terrible at math but because I work in the industry I realize that it can greatly help me, even if Im not directly making awesome plugins and just rigging and doing basic tools for animators. Cheers!
I've decided I'm not going to go to University anymore since the professors don't teach you anything except tell you what you need to learn. I think everyone is capable enough to do a simple google search and learn new things. You're awesome and thank you for being my math professor.
I'm impressed in the way you explain things, including the basics is also a nice touch. Thank you for this insightful video :)
Thanks! Amazing! Very pedagogical.
I have been so confused about this stuff recently, this thinking about vectors is very intuitive.
How is it intuitive? It's a higher level abstraction than most people are used to working with day-to-day. One of the first things you learn is that a vector has magnitude and direction, but usually the direction is assumed by the origin.
This video will stay here as the basic math reference for everyone who wants to start game dev!
You're an incredible teacher!
i am a student of medicine and i suddenly realized that math is very important for me i would love to see more of you
I love the beginning. It's like 1st grade review but profound. Literally, "What is 2?"
Thanks for this piece of masterclass!
As a data scientist, it was fun to see a different application of the math I use on a daily basis!
1D vectors made so Mitch sense over the other silly names other tutors try to teach you, so great job
Ooh, lovely. I was planning to make a video quite similar to this. You saved me like .... a quadrillion hours of time and tons of effort! I'll just point people to this! :) Thank you!!!!
Absolutely needed! This is incredible keep it up!
Haflway in, I just wanted to thanks you so much, I was so stuck doing some Position and CFrame tests in Roblox, got recommended this and honestly, and It got basically all I need, gonna binge this for the next few days, jajajaja. Thanks you!!!!
Hey I just wanted to say... I started making games about a year ago, and when I first started with Unity I was so lost. I tried making a platformer at the start and it sucked soo bad... Like the animations where off, I barely got the char to move (suprised I did and at the time i legit just copied and pasted)... after loads of failing and trying again, I found myself at a very dark place, questioning if this was for me, making games uk... But then i came across this I think it was around march this year... And honestly it has helped me more than any other gamedev video out there... I can't thank you enough for what this did to me... If any of my friends ever wanted to get into game dev i'd definitely start them out here... It explains soo much of the thought process when making games too, (ive since realised 2 games for game jams and am working on a new platformer currently )
Thank you, I use this for pygame and I learned very much from your explanations.
Thaaaaaank uuu soooooo muuuuuch, I read Eric Lingyel’s book, and couldn’t visualize this, but u saved me, now I understand!
Thanks for these extremely helpful videos. I think it would also be useful to have a more compact edit, where the concepts are not repeated multiple times. To be seen every now and then as a refresher
Seriously this video opened my mind to understand math , as a bad student in math and programming, thank you
I just stumbled on this video, not even sure why or if it's a paid course or whatever. and i'm nine minutes in, the fucking thing hasn't actually started and I already fucking love you. 🙏💯🔥
This is Awesome! Thanks a lot Freya!
My god, this is the channel I always wished existed.
Thanks for the great content !
I like the assignments portion ... and had a giggle about your claims of not being able to sum 9 and 4.
Stay well.
Very great job, getting the math to the people without scaring them off with .. math :-) I especially liked the part about the dot-product, especially because it describes what one can do with it. Great Work!
You are a game dev/math LEGEND!!!!!!! - Lover of Budget Cuts and Shapes
Mathematics is the attempt to describe things in a repeatable way. That's always been my go-to. It fits especially well with EECE.
Thank you so much for releasing this for free