Its Monday so we're continuing on with the daily questions of the day!

  • Mikina@programming.dev
    ·
    1 year ago

    Choose your first game engine wisely. Avoid Unity as your first engine, because the first engine you will learn will be really hard to transition off. It may be a little bit easier to get into, and there's a ton of examples around, but after a few years, you will regret it. It being closed source means that you will eventually get into frustrating situations, and the company is going downhill every year.

    While Unreal was building and releasing Nanite, Unity's headline news was acquiring a monetization company, killing Unet and firing 200 workers.

    By this point, I've spent years working only in Unity, and even though I did try other middlewares during my gamedev degree, I never managed to actually transition. Learning your first engine is hard, but you will either give up on gamedev or get through it. Learning a different engine after you've spent several years getting used to another one is really, really frustrating. None of your workflows work, you now know how you would do that easy thing in another engine, but it's not taking ages and it's not intuitive. It's so easy to give up, because you also don't really need to use a different engine for your next project. I've never managed to force myself to switch, even though I'm starting to dislike Unity more and more.

    So choose your first engine wisely. I'd even suggest rather than learning one, experimenting early and quickly with as many engines as possible - before you develop a workflow in one of them and get used to it, because then working with anything else will become really frustrating.

    Another tip would be to look into DI as soon as possible. I haven't really decided whether DI is something that should or should not be used in games, but I'm now porting a project that's using Zenject, and I kind of like working with it, but it's a hard mindset to get into - and almost impossible to work into an existing architecture.

    Go take modelling or drawing classes as soon as possible, while you still have lot of free time at school. Basics are enough, but it's a skill that is really useful, and it's something that will really help you down the line.

    You are a programmer. You don't need to work fulltime right out from school to manage - you've survived part-time while going to college, so just keep on working part-time while living frugaly, but use that free time to make games and do your own hobby projects. My roommate did exactly that, while I went to work fulltime. While I had more money that I could use, he has written and organized a LARP, kept working on our game for dozens of hours every month, directed his own theater play and still had time to learn or for social life. While I only barely struggled to get the motivation to work on our game after work. But it's really hard to go from living comfortably on a higher income than you need to living frugaly, but if you are already living frugaly then you can just keep on doing that for some time after your school is over.