3 Magic Lines for Game Devs -
Вставка
- Опубліковано 26 вер 2024
- 💯Multiplayer Mastery Course - game.courses/mp/
🎓Learn Game Development - game.courses/bc/
Character Code - game.courses/s...
Join the Group - unity3d.group/
Support the Channel by becoming a Member - / @unity3dcollege
Spikarian - assetstore.uni...
Scifi Characters InGame - assetstore.uni...
Fantasy Characters InGame - assetstore.uni...
Insects InGame - assetstore.uni...
** GET SOME OF THE FANTASY & SCIFI CHARACTERS **
assetstore.uni...
"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.
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.
I heard that quote from as far back as the late 1980s, way before TDD was a thing.
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 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.
💯 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!
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!
I just make it and hope it works. I have no clue about the rest 😢
Who is paying people to develop an RPG that is not designed yet, and isn't that the real problem?
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
Dang, I said the same thing 9 hours before you did but didn't get a Jason acknowledgment like. FeelsBadMan
@libberator5891 sorry mate!
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.
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
very good. Thanks Jason
Hey your charactermodel collection has a typo
My 3 lines for Unity is....Switch to Unreal :P
Single
Word
Lines! :)
Firmly disagree, but to each their own...
@@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.
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.