Tfw joined college (not an america) to study CS thinking It will teach me to make vidya

What are the mandatory topics I should still study before switching majors?

Other urls found in this thread:

harmful.cat-v.org/software/OO_programming/why_oo_sucks
github.com/taylor001/data-oriented-design
bitsquid.blogspot.ca/
scratchapixel.com/
pbrt.org/courses.html
godot.readthedocs.io/en/stable/tutorials/vector_math.html
twitter.com/NSFWRedditVideo

Holy shit kill yourself

Programming essentially is math user. What did you expect from STEM?

At this rate eitger gitgud, kys, or use gamemaker lol

Math is the foundation of pretty much every STEM field, and most definitely everything related to coding. Stick it out, and find yourself fortunate that you're not in some leftist shithole indoctrination center that's a Pay 4 Poz scheme.

What are the mandatory classes to learn to make games?

Calculus, linear algebra, algorithms and data structures, physics.

What else?

Object Oriented Programming

Best way to gamedev.

Have to agree with #1 to kys yourself

The world would be better without you in it :^)

all that math shit IS related to coding anything not just games.

Gender studies

Depends on what major you're switching to, user.

Should have dialed up my autism and got NEETbux.

Blowing five guys to review positively your shitty indie trash.

This is also a good idea
OP is already a pozzed faggot for going to (((college))) he might as well go full socjus and wear a skirt

Ladies first, you cucked pansies.
Practice what you preach


I'd do that without a game tbh

Pretty much what happened to me. I accidentally graduated with little practical knowledge, no meaningful social connections, and had big fish in a small pond syndrome the whole way through high school and got btfo by others there

I'm not american.

This. SJW shit is only really prevalent in the US.

As someone who programs at a game company, I'm actually practicing what OP is preaching; in turn, he should practice what I preach.

It's strong in Canada. That's where it started, actually.

Sweden

Only if you want to make games that run like shit.

So that being said, you should kill yourselves together.

Unity.

Destroy Canada.

Vidya gaems don't code themselves you retard. On top of all the coding you need to learn you're going to need to learn music, learn to draw and make your own art, learn to write stories (preferably of the play variety and improv), 3D stop motion animation and 2D animation, and more!

You can make games that run like shit with or without Unity, Unity just makes it much easier.

exactly! the shit fps will make it super nostalgic!

kys

First, have an idea for a game.
Next, See that thing you're using?
The computation machine.
Go onto the information superhighway and look up how to make your game idea via any number of popular development tools.
Finally understand how difficult it is and give up on your dream of making a videogame.
Perhaps reconcile the fact that you are just not that committed to being a one man development team.
Instead make finely thought out pitches in the hopes that someone is inspired to make something similar to your idea.

Learn a programming language. C++, C#, javascript, whatever.

never understood this. I'm about to graduate from college with a Software Engineering degree and the only other programming paradigm we discussed was functional programming for a single course which was never applied to anything useful and only seems applicable if you want to do some gay math shit with it. What's wrong with OOP and if it's so bad, why is used so often over other so-called superior paradigms?

The devs for Jax and Daxtor made all their own shit too, and they were a small team. But OP, if you reaaalllyyy want game design stuff. I've got a stash.

...

I want to be a 1MA, like pixel and ZUN.

I made this thread to ask what are the mandatory CS topics I need to study.

do not make your own engine, for the love of god. pixel and ZUN are exceptions. If you don't have extreme autism, you will give up on your engine and never make a game. Just choose an easy pre-built engine and start making a game. Gamemaker and Godot are fine for 2D. Unreal and Unity are fine for 3D. Ignore people who will shit on you and circlejerk over what engine you use. if you make your game good enough they won't be able to tell what engine it was made in anyway.

If the type of game you want to make is anything more complex than a sidescrolling platformer, I strongly suggest you do not attempt to make your own engine.

is shit for the games I want to make.
also too bloated for what I want.

too shit as well, also I need to pay.


I want to make retro games.

It's also possible to make your own engine that runs like shit if you don't know what you're doing.

Like any programming paradigm, OOP has its uses and is arguably most suited to user interfaces and vidya development. The problem is that colleges and such push it as the silver bullet to end all your problems when it often creates more problems and unnecessary complexity than it solves, creating code that's difficult for both computers and users to parse efficiently.
If you want a much more comprehensive description of OOP's problems, I'd recommend reading harmful.cat-v.org/software/OO_programming/why_oo_sucks and some of the stuff listed at github.com/taylor001/data-oriented-design , as well as vid related.

First two years will be basics, going over math, physics, assembly language, learning what an OS is and how it works, learning about hard>>12371673
ware and electrical current and all that shit. You'll start working with graphics and the like at the end of second or start of third year, which is when things will get interesting. It's not fucking "Game sciences"; why would you expect to go in and learn only about coding games?


You're in for a fucking surprise when you start making something bigger than a flash game. Try making something 3D in OpenGL or something, and you'll see why they teach you all that "boring math shit".

You have no idea if a game engine is shit, you just admitted you don't know anything about programming. Those engines have limitations, but I doubt you will ever reach them just making a shitty indie game. Don't just believe what shitposters say on the internet about an engine. Gamemaker is very powerful, especially if you're making a "retro game". It's probably MORE powerful than what you need.

pirate you dumb nigger. Also it goes on sale all the time for $10 or less. Buy it later if you ever finish your game (you probably won't)

retard spotted

Suicide yourself.

I have three years making games on my own using all kinds of engines.

I entered college to learn all the boring math shit, but is so fucking slow I want to self teach that crap rather than wasting my time in college.

I have a fair grasp of what are the classes I need for my goals, and have a intermediate understanding of game programming.

I just want to know what are the topics I should self study.

I already know I need calculus, linear algebra (do I need discrete math?), trigonometry, algebra, physics, algorithms and data structure, code patterns, networking.

I don't need the other faggy BS like compilers or OS because I'm making games, not kernels.

What else do I need?

Stop pushing that awful meme engine: it ties the game tick to the framerate and charges extra if you want to release builds for anything but Windows. Love2D and Godot are much better choices for 2D game development anyways and don't suffer from Gamemaker's retarded architectural decisions.

...

faggot I'm taking CS right now and graduating in a year, It teaches you more advance concepts that a regular armchair programmer won't learn. At the beginning of college I made a couple basic games in java and C++ but now I'm handling more advance concepts where the internet can't help me, only myself and my professor can help me, and most of the time It's just myself doing conceptual planning and praying to god my shots in the dark work or else I'm up all night.

If you don't understand how computer science is LITERALLY 90% math, then it's not right for you.

The main problem with college programming is that most people drop out at their third year because they've learned what they need and can start working without having to pay for another year. This has caused a lot of colleges to redo how their curriculum works so as to keep CS and CIS majors for 4 years.

...

Do you seriously think you're hot shit because you can use someone elses engine? Teenage kids can do that.

You will get bored and give up.

Depends on what you want to do. If you want to keep using other people's engines, then nothing. If you want to actually do shit yourself, then literally everything relating to math (especially if you want to do your own graphics ā€“ almost nothing requires more math than coding graphics), teach yourself some usable language (pro tip: if it has "java" anywhere in name, it's not fucking usable unless you want to make something on the scope of a browser game) and, most importantly, learn how to stop spacing like reddit.

Also, you should know shit like trigonometry from fucking high school. You sound like a lazy bitch that doesn't want to learn ā€“ a lot of the things in computer sciences are tied to each other and will give you a much better understanding of how to make your games, even if they don't directly relate to it.

Great. I can't wait to see what indie shit you're going to be pumping out on the market.

That is some intense autism

kys retards.

I'm already telling you that for making games I only need calculus, linear algebra, physics I, discrete math, graph theory, AI, trigonometry, algebra I II, networking, algorithsm, data structures, C++, code patterns.

So far that's my checklist of what I need to self teach, because I'm not wasting 6 fucking months to learn Calculus I, I'm not some low IQ retard.

But you keep giving me shit meme advice and not what I am asking for.

As far as I can tell, you're not asking for anything. You seem to think you've got it all figured out.

I'm asking to see if I need anything else to self teach.

maybe calculus II?
discrete math II?

What else do I need?

You should just have said so at the beginning, and I wouldn't have wasted my time typing a post.

he can't even read.

I read through some of those documents. I'm not really seeing how DOD necessarily conflicts with OOP. Most of what I'm seeing here just says, "Don't store your data in retarded ways." Replace "data" with "objects" or maybe "data within objects" and it seems like DOD and OOP get along fine.

stay in CS if you actually want to stay in college and program. I'm sure your college offers focuses as well. This is all stuff you could be asking your advisor or professors. It's only a meme if you want it to be

a 3D rendering/game technology class could be pretty good at least the one i got taught me a lot

This was your first mistake. Programming and the math surrounding it is fascinating and everyone should know the basics of coding these days but to actually want to make shitty video games for a living is retarded. It's like learning to compose music with hopes of one day putting together elevator music.

Use Unreal. It's free and has templates for 2D Games. Also you can use blueprints.


This is good advice.
When I was attending university, I learned the the most during the computer graphics courses.

You need to learn all the way through Calc 3 for a good enough understanding to fully understand 3D programming. 2D is far simpler and Calc 1 is enough for that.

Pretty much, for every notch who puts out a shit game and gets money for generations there's a million guys who put herculian amounts of effort into something and get nothing

It doesn't necessarily conflict with OOP, but the end results often look more like procedural code. The problem is people believing it's the one true paradigm and wasting thousands of hours trying to mash square pegs into triangular holes instead of merely using OOP as a tool when it suits the problem at hand.
Anyhow, OOP is useful for organizing game engines if used with care. Too often we get games bogged down by complex inheritance hierarchies and spaghetti architecture which rapes the cache and makes multithreading a nightmare to get working.
Stingray (formerly Bitsquid) is a good example of a modern, architecturally sane game engine and I'd highly recommend reading bitsquid.blogspot.ca/ to anyone interested in game engine design or vidya programming in general.

The graphics programming course I took was probably my favorite class in the CS program. I was never able to fit in the AI class, but it would probably have been fun too.

You can be pedantic about programming languages and scripting languages all you want.

You aren't going to make games. No one in the vista industry is hiring and the ones that are will have you make angry birds clones. You aren't going to make it fam.

You bet. I happen to be doing boring math shit for my CS major right now.

Someone teach me how to do Taylor series with video game analogies if you don't mind.

Computer Science classes in college are for portfolio stuffing. not actual learning.

...

That's not how specialized education works unless you have trust fund moni to burn

I've never heard of that in my life. Do you live in an alternate reality where eugenics is practiced? Let me come over there and help.

You know when you just can't beat a boss and you have to look at the wiki?
That's what you should do.
Look at the wiki.

Jokes aside, the explanation in the English wiki is pretty good, especially if you look at the pictures for visualization.
Basically you take a single point and make derivatives of a function there.
If you add all the derivatives up the way it's written in the article (ideally until infinity), you approximate the function at that point, iirc

So imagine you're speedrunning the hot new indie game "Girl Buttz 4: Skeleton Shivers." You're routing the second stage, but you're having trouble finding a consistent way past the fifth bomb dog. Now you know the A.I. is advanced, but there's still no such thing as truly random artificial intelligence. So, you start making notes on every run you do and what happens. As you look over your notes you can start to see that if you do this the enemy does that, and such. Eventually, given enough runs you can know what the bomb dog will do in every situation, because you have approximated the bomb dog's behavior by your runs. In a Taylor series, one approximates a function (what the bomb dog does) around a certain place (fifth bomb dog) by using the derivatives of that function (guesses for how the bomb dog will act) at that point divided by the amount of derivatives times the deviance from that poin (I don't know, collectible ferrets or some shit that seeds the RNG or whatever, it's not a perfect metaphor).

fucking kill yourself OP.

...

My issue wasn't that I was unprepared for college. I did fine in college, I just didn't know what I wanted to do, but I kept taking classes. I didn't so much fall for the STEM meme as much as I fell for the "YOU NEED TO GO TO COLLEGE" meme. Even though I was just kind of aimlessly drifting forward, I was working under the assumption that even an associate's degree would get me better pay, maybe a managerial position at my retail job.. I was told my entire life that college degrees got you shit.

It did not. It was a waste of time and to this day, I'm still kicking myself for not taking more practical classes like woodworking and auto repair.

Thanks boys, I'm gonna S-rank this test now.

Exactly. The fact that you never heard of it is why it is needed. No one gets an education in it so it is always needed. Every field of biology needs it. Population genetics is what makes sense of all the bio information. Instead kids fall for the marine biology meme. Population genetics is used in
Name any field in biology and you will need a guy to tell you how it works on the population level.

Yes it is. The best jobs require you to know multiple things. Knowing math means nothing unless you know something to apply it to. Knowing biology means nothing if you don't have the math to apply it. Look at the biggest growing jobs and those are genetics and CS. Both require math and other knowledge to apply with.

...

biggest growing in where? us?
>not knowing that each country has different needs

My brain and its inability to focus on anything without screaming out for stimulation is my worst enemy. I have no idea how anyone can even begin to code properly. Fuck me I'm getting bored just typing out this shitty post.

I took an AI class.

It wasn't nearly as interesting as you'd think. It's basically just an Algorithms class.

If you can't make up an AI without having someone spoonfeed you, you're unfit for making good AI.

he said that its not exciting, not that hes bad at it

...

Holy fuck, get out, normalfag. If you can't handle "boring maths", what makes you think you could be a half-decent programmer? What do you think programming is?

Games are 99% art. You will never make a game by being a programmer. People who program games have almost no relationship to the games themselves or why you like them, and it's all extremely abstract boring CS math shit like how the fuck to calculate the direction vector to one arbitrary objective point from the player location so you can plant a fucking navigation marker on their compass or how to have AI use decision trees to make semi-random but also probable and semi-predictable actions.

Just kidding it's not actually boring at all. Programming is like a game in itself where all you do all day long is solve one puzzle after another.

THIS
You gotta LOVE Math, or at the very least tolerate it.

Exactly!

Are you fucking stupid? If you want to make the actual GAME you'll need to learn programming which is essentially just math you dumb fuck. If you just wanted to make the models and environments you should've done 3D modeling or some shit.

that video is evil

That yellow robot is a fucking cunt, yes. He uses the most extreme examples, which won't always apply, but nonetheless, be ready for whatever comes your way.

He said he's bad at it.

nigga if you've really got the auts that bad then why not just use Clickteam Fusion or GDevelop or Construct 2?

The video was meant to be a warning for people who think that they could just make up an idea for a game and then think going into the industry without experience is a good idea. This video shows a fucking retard talking about how he wants to make it into the industry to a jaded asshole of a robot who tells him the "evils" of the industry, its an over dramatization meant to be taken with a grain of salt. The main point to take away from it is that in order to actually MAKE VIDEO GAMES you need to have actual experience in computing, and that its going to be like any other work environment where hard work and profit are the things that will get you places, not being an ideas man.

Chances are if you have an idea for a video game, but can't program, you should be writing a book instead.

Am I jewish?

...

Also I forgot to add that this video was made in 2010, so the inde game market wasn't as big as it is now, so some of the points made in the video have sort of aged now that anyone could make a shitty inde """""game"""" and make it a best seller on steam.

I you want to learn game design, just pick and engine and make games. If you want to learn engine development then study up on computer graphics. Check out scratchapixel.com/ and pbrt.org/courses.html - there are plenty other resources
If you want to do art and animation, you study how to use various 3d modeling software and make art. These 3 aspects of game creation are distinct from one another and should be acknowledged as such. You need to figure what exactly you want to invest your time into and focus on that.

Yes.
In all seriousness though, a lot of time, I find that people can't into maths because they can't really see the context of it all, once you show people the context and where/when they use it, it'll come naturally to them. Economics is a great way of getting that context.

I don't care about being rich, I want to make games.

Money isn't the end all be all, especially since luxuries went down the shitter since the economic crash.

I rented out a hotel room at the Waldorf fucking Astoria, and there's nothing there I can't have at my own house, or make myself.

I can make all the food there and I do this shit anyway, I have all the room features and a BETTER tv, computers are pretty much the ultimate in entertainment anyway, and the only possible reason i'd want money is to shuffle people around to change the world or some shit, which is something i'm not interested in.

I want a job where I make video games because I like making my own games and I don't want to work menial for fucking ever.

How is wanting something that doesn't involve money hard to understand, why is wanting money a fucking default here. To do things for the joy of it is the only way to exist and be happy.

Sour grapes

...

...

MMMMMHMMMMM, dass rite.

Does being hit with a nuclear bomb do that to you?

Sour cummies

100% correct.

Math completely destroyed me in college, even though I was previously good at it, and I dropped out. I studied programming there, and it had absolutely nothing to do with math. People that say this shit are retarded and should be fucking ashamed.

Then I studied economics and accounting and the math made complete sense, but I dropped out as well because college is complete shit, and honestly beneath me.

After that I moved on to the trades, and the math made sense as well, because it wasn't completely out of context and wasn't taught by useless Marxists that have never worked a real job in their lives. It's a lot better than college.

I actually enjoy math. It's fun when you actually apply it to something real, especially when you have practical skills that require it.

I had a college math teacher who was so horrible people felt asleep in their class. She was so bad people actually got to the point they got bored enough to fall asleep. I thought that shit only happened on television.

This is actually a pretty solid piece of advice. Scratch that itch somewhere else.

Write a book first, then keep the rough draft, keep improving the finished product while programming. Chances are you'll kill even three birds with one stone.

I fortunately had no female teachers in college (because math is hard, or something, so women avoid it), but I can imagine that it's even worse.

Anyway, they really liked to write entire essays about math on the blackboard, for some goddamn reason, but couldn't teach shit. Shouldn't they just teach me how to actually do the math? Why the fuck did they do that?

Academia is a joke. Avoid it at all costs. Let the normalfags do it.

I assume that there just might be a huge shortage of tradesmen in many countries in the future because everyone goes to college nowadays and the old people are getting closer and closer to death. So it could get even better.

But whatever. Practical skills are better than college shit any day. Especially for a man. And being able to make things can always lead you to more success that you would expect, if you get creative.

I went into Programming to do software development so I could be a part of making the shit my political side will have to navigate through and repurpose as well as get a good foundation so that when I create my own video game company for far right propaganda ill have a good track record ot impress the (((loaners))) with

Fuck your run on sentence.

This thread is a load of shit. OP you don't nead to know any math to make a game. If your game isn't complicated you can get by with high school math. You just need to learn how to program and your set.

you're*

...

Unless you went to highschool in California.

You shouldn't have even went to college in the first place. Places of higher education are pointless nowadays, as Hollywood and mass media casualized them, turning them not into institutions for the elite and the knowledgeable, but for the low and the stupid. You're expected to go to college or university, even if you are some shit-for-brains autistic retard, everyone prepares you so you can take a lone, go to a place filled with people who are just as fucking stupid as you are, then leave in debt forced to work it off. The fact that they let you in is a good example, you're a fucking idiot like the rest of us, you're not talented or good at anything, at best you're "average", which was never the average in the first place.

I think that cat is sad because it's fat

He's not an American though so the debt situation is probably different.

...

If the degree teaches java, you're learning how to computor from people who don't know how to computor.

never change, vee

...

Hey I didn't know you still posted, notch.

No it's not. Europe are the main faggots pushing that shit onto everyone else, hence why SJWs here in america try their best to emulate europe.

There's no point in going into college if you just wanted to make games. Just install a game engine, follow some tutorials and start making games, keep them simple at first; it's gonna take you a couple months to do something complex.

As you advance you will hit walls, that's when you will need to study a bit more about the subject, which you can do online or even go with a independent teacher if you feel stuck.

You also need a good understanding of finite automata

I should've just gone for welding

Software developer (not vidya) here. You're not gonna make it if you think the math is hard.

I can tell you anything above a junior position at any decent software company will expect you to know your design patterns, data structures, and algorithms. Also, if you're getting into the graphics side of things, not knowing linear algebra is basically inexcusable.

Holy shit you're such a fucking faggot.

...

...

How shit just switch to an English degree and become a writer if you want to get into video games because you definitely lack any critical thinking skills.
Science meaning the goal is to use mathematics in the understanding of computational systems. Every time one of you fags comes in to ask why there isn't "Making AAA vidya 101" I wonder if all creativity and motivation has died in society. Bachlor degrees in engineering and science are not for learning a specific sub division of the field. You do not go to school to become vidya maker. The same reason you do not go to school to become tire tread engineer or harddrive designer. It is also the same reason you won't find "How to make tires 101" in a course guide either. If you want to make vidya then join a club or do it in your own time. There is no degree for just vidya, not in science, not in engineering, not in art. You go to school to learn the board skills and refine them by using those skills to make vidya. Also those "boring fundamentals" will never go away. And if it is boring why the fuck are you paying money to learn it. If you need it then find a way to make it interesting. If it is "too easy" then test out of the class. Enjoy how that "boring math shit" can be used in animation. Learn some initiative or learn to enjoy mindless labor.

Bare minimum: object oriented programming.
Then before you waste any more time focus on getting your degree/certifications/whatever for a job you think you can handle that pays halfway decent. You'll be grateful you did that when you realize your dream is shit and is never going anywhere.
If you've made it this far, fuck around in your spare time. Play with Gamemaker, make a fart app for android, make a text based thing in the console window, whatever. If you are honestly still interested and not just lying to yourself, only then proceed to next step.
Next after OOP is data structures, algorithms, and calculus.
Then linear algebra, and if you're lucky, an actual graphics class. Mine taught OpenGL.

every time. stupid bitch ass niggers.

You do know that "making games" entails a lot more than just programmers? You could of chose any other degree that has something to do with "making games" character animation, 3d animation, rigging, illustration, graphic design, UI and menu design but you chose programming when you knew you didn't like math like a complete dumbass. Did you even touch a programming language before you blindly jumped into college? Most likely not because you would of figured out whether it was right for you or not before you threw your money away. Here are the steps to whether or not you should pursue a degree.
Seems like you didn't think twice before jumping and you just went off the meme that CS degrees are amazing. So many people jump into college degrees just because they heard the money and job placement is good and then they drop out their first and second year because they figure out it isn't for them. There is no good degree that will teach you the general craft of "making games" because as it turns a "making games" entails a lot more fucking talents other than just programming.

I think anons just aren't capable of sitting down and learning something by themselves. I can't really blame them, but going to college isn't the solution obviously

as did iā€¦

That math shit is something you use to augment your coding skills. Don't expect them to teach you to program vidya, you should be gitting gud on your own in the first place and college programming classes are notoriously slow paced anyway.

I slept through most of high school and fell asleep all the time in my college classes as well. They were often boring as fuck.

Here's your only advice: demand some sort of portfolio before you listen to anyone. The world is full of fucking stupid dogshit motherfuckers that will be shoveling shit for the rest of their lives. If they can't prove otherwise, then they're dogshit motherfuckers robbing you of time and money. This goes especially for books and anything you need to pay for.

Go where the successful artists and shit go online and copy them.

So, what's a good online course for math which will make me actually understand shit 'in context'?
Had a school with a bit of advanced math, and was an okay student, but never excelled at it or anything and now it's just been too long.

One that applies math to something, like making a game, for example

Learn a programming language in your free time, very little from what they give you has any actual use. Maths is really the only exception to this, since you're going to desperately need it if you ever plan on applying your skills to anything other than web design.

...

go learn 3d graphics, a good text will usually assume you already understand vector mathematics and/or will point you to a text to get you started. Dot product, cross product, etc. Undeniably useful, since you can't build a 3d engine without understanding it.

Matrices are helpful, too.

Doesn't help that I have the fucking self-discipline of a wet noodle. I've just accepted that I'm a lost cause.

Do not study vidya development, it's worthless as a practical course and the piece of paper you get will just get you a shitty low-level job at a AAA dev at best (you'll hate it and quit). Take a general course and/or self-teach.

How fucking retarded are you.

Now granted if you want to make pixel shit this might be true. If you want to make a demo turd in unity this might be true. If you want to join some AAA studio, remake the same game in an engine already made and be miserable your entire life this might be true. For anything else, the bear minimum you need to know is trig. I mean fuck, even when I modded for gmod I would occasionally have to whip out some sort of high level math skill.

Also if you want an optimal game that pushes the hardware then you need to know linear algebra. If you want to do any sort of 3d programming you need to know matrix math. If you want to do any serious 3d programming you need to know quaternions.

But no. You just want to be another java programmer. I find it funny you have to specify so hard you're not an American because your mentality is pretty typical of American CS degrees.

Sauce?

give links pls

For guys like you, you need to go way back to the very basics of grade school because Common Core style shit fucks you up good. You also need to learn how to study properly, no more then 2 hours on any given subject on a day, and it's not just blind memorization you have to actually apply what you've read somehow and quiz yourself regularly. On top of that you don't just copy stuff, you have to take your own notes in your own words and come back to it every couple days or week and see if you got it, you'll also need que cards. This is a slow, slow process but once you've got the basics down learning other stuff should be easier for you.

This is a good place to start:
godot.readthedocs.io/en/stable/tutorials/vector_math.html

Also vid related.