Brutally Honest Advice for my younger C++ gamedev self

แชร์
ฝัง
  • เผยแพร่เมื่อ 15 ม.ค. 2025

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

  • @bryanedds8922
    @bryanedds8922 หลายเดือนก่อน +75

    #1 programming tip: become Chad.

  • @alihene2225
    @alihene2225 หลายเดือนก่อน +16

    So true, with each project I make it feels like my skills improved by 10x (especially if it's a "harder" project)

  • @happygofishing
    @happygofishing หลายเดือนก่อน +19

    "I have a ton of people on my discord server who are like 14"
    pdiddy level quote.

  • @ThePowerRanger
    @ThePowerRanger หลายเดือนก่อน +21

    Premature optimization kills many projects and I truly feel this in my soul.

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

      Both premature optimization and generalization, yes. I gave up on two projects for these reasons. First time was me trying to build the "perfect class hierarchy for every system that could ever exist that does all the things all the time and is infinitely extendable" before I even knew the problem I was trying to solve. Second time was trying to write a big SIMD library for my game engine with A) zero clue how to write AVX intrinsics and B) not having anything else working beforehand.

  • @hughjanes4883
    @hughjanes4883 หลายเดือนก่อน +17

    Dont bother guys, i allready beat coding and made the best code ever written, its a blank file. Infinitely readable, infinitally preformant and infinitely expandable. Its so easy guys, to make perfect code just dont code

  • @KallMeMoh
    @KallMeMoh หลายเดือนก่อน +7

    It's so hard to just make projects for me, I lack creativity, and whenever I decided "okay you know what, let's just make something that already exist" something ends up happening that makes me stop

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

      just start doing it bro, make a terraria clone, it is very fun I prommise

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

      I have adhd and i stuggle with anything. This video gave me some motivation to try again coding anything(this time in c++, not c or java)

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

      @@subgivtara same here. Even with meds (and probably because I'm 31 and have life going on) I struggle a lot to sit down more than 1 hours and do stuff

  • @oskar_schramm
    @oskar_schramm หลายเดือนก่อน +15

    Pure wisdom right here

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

      Yooooooo

  • @happygofishing
    @happygofishing หลายเดือนก่อน +18

    unironically learn assembly as it will demystify how cpus work.

    • @thesun___
      @thesun___ หลายเดือนก่อน +6

      I actually kind of want to learn Assembly as I seriously know almost nothing about how CPUs work, but I am worried that I will get into a year-long rabbit hole on CPUs, GPUs and optimising everything little fiddly bit based on how it runs as simple machine instructions. I am also worried that I will then spend two more years on a custom compiler optimised to handle my specific coding style to produce the most efficient executable possible.

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

      @thesun___ I would recommend learning riscv assembly first as imo it's the cleanest. When I say demystified, I mean you can finally be able to see exactly what the stack is, what calling conventions are, how functions store their args and return values, how syscalls communicate with the kernel etc.
      I haven't been doing assembly for long, only a few months, but it's expanded my knowledge so much it's insane and definitely worth it.

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

      @@thesun___ watch @CoreDumpped before even learning assembler 🙂

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

      @@thesun___ oddly specific

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

      @thesun__ stop worrying and start studying then.

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

    That is one of the best advice I think. I had to go through a lot of those things myself and would say that you're 100% right on all of the points. And the best advice was "Stop waiting for someone to teach you, just learn yourself". Yes, you make mistakes and at the same time, you learn a lot from that.

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

    To my younger self: Enjoy the process over the product.
    You will not be playing your game 20-40 hours a week - you will be developing it.

  • @dwdadevil
    @dwdadevil หลายเดือนก่อน +6

    I remember starting coding when I was 14, doing just random stuff in Javascript on my phone, nowdays i'm working in a lot of projects, some done in C++, some in Lua, and to this day I'm still learning new stuff, also more programming languages
    A big project would be that port of Lua to Godot I'm doing

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

      What do you mean by "phone"? How did you code on your phone?

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

      @thesun___ The app i was using was called "DroidScript", it's sort of a weird mix of javascript and native android interfaces
      Then i moved to a cordova project, it was just an app that loaded my scripts in my sdcard, started to code using Acode editor, then copy the files to my pc and build it using android studio

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

      @@thesun___ Termux + Neovim is one way if you're on Android, and I heard nowadays you can sideload some app on an iPhone, so with a terminal emulator you should be able to do the same thing. Granted, nvim is not VS, but on android there's an app called ACode iirc? For example, personally, since I'm about to move and give away my pc, I bought a Samsung Galaxy Tab, so that's android, with the Termux app I installed Debian under proot and run VSCodium, there's multiple way to do so when you don't have any other choice than to code on a phone ^^

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

      You can install the replit app on your phone

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

    About the algos: Just learn what they do what they are supposed to solve. Then use one of the myriad (open source) implementations out there if you think you need one particular algo. Finally, learn what the C++ STL provides and use wherever possible. Don't roll your own. You'll save time and the STL implementation is probably way more correct and performant than you'll ever get your own version.

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

    CS student here. Sometimes you don't use the data structures and algorithms that teach in the university/YT courses. But you gain so much confidence and knowledge in a language and programming in general, by learning and practicing with data structures and algorithms. It helps you solve problems that you'll face in game development.
    Also a little bit of math, just basic stuff, for small projects.

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

    Great tips!

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

    Thanks for these wise advices 🙏

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

    one more tips: write unit tests!
    Unit tests is finally small and simple functions -> you are still coding and it helps focus on important parts of your project.
    Bonus: will save lot of time when updating code!

  • @themaster1124
    @themaster1124 11 วันที่ผ่านมา

    On your over abstracting point. I remember when I used to make games where I would sit here and spend weeks upon weeks on my player character and debugging his abilities. And I gave him all the abilities I wanted. All Before I gave him an enemy to fight, his ability to die and his ability to change rooms. I became a bit happier when I started just Coding the game with all the basics and also be able to complete my game from title screen to ending credits without spending all the time debugging stuff. Without over abstracting, My enemies are SQUARES, and not Sprites. And while I plan to make a more complicated game, for now, All I need to complete the game is to Jump, walk left and right and attack and destroy the square enemies.

    • @lowlevelgamedev9330
      @lowlevelgamedev9330  10 วันที่ผ่านมา

      yes that if very true, imagine after adidng all of those abilities, you add an enemy and you discover that they aren't fuj and you need to change the gameplay completely; better to just take things step by step 💪

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

    смотрю это как будто уже этого не делаю, настолько интересная подача

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

    i don't know what kind of universities you people go to, but in my case, i would not be as good of an engineer as i am today if i didn't get my degree. 80% of subjects were useful in some way - even it is wasn't related to the exact problem i had to solve, it taught me something which became useful eventually (that being hardware, parallelization, concurrency or optimizations, for example).
    regarding tip 3, the best way to get experience is to code as much as possible (and, a lot of time, coding the things you don't care about is even better than doing only what you want). in my case, i had to make roughly 20 projects in 4 years, most of which required at least 50 hours to finish. that kind of work can teach you a lot about code maintaining, debugging, reading other people's code, finding resources online etc. and finally, maybe the most important thing, it will teach you the discipline. you won't always do what you like (even in gamedev, there's a lot of tedious crap you don't feel like doing, but you have to). that kind of experience is best gathered in college.
    of course, if you are wise enough, you should always have some personal projects you are doing in your free time. the best thing about that is, you will feel yourself becoming better in both your project and your studies as you do them in parallel. i, for example, made 3 games during college, only in my free time.
    and finally, my advice to anybody reading this: ditch C++, it's a hell of a language. just switch to C and learn how to code properly.

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

    I like Casey Muratori's idea of Compression-Oriented Programming. (The article is titled Semantic Compression.)
    "Just write the code that does the thing" (which by the way is the exact same idea in his "Non-Pessimization" performance concept).
    You write the code as simply as possible first, and then your brain automatically notices any patterns in it that can be extracted out (semantic compression).

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

    Ok, the hardest part would be only going to the gym.
    But thanks man, you gave me a stable base for my mindset.

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

    Another good option is to grab an open source project like Doom and get that set up so it compiles and then study and mess around with it. You'll learn how others go about doing specific things and learn a lot of things you might not known about.

  • @71711x
    @71711x หลายเดือนก่อน +1

    love u bro

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

    Super random, but you have inspired me to create my own renderers and to not give up. I now have a working raycaster in JavaScript that runs smoothly. The next step is a full 3D software renderer like the one used in Quake and I have no idea where to start, but that's the fun part.

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

      bro this sounds very cool, keep it up 💪

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

    Didn't expect the gym advice. After code is done, let's go for the pump 💪🏿

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

    Now give advice to those who started learning this at 28. In nice cases, they will become cool in 5-8 years. In worst 10 years. And unfortunately, they need to spend time creating a family and how not to die of hunger. 2000s graphics are much easier to learn than today.

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

    100%. All great advice.

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

    I really wanna goto the gym, but the food at my university is so shitty that its better to eat actual shit, so i am eating really less so i am scared of damaging my body

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

      Is the idea of damaging youris body the truth or just a belief that limits you? I don't know your physical condition, but if you're somewhat healthy, a little of excercising will only build your body up.
      As a tip for now:
      The 15 min of working out will give you the most of the benefits from working out, you don't even need to go to the gym. Just do some push ups on the knees, and squats.
      If you can't workout for 15 min - do 10 or even 5. The most important thing is sticking with it every day.
      And I actually wont recommend doing more than 15 min at the beggining. It's better to slide in slowly, and increase the workout time or intensity as you become more accustomed to the current plan.
      Tracking is also important. Put a little paper on the wall and set a checkmark when you did worked out.
      Anyway, do whatever the hell you think is right. There is no rules.

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

      Then why don't you cook for yourself instead?

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

      ​@@padlivniyit is partially true and partially in my mind, I have been going to the gym for 6 months before joining uni, after joining my whole schedule got fucked up and I eat very less stuff rn and I lost a ton of weight

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

      ​@@padlivniymost of that was cuz I was in a cyber security club that was really demanding (7 days a week) 9am to 10 pm in the weekends and 5 - 10pm during weekdays. It's a good place and all and I was doing reverse engineering, and I was enjoying it but this tight schedule fucked me up a lot and I quit after a year

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

    shout out to Squibiladoodoo

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

    I made that mistake too. School mentioned nothing about promises and frameworks. Not even jQuery. There was very little emphasis on database. So when I got a job in the IT field, I wasn't able to keep that job.

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

      Honestly, I wouldn't trust a school that can make maths seem boring teach me how to properly programme.

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

    I want to study low-level programming so much, but
    all IT colleges rejected me now i am in a geology college and i dont have a lot of time to start my projects 😢

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

      sorry to hear that bro... you should just learn coding by yourself, what's the point to be in a geology college if you don't want to do that

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

    fine…. I will do that flappy bird clone

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

    1:05 well... discord is kind of banned in my country

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

      if ur turkish like me, yes discord is banned in our country 😭 but you can fix it! change your dns settings and then u can able to open every site you want. For process just ask chatgpt or watch some tutorials.

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

    5:52 In my opinion, If you are a newbe developer, there are two simple things you may think about. Is the code you write testable? When and how often will the code need to be changed? This is enough to write not bad code.

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

    Only maths is holding me back i really dont know anything

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

    solid advice.

  • @h3l_l
    @h3l_l หลายเดือนก่อน +7

    Hello master Gigachad Low Level Gamedev, I sincerely thank you for the advice. But I'm having problems finding sources to learn opengl with c, not c++. C++ is not interesting for me and I don't want to get STD. May you help me master?

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

      Opengl is a library, so it works the same way in C and C++. Just replace any C++ specific stuff with corresponding C stuff. Most of the time the C++ is just strings, vectors, sorting or other basic data structures and algorithms so replacing them shouldn't be too hard even if you don't know how exactly they work in C++.

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

      Doing OOP with C is a pain and a waste of time. If you don't like C++ then choose another compiled language that offers higher level abstractions. IMO, I consider C too low level to code anything big in it. It is feasible but a huge sink of time which can be spent elsewhere and be more productive.

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

      @sledgex9 nope, it's my choice good sir. You go use your classes and namespaces and get STD. I love c's simplicity and opengl is originally a c library also I'm not going to implement oop in c from scratch, if I wanted that I would've just used c++ I know it's tiresome

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

      @@hullukana214 well, I'm too stupid for that. I'm trying to replace the c++ stuff but I just suck

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

      Opengl is procedural api so it does not have any cpp specific things and there is plenty of tutorials about it. ~I can admit that I also like c simplicity.

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

    Easier said than done to someone with autism and adhd 😢

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

      As long as it's not plain impossible, it's doable. Just harder.

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

      @blackcitadel37 yeah i do push myself thru often but its hard

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

      Stop downplaying yourself, and move on. The more time you spend saying you can't do it, the more time you waste

  • @ІгорАлієв
    @ІгорАлієв หลายเดือนก่อน

    Thank you for nice tips.
    Could you recommend me some c++ gui library, which is 1)simple 2)cross-platform 3)able to create static executables, so you don't need to recompile or update your drivers/gui libs just to run on another machine 4)your gui is editable.
    Thank you in advance.

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

      I usually use imgui but if you need gui for the game itself I just wrote my own gui library. You could also look into tgui it seems cool

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

    All game devs eventually become unemployed youtubers

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

      I actually skipped the step of getting employed and just became a youtuber full time from the start

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

      So according to you what's the most ideal way to market yourself and your games to general public??

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

      Talking about game dev is one of the best ways to make money as a game dev.

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

    So for people that are interested in coding at their late 20s early 30s, do you recommend not pursued this carreer?
    I have already the fundamentals but taking recommendations for a lot younger people, may be its not worth this career change. (Sorry my english it's not that good)

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

      really depends, it is possible so it really depends if you like it more than your older career and how fast you manage to learn it compared to other people, so you should ask yourself this questions because it can still be a good option

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

    Do you recommend Handmade hero ?

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

      yess it is very good, it is indeed long but you will learn a ton of stuff so do soke episodes at least 💪

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

    hey i am on mac andi want to star grapjhics programing any help?

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

      You can use metal or OpenGL

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

      use chatgpt to ask questions something like this

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

      you can use opengl on mac, the learn opengl tutorial coveres that 💪

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

    btw i use pencil and cardboard (edit: jk) (edit2: u said that if i started in high school then i will be ahead of most ppl but im 9......) (edit3: im not kidding im 9) (edit4: coding is also one of the most fun things for me and i sometimes spend 10 hours coding)

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

      I have no idea how you have as much free time as you do, for I can barely get ten hours on weekends. 😔

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

      I can relate I have Georgian school but I barely speak Georgian remember once it took me 10 hours to do the homework (not completely’

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

      @@AlexTsaava You could probably pick up the language quickly as long as you always be around people who speak the language.

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

      @ yeah that wat I do I mean not rlly but like I do… wait I’m lying in edit1 bc I remember how in class I wrote a c++ script in my notebook

  • @Benox-Dev
    @Benox-Dev หลายเดือนก่อน +2

    Godot or Raylib(C++) i study in middle hight school (14 years old ) ho is better for me

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

      Whatever you want. It does not work in a way that something is better than other when you are 14 yo. Just pick something.

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

      But in your place I would pick something least abstracted which is raylib, because you can learn more how game engines works under the hood, which I hope it can help you later.

    • @Benox-Dev
      @Benox-Dev หลายเดือนก่อน

      @@patryk3772 haaaah thank you

    • @Benox-Dev
      @Benox-Dev หลายเดือนก่อน

      @@patryk3772 THX

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

    But my parents want me to Uni

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

    man ure 31?? u look like ur are 23-24 damm ure chad.

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

      I am 23 that's why I look like that 😂

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

      ​@@lowlevelgamedev9330 i totally misinterpreted the start of the video , u said that your first game engine was at the age of 21 and that you have been learning c++ for 10 years and i somehow interpreted it as if you started coding at 21. my bad.

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

    hello

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

    I'm 11 years old

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

    Instant click

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

    55 second old video!

  • @Volt-Eye.
    @Volt-Eye. หลายเดือนก่อน +1

    He Chad bro ! Did you know ?
    Read more...

    • @Volt-Eye.
      @Volt-Eye. หลายเดือนก่อน

      🎉🎉🎉🎉 You have been Rickrolled 🎉🎉🎉🎉

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

      bruh 💀

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

      ​@@lowlevelgamedev9330
      Hey here is a tips
      Read more
      NEVER GONNA GIVE UP