Unity tips to improve your efficiency

A bunch of assorted Unity tips in no particular order. Let me know if I taught you something new 🙏
❤️ Become a Tarobro on Patreon: / tarodev
=========
🔔 SUBSCRIBE: bit.ly/3eqG1Z6
🗨️ DISCORD: / discord
✅ MORE TUTORIALS: / tarodev
0:00 Flexible start method
0:19 RuntimeInitializeOnLoadMethod
0:50 Fix broken animations
1:20 Debug inspector

Пікірлер: 98

  • @JanbluTheDerg
    @JanbluTheDerg2 жыл бұрын

    One of my lecturers pointed out the Debug option in the inspector and I had a whole moment of going "OH MY GOD THAT MAKES LIFE SO MUCH EASIER AAAAAAA!"

  • @MaxIzrin
    @MaxIzrin2 жыл бұрын

    Get well soon. And no, I did not know Start can be a coroutine, that's cool, and very useful. Good video!

  • @0x3C
    @0x3C2 жыл бұрын

    man, there were so many great little tips packed into this! great work Taro, hope you feel better soon!!

  • @krysidian
    @krysidian2 жыл бұрын

    Your videos are so condensed and packed with useful information, it really helps me get started with programming and I know I will return to your channel a lot when I get better and finally understand the more advanced concepts. And get well soon!

  • @zaurin9650
    @zaurin96502 жыл бұрын

    I did know about debug inspector option (I love it), the other tips were all new to me. Big thanks Taro and get well soon!

  • @iHeartGameDev
    @iHeartGameDev2 жыл бұрын

    I did not know any of these tips... but now I do! Love the efficiency, Taro! Also, sorry to hear about the sickness. Hopefully the symptoms pass soon!

  • @Noixelfer
    @Noixelfer2 жыл бұрын

    Those are some really good tips, I knew about the RuntimeInitializeOnLoadMethod but had no ideea about the BeforeSceneLoad attribute. Good job in selecting the tips, usually videos will present very common and basic tips but you presented some that can be new to even intermediate or experienced developers. You've earned yourself a sub :D

  • @esnevip
    @esnevip2 жыл бұрын

    Great format, looks good visually too

  • @alec_almartson
    @alec_almartson2 жыл бұрын

    Simple but Effective and yet, Cool 😎 Tips👍🏻 Thank you 🙏🏻

  • @MandyLeeYT
    @MandyLeeYT2 жыл бұрын

    Oh Taro! Love the ice cream pointer!

  • @nikokune1395
    @nikokune1395 Жыл бұрын

    This is one of these "WTF HOW IS IT POSSIBLE I DON'T KNOW THIS" moments.. thanks for sharing!

  • @Tarodev

    @Tarodev

    Жыл бұрын

    Mission accomplished

  • @robertjunior5272
    @robertjunior52722 жыл бұрын

    OMG the animation tip was very useful for me T_T THANSKK!!

  • @PitiITNet
    @PitiITNet2 жыл бұрын

    Fantastic video! I hope you will get better soon! Also cannot wait for the video about quaternions :D

  • @davidsedrakyan
    @davidsedrakyan2 жыл бұрын

    Nice, Solid and short !!

  • @chawlahimanshu6219
    @chawlahimanshu62192 жыл бұрын

    I wish I had this video when I was starting out, would have saved me a lot of time

  • @RRaiho
    @RRaiho2 жыл бұрын

    Get well soon! You have no idea how helpful these kinds of videos are! RunTimeInitializeOnLoadMethod..... Where were you so long? Thank you so much.

  • @FileTh1rt3en
    @FileTh1rt3en2 жыл бұрын

    The animation fix thing is amazing.

  • @justinwhite2725
    @justinwhite27252 жыл бұрын

    Knew about the 2nd two. The first two were mind blowing though!!

  • @adamprokop
    @adamprokop2 жыл бұрын

    Okay I am so hyped for this video about quaternions now. God bless you if u actually manage to explain it to me (which I have no doupt about)

  • @SuperZikoure
    @SuperZikoure2 жыл бұрын

    Get well soon. Make sure to get enough rest.

  • @betterlifeexe4378
    @betterlifeexe43782 жыл бұрын

    great video!

  • @Skillath
    @Skillath2 жыл бұрын

    Great video! Also, if you use UniTask package, you can make the Start method return a UniTaskVoid (similar to async void but cooler to use in MonoBehaviours!).

  • @larryd9577
    @larryd95772 жыл бұрын

    Get well soon and for good!

  • @Tarodev

    @Tarodev

    2 жыл бұрын

    Are you saying I should never get sick again?

  • @datablob
    @datablob2 жыл бұрын

    Gute Besserung! Nice synthwave soundtrack on this one👌

  • @r1pfake521

    @r1pfake521

    2 жыл бұрын

    Spricht er Deutsch?🤯

  • @MaZyYTube
    @MaZyYTube2 жыл бұрын

    For 0:19 I have there two versions. 1. I use scriptableobjects. You can put prefabs there all will be instantiate whenever you press play. I had a game with over 1 million downloads around 2013-2015 and this was a 1000% dev boost hehe, because it had singlestons and needed to start first scene always. With this method I could start from everywhere. 2. In our large scaled mmo game we use scene with all needed stuff. This will always get loaded at first with RuntimeInitializeOnloadMethod. You can also combine with DontDestroyOnLoad then switch to other scenes like you want instead of using additive.

  • @foreducation408
    @foreducation4082 жыл бұрын

    This is soo good.

  • @BlackoutGamingChannel
    @BlackoutGamingChannel2 жыл бұрын

    That animation fix tip! 💯💯💯💯💯💯💯

  • @fmproductions913
    @fmproductions9132 жыл бұрын

    Another great video and visualization! I wasn't aware about the AnimationClip missing property warnings and the easy re-setup. Hope you'll get well soon! For RuntimeInitializeOnLoad, one time I forgot that I had a scene that sets up stuff there and I got weird behaviour. That's hard to debug if there is no logging going on and you have a script somewhere you forgot about. I've also been using it recently to set up my project for Disabled Domain Reloading, and I love it! Instead of having my project compile for like 5-10 seconds every time, I can no hope into playmode in around 1 second.

  • @Tarodev

    @Tarodev

    2 жыл бұрын

    Ah yeah, resetting your statics etc?

  • @fmproductions913

    @fmproductions913

    2 жыл бұрын

    @@Tarodev Yep! I also had a generic base class for singletons that held a static variable, and Unity doesn't call RuntimeInitializeOnLoad on generic classes, so I had to the types inheriting it with reflection and reset the static value that way. ... later I rechecked the whole thing and decided I could just get rid of that static variable without issue, which was a much better approach.

  • @pulkit.guglani
    @pulkit.guglani Жыл бұрын

    Almighty Quaternion is still missing in the woods

  • @Tarodev

    @Tarodev

    Жыл бұрын

    :(

  • @MaksMikhnevych
    @MaksMikhnevych2 жыл бұрын

    Top notch with bootstraper! Get well, mate!

  • @iwoMalki
    @iwoMalki2 жыл бұрын

    You unity beast!

  • @ducky4303
    @ducky43032 жыл бұрын

    underrated

  • @Runix1
    @Runix12 жыл бұрын

    Async Start feels like cursed knowledge, but I'm sure it can be really useful!

  • @Tarodev

    @Tarodev

    2 жыл бұрын

    It does feel a bit cursed, but I can't think of anything wrong with it

  • @euden_yt

    @euden_yt

    2 жыл бұрын

    Just keep in mind that async functions in Unity might keep waiting after exiting play mode. You can try to cancel the awaited function on destroy() to avoid ending with spawned objets on edit mode like me lol.

  • @TaAnderson-Google
    @TaAnderson-Google2 жыл бұрын

    Sure, you're an incredible resource to the Unity world. Yeah, you teach like you were born to it (and I'm a teacher, trust me, you have talent), but even if all of those *very true things* were not so, you've always been a friendly, funny, guy that brightens our day (we look forward to your videos) and inspires us to go make amazing things. Take care of youself, Brother. See you soon.

  • @Tarodev

    @Tarodev

    2 жыл бұрын

    Damn man...

  • @r1pfake521
    @r1pfake5212 жыл бұрын

    Many people don't know about the "new" C# feature where you can put a attribute on a property backend field with they field keyword, Unity also supports it, so you can now (finally) make serializable auto properties with the following syntax: [field:SerializableField] public int MyIntProperty {get; private set;}

  • @GiraPrimal

    @GiraPrimal

    2 жыл бұрын

    Keep in mind this only works with auto properties. If you want to use specific behaviour in get or set (i.e. validation, firing events), you'll need a backing field and put the property in it. [SerializableField] private int _backingField; public int Property { get => _backingField; set { _backingField = value; OnFieldChange?.Invoke(value); }

  • @DevDunkStudio
    @DevDunkStudio2 жыл бұрын

    You can also have 2+ inspector windows. So you can have 1 locked and the other for the selected object! (Also, had no clue start could be a coroutine, but mostly use async lately)

  • @Tarodev

    @Tarodev

    2 жыл бұрын

    I've never used double inspectors. Do you?

  • @DevDunkStudio

    @DevDunkStudio

    2 жыл бұрын

    @@Tarodev sometimes. For example locking a gamemanager object for debugging some values and then having the ability to see positions or something of selected objects

  • @Tarodev

    @Tarodev

    2 жыл бұрын

    @@DevDunkStudio I'll keep this in mind and try incorporate it in my workflow

  • @DevDunkStudio

    @DevDunkStudio

    2 жыл бұрын

    @@Tarodev nice! Don't force the use of it tho, it will add some clutter haha

  • @iDerp69

    @iDerp69

    2 жыл бұрын

    Right click object -> Properties You're welcome.

  • @jumpingman6612
    @jumpingman66122 жыл бұрын

    Oof hope you get well soon, and thanks for putting this one out for us, despite covid!

  • @nostalbierhd4309
    @nostalbierhd43092 жыл бұрын

    Hey, I've been working with unity for a bit now and wanted to say thanks for all the great tutorials. Would it be possible to make a tutorial about e.g. an updater? So for example with Bloons TD6 when you start the game it downloads the latest version and does not reinstall this, would this be possible at all? Or via a Unity Launcher Updater? Thanks in advance many greetings DevNost

  • @TheUncutAngel
    @TheUncutAngel2 жыл бұрын

    All of these were a surprise to me :v

  • @sflashy6850
    @sflashy68502 жыл бұрын

    get well

  • @CryShana
    @CryShana2 жыл бұрын

    I have to admit, I have been using Unity for years.... and how dumb I felt when I recently (like a month ago) figured out you can just make certain Unity methods return "IEnumerator" and they will automatically be called as a coroutine by Unity.

  • @sapientunderground
    @sapientunderground2 жыл бұрын

    Good on ya for soldiering on despite.

  • @samochreno
    @samochreno2 жыл бұрын

    W video

  • @PixelBlight
    @PixelBlight2 жыл бұрын

    Does async Start() stall the scene loading? If so it seems like a bad practice to do heavy stuff there?

  • @pom69
    @pom692 жыл бұрын

    TAKE A BREAK TARO

  • @Tarodev

    @Tarodev

    2 жыл бұрын

    NEVER

  • @mathijsvannimwegen9656
    @mathijsvannimwegen96562 жыл бұрын

    The debug menu does not show unserialized values. It does show private values, but only ilwhen they are marked with the serialize field attribute.

  • @Vandora41
    @Vandora41 Жыл бұрын

    Damnnnn

  • @Dxpress_
    @Dxpress_2 жыл бұрын

    0:44 Heck, I didn't know the console window could parse HTML tags.

  • @Tarodev

    @Tarodev

    2 жыл бұрын

    A tip within a tip

  • @MaZyYTube

    @MaZyYTube

    2 жыл бұрын

    Only few, look for "rich text unity". I wish html would be fully supported.

  • @SilverAura
    @SilverAura2 жыл бұрын

    I had to pause at 15 seconds in because my mind is still recovering from being blown...

  • @Tarodev

    @Tarodev

    2 жыл бұрын

    From the tip or the visuals? 😜

  • @SilverAura

    @SilverAura

    2 жыл бұрын

    @@Tarodev The fact that Start can be coroutine or async method.

  • @SilverAura

    @SilverAura

    2 жыл бұрын

    @@Tarodev Which is a credit to how much that's blown my mind, because I am very passionate about good visual presentation too. ❤

  • @FoxReber
    @FoxReber7 ай бұрын

    Amazing intro. "Covid has me feeling like a bag of d*cks"

  • @Tarodev

    @Tarodev

    7 ай бұрын

    It was not a good week

  • @watercat1248
    @watercat12482 жыл бұрын

    I have questions what 2 this you add before the start factions do? 0:04 0:08

  • @TheBigYC

    @TheBigYC

    2 жыл бұрын

    It's hard to understand your question. Are you asking what the // do?

  • @watercat1248

    @watercat1248

    2 жыл бұрын

    @@TheBigYC my question is what the do word that add before the start

  • @TheOriginalDarkGlitch
    @TheOriginalDarkGlitch2 жыл бұрын

    Drink plenty of water and eat food. I lost my sense of taste and food became a chore. Hope you get better soon. 😕☹

  • @Tarodev

    @Tarodev

    2 жыл бұрын

    I lost my taste too. Eating KFC was like eating a bucket of mush

  • @TESkyrimizer
    @TESkyrimizer Жыл бұрын

    uh im new to this channel but is the quaternions video a running gag or something 😭

  • @SaiponathGames
    @SaiponathGames2 жыл бұрын

    Nice, hoping that you'll recover soon!

  • @Tarodev

    @Tarodev

    2 жыл бұрын

    Thanks mate 😊

  • @notDiru
    @notDiru2 жыл бұрын

  • @Tymon0000
    @Tymon00002 жыл бұрын

    Didn't learn anything new there. Add more tips next time! xD

  • @Tarodev

    @Tarodev

    2 жыл бұрын

    I'll try my best master!!

  • @CodyNewhouse
    @CodyNewhouse2 жыл бұрын

    Long COVID?

  • @MidasButSilver
    @MidasButSilver2 жыл бұрын

    The animation one goes even further: if your hierarchy differs entirely from what the animation expects (say you have nested your animation target somewhere else), you can pass it the exact location within the hierarchy by instead passing 'parentObject.otherParents.animationTarget' (I think it was '.' to separate parents from child objects, you might want to check). No need to rework the entire animation or your hierarchy at all!

  • @nikunev
    @nikunev2 жыл бұрын

    You destroyed me with these, developing for years and half of them I didn't know! (Right the first one shocked me: IEnumerator Start() ) BOOM! Achievment unlocked: game dev tutorial of the month on youtube!

  • @homemacai
    @homemacai2 жыл бұрын

    That IEnumerator Start Method is pretty cool, it probably works on Awake also right? Covid is really a ball busting one, get well soon

  • @Tarodev

    @Tarodev

    2 жыл бұрын

    It actually doesn't work with Awake 😜