Thank you kindly! This has helped me reduce my game's compile time from "This takes so long, I don't enjoy working on this game anymore" back to "This is so much fun again, just like back in the old days when my project used to be small".
Thank you so much. This is the ONLY Assembly Definitions tutorial currently out there that does the trick. Playing the part of somebody who has no idea what's going on (like us who need the tutorial) was perfect. Great way to safeguard against going over our heads.
Oh man, this format really skyrockets the entertainment of your video. While it is still a tutorial, it doesn't bore me at all, maybe actually the opposite. Really a genius idea to keep the viewer attracted.
Dude, this is hands down one the best tutorial videos out there, not just about the subject, the way you present and explain the tutorial is super creative and even though I just watched the video cuz i saw it in the subscription tab and wasn't really interested in the subject, I completed the whole thing, RING BILL IS ON FROM NOW ON
Me: Yea should I be worried if I start talking to myself like this? Other Me: Not at all! The technique of projecting inner monologues onto dialogues between 'make-believe' characters is ancient and used by the likes of Plato in his dialectics.
This is my style of programtion, first I talk to myself helping me to answer all my questions and keep me in company all the process... later we both start crying about all that messy code and our loneliness. It's beautiful. Btw, I love this tutorial ❤
I was thinking, what about this third-party code? I mean, I use a lot Leantween but if I put my UI scripts into an assembly leantween stay into the default assembly and it's not possible to make a dependency. Or am I wrong?
What a satisfyingly casual and straight-forward conversation about code organization in Unity between two pleasant and completely unrelated individuals :D.
You and the 2 Jsons are fucking amazing. I have gone from zero to hero in around 4 months with 3 projects due to the content each of you puts out regarding code, architecture and best practices. Man I can't believe how far I have come this fast. Still a beginner but I am now helping other beginners and I can see that I am dipping my toes regularly into the intermediate waters. The Journey amazing. Sometimes I get goosebumps when I am coding and I realize I did something organically that I saw when I was brand new and had no idea what was going on.
I think the vids fill two puposes: teach you awesome code, while serving as PSAs on how to treat colleagues at the office (how to ask for/offer help to a colleague). xD
I just want to say that this is the first tutorial I haven't watched on greater than 1.0x speed in a very, very long time. Everything was clear and concise. Thank you!
I literally just pulled up that page in the beginning and said in my head, "this is confusing" , then went on youtube and searched assemblies in unity and got this video.
@@InfallibleCode yep, what I really wanted to know is what the default assembly Included and you pointed it out in the solution explorer. I wanted to know because internal is scoped to the assembly, and in order to use it intelligently, I had to know what that scope included. Would I be right in guessing that internal is fairly secure so long as your app isn't exposed directly to something like code injection? Does it protect against window hooks? I still have security questions.
Man, this format is a great way to go through a topic like this. I work in simulation and have a ton of calls like this about complicated topics, but mine come with interruptions, dead ends that the person might not be knowledgeable about, and other tangents. This really takes a conversation like that and cuts out the useless info to deliver the information in a way that is conversational, easy to digest, and to apply to your work. Well-earned sub, awesome content.
Great explanation thank you. And I liked your approach showing 2 sides to this conversation. When I was a Junior coder I found it intimidating to ask these sorts of questions but they are very important and just like in your video 9 times out of 10 the other person or code lead will take time out of their day for you. Iv worked in the games industry for 5 years now and only just discovered Assembly Definitions. Subbed to your channel :)
this kind of format usually is pretty cringe but this was super helpful to understanding assembly definitions. The guy with the cap asks all the questions I would want to ask haha, thanks a bunch
I would love to see a video on how to design good assembly definitions for games. This is one of those things where I know what it is, what it's used for, but not sure how to utilize it properly in a real-world setting.
I know this is old but here is something i learned. One of the reasons this method is helpful is when you realise you need to sit down and thing about what your project needs and how you would structure the different subsystems. If you cant figure it out maybe you just need to try and then learn from mistakes? After a few projects you will have a clear feeling about how you wished you would have done from the beginning. So think about these techniques but dont let it keep you from progressing as a game coder! ITs possible to stay in the system design phase for ever and thats not productive either.
You managed to create a simple and fun tutorials for subjects i never wanted to encounter. (mainly unit testing) Your videos have next level production value. you can easily become a top player in this platform. Thanks for the help!
Always love your intuitive approach to making tutorials sir 🔥 I try making videos like you for my channel but eventually fail. Can you please give me some tips sir
First figure out what you want to teach. Research it if need be. Write a script so that you know exactly what you are going to say. Try to imagine one character as a know nothing noob like myself and the other as the all knowing Guru. Have the guru explain and the know nothing ask questions that real noobs might ask. One place I don't feel this channel goes far enough is in trying to remember what it's like to not know the lingo or the process of making games or programs. But then, maybe it's not supposed to be for people who don't even know that much. For example, I now know how to make assemblies in Unity but I don't really know why. He says it's for organizing and optimization, and I get the optimization part because it will only recompile the assemblies that have changed saving time, but I'm not sure how it organizes anything.
I am in love with your style of presenting, giving me so much inspiration to start a series like this myself to help pass on some of my knowledge! keep up the good work man
awesome tutorial but it would be nice with some more in depth info about potential problems and general workflow on how and when to use these. Many thanks for your great videos, you rock! :)
Most important lesson learned from this video is that you should not judge a book by its cover... People with reverse-caps can still be knowledgable and great teachers! I should tell my boss! 🤓😎
Really clear tutorial thank you, however I can't seem to get rid of the errors by putting a reference to my core assembly (which now holds the rest of the scripts), there seems to be a bigger issue at hand
When I did this I had to reference a bunch of unity assemblies like TextMeshPro, Netcode, and some other things. Is there a way to have this happen automatically? At least for the Unity register assemblies? It took a while to figure out which ones I needed to add. After doing all that it did make my code compile much faster though, so thanks!
So if it's overkill to use an assembly in every name space, how do we differentiate between when we should and should not give a namespace its own assembly?
I'm still having so much trouble with this stuff, but the main reason is that I'm using someone else's code. They have put things into namespaces, like you're recommending. The problem is, that creates boundaries that are annoying. So for example, there's a script where the whole thing is in a namespace (I see it in the coding), and while I'm in that script there is a raycast, and I want it to send information from that raycast to another script (the raycast is a bullet, I want to adjust the HP of the object it's hitting). I do a normal getcomponent for the script on the object being hit, but I get this. The type or namespace name 'BodyPartId' could not be found (are you missing a using directive or an assembly reference?) It seems strange to me, because I can understand there being a problem if another script is trying to access stuff in a namespace (which I believe you can just define the namespace before the getcomponent to fix that), but here, I'm trying to access something completely open and normal, and it's not letting me, because I'm within a namespace. How do I fix that problem? I've been told doing stuff with the assembly definitions would help, but I don't totally understand what's happening here. Thanks for any help you can provide!
Can you reuse the DLLs generated as assemblies in other Unity projects, without needing to also copy their source into the new project? For instance, could you add the Core.dll file from this example as a managed plug-in to a new project, and then use the classes and functions within it?
Should work. Usually you would put those dlls into the Plugins folder - and there should be no dependencies in the assembly that you forgot to include (like linking to other dlls that you haven't imported) connect.unity.com/p/move-plugin-code-to-plugins
If you're going to share them across multiple projects, I would keep it completely separated so it's not strongly tied to any one project. You can just create a C# "class library" project in visual studio and then when you compile it, copy of the dll file to the unity projects that need it (or set up visual studio to automatically copy the dll file). If your dll is in your unity project file, you should automatically be able to reference it. You're essentially creating your own kind of private asset store asset
Thank you for this helpful Video. But what are you doing with imported packages which are belonging to the csharp assembly? As far I could see, I can not set up a dependency to this assembly!?
Bro which one u r using visual studio or visual code? iam trying to follow your videos but i cant see any of those setting in either visual studio or in visual code can u please tell me what u use that will be help full for like beginners thank you
I don't even use Unity, I just like hearing this guy be nice to himself
yeah seriously! it's a bizarre format and I love it
Lmao
i love the way you teach man , i love you , i learned a new thing today in unity after 15 years unity experience since 2.6.
Thank you kindly! This has helped me reduce my game's compile time from "This takes so long, I don't enjoy working on this game anymore" back to "This is so much fun again, just like back in the old days when my project used to be small".
we're lucky that Charles is so nice and didnt just say "ok" at 0:23 causing the vid to end!
Thank you so much. This is the ONLY Assembly Definitions tutorial currently out there that does the trick. Playing the part of somebody who has no idea what's going on (like us who need the tutorial) was perfect. Great way to safeguard against going over our heads.
Oh man, this format really skyrockets the entertainment of your video. While it is still a tutorial, it doesn't bore me at all, maybe actually the opposite.
Really a genius idea to keep the viewer attracted.
Dude, this is hands down one the best tutorial videos out there, not just about the subject, the way you present and explain the tutorial is super creative and even though I just watched the video cuz i saw it in the subscription tab and wasn't really interested in the subject, I completed the whole thing, RING BILL IS ON FROM NOW ON
It does not make one feel sleepy.
Another episode of 'The Schizophrenic Programmer'.
🤪
I loved this video. Short and informative. Also very entertaining to watch haha 😅👌
Me: Yea should I be worried if I start talking to myself like this?
Other Me: Not at all! The technique of projecting inner monologues onto dialogues between 'make-believe' characters is ancient and used by the likes of Plato in his dialectics.
This is my style of programtion, first I talk to myself helping me to answer all my questions and keep me in company all the process... later we both start crying about all that messy code and our loneliness. It's beautiful.
Btw, I love this tutorial ❤
I was thinking, what about this third-party code? I mean, I use a lot Leantween but if I put my UI scripts into an assembly leantween stay into the default assembly and it's not possible to make a dependency. Or am I wrong?
What a satisfyingly casual and straight-forward conversation about code organization in Unity between two pleasant and completely unrelated individuals :D.
You and the 2 Jsons are fucking amazing. I have gone from zero to hero in around 4 months with 3 projects due to the content each of you puts out regarding code, architecture and best practices. Man I can't believe how far I have come this fast.
Still a beginner but I am now helping other beginners and I can see that I am dipping my toes regularly into the intermediate waters. The Journey amazing. Sometimes I get goosebumps when I am coding and I realize I did something organically that I saw when I was brand new and had no idea what was going on.
This form of explanation is so cool, I am feeling like you ask every question that I care about!!!
I think the vids fill two puposes: teach you awesome code, while serving as PSAs on how to treat colleagues at the office (how to ask for/offer help to a colleague). xD
I just want to say that this is the first tutorial I haven't watched on greater than 1.0x speed in a very, very long time. Everything was clear and concise. Thank you!
I literally just pulled up that page in the beginning and said in my head, "this is confusing" , then went on youtube and searched assemblies in unity and got this video.
Did the video clear up your confusion?
@@InfallibleCode yep, what I really wanted to know is what the default assembly Included and you pointed it out in the solution explorer. I wanted to know because internal is scoped to the assembly, and in order to use it intelligently, I had to know what that scope included.
Would I be right in guessing that internal is fairly secure so long as your app isn't exposed directly to something like code injection? Does it protect against window hooks? I still have security questions.
Man, this format is a great way to go through a topic like this. I work in simulation and have a ton of calls like this about complicated topics, but mine come with interruptions, dead ends that the person might not be knowledgeable about, and other tangents. This really takes a conversation like that and cuts out the useless info to deliver the information in a way that is conversational, easy to digest, and to apply to your work. Well-earned sub, awesome content.
Just found your channel while researching about Unity's assembly definitions. Quite an original and clear way to explain the topic. Great video!
Awesome, thank you!
Great explanation thank you. And I liked your approach showing 2 sides to this conversation. When I was a Junior coder I found it intimidating to ask these sorts of questions but they are very important and just like in your video 9 times out of 10 the other person or code lead will take time out of their day for you. Iv worked in the games industry for 5 years now and only just discovered Assembly Definitions. Subbed to your channel :)
this kind of format usually is pretty cringe but this was super helpful to understanding assembly definitions. The guy with the cap asks all the questions I would want to ask haha, thanks a bunch
Why is this format so soothing and entertaining?? Such an amazing idea
I would love to see a video on how to design good assembly definitions for games. This is one of those things where I know what it is, what it's used for, but not sure how to utilize it properly in a real-world setting.
I know this is old but here is something i learned. One of the reasons this method is helpful is when you realise you need to sit down and thing about what your project needs and how you would structure the different subsystems. If you cant figure it out maybe you just need to try and then learn from mistakes? After a few projects you will have a clear feeling about how you wished you would have done from the beginning. So think about these techniques but dont let it keep you from progressing as a game coder! ITs possible to stay in the system design phase for ever and thats not productive either.
Love these tutorials - great style and easy to follow
Man your way of teaching is refreshing. I really love it.
Man, you really are getting lonely during the lockdown, making Skype calls with yourself like that!
They are twins :)
This guy needs more subscribers. Thanks for explaining everything in an easy manner to understand!
You managed to create a simple and fun tutorials for subjects i never wanted to encounter. (mainly unit testing)
Your videos have next level production value.
you can easily become a top player in this platform.
Thanks for the help!
This guy's channel really shows how helpful programmers should be to each other.
This is really cool! I'll start using assemblies from now on.
Man you are really making GREAT tutorial video!!! THANK YOU.
bro this is relaxing af because its not robotic
Always love your intuitive approach to making tutorials sir 🔥 I try making videos like you for my channel but eventually fail. Can you please give me some tips sir
First figure out what you want to teach. Research it if need be. Write a script so that you know exactly what you are going to say. Try to imagine one character as a know nothing noob like myself and the other as the all knowing Guru. Have the guru explain and the know nothing ask questions that real noobs might ask.
One place I don't feel this channel goes far enough is in trying to remember what it's like to not know the lingo or the process of making games or programs. But then, maybe it's not supposed to be for people who don't even know that much.
For example, I now know how to make assemblies in Unity but I don't really know why. He says it's for organizing and optimization, and I get the optimization part because it will only recompile the assemblies that have changed saving time, but I'm not sure how it organizes anything.
@@someoneontheinternet3090 thanks a lot sir! Will definitely try this
@@makra2077 You're welcome! Good luck!
Had no idea what i was getting into listening to this converzation kinda tutorial. But damn I loved every bit of it.
I can tell you worked hard on this. Thanks, so much for this video. I actually learned about assemblies thanks to you. Keep it up.
Love your videos, also very nice is this format of dialog with yourself, cool.
These tutorials are awesome
this saved me a loooot of research, thank you! :D
Thank you for this awesome tutorial! Interesting, non standard topic and one of the best ways to teach it I‘ve ever saw. Thumbs up!
Very interesting stuff. Surely will come in handy when making a project.
6:42 thanks! that was the missing piece that i needed
I am in love with your style of presenting, giving me so much inspiration to start a series like this myself to help pass on some of my knowledge! keep up the good work man
A great explanation. Thank you 🙂
Amazing tutorial, I love it Thanks!
Thanks again to you both digital twins.
Great tutorial! Thank you :)
Very delgant explanation, thanks :)
awesome tutorial but it would be nice with some more in depth info about potential problems and general workflow on how and when to use these. Many thanks for your great videos, you rock! :)
You look so natural with coding. Did you ever had a time where you also make beginner mistakes? (Like I do everyday)
Wow! To the point! Really helpful!
what an amazing style, thanks for the tutorials.
So clear. Thank you
Aweeeeeeeeesome video! Thanks a lot. Really funny to watch as well lol
Just got yourself a new fan!
Most important lesson learned from this video is that you should not judge a book by its cover... People with reverse-caps can still be knowledgable and great teachers! I should tell my boss! 🤓😎
Very usefull video thank u Infallible Code
very great tutorial, thanks!
Very effective communication style
Спасибо! Обожаю ваши видео!!!
You deserve 100K subscribers! I am happy to discover this channel :)
These videos should be shown in psychology classes. “How to treat yourself with respect and kindness”. This is how our inner dialogue should be.
Great video man
Great video!
Великолепно! Большое спасибо за урок.
thank you! good tutorial
Awsome tutorial.
Hmm. Interresting video!
Didn't know Unity had that feature.
I've been working witj .DLL files for while, though 👍
Really clear tutorial thank you, however I can't seem to get rid of the errors by putting a reference to my core assembly (which now holds the rest of the scripts), there seems to be a bigger issue at hand
great video, thanks!
Very cool thanks for the clear explanation!
yo dude, this is great
Great, many thanks
YEAS - was thinking why I can't define my custom class in downloaded assets, and you helped me (:
I want this dude's coding music playlist lol, I can't find it on Spotify! But I love that it has Griz
These videos are so good dude
love the shared knowledge point and this sharing method :)
Aww hell yeah libraries in Unity!
Great as always!
What code editor is that ? Never see that tbh, and if you mind what font youre using ? Kinda elegant
The code editor is called Rider and the font is called Victor Mono:D
@@InfallibleCode cool ! Btw, thankyou so much for your content. Really helpful for me. Youre awesome :D
Very helpful dude
Another excellent video, thanks!
When I did this I had to reference a bunch of unity assemblies like TextMeshPro, Netcode, and some other things. Is there a way to have this happen automatically? At least for the Unity register assemblies? It took a while to figure out which ones I needed to add. After doing all that it did make my code compile much faster though, so thanks!
fyi, youre the best unity youtuber out there (for coders).
Thank you so much!
What code editor are you using
It's called Rider
So if it's overkill to use an assembly in every name space, how do we differentiate between when we should and should not give a namespace its own assembly?
I really love these tutorials with crossovers with other developers. Even if the other developer is also you ;)
This is amazing! Great job explaining it! Way better than unity's reference.
Can you make some videos covering Advance topics in DOTS?
nice and clear!!! thank you
I'm still having so much trouble with this stuff, but the main reason is that I'm using someone else's code. They have put things into namespaces, like you're recommending. The problem is, that creates boundaries that are annoying. So for example, there's a script where the whole thing is in a namespace (I see it in the coding), and while I'm in that script there is a raycast, and I want it to send information from that raycast to another script (the raycast is a bullet, I want to adjust the HP of the object it's hitting). I do a normal getcomponent for the script on the object being hit, but I get this.
The type or namespace name 'BodyPartId' could not be found (are you missing a using directive or an assembly reference?)
It seems strange to me, because I can understand there being a problem if another script is trying to access stuff in a namespace (which I believe you can just define the namespace before the getcomponent to fix that), but here, I'm trying to access something completely open and normal, and it's not letting me, because I'm within a namespace.
How do I fix that problem? I've been told doing stuff with the assembly definitions would help, but I don't totally understand what's happening here.
Thanks for any help you can provide!
What font are you using in your editor?? It's so amazing!!
"hey man, I heard you talked about fight club, not cool"
Thanks)
Man, Charles is the best! - Barles
I thinks it helps in patching as well and shorter updates.... :)
Definitely!
Can you reuse the DLLs generated as assemblies in other Unity projects, without needing to also copy their source into the new project? For instance, could you add the Core.dll file from this example as a managed plug-in to a new project, and then use the classes and functions within it?
Should work. Usually you would put those dlls into the Plugins folder - and there should be no dependencies in the assembly that you forgot to include (like linking to other dlls that you haven't imported)
connect.unity.com/p/move-plugin-code-to-plugins
If you're going to share them across multiple projects, I would keep it completely separated so it's not strongly tied to any one project. You can just create a C# "class library" project in visual studio and then when you compile it, copy of the dll file to the unity projects that need it (or set up visual studio to automatically copy the dll file).
If your dll is in your unity project file, you should automatically be able to reference it.
You're essentially creating your own kind of private asset store asset
@@fmproductions913 Very usefull link. Thx mate for sharing !
Wow 🤩.
Very Good!
Thank you for this helpful Video.
But what are you doing with imported packages which are belonging to the csharp assembly? As far I could see, I can not set up a dependency to this assembly!?
Thanks!
Bro which one u r using visual studio or visual code?
iam trying to follow your videos but i cant see any of those setting in either visual studio or in visual code
can u please tell me what u use that will be help full for like beginners
thank you
Which editor code are you using ?
Great video I’ve Always got confused about assembly definition