3 Magic Lines for Game Devs -

2024 ж. 20 Сәу.
4 471 Рет қаралды

💯Multiplayer Mastery Course - game.courses/mp/
🎓Learn Game Development - game.courses/bc/
Character Code - game.courses/spikarian/
Join the Group - unity3d.group/
Support the Channel by becoming a Member - / @unity3dcollege
Spikarian - assetstore.unity.com/packages...
Scifi Characters InGame - assetstore.unity.com/publishe...
Fantasy Characters InGame - assetstore.unity.com/publishe...
Insects InGame - assetstore.unity.com/packages...
** GET SOME OF THE FANTASY & SCIFI CHARACTERS **
assetstore.unity.com/?on_sale...

Пікірлер
  • "Make it work. Make it right. Make it fast." Absolutely brilliant and I can think of so many domains outside of game dev in which this would also be applicable.

    @MarushiaDark316@MarushiaDark31626 күн бұрын
  • In my intro to software architecture class I was also taught that premature optimisation can cause problems later on. Change is the enemy of perfect design, after all. Until everything is finalized, perfection is a fruitless endeavor. Better to focus on functionality and loose coupling so you don't tangle yourself up. That's my limited understanding as a junior developer.

    @TESkyrimizer@TESkyrimizer26 күн бұрын
  • I heard that quote from as far back as the late 1980s, way before TDD was a thing.

    @midniteoilsoftware@midniteoilsoftware27 күн бұрын
    • I just keep trying to figure out if there are other industries where it's as true. I can think of a lot of industries where it'd be terrible advice :)

      @Unity3dCollege@Unity3dCollege27 күн бұрын
    • @@Unity3dCollege Most Engineering disciplines - first you do the research to get something working, then you do a business/resource analysis to see if it's feasible, finally you iterate/optimize to do it faster & cheaper than anyone else.

      @mandisaw@mandisaw26 күн бұрын
  • 💯 for working -> housekeeping -> optimization. But in your "Fast" step, I feel like that's more of an architecture change - adding a cache is a good move here, but is bound to have impacts elsewhere. Like should it be pre-warmed [add all inactive at the start], will there be memory limit issues, does it need an init/deinit step, etc. The story definitely illustrates the idea, and having the iteration of 3 diff variations on the same method was brilliant. But this specific example kind of falls into the trap that I think your friend's email mentioned, of local vs global optimization. Understanding which "minor" changes will/could have major consequences is part of that "should I do this now?" decision. Good vid though, very thought-provoking!

    @mandisaw@mandisaw27 күн бұрын
  • very good. Thanks Jason

    @magictimm4090@magictimm409026 күн бұрын
  • I need to somehow internalize this practice. Overcoming my tendency to try and optimize from the start, thinking "Well, I need this so it should work best now" is a big problem I have. Thank you for the clear explanation of the process!

    @WeenieWalkerGames@WeenieWalkerGames26 күн бұрын
    • I just make it and hope it works. I have no clue about the rest 😢

      @Tenzordk@Tenzordk21 күн бұрын
  • Quick note - you are aware that GetComponentInChildren looks in the own game object first? So you can save yourself the var animator = GetComponent and if (animator == null) lines with the same outcome and (as far as I know) slightly better performance

    @goldone01@goldone0126 күн бұрын
    • Dang, I said the same thing 9 hours before you did but didn't get a Jason acknowledgment like. FeelsBadMan

      @libberator5891@libberator589126 күн бұрын
    • @libberator5891 sorry mate!

      @goldone01@goldone0126 күн бұрын
  • I think it should be noted that the anecdote that this advice is based on is not knowing what mechanic(s) to put into the game, and therefore one shouldn't bother optimizing prematurely. However, if someone knows ahead of time that they will need to do something (for example, having a lot of Entities on the screen, etc), then choosing the correct workflow at the start (such as ECS or JOBS System, Object Pooling, etc) is better than simply defaulting to 'make it work' first. I think your words are wise Jason Weimann, but I also think people should have a healthy balance of choosing the correct workflows and methodologies for things they know, and then get in a habit of making quick-and-dirty systems to test for things they are not sure of.

    @dreamcatforgotten8435@dreamcatforgotten843526 күн бұрын
    • Yes, the bigger decisions matter a lot. It's the wasting time on small things that don't matter where people need to watch out. Always make sure the tech you plan to use can actually do the job before you start using it.. I've seen what happens when people fail do do that.. not pretty situations

      @Unity3dCollege@Unity3dCollege26 күн бұрын
  • Who is paying people to develop an RPG that is not designed yet, and isn't that the real problem?

    @chaosordeal294@chaosordeal29426 күн бұрын
  • Hey your charactermodel collection has a typo

    @koenfrontatie@koenfrontatie26 күн бұрын
  • My 3 lines for Unity is....Switch to Unreal :P

    @Sovreighn7@Sovreighn727 күн бұрын
    • Single Word Lines! :)

      @Unity3dCollege@Unity3dCollege27 күн бұрын
    • Firmly disagree, but to each their own...

      @goldone01@goldone0126 күн бұрын
    • @@Unity3dCollege Haha ye, I still like Unity, Ive finally taken the leap over to UE5 tho, just to get experience in another engine and C++ ect., so for the next year I will mostly work in UE.

      @Sovreighn7@Sovreighn726 күн бұрын
  • I don't know where he got it from, but I remember hearing "Make it work. Make it right. Make it fast." from Gjon Camaj while he was teaching.

    @BigKevSexyMan@BigKevSexyMan25 күн бұрын
KZhead