Damn, I need to see if this can be tweaked to work with scoped packages. I always install VContainer, MessagePipe and NaughtyAttributes (and the dependencies, which is annoying : UniTask, MessagePipe-VContainer,...)
For those working on macOS and struggling to get the process of importing assets (at 2:30) working, modify the corresponding method like this: public static void ImportAssets(string asset, string folder) { #if UNITY_EDITOR_WIN string basePath = System.Environment.GetFolderPath(System.Environment.SpecialFolder.ApplicationData); string assetsFolder = Combine(basePath, "Unity/Asset Store-5.x"); #elif UNITY_EDITOR_OSX string basePath = Environment.GetFolderPath(Environment.SpecialFolder.UserProfile); string assetsFolder = Combine(homeFolderPath, "Library/Unity/Asset Store-5.x"); #endif ImportPackage(Combine(assetsFolder, folder, asset), false); } As always: Thanks for the video and the great tips!
You're pumping out banger content, looking forward to more! With the little time that I've been able to get, I've been trying to create systems and helper scripts where I can. Even if its simple math functions for edge cases for Quality of life. You dont realise how much it helps when you have everything you need in one place.
Hey @git-amend! What a great vid. Here are a list of my personal favourite assets: - SOAP : Just flows so naturally with the way I code all of my game logic inside Scriptables. - Hot Reload : This has maybe doubled my productivity and protects "my flow" while coding. There's nothing worse than waiting 15 seconds for my ridiculous attention span. - Rainbow Folders : saves me up so much time, looking for a specific folder in the project. - Debug.Log Extensions - Ultimate Editor Enhancer : Although I might replace it with some of the ones you covered in the video. Assets I'm looking forward to try out (I'll happily take any opinions if you tried them out): - The whole Kubacho Lab series : VFavorites 2, VHierrachy 2, VFolders 2, etc. - Texture Adjustments - Quantum Console - Build Report Tool - Easy Save 3
Awesome! I have a lot of those, and I just started using Hot Reload which I'm very impressed with so far. I've been a big fan of SOAP for a long time, and we'll probably have a video about it later this year. There's a few things on your list that I'm not familiar with, so I'll go check them out on the store! Thank you!
@@git-amend Great! I'm still checking the assets in the video that I ddn't know of. I've just seen the Prime Tween performance benchmark and the fact that on top of it, the asset is open-source is just mind-blowing. Although, I **really** like the way DoTween can be used solely using their extensions functions. Does Prime Tween have those as well?
I like this alot, and I would like to propose an upgrade. Perhaps it can add a Save Snapshot feature where it can automatically figure out the path to those assets without having the user to find them one by one? It could save them all in a SO List where the user can just delete the ones that they dont want to carry over to the next project.
This is why I'm using custom project templates. It allows for fully building your project structure including packages, assets, scenes, build settings, addressables setup and so on. But it requires a little bit of "hacking" once.
Maybe if Unity makes it easier in the future, I might consider this as well. What is your approach to keeping packages and assets up to date in the template?
I'm using separate repo with template, and some build pipeline which gives me template file. So I can update assets and replace template in the hub. But it's a rare thing, just because I'm not creating projects this often.
Thank the algorithm for serving me you. No clue how it never have before. Thank you for your content my man, I hope my sub and views will make the algo push you out to more people
Great setup! thanks for the tuto :) I quickly read comments, not sure if someone mentioned it but i love "code todo list" which is an asset that shows you your comments (by detecting keywords like TODO, FIX, REFACT) and allow quick opening of the file at the correct line. Awesome for my little brain!
@@git-amend haha :) yeah looking at your videos i was pretty sure you'd like this one ;) anyway, i learned some pretty nice design patterns thanks to you, so... right back at ya!
I'm glad you made this video Git. After watching your videos for a year (or so) I recently went back and redid your game tutorials which touched on this as part of one series (it was probably the platformer tut?). It's nice that these utilities have their own video now. I have to say, the game tutorials had a different feel after watching the detailed game pattern and architecture videos
@@git-amend you're doing a great job. Those early tutorials were incredibly well done too, and I had a greater understanding of the mechanics and patterns when I did them again. Congrats on the new job as well, I'm sure you're going to be a huge addition to the team.
Time to double-comment. Lol Because of you, I went on a complete asset hunt/inventory... And I found an asset that encapsulates the spirit of this video. It takes your assets, package manager, and importing/exporting process and wraps it into one beautiful interface. I'm pretty sure it allows for collecting your essential assets, and importing them automatically. It's on sale now too! - Asset Inventory 2
I like to have a repo with my basic structure and all the plugins configured. When I start a new project I just fork that repo. But having a script can be nicer because you can create an editor window to import exactly what you need
I usually set up my project the way I want it, All the setting, layers, tags, and packages that I want. I then make it a template so I can just create a new project that is setup just the way I want it. To do this you copy one of the default templates from "UnityInstallLocation\Editor\PackageManager\ProjectTemplates\TemplateThatYouUsed" for example on my machine the Universal render pipeline template is "C:\Program Files\Unity\Hub\Editor\6000.0.12f1\Editor\Data\Resources\PackageManager\ProjectTemplates\com.unity.template.3d-cross-platform-17.0.10.tgz" I edit/remove/replace the files in the archive with ones from my newly set up project I then copy this new archive back to the project template folder. Now when I create a new project I just use the new template that I created. You can have a template that you use for youtube videos, one that you use for VR, etc. This does become a little tedious sometimes depending how often I update the Unity Engine. I wish there was an options in the File Menu to save your current project as a project template. I might switch over to this as it seems to be easier to do. As for assets that I use I use my own custom package that has code from Warped Imaginations Hierarchy video, some custom tooling for a Save System/Project Settings/User Settings, Scriptable Object Event System, Scriptable Object Variables, Custom Debug log messages (A wrapper for Unity's built in Debug that use Rich Text to format the message) Custom Attributes that I use all the time in my monobehaviours (Show/Hide If, Custom Header, Buttons without params, Scene Selection). I am tempted to get Odin Inspector now that I can afford it as it is a more robust system and delete my custom attributes from my custom package. I also use Unity's 3rd Person Character Controller and Synty's Starter Pack & Prototype pack. Once I got my prototype flushed out with the core features/game play I typically use one of Synty's other packs if they have something that fits the style of game I am making. Other assets that I might use in a project are Animmal's Kubikos assets, Dungeon Masons PBR Polyart packs i.e Tiny hero Wave, some of Blinks asset packs, some of N-hance Studio's packs, Protofactor Inc, Tidal Flask Studio's enviroment packs, Dragon Studios' characters. For 2D i like Daniel Thomas' packs. I also like trying to catch one of the Unity Humbelbumble deales (I got a great deal on a bunch of Synty assets and Characters from Dragon Studios ). I also try to pick up the free assets every week on the Untiy's asset store from the featured Creator, some of them I purchased additional assets some of them is that is neat but doesn't fit the art style that I usually use in a project or the type of game that I create.
the best!! 'm going to start saving up to buy some that I don't have but find very interesting. In the videos, I tried to see which asset you were using to make the visuals so efficient.
I've been adding Asset Inventory 2 as the first thing to every project lately. It's got features for organizing and keeping assets updated, and I've used it as a crutch for bootstrapping projects. The script based approach you've got here is neat though. I like the added control over folder structure and moving files around (looking at you input actions). Asset Inventory is nice for just getting things into the project but I still find myself doing some manual steps after importing each time too. Somewhat related note, I've used other templating libraries like Jinja in the past, and this has me thinking about what else I might possible want to generate for Unity projects.
A bit hard to believe you didn't mention Hot Reload as an essential no-brainer that's imported into every project by default. But looking forward to hear your opinion on this.
To be honest, I have not used Hot Reload, so I can't comment on that one specifically. I have used Fast Script Reload, which is great for tweaking logic inside a method if necessary, but I don't use it so much that I've bothered to add it to my setup script. So, maybe I need to buy Hot Reload while it's on sale and give it a shot! What do you think? I'm not really sure what the differences are, but I'll look into it today.
@@git-amend I didn't know the free Fast Script Reload, but it seems to lack some important features, such as hot reloading generics, new methods, lambdas, and some other stuff, It also has Burst and Jobs support (which I suspect is on your list of future videos ;) ) and async/await. So it might be worth a look, as it can improve the turnaround times significantly, when iterating during development of features.
Hot Reload is a game changer. I don't think it's an exaggeration to say that it has doubled my productivity in Unity, being able to tweak code on the fly at runtime without waiting for domain reload and play mode to load massively increases iteration speed. It's magic.
One thing I noticed. When importing assets they do not show up in the Package Manager as imported. I like to keep track of when the assets I use are updated. Ideas on solving this? Added the following for my use: - The ability to automatically populate scoped registries (like from OpenUPM) with some Json magic. If I do this before I load packages I can add things like UniTask with AddPackages. - Removing packages that Unity automatically installs that I never use (Visual Scripting and Visual Studio) - Renaming for folders. I like to move the Scenes folder to _Scenes. That way it is at the top of my hierarchy. My Recommendations: vFolders, vTabs, and vHierarchy from Kubacho Labs Hot Reload (love this!) DebugUI from OpenUPM - easy to make UIToolkit debug tools
Very insightful video as always! I would like to see a future video on localization and what do you typically use. I am not sure how good the Unity's Localization package is.
Great channel and great content! Any reason you use this approach vs rolling your own template? Seems like rolling a template would cut out loads of extra processing steps each time you create a new project?
Templates are great if you feel like you won’t update your assets and dependencies often. For me, I like to use the latest versions, so this is less work than making a new template every time one changes.
@@git-amend Ah, I may have misunderstood something in the video then. At 2:40 when you are writing the ImportAsset function it sounded like you had to predownload the assest so it's in the folder prior to running the script. If that is the case then you have to start a new project, run the script which installs whatever version you have in your asset folder to see what has updated and then remove them and download them and reimport. Or before import you have to hand scroll through all your assets and check what has updated and download it prior? Seems like for store assets it will have the same issue as a template. For OpenUP and Unity packages you can setup the template to pull those on creation just as the script does. Let me know if I misunderstood the store asset part.
Hey @git-amend! great vid!) how different is the installation in this way from creating a template project with all the folders and assets and packages? Later, just copying it. This is the most direct approach, I wonder if it will break meta files, etc.? And also, as far as I remember, you can create your own template directly in the Unity Hub
You can make templates, and sometimes that's a good option. Just remember that if you want to update a package inside the template, you'll be making a new one. For me personally, especially because I like to stay on the latest tech stream, I find keeping all my packages as up to date as possible is the best solution, and I don't want to be making a new template several times a week since that defeats the purpose of them.
Great tutorial, thanks. I was wondering of the add component button in the inspector can be overridden to place a script in a specific folder rather than the root? Thanks
This is great! I still use a similar setup you showcased a while back. I've recently decided to try and get into tooling and this was perfect timing. Do you have any recommendations on how to create tools for Unity?
My only recommendations would be to try to look for pain points and get creative with solutions - and subscribe to the Warped Imagination YT channel, it's all about tooling in Unity! Also, if you have Assets that you really enjoy, spend some time reverse engineering them so you get a feel for how the creators approached building their solutions.
For the FullScreen tool you use, if you have a trackpad (e.g. in a MacBook) if you 2 finger spread it makes the current selected window to go full screen, and pinching makes it go back. Keyboard shortcut for it is Shift + Space. Isn't this similar enough to not need the FullScreen tool you use?
There are a few differences between the built in 'Maximize View' command and the Asset. Probably the one I use the most is the support for multiple displays, so I can blow up the Scene view on my big screen and still have access to the rest of the Unity Editor on my other screen. Have a read of the first page of reviews on the Asset Store and see what other people have said as well.
@@git-amend I see, there are indeed some interesting differences. However, from the comments, it also seems to have a few issues here and there, like dealing with different resolutions (specifically on MacBooks). From a personal perspective, I usually use Unity on one screen and Rider on the other, which would potentially lower the impact of above mentioned issue. Congrats for the really interesting video!
I'm curious, when you have a project with all these assets, especially the one that are editor improvements, do you something see more latency in compiling or refreshing / drawing the editor because of all the extra editor code running a bit everywhere ?
Hi Adam, I rebuilt and customized your code for my own setup and built it as a popup window and being able to uncheck default settings with checkboxes etc.. and various other things functions.. does this make sense? The main reason I started down that path was because it seems that we cant cant added checkboxes to the standard Unity Tool(or other ) menu items? cheers
If you have the Google drive setup as a normal drive on your machine, you should be able to do this: AssetDatabase.ImportPackage("G:/Unity Storage/MyPackage.unitypackage", false); If that's not an option, and you know the Id of the package on Google Drive for sharing, you could write some code to import it using a UnityWebRequest and the URL of the file.
Hey, Unity "beginner" here. Quick question, how did you turn your file into a "local package"? I wrote it in a C# script and from there on I was confused how to follow :>
The features I use most are viewing the source code surrounding each method call in the stack, and jumping directly to any point in the stack in Rider by clicking on it in the console. The search is also awesome, you can filter entries by text, file name, class, or GameObject name in real time. And if you just want to watch a variable changing, you can use a Watch Command to track it without generating spam, so like a Transform position that is updating every frame, you can set it so you only see one entry in the console but it would constantly update. Maybe throw it on your wishlist, you never know when it will go on sale!
asset for fullscreen? whats wrong with just "hover mouse over area and hit shift-space to fullscreen" default in unity? i see a bunch of youtubers use this fullscreen asset,but why? unity has the feature built in and hotkeyed - unless i am missing something
The 'maximize' feature in Unity can only blow up one tab to max the screen that Unity currently occupies. The Asset can do a lot more than that, and the main feature I like is that I can pull out my Scene tab onto my ultrawide and make it full screen while leaving the rest of Unity on my laptop screen. Beyond that it also has other features such as allowing you to select what tools are displayed as well if you want to have a more 'focused' view. That being said, it's not for everyone, and after releasing this video I found out that there are some issues on Mac computers as well, so maybe read through the reviews on the Asset page before you do decide to buy it.
I understand, everytime its been explained its only covered that one feature thats already built in. You still dont need it if you just want to grab scene view over to a new monitor. Just click-drag the tab you want. And it pops out of the editor window. And if im not mistaken you can still slot more tabs to that external window @@git-amend
@@git-amend i made this short clip to show how i multiscreen unity. ruclips.net/video/gCLBC4f5lr8/видео.html thanks for the video by the way! plenty of usefull tips :D
It depends what you are doing, I suppose. Consider the fact that every time a 3rd party Asset from the store gets updated, you then have to go and update every template you've created if you want to have the new version. The same would apply if you wanted to add (or remove) a tool. You would have to do the same with the manifest if it needed to change. For my workflow, it's more convenient to use code to load up what I want in the project and not maintain one or more fixed templates.
Please don't make it even easier/enjoyable to start new projects! I need to start finishing them and not starting new ones lmao 😂 All jokes aside, cool vid!
If you weren't already aware: NaughtyAttributes on the Asset Store is a decent free alternative to Odin Inspector and Odin Validator. It doesn't have quite as many features, but it's still super useful and easy to use.
Happy Sunday! If you just want to see code, the video has chapters! Let me know what Assets YOU import into every project! 👍
Damn, I need to see if this can be tweaked to work with scoped packages.
I always install VContainer, MessagePipe and NaughtyAttributes (and the dependencies, which is annoying : UniTask, MessagePipe-VContainer,...)
Actually great for classrooms using unity, making sure students don't get bogged down in setting things up.
Great idea!
For those working on macOS and struggling to get the process of importing assets (at 2:30) working, modify the corresponding method like this:
public static void ImportAssets(string asset, string folder)
{
#if UNITY_EDITOR_WIN
string basePath = System.Environment.GetFolderPath(System.Environment.SpecialFolder.ApplicationData);
string assetsFolder = Combine(basePath, "Unity/Asset Store-5.x");
#elif UNITY_EDITOR_OSX
string basePath = Environment.GetFolderPath(Environment.SpecialFolder.UserProfile);
string assetsFolder = Combine(homeFolderPath, "Library/Unity/Asset Store-5.x");
#endif
ImportPackage(Combine(assetsFolder, folder, asset), false);
}
As always: Thanks for the video and the great tips!
You're pumping out banger content, looking forward to more! With the little time that I've been able to get, I've been trying to create systems and helper scripts where I can. Even if its simple math functions for edge cases for Quality of life. You dont realise how much it helps when you have everything you need in one place.
Yeah, I agree 100%! Thanks for the comment!
Hey @git-amend! What a great vid.
Here are a list of my personal favourite assets:
- SOAP : Just flows so naturally with the way I code all of my game logic inside Scriptables.
- Hot Reload : This has maybe doubled my productivity and protects "my flow" while coding. There's nothing worse than waiting 15 seconds for my ridiculous attention span.
- Rainbow Folders : saves me up so much time, looking for a specific folder in the project.
- Debug.Log Extensions
- Ultimate Editor Enhancer : Although I might replace it with some of the ones you covered in the video.
Assets I'm looking forward to try out (I'll happily take any opinions if you tried them out):
- The whole Kubacho Lab series : VFavorites 2, VHierrachy 2, VFolders 2, etc.
- Texture Adjustments
- Quantum Console
- Build Report Tool
- Easy Save 3
Awesome! I have a lot of those, and I just started using Hot Reload which I'm very impressed with so far. I've been a big fan of SOAP for a long time, and we'll probably have a video about it later this year. There's a few things on your list that I'm not familiar with, so I'll go check them out on the store! Thank you!
@@git-amend Great! I'm still checking the assets in the video that I ddn't know of. I've just seen the Prime Tween performance benchmark and the fact that on top of it, the asset is open-source is just mind-blowing.
Although, I **really** like the way DoTween can be used solely using their extensions functions. Does Prime Tween have those as well?
@@nael_nocteon Actually it is very similar to DOTween in the use of extension methods for chaining. I think you won't have any trouble with it at all.
Automating project setup like this is actually a great idea!
Can't believe it flew over my head all this time.
Awesome, glad you like it!
I like this alot, and I would like to propose an upgrade.
Perhaps it can add a Save Snapshot feature where it can automatically figure out the path to those assets without having the user to find them one by one? It could save them all in a SO List where the user can just delete the ones that they dont want to carry over to the next project.
Thank you. I think that's a great feature you could create for your tooling if that helps you out.
This is why I'm using custom project templates. It allows for fully building your project structure including packages, assets, scenes, build settings, addressables setup and so on. But it requires a little bit of "hacking" once.
Unity promise that it will be easier in the future to create your own templates.
Maybe if Unity makes it easier in the future, I might consider this as well. What is your approach to keeping packages and assets up to date in the template?
@@git-amend You can specify it in manifest of the template. So it will be downloaded on creation stage.
@@git-amend For assets you cannot keep them updated without template update.
I'm using separate repo with template, and some build pipeline which gives me template file. So I can update assets and replace template in the hub. But it's a rare thing, just because I'm not creating projects this often.
Thank the algorithm for serving me you. No clue how it never have before.
Thank you for your content my man, I hope my sub and views will make the algo
push you out to more people
Welcome aboard! Thank you!
Great setup! thanks for the tuto :)
I quickly read comments, not sure if someone mentioned it but i love "code todo list" which is an asset that shows you your comments (by detecting keywords like TODO, FIX, REFACT) and allow quick opening of the file at the correct line. Awesome for my little brain!
Interesting, I'll have to look that one up... I'm constantly adding TODO and FIXME lol
I picked up the TODO Asset based on your recommend... very useful, thanks!
@@git-amend haha :) yeah looking at your videos i was pretty sure you'd like this one ;)
anyway, i learned some pretty nice design patterns thanks to you, so... right back at ya!
Ultimate Editor Enhancer, UMotion Pro, GSpawn, Magica Cloth 2 are some of my favorite tools which I import in every project
I really like UMotion as well. I need to try GSpawn!
I'm glad you made this video Git. After watching your videos for a year (or so) I recently went back and redid your game tutorials which touched on this as part of one series (it was probably the platformer tut?). It's nice that these utilities have their own video now. I have to say, the game tutorials had a different feel after watching the detailed game pattern and architecture videos
Awesome, love to hear that!
@@git-amend you're doing a great job. Those early tutorials were incredibly well done too, and I had a greater understanding of the mechanics and patterns when I did them again. Congrats on the new job as well, I'm sure you're going to be a huge addition to the team.
Time to double-comment. Lol Because of you, I went on a complete asset hunt/inventory... And I found an asset that encapsulates the spirit of this video. It takes your assets, package manager, and importing/exporting process and wraps it into one beautiful interface. I'm pretty sure it allows for collecting your essential assets, and importing them automatically. It's on sale now too!
- Asset Inventory 2
Yeah, I always loved version 1 of Asset Inventory. Time for me to upgrade that.
Super useful topic! I automated some stuff before but I never thought about doing this, even if it is so obvious in hindsight
Glad it was helpful!
I like to have a repo with my basic structure and all the plugins configured.
When I start a new project I just fork that repo.
But having a script can be nicer because you can create an editor window to import exactly what you need
Not a bad idea. I've seen people pull the manifest file from github as well, which can also be convenient for teams.
Thanks for this video ! I'd love another video on the Console Pro honestly 👍
Thanks! I'll try to weave a bit more Console Pro into upcoming videos!
I usually set up my project the way I want it, All the setting, layers, tags, and packages that I want. I then make it a template so I can just create a new project that is setup just the way I want it. To do this you copy one of the default templates from "UnityInstallLocation\Editor\PackageManager\ProjectTemplates\TemplateThatYouUsed" for example on my machine the Universal render pipeline template is "C:\Program Files\Unity\Hub\Editor\6000.0.12f1\Editor\Data\Resources\PackageManager\ProjectTemplates\com.unity.template.3d-cross-platform-17.0.10.tgz" I edit/remove/replace the files in the archive with ones from my newly set up project I then copy this new archive back to the project template folder. Now when I create a new project I just use the new template that I created. You can have a template that you use for youtube videos, one that you use for VR, etc. This does become a little tedious sometimes depending how often I update the Unity Engine. I wish there was an options in the File Menu to save your current project as a project template. I might switch over to this as it seems to be easier to do.
As for assets that I use I use my own custom package that has code from Warped Imaginations Hierarchy video, some custom tooling for a Save System/Project Settings/User Settings, Scriptable Object Event System, Scriptable Object Variables, Custom Debug log messages (A wrapper for Unity's built in Debug that use Rich Text to format the message) Custom Attributes that I use all the time in my monobehaviours (Show/Hide If, Custom Header, Buttons without params, Scene Selection). I am tempted to get Odin Inspector now that I can afford it as it is a more robust system and delete my custom attributes from my custom package. I also use Unity's 3rd Person Character Controller and Synty's Starter Pack & Prototype pack. Once I got my prototype flushed out with the core features/game play I typically use one of Synty's other packs if they have something that fits the style of game I am making. Other assets that I might use in a project are Animmal's Kubikos assets, Dungeon Masons PBR Polyart packs i.e Tiny hero Wave, some of Blinks asset packs, some of N-hance Studio's packs, Protofactor Inc, Tidal Flask Studio's enviroment packs, Dragon Studios' characters. For 2D i like Daniel Thomas' packs. I also like trying to catch one of the Unity Humbelbumble deales (I got a great deal on a bunch of Synty assets and Characters from Dragon Studios ). I also try to pick up the free assets every week on the Untiy's asset store from the featured Creator, some of them I purchased additional assets some of them is that is neat but doesn't fit the art style that I usually use in a project or the type of game that I create.
Cinemachine is also a must have in every project
Awesome video Adam! Exactly what I needed :)
Right on!
the best!! 'm going to start saving up to buy some that I don't have but find very interesting. In the videos, I tried to see which asset you were using to make the visuals so efficient.
Awesome!
I've been adding Asset Inventory 2 as the first thing to every project lately. It's got features for organizing and keeping assets updated, and I've used it as a crutch for bootstrapping projects.
The script based approach you've got here is neat though. I like the added control over folder structure and moving files around (looking at you input actions). Asset Inventory is nice for just getting things into the project but I still find myself doing some manual steps after importing each time too.
Somewhat related note, I've used other templating libraries like Jinja in the past, and this has me thinking about what else I might possible want to generate for Unity projects.
That's a good reminder to me to go and upgrade Asset Inventory to version 2.
Thanks I added a pair good programs to my toolbox
Awesome - so did I thanks to the comments!
Thanks for all useful asset suggestions!
No worries!
A bit hard to believe you didn't mention Hot Reload as an essential no-brainer that's imported into every project by default. But looking forward to hear your opinion on this.
To be honest, I have not used Hot Reload, so I can't comment on that one specifically. I have used Fast Script Reload, which is great for tweaking logic inside a method if necessary, but I don't use it so much that I've bothered to add it to my setup script. So, maybe I need to buy Hot Reload while it's on sale and give it a shot! What do you think? I'm not really sure what the differences are, but I'll look into it today.
@@git-amend I didn't know the free Fast Script Reload, but it seems to lack some important features, such as hot reloading generics, new methods, lambdas, and some other stuff, It also has Burst and Jobs support (which I suspect is on your list of future videos ;) ) and async/await. So it might be worth a look, as it can improve the turnaround times significantly, when iterating during development of features.
Hot Reload is a game changer. I don't think it's an exaggeration to say that it has doubled my productivity in Unity, being able to tweak code on the fly at runtime without waiting for domain reload and play mode to load massively increases iteration speed. It's magic.
Ok, I'm sold. I'll pick it up today and try it out!
One thing I noticed. When importing assets they do not show up in the Package Manager as imported. I like to keep track of when the assets I use are updated. Ideas on solving this?
Added the following for my use:
- The ability to automatically populate scoped registries (like from OpenUPM) with some Json magic. If I do this before I load packages I can add things like UniTask with AddPackages.
- Removing packages that Unity automatically installs that I never use (Visual Scripting and Visual Studio)
- Renaming for folders. I like to move the Scenes folder to _Scenes. That way it is at the top of my hierarchy.
My Recommendations:
vFolders, vTabs, and vHierarchy from Kubacho Labs
Hot Reload (love this!)
DebugUI from OpenUPM - easy to make UIToolkit debug tools
Very insightful video as always!
I would like to see a future video on localization and what do you typically use.
I am not sure how good the Unity's Localization package is.
Great suggestion!
Great channel and great content! Any reason you use this approach vs rolling your own template? Seems like rolling a template would cut out loads of extra processing steps each time you create a new project?
Templates are great if you feel like you won’t update your assets and dependencies often. For me, I like to use the latest versions, so this is less work than making a new template every time one changes.
@@git-amend Ah, I may have misunderstood something in the video then. At 2:40 when you are writing the ImportAsset function it sounded like you had to predownload the assest so it's in the folder prior to running the script. If that is the case then you have to start a new project, run the script which installs whatever version you have in your asset folder to see what has updated and then remove them and download them and reimport. Or before import you have to hand scroll through all your assets and check what has updated and download it prior? Seems like for store assets it will have the same issue as a template. For OpenUP and Unity packages you can setup the template to pull those on creation just as the script does. Let me know if I misunderstood the store asset part.
Great video, thanks! I would really see this whole video dedicated to Console Pro.
Thanks! Maybe I can show it a bit more in the future!
Hey @git-amend! great vid!)
how different is the installation in this way from creating a template project with all the folders and assets and packages? Later, just copying it. This is the most direct approach, I wonder if it will break meta files, etc.?
And also, as far as I remember, you can create your own template directly in the Unity Hub
You can make templates, and sometimes that's a good option. Just remember that if you want to update a package inside the template, you'll be making a new one. For me personally, especially because I like to stay on the latest tech stream, I find keeping all my packages as up to date as possible is the best solution, and I don't want to be making a new template several times a week since that defeats the purpose of them.
We can also add default name space when new script is created. BTW awesome video.
Thanks!
Great tutorial, thanks. I was wondering of the add component button in the inspector can be overridden to place a script in a specific folder rather than the root? Thanks
The "Add Component" button in the Unity Inspector cannot be directly overridden unfortunately, at least not without a lot of magic.
@@git-amend That's a shame
This is great! I still use a similar setup you showcased a while back. I've recently decided to try and get into tooling and this was perfect timing. Do you have any recommendations on how to create tools for Unity?
My only recommendations would be to try to look for pain points and get creative with solutions - and subscribe to the Warped Imagination YT channel, it's all about tooling in Unity! Also, if you have Assets that you really enjoy, spend some time reverse engineering them so you get a feel for how the creators approached building their solutions.
@@git-amend Thanks for sharing that! That channel is exactly what I was looking for :D
It's not completely full screen, but pressing shift + space while hovering over a window maximizes the window within the editor
Great tip!
Amazing! Thanks!
You bet!
Thanks for the great video! It's very informative.
I curious, if there are any method to delete preinstalled packages that you don't need?
Absolutely. docs.unity3d.com/ScriptReference/PackageManager.Client.Remove.html
@@git-amend Huge thanks!!!
Oh boi, this is something Ive been wondering about. Noice!
Awesome! Glad it's helpful!
For the FullScreen tool you use, if you have a trackpad (e.g. in a MacBook) if you 2 finger spread it makes the current selected window to go full screen, and pinching makes it go back. Keyboard shortcut for it is Shift + Space.
Isn't this similar enough to not need the FullScreen tool you use?
There are a few differences between the built in 'Maximize View' command and the Asset. Probably the one I use the most is the support for multiple displays, so I can blow up the Scene view on my big screen and still have access to the rest of the Unity Editor on my other screen. Have a read of the first page of reviews on the Asset Store and see what other people have said as well.
@@git-amend I see, there are indeed some interesting differences. However, from the comments, it also seems to have a few issues here and there, like dealing with different resolutions (specifically on MacBooks). From a personal perspective, I usually use Unity on one screen and Rider on the other, which would potentially lower the impact of above mentioned issue.
Congrats for the really interesting video!
I'm curious, when you have a project with all these assets, especially the one that are editor improvements, do you something see more latency in compiling or refreshing / drawing the editor because of all the extra editor code running a bit everywhere ?
I have not noticed any issues in that regard to be honest. Other than the Sirinex tools, they are all quite light weight.
Hi Adam, I rebuilt and customized your code for my own setup and built it as a popup window and being able to uncheck default settings with checkboxes etc.. and various other things functions.. does this make sense?
The main reason I started down that path was because it seems that we cant cant added checkboxes to the standard Unity Tool(or other ) menu items?
cheers
Nice work! That sounds like a great QOL improvement.
Good list 👌
Thanks! 😁
@@git-amend I thought that Easy Execute might be on the list, and this excited me. Maybe I can get on the list with new tools.😄
Nice!
Thank you! Cheers!
@@git-amend i was wondering when you were gunna revisit the Setup.cs from before. I actually use that for every new project.
@@damonfedorick Nice. I think this is a bit more streamlined than the previous incarnation.
Thanks for this can you please tell me how can I download unity package from my google drive?
If you have the Google drive setup as a normal drive on your machine, you should be able to do this:
AssetDatabase.ImportPackage("G:/Unity Storage/MyPackage.unitypackage", false);
If that's not an option, and you know the Id of the package on Google Drive for sharing, you could write some code to import it using a UnityWebRequest and the URL of the file.
Hey, Unity "beginner" here. Quick question, how did you turn your file into a "local package"? I wrote it in a C# script and from there on I was confused how to follow :>
Check this video out if you aren't familiar with making packages: ruclips.net/video/f2xW24xyDEg/видео.html
Out of curiosity what are the main features/uses you have for console pro? I have been considering grabbing it, but have not yet.
The features I use most are viewing the source code surrounding each method call in the stack, and jumping directly to any point in the stack in Rider by clicking on it in the console. The search is also awesome, you can filter entries by text, file name, class, or GameObject name in real time. And if you just want to watch a variable changing, you can use a Watch Command to track it without generating spam, so like a Transform position that is updating every frame, you can set it so you only see one entry in the console but it would constantly update. Maybe throw it on your wishlist, you never know when it will go on sale!
asset for fullscreen? whats wrong with just "hover mouse over area and hit shift-space to fullscreen" default in unity?
i see a bunch of youtubers use this fullscreen asset,but why? unity has the feature built in and hotkeyed - unless i am missing something
The 'maximize' feature in Unity can only blow up one tab to max the screen that Unity currently occupies. The Asset can do a lot more than that, and the main feature I like is that I can pull out my Scene tab onto my ultrawide and make it full screen while leaving the rest of Unity on my laptop screen. Beyond that it also has other features such as allowing you to select what tools are displayed as well if you want to have a more 'focused' view. That being said, it's not for everyone, and after releasing this video I found out that there are some issues on Mac computers as well, so maybe read through the reviews on the Asset page before you do decide to buy it.
I understand, everytime its been explained its only covered that one feature thats already built in.
You still dont need it if you just want to grab scene view over to a new monitor.
Just click-drag the tab you want. And it pops out of the editor window. And if im not mistaken you can still slot more tabs to that external window @@git-amend
@@git-amend i made this short clip to show how i multiscreen unity.
ruclips.net/video/gCLBC4f5lr8/видео.html
thanks for the video by the way! plenty of usefull tips :D
isn't cloning a template project into your new project with git easier?
It depends what you are doing, I suppose. Consider the fact that every time a 3rd party Asset from the store gets updated, you then have to go and update every template you've created if you want to have the new version. The same would apply if you wanted to add (or remove) a tool. You would have to do the same with the manifest if it needed to change. For my workflow, it's more convenient to use code to load up what I want in the project and not maintain one or more fixed templates.
Please don't make it even easier/enjoyable to start new projects! I need to start finishing them and not starting new ones lmao 😂
All jokes aside, cool vid!
Haha!
I know Odin is good, but it's too expensive to use at Indie level to be honest
Well, the good news is that there isn't anything included with Odin (or any of these tools) that you can't create on your own!
@@git-amend I know Odin is good, but there are implementations with similar features, so I prefer the free version. Odin is too expensive....
I use a free asset called Custom Inspector which has some cool features. I use the button attribute a lot to run methods from the inspector
@@davidheeren3751 Oh yeah? Is that on the Asset Store, or somewhere else?
If you weren't already aware: NaughtyAttributes on the Asset Store is a decent free alternative to Odin Inspector and Odin Validator. It doesn't have quite as many features, but it's still super useful and easy to use.
Full screen is an awesome tool, but you change a window to full screen by SHIFT + SPACE, and then exit it the same way
Didn't know two of my favorite Unity channels know each other @WarpedImagination
It's a great channel, isn't it!