Why is unity so slow!

Поділитися
Вставка
  • Опубліковано 25 лис 2024

КОМЕНТАРІ • 202

  • @thomasbrush
    @thomasbrush 3 роки тому +141

    Jason Storey! You've grown so much. Perfect voice, look and skill to be a UA-cam dev! nice camera and lighting too.

  • @GameDevGuide
    @GameDevGuide 3 роки тому +20

    Great work pal! This is an excellent supplement to the Assembly Definitions video I made, and goes into more technical detail about what's ACTUALLY happening and why. Love it. Will be sharing this on the Discord.

  • @InfallibleCode
    @InfallibleCode 3 роки тому +93

    Using games built in Unity to demonstrate this topic is brilliant. Another great video, Jason! I'm on the edge of my seat waiting for the next one :D

    • @handleneeds3charactersormore
      @handleneeds3charactersormore Рік тому +3

      not sure you will read this but I used to love your videos, always chill + concise and to the point. but then they became poorly acted telenovelas and that made me left. It truly felt like you didn't care at all about the viewer's time but rather the view time and you were just looking for ways to pad out your video length. total opposite of old school infallible code

    • @googleuser4720
      @googleuser4720 Рік тому +7

      Its been a year... Well.. We're waiting!

    • @karolpadiasek5461
      @karolpadiasek5461 Рік тому

      @@googleuser4720 yup, still waiting ;)

  • @JimBob652
    @JimBob652 3 роки тому +100

    I can't believe you left it on a cliff-hanger! I sat through this going "yes, yea the pain, yup." and I thought you was going to show the magical solution, but nope instead "catch you on the next one" lmao. Over all great video, and I'm so looking forward to the next video :)

    • @Morphexe
      @Morphexe 2 роки тому +17

      Guess there won't be a next video ahahah

    • @abulak3477
      @abulak3477 2 роки тому +7

      feels familiar oh yes unity promises

    • @Meithighs
      @Meithighs 2 роки тому +6

      @@Morphexe his next videos were completely unrelated.. :/

    • @Morphexe
      @Morphexe 2 роки тому +4

      @@Meithighs sadly it seems it was all empty promises. Had potencial.

    • @tPlayerioT
      @tPlayerioT Рік тому

      same lol.

  • @mrvastayan
    @mrvastayan 2 роки тому +28

    You forgot to do the next video!

    • @math_music99
      @math_music99 3 місяці тому

      ua-cam.com/video/eovjb5xn8y0/v-deo.html

  • @MarkeMarkXYZ
    @MarkeMarkXYZ 3 роки тому +11

    While I already knew how to do this, I don't know why I didn't understand the significance of it until Jason explains it in such a clear way. Keep this content coming Jason, it is pure gold.

  • @Immudelki
    @Immudelki Рік тому +4

    Great video

  • @TopShelfCookieJar
    @TopShelfCookieJar 3 роки тому +4

    The explanation was great, but combining it with some simple worked examples really helped cement it in my brain. Thank you!

  • @Danningt0n
    @Danningt0n 3 роки тому +3

    Loading bar is almost as slow as your upload schedule! 🙃
    Looking forward to the next tutorial! 🍿

  • @veganmonter
    @veganmonter 3 роки тому +5

    I admit, I should be looking under the hood more than I do. I treat Unity like a tool, don't care what engine it has, as long as it gets me to my goal. However, I know if I learned more on how it works, I would improve my overall results.
    Also, thanks again Storey! Love what you're adding to the community.

  • @georgeaggelopoulos7791
    @georgeaggelopoulos7791 3 роки тому +8

    Great content: explaining perfectly, in 5 minutes, a simple but extremely helpful concept/tip. Thank you.

  • @rickloyd8208
    @rickloyd8208 7 місяців тому +1

    OMG and you have never created a video explaining how to compile it and put it in Unity directory. I am using separate assemblies but your solution seems to be even faster than that. At least you mentioned few keywords and I know in which direction to continue research! THANK YOU!

  • @NicolasFrugoni1
    @NicolasFrugoni1 3 роки тому +2

    Great explanations! Love that you finally have your channel and are uploading content!!

  • @OldM8
    @OldM8 2 роки тому +6

    Still waiting for that next video :) :) :)

  • @81gamer81
    @81gamer81 2 роки тому +3

    We need the next video!
    Think you said it once in other Jasons stream a while back how to make your own dll the proper way.
    Though it was just my computer being old, but even on my new NVME SSD unity is slow to build even when usng assembly defenition

  • @rohitaug
    @rohitaug 3 роки тому +30

    This seems really cool. If I understand correctly, creating assembly definitions allows you to compile scripts into separate DLLs so that when a change is made to a script only the associated DLL needs to be recompiled instead of the entire Unity project. If that is the case, I'm confused as to why you would need to build the DLLs manually instead of letting Unity handle it. Does Unity rebuild all DLLs in the project by default each time? That seems like it would defeat the purpose of assembly definitions.

    • @pliniomourao
      @pliniomourao 2 роки тому +2

      Good question.

    • @Belliger1991
      @Belliger1991 2 роки тому +1

      Depends on what is the default assembly definition, it seams to automaticly create a new unique assembly so nothing breaks, most likely with a hash as name and afterwards links it in.
      If you write you own it is fixed as well so it should partly resolve the issue. (Plugins will not adhere and still clutter it up over time)
      But if you build external you can make shure all changes are covered in this newway with no leftovers cluttering it up :)

  • @larryd9577
    @larryd9577 2 роки тому +3

    Where is the promised video on automation of unity dll building and attaching?

  • @mattsponholz8350
    @mattsponholz8350 3 роки тому +2

    Look at you casually optimizing EVERYTHING!!!
    Thank you and looking forward to your next video 😄

  • @LackingGumption
    @LackingGumption 2 роки тому +1

    you are the best. I was talking to a friend the other day complaining about my slow computer needing to refresh the assemblies everytime before testing my games. I had no idea this was possible. thank you so much for being a god at what you do :D

  • @BagarraoEduardo
    @BagarraoEduardo 2 роки тому +6

    Awesome content Jason! When the part 2 of this video will be available?

  • @eaglenebula2172
    @eaglenebula2172 2 роки тому +1

    Coming right before the important part and not actually doing it even almost a whole year later, great.. super helpful...

    • @JasonStorey
      @JasonStorey  2 роки тому +2

      Sorry, had some life stuff come up. Have a full refund.

    • @eaglenebula2172
      @eaglenebula2172 2 роки тому

      @@JasonStorey 😂
      Tbf I'm frustrated at the script change iteration time nothing more :(

  • @CG_CAKE
    @CG_CAKE 2 роки тому

    Jason Great video , I saw you on the stream of Jason Weimann , and we met inside the arena Giveaway as well that day haha Thx again for great tutos and advises.

  • @HexPlays
    @HexPlays 2 роки тому +3

    next video on this please jason!

  • @jeffmccloud905
    @jeffmccloud905 2 роки тому +3

    great video. been using C# and VS for 20 years, so separate DLLs, references, namespaces, etc. are second nature to me. but when I got into Unity, it seemed confusing and limited. this is a strange little method to make separate DLLs but this practice should be much more common. Example: if you need to patch the network code in your game. If your network logic is in its own assembly, your patch might only need to distribute that one small DLL.

  • @CodemasterJamal
    @CodemasterJamal 3 роки тому +1

    I definitely need to re-arrange some things in my project. This tutorial was awesome. I think this is why it takes my game so long to compile itself.

  • @MarcV_IndieGameDev
    @MarcV_IndieGameDev 3 роки тому +2

    I'll be waiting for the next one! This may help all newbs(myself included) out there save hours and hours of waiting to recompile, cheers for this! Much appreciated.

  • @shariarpapaon5305
    @shariarpapaon5305 2 роки тому

    for some reason I just feel like this knowledge just instantly made my unity skills go up significantly.. This adds so much flexibility and actually the fact I know what really goes on behind my scripts.

  • @YAS-vm8ko
    @YAS-vm8ko 2 роки тому +1

    You save our time! I am a newbie dev, I don't know doing this could break unity or not, but I will try it. You are such an amazing developer.
    Edit: Looking for the next video.

  • @ewwitsantonio
    @ewwitsantonio 3 роки тому +4

    This is SUCH good content. Thank you, thank you, thank you!

  • @Rovsau
    @Rovsau 2 роки тому +1

    This is exactly what I didn't know I needed.
    Been searching for something like this for a long time.
    From the depths of my brackets, I.Thank(You);

  • @BigRookDigital
    @BigRookDigital 3 роки тому +1

    Great info, keep it coming! This hits home as Unity inefficiencies have always been a big nightmare.

  • @AgostinhoRenner
    @AgostinhoRenner 2 роки тому +4

    Where is the second part? D=

  • @pszznm
    @pszznm 3 роки тому +2

    Hype! Can we expect that if we do it ourselves, it can be much faster than the Unity way?

  • @ceroenblanco
    @ceroenblanco Рік тому

    Things I didn't know I needed to know after 6 years using Unity. You got my sub.

  • @jorhoto7064
    @jorhoto7064 3 роки тому +1

    Great info, can't wait for next video!
    Thank you!!

  • @nocultist7050
    @nocultist7050 3 роки тому +1

    Thanks Json. I'll hold my breath for next video.

  • @mad_man_86
    @mad_man_86 2 роки тому +1

    Short and sweet tutorial, thank you! I would love to see that "next video" though ;D

  • @jauntybear
    @jauntybear 3 роки тому +1

    Excellent content and production quality thanks

  • @shadowblaster124
    @shadowblaster124 3 роки тому

    I never would have known this. I wouldn't have known it was a problem, nor how to look online for a solution. Thank you!

  • @Cameo221
    @Cameo221 3 роки тому +4

    Awesome video; I've always used assembly definition assets, but this video reinforces my motivation to use them and gained a deeper understanding. Very cool :D

  • @Gyozamang
    @Gyozamang Рік тому +7

    it's sad he just stopped this channel had crazy good potential and he had a really good view count too. I don't know why you'd dump a channel doing so well

    • @karpai5427
      @karpai5427 Рік тому

      because he does not want to share his secret of building the game, because someone else may finish a video game before him.

  • @twistedliverstudio
    @twistedliverstudio 3 роки тому

    Oh man the cliff hanger... good stuff waiting on next video. @Jason Storey keep the content coming this is great.

  • @AlexBlackfrost
    @AlexBlackfrost 3 роки тому +1

    Great video! Looking forward to the next one.

  • @jsn4591
    @jsn4591 2 роки тому

    Stoked to see you've got your own channel!

  • @MarekNijaki
    @MarekNijaki 3 роки тому +1

    Pretty short but useful. Keep that good work 😃

  • @darryljf7215
    @darryljf7215 2 роки тому +6

    This is a long loading time for the next video ... :)

  • @ZloyDinozavrik
    @ZloyDinozavrik 2 роки тому

    This one is a cool topic scratcher video! Looking forward to check out the next one!

  • @rsmith6894
    @rsmith6894 3 роки тому

    Very useful , Short and sweet. Keep the coming please.

  • @Morphexe
    @Morphexe 2 роки тому +1

    Just found this gem of a channell! Nice job covering some real pain points of unity! When is the next video coming ? :) I find that topic quite interesting and would love to see how you do it!
    Good Job!

  • @earthinvader3517
    @earthinvader3517 3 роки тому +3

    The issue is when you place you code in external DLL (not the assembly definition way), you lost the stacktrace line number information. I used this approach before and when an error occurs inside a function from the DLL, I could not know the exact line that raise the exception. The time to to track the issue in this case could exceed the compile time. ( My project is not huge so my compile time is not very long so I simply prefer to put my code in the project). It doesn't mean its not worth putting code in external dll. Some hard to change stable codes could be extracted to DLL to help a bit.

    • @JasonStorey
      @JasonStorey  3 роки тому +2

      Did you delete the PDB file that was included with your debug build? That is what it is for. It maintains stack trace information for debugging into dlls. It also wont be created for you if you build in release mode as it assumes... you are releasing.

    • @earthinvader3517
      @earthinvader3517 3 роки тому +1

      @@JasonStorey I did copy paste the PDB alongside the debug DLL but don't know why the stacktrace show line 0 for all stack frames. It was so frustrating and I gave up. Anyway, thanks for the reply. Really didn't expect that. Looking forward to your next video.

  • @Dyornos
    @Dyornos 2 роки тому +2

    Where is the next video? This has been up for 6 months but no next video..?

  • @Eclipsed_Archon
    @Eclipsed_Archon 2 роки тому

    Best channel on UA-cam for this kind of content!

  • @Asylum3D
    @Asylum3D 2 роки тому

    Agreed. I have been making a huge game for a few years. Assembly Def's are a life saver. It takes to long to recompile everything every time. More time coding, less time waiting.

  • @humadi2001
    @humadi2001 3 роки тому +1

    We’re waiting for the next video!

  • @MoogieSRO
    @MoogieSRO 2 роки тому +5

    Did he never make the follow-up video to this? Talk about bait-n-switch!

  • @yousefal-hadhrami7853
    @yousefal-hadhrami7853 2 роки тому +3

    Where is the next video?

  • @jeniferirwin
    @jeniferirwin 3 роки тому +6

    I love assembly definitions. I've been using them since IC covered them and I find it to be a really pleasing way to organize things. I haven't yet built a project that is big enough to really have a noticeable change in compile times, but I'm glad to know that I'll be easily taking advantage of the shorter compile times when I *do* make a big project, because I'm already in the habit of making assembly definitions.
    It's kinda cool that we can pretty easily identify what games were built in Unity because of the Assembly-CSharp thing! I always love learning that a game has been made in Unity because that means I can look at it and say 'I can make something like this happen if I put my mind to it.'

    • @handleneeds3charactersormore
      @handleneeds3charactersormore Рік тому

      man here explaining how this issue hurts iteration processes and you come up with compile times 💀💀💀

  • @googleuser4720
    @googleuser4720 Рік тому +3

    Wheres part 2?

  • @PitiITNet
    @PitiITNet 2 роки тому

    Thanks for covering that! Fantastic video! Every time I see one of your videos I learn something new :).

  • @christinaVennegerts
    @christinaVennegerts 2 роки тому

    Great Video. You have an amazing style to explain concepts so even I as a beginner don't feel lost. Great Timing and thank you for not hurrying along. I'm hoping to see many more Videos :)

  • @MohammadFaizanKhanJ
    @MohammadFaizanKhanJ 3 роки тому

    Scientific json with mind-blowing video after a long time! Thanks

  • @NickPavlov00
    @NickPavlov00 3 роки тому +1

    Actually as a general tip to everyone dump your external packages in to a separate folder add an assembly definition so that unity won't rebuild those all the time aswell!.

  • @CCV334
    @CCV334 3 роки тому

    Subscribed and excited for the implementation in the next video!

  • @pixelart0124
    @pixelart0124 10 місяців тому

    Your next video talks about Software Architecture. Did you ever end up making the assembly video, as you mentioned at the end of this video?

  • @Jacob___THE_Jacob
    @Jacob___THE_Jacob 3 роки тому

    Beautiful video. Explanations are great. Keeping it short helps with attention span. Great content man keep it up :)

  • @Jerkovic74
    @Jerkovic74 3 роки тому

    Very good stuff! Keep it up Jason.

  • @ArnoVai
    @ArnoVai 3 роки тому

    Looking forward to the next video!

  • @yogiwp_
    @yogiwp_ Рік тому +1

    Was there a follow up on this video?

  • @axelman145
    @axelman145 2 роки тому

    Soo looking forward to what you have to say on the DLL thing!:))

  • @lewaplay
    @lewaplay 2 роки тому

    That's a pretty clear explanation, thank you

  • @CornRecords972
    @CornRecords972 2 роки тому

    This was incredibly educational

  • @skillitronic9596
    @skillitronic9596 3 роки тому

    Thank you for the content, you do a great job covering such topics. I hope you will make more similar videos (medium level)

  • @pliniomourao
    @pliniomourao 2 роки тому +3

    Where's the next video? i'm going crazy.

  • @Ari-ez1vj
    @Ari-ez1vj 2 роки тому

    what a phenomenal video

  • @philberex
    @philberex Рік тому

    Thank you for this informative video Jason.

  • @Hassher34985
    @Hassher34985 3 роки тому

    I'm looking forward for the next video, my game go crazy 20 seconds after pressing play

  • @Cyberfoxxy
    @Cyberfoxxy Рік тому

    i also noticed that versions 2019 + seem to show the compile loading bar twice.

  • @flaviokonti5522
    @flaviokonti5522 3 роки тому

    Thanks very informative, waiting for next video

  • @elmagnifico9667
    @elmagnifico9667 Рік тому +1

    I installed unity 2 days ago and it takes 10+ minutes to load a core 2D project, anyway to speed it up? My pc is i5, 8gb ram, 2gb nvidia 820m any suggestions?

  • @micaiahstevens8840
    @micaiahstevens8840 2 роки тому

    I finished that dll process months ago, but CAN"T wait to see how you do it. Great series of videos so far. I don't remember if I saw you anywhere else, but your solo videos are working out soo much better.
    I would LOVE a video on Marvin, and that other project manager one. Obsidian. I think I get obsidian, since its free'ish. BUt 'amazing' Marvin, the one I found was paid. So WOULD love a break down and more real life how you do it vs their help project. AND how you setup windows desktops. I think I could do the desktops, but a quick overview would rock!
    AND do you have a better work flow for your tags, html, mark up code for Obsidian. LIKE how you built that, HOW to replace default unity scripts. I need that level of documentation, but easy to look up. Was looking like a nice html webpage, but was in Obsidian I gather.

  • @roxforgegames4548
    @roxforgegames4548 Рік тому

    Jason, this channel has a lot of potential. Come back!

  • @albertluna1001
    @albertluna1001 2 роки тому +2

    I really hope you do the next step in the next video to learn how to do it

  • @supertenchoo4271
    @supertenchoo4271 3 роки тому

    This is Expert Info Great Video

  • @Varelze
    @Varelze 2 роки тому +3

    Is the next video still coming?

  • @0xF81
    @0xF81 Рік тому +1

    Where is that next video? Where is the link?

  • @albertmontagutcasero2129
    @albertmontagutcasero2129 2 роки тому +1

    Awesome video, Jason, I'm following your videos. I am trying to work similar, decoupling the business logic from the technologies like unity. I would appreciate a video explaining how to separate this layers correctly. For example, when we are programming a Mario game, the Mario model can't have vectors or use the engine tools like physics checks. Also, are x and y coordinates part of the business part? If they are used to calculate things, maybe yes. But if it's just for rendering in the screen, maybe not. How do you decide it?. My approach would be having a unity class (MarioUnity) and then the Model (that is testable, etc). Works fine, but the logic is split into the infrastructure layer and the business layer. It has benefits, but it's not perfect. It would mean the world if you could answer this. Thank you. :)

  • @DeathxStrike18
    @DeathxStrike18 2 роки тому +5

    wheres this next video lol

  • @alextreme98
    @alextreme98 2 роки тому

    Lmao, never thought of this. Thanks for this sneak peek behind the scenes.

  • @hotroddd1
    @hotroddd1 2 роки тому

    Really like this. Thank you.

  • @farianderson168
    @farianderson168 Рік тому +1

    still looking for the next video :(

  • @x364
    @x364 2 роки тому

    Very informative! Thank you!
    Had a bit of trouble with with importing Cinemachine but that's easily fixable by adding an Assembly Definition Reference for `com.unity.cinemachine`.

  • @galrose7165
    @galrose7165 2 роки тому

    if you finish a vid with a teaser for next video about the external compilation, please link some where (in video or in vid description) so we can find it ;)

  • @dfghj241
    @dfghj241 3 роки тому +3

    when!!???

  • @KyranFindlater
    @KyranFindlater 3 роки тому

    great stuff mate! keep it up!

  • @Rubidev
    @Rubidev 2 роки тому

    Thanks to Tarodev I found another expert channel which steps into unique contents.

  • @midniteoilsoftware
    @midniteoilsoftware 3 роки тому +1

    I tried adding assembly definitions to my game and got a ton of "type or namespace missing errors." For example, it no longer liked the TMPro using statements.

    • @cognos23
      @cognos23 2 роки тому +1

      You have to select your assembly and add in section 'Assembly Definition References' your dependecies, for example your TextMeshPro should be named like unity.TextMeshPro.dll. Don't forget to hit apply on the bottom. Afterwards the change is active and the compiler errors should disappear.

    • @FileTh1rt3en
      @FileTh1rt3en 2 роки тому

      @@cognos23 What about finding the name of an assembly definition that isn't named the same as it's namespace, like StarterAssets?

    • @cognos23
      @cognos23 2 роки тому

      @@FileTh1rt3en I have not come across this particular case yet. However, if you select a C# file in Unity, you can see the DLL name under 'Assembly Information'.

  • @zeroone8548
    @zeroone8548 3 роки тому +1

    cant wait for next video ;p

  • @krishnansubramoni7801
    @krishnansubramoni7801 2 роки тому

    Literally waiting for my Unity to finish importing stuff for the 3rd time, while watching this. 😂🧡

  • @CyberAngel67
    @CyberAngel67 2 роки тому +2

    Where that next video, waiting for that with intent :P

  • @jtmcfarland3512
    @jtmcfarland3512 10 місяців тому +1

    Will we ever get the second half? Kinda hard to utilize at my level of inexperience only with part 1. 😅

    • @DeepWorksStudios
      @DeepWorksStudios 10 місяців тому

      I agree

    • @rickloyd8208
      @rickloyd8208 19 днів тому

      I gave it a try to manually compile assemblies from Visual Studio and also I had to use Editor script, which was monitoring files for changes to make Unity reload. It was faster than auto compile in Unity but I give up because you had to disable asset reload done by Unity and there was a chance that you forget about it and spend hours, searching for a bug, while all problems was caused by cached assembly. As for now, 1-3 sec delay seems to be the best way.
      Also, I am thinking to split code between logic and UI. The first one can be tested within Visual Studio using test. Oh and tried JetBrains which allows you to test Unity within its own editor but it has way too much bugs, critical for my workflow.