5 Things Every Game Programmer Should Know

Learn game programming: programvideogames.com/pong.html (free course using Odin + Raylib!)
X: x.com/falconerd
Newsletter: bytesbeneath.com
Odin: odin-lang.org
Raylib: raylib.com
Liberal was totally the wrong word, you get what I mean..
0:00 Intro
0:33 Hot Swapping of game code
1:47 Drawing Shapes / General Rendering
2:25 Linear Algebra / Learning math for games
6:48 Memory Management
10:17 Debugging
12:22 Channel update
13:56 Extro

Пікірлер: 33

  • @diegofloor
    @diegofloor29 күн бұрын

    As a physicist who had to learn a lot of advanced math, I relate to your struggles and support your learning strategy. Because there are two types of people: people who need to learn math for a specific goal (physics, programming, etc) and people who just enjoy math. Our motivations are slightly different though, which is why math textbooks are so hard to swallow! mathematicians care about being as exact as possible, they care about proving theorems, etc. We are happy to take their word for it and get a distilled, intuitive version of the events. But that's not how they write books, unfortunately.

  • @DylanFalconer

    @DylanFalconer

    29 күн бұрын

    I think you hit the nail on the head - and, that this happens in every field Beginners don't care about fundamentals, they care about showing off, proving something to themselves, or having fun They also don't want to be scared off by jargon - I believe Feynman cracked this part pretty well... Combining the two: simple language + creating the feelings beginners want. I think that's the best way to *earn* the time of the learner. Once you've earned the time, you can tackle the dry but important fundamentals, as they'll be, not dry, but much more interesting to them when they understand the importance This is all just a hypothesis at this point, something I'm striving for in my work

  • @Kitsune_Dev
    @Kitsune_Dev27 күн бұрын

    never thought Egg man would be teaching game dev 😂

  • @DylanFalconer

    @DylanFalconer

    27 күн бұрын

    You fool, away!

  • @pkurras
    @pkurrasАй бұрын

    You should include chapters in your video description like so - this will split the videos such that people can potentially skip to relevant sections: 0:00 Intro 0:33 Hot Swapping of game code 1:47 Drawing Shapes / General Rendering 2:25 Linear Algebra / Learning math for games 6:48 Memory Management 10:17 Debugging 12:22 Channel update 13:56 Extro Feel free to copy this one. :)

  • @DylanFalconer

    @DylanFalconer

    Ай бұрын

    Cheers, I will add them

  • @naranyala_dev
    @naranyala_devАй бұрын

    odin mentioned

  • @vapandris
    @vapandrisАй бұрын

    Grate video again man ❤ I'd love to hear why you switched to Odin? I'm currently using Zig with raylib. I also tried Odin and concluded that I love comptime and many other of its features too much. But yea, Odin is amazing too and way more stable. 😅

  • @DylanFalconer

    @DylanFalconer

    Ай бұрын

    The short answer is joy of coding. I suspect you have a similar feeling with Zig. I'll make a video for the long answer 🤠

  • @hifumibestgirl
    @hifumibestgirl28 күн бұрын

    In regard to textbooks, I have found them useful for rapidly exposing myself to a lot of topics, especially topics about which I was previously unaware. Then I can revisit the texts and/or look stuff up online.

  • @DylanFalconer

    @DylanFalconer

    27 күн бұрын

    Yeah, I guess you don't *have* to go back to front... Just conditioned to do that from school I guess

  • @LinuxRenaissance
    @LinuxRenaissanceАй бұрын

    I am one of those “just in time” kind of persons. It works, but when you are a beginner then you have a lot of holes so in order to do this I start learning X1, but in order to complete X1 I need to learn X2, and this recursiveness can go very deep sometimes and leave me with literally zero progress over the reason why I started learning X1 in the beginning.

  • @DylanFalconer

    @DylanFalconer

    Ай бұрын

    Hey Darth! So true, it can be a rabbit hole sometimes

  • @josephferano

    @josephferano

    Ай бұрын

    Yeah, I've gone off doing deep dives that have lasted years at times because I've felt I've needed to level up. I don't regret learning the things I did, but I should've balanced it out and focused on just learning the immediate things I needed.

  • @kidmosey

    @kidmosey

    29 күн бұрын

    There's also a challenge of not knowing what you don't know. You'll start running into XY problems where you are asking a specific question about how to do X, but it's the wrong approach to the general problem of Y.

  • @lorensims4846
    @lorensims4846Ай бұрын

    I figure you have to really understand how your machine works and how to use it to represent objects on the screen. You also have to have an animator's eye to understand how things really move in the real world.

  • @DylanFalconer

    @DylanFalconer

    Ай бұрын

    There are a few ways to get into graphics. Any way you choose, there's good explanations of the concepts on learnopengl dot com

  • @meanmole3212
    @meanmole3212Ай бұрын

    How does the long term memory allocation work on Odin in your apps? Is it just basic malloc, same as with C? What about the frame time bump allocator, does Odin offer general ready to go solutions for both of these cases or do you have to built both of them from scratch for yourself?

  • @DylanFalconer

    @DylanFalconer

    Ай бұрын

    They are provided by default and can be overwritten with other Allocator types if you want - the defaults are arenas Then you just call free_all(context.temp_allocator) at the end of each frame

  • @meanmole3212

    @meanmole3212

    Ай бұрын

    @@DylanFalconer Thanks, sounds good!

  • @theaveasso
    @theaveasso6 күн бұрын

    Sir when you start to build a odin raylib tutorial series 😅

  • @DylanFalconer

    @DylanFalconer

    5 күн бұрын

    Already made one and working on another! Check the link in the description (there's a free Pong course available) I'm working on my paid course right now as priority, but I'll be making Odin + Raylib videos every so often on YT as well

  • @redrevyol
    @redrevyol29 күн бұрын

    I find it kind of odd that not a lot of games go beyond than Newton's laws of motion. Some games do go beyond, but there is a huge performance hit. This is probably because developers are using approximation integrations.

  • @DylanFalconer

    @DylanFalconer

    27 күн бұрын

    What would you like to see? There are some interesting experimental 4D games that mess with time

  • @redrevyol

    @redrevyol

    27 күн бұрын

    @@DylanFalconer I'd like to see more realism in video games in regards to physics. For instance, bullet drop, simulated sound (using fluid dynamics), and even an upward acceleration on gas in vehicles (not constant like in real life). I am aware that some games do have these features, but it's not widespread. Come think of it, there aren't a lot of physicists in the industry.

  • @Veeq7
    @Veeq7Ай бұрын

    What did you find cringe about your old code?

  • @DylanFalconer

    @DylanFalconer

    Ай бұрын

    I think it was mostly about fragmented memory allocation. I'm going to make a video about it 🤠

  • @minibubblegum5108
    @minibubblegum510827 күн бұрын

    Reading comments does sound painful.

  • @DylanFalconer

    @DylanFalconer

    27 күн бұрын

    Yeah but I'm going to do it anyway 🤠

  • @danieleccleston7928
    @danieleccleston792822 күн бұрын

    I have a long way to go

  • @DylanFalconer

    @DylanFalconer

    20 күн бұрын

    Me too brother. One step at a time

  • @danieleccleston7928

    @danieleccleston7928

    18 күн бұрын

    @@DylanFalconer Thanks, I'll be working through your pong course. I'm sure I'll learn a good amount