Jason Storey
Jason Storey
  • 6
  • 310 090
How to find any resource you are looking for!
Ever have a great website/video/article that you really want to find again but can't? With a Personal Knowledge management system you will be be able to find and consume any content you think is valuable.
- timestamps -
00:00 - intro
00:23 - Personal Knowledge Management/Eagle
01:19 - Lets tell a story
07:32 - Story conclusion/philosophy
09:00 - Asset Library for Audio
10:24 - Professional Courses
zhlédnutí: 20 275

Video

Software Architecture in Unity
zhlédnutí 114KPřed 2 lety
Ever wondered what software architecture is REALLY about? Why do we bother? If you would like to support me, feel free to donate to: www.ko-fi.com/jasonstorey (and get access to my discord) 00:00 - Introduction 00:06 - Software Architecture Misconceptions 00:17 - Practical Example: Sample Script 00:41 - Software Architecture and Making Code Work 01:06 - Change Requests and the Importance of Cha...
Why is unity so slow!
zhlédnutí 68KPřed 2 lety
Ever wonder what that loading bar is actually doing? Visit: www.ko-fi.com/jasonstorey To join the discord! 00:00 - Introduction 00:12 - Exploring the Unity Project Directory 00:28 - Understanding Script Assemblies 01:16 - Examining Assembly-CSharp.dll 02:00 - Multiple Assembly-CSharp.dll Files 04:08 - Using Assembly Definitions 04:51 - Improving Workflow with External Building
Unity Arrays? Don't Do this!
zhlédnutí 31KPřed 2 lety
ko-fi.com/jasonstorey 00:00 - Introduction 00:10 - Array of Names 00:33 - Issues with the Current Approach 01:02 - Using Text Files 01:25 - Responding to Changes in Text Asset 02:11 - Storing More Complicated Data 03:04 - Custom Editor Scripts 03:27 - Remaining Hassle 03:57 - Conclusion
Stop Wasting your Time!
zhlédnutí 22KPřed 2 lety
When you start a new unity project, how much time do you spend installing packages? Can we automate that? ko-fi.com/jasonstorey 00:00 - Introduction 00:18 - Automating Package Installation 00:32 - Understanding Package Files 01:03 - Storing Package File on GitHub 01:26 - Downloading Package File 01:56 - Replacing Manifest File 02:07 - Refactoring into Dedicated Class 03:22 - Adding Additional P...
A BETTER way to setup new unity projects!
zhlédnutí 54KPřed 2 lety
ko-fi.com/jasonstorey 00:00 - Introduction 00:12 - Computer Configuration 01:06 - Folder Structure 01:42 - Document Directory 02:26 - Creating a New Unity Project 03:46 - Using 'Everything' Indexer 05:10 - Custom Editor Tool 07:57 - Creating Default Folders 11:32 - Creating Unity Packages 15:42 - Conclusion

Komentáře

  • @bugbystudios
    @bugbystudios Před 4 dny

    THANK YOU!

  • @nexgen.graphics
    @nexgen.graphics Před 5 dny

    I use a simple batch file to create the necessary folders but this one seems the professional way to get things done. Love it!.

  • @sametayaz4891
    @sametayaz4891 Před 8 dny

    This is what lead developer looks like.

  • @happytofu5
    @happytofu5 Před 25 dny

    I've never seen a tutorial video edited this entertaining xD

  • @ROCKSMASHER
    @ROCKSMASHER Před měsícem

    Thanks

  • @cyberpunkspike
    @cyberpunkspike Před měsícem

    Your interpretation of the single responsibility principal is not nearly as granular as how the SOLID advocates interpret it. Of all the anti-SOLID talk nobody was saying "This crosscutting concern, this logging class, is a perfect example of why all code runs like shit". It's data encapsulation, and other techniques that must be used thoughtfully, but are used with reckless abandon instead. It's the single use classes, that should just be another method on an existing class, that we have an issue with. In software few techniques ever die, inheritance didn't die, it's used every single day. ... but it's been de-emphasized, as a rule of thumb

    • @JasonStorey
      @JasonStorey Před měsícem

      That's a tautology. Anything used with reckless abandon is bad. Just like anything in excess is by definition, too much. Though I am not going to bore you with the "no true scotsman" arguments, I am not even remotely ideologically captured to play defence for an idea. All I'll say Is I've actually watched the 30+ hours bob martin spent talking about each letter in detail on his own website (as well as watching all of Casey, Blow and the other detractors give their case for just as long). People are free to use what they like, but I'm never going to throw out one tool because it doesn't work in some scenarios. I'm going to hear the arguments from the horses mouth and make my own opinions. So, personally I'll use circle buffers and simd where I deem appropriate and leverage specification classes in a mvp boundary line structure where that makes sense. I try not to argue with hypothetical proponents of an idea and instead respond to substantive arguments. I've made my opinion know on arguments I have heard. Do with that what you will.

  • @castlecodersltd
    @castlecodersltd Před 2 měsíci

    Very helpful, thank you 🙂

  • @LouisCubingChannel
    @LouisCubingChannel Před 2 měsíci

    Hi, why it is so slow opening a new project?

  • @y01cu_yt
    @y01cu_yt Před 2 měsíci

    Thanks Jason, I wonder if there's also a way to download core assets we use, like this.

  • @paulehigie9879
    @paulehigie9879 Před 2 měsíci

    Amazing

  • @kevonboxill9455
    @kevonboxill9455 Před 2 měsíci

    cant remember commenting but watch this video 3 times.. these last two were just because you did it so well...kudos to you my bro!

  • @edez6177
    @edez6177 Před 3 měsíci

    but this happened to me when i update, i mean i was in the 2019 version and i was okay, I never got this "reload script assemblies" bar, but when i update to 2021 version this bar appears to me every time i do something

  • @kayumiy
    @kayumiy Před 3 měsíci

    It is absolutely phenomenal explanation of SOLID and Software Architecture. You did well. Thank you.

  • @rickloyd8208
    @rickloyd8208 Před 3 měsíci

    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!

  • @rickloyd8208
    @rickloyd8208 Před 3 měsíci

    Man, why did you stopped your awesome videos... I was ware of txt files but I never thought to use them in the way to fill content of the objects!!! Thank you so much and thumb up!

  • @rickloyd8208
    @rickloyd8208 Před 3 měsíci

    I am so sad that CZcams did not support developer like him two years ago and he had to give up on making tutorial videos. Having years of experience in Unity, I found the simple idea of placing own project under "project" folder amazing. All this time I was wasting time trying to move all imported assets to dedicated external folder, which usually require some modifications (path)

  • @IRgEEK
    @IRgEEK Před 3 měsíci

    Great info. Love the idea of using the U. prefix! Thanks for sharing!

  • @adamcolon
    @adamcolon Před 3 měsíci

    As a software developer since 1998, I can assure you that software architecture is the FIRST thing you should plan at the most basic level. You need to build a architecture design that allows all the fundamental object oriented principles and is easy to expand. It's the difference between taking a week to write a system, and taking an hour. The difference is that dramatic.

  • @Hasdf32gbve
    @Hasdf32gbve Před 4 měsíci

    WOW this just saved me 10 hours per bug

  • @emmanuelsalas5283
    @emmanuelsalas5283 Před 4 měsíci

    Here goes a poorly inspired but with great intentions Comment : Thanks for your video.

  • @damiangonzalez_esp
    @damiangonzalez_esp Před 4 měsíci

    Hey! Please correct me if I'm wrong (I'm always ready to improve my coding), but instead of emitting a [possibly worthless] ScreenPointToRay, and Raycast every frame, and THEN check for the mouse button, wouldn't be better to first check for the button every frame and THEN emit the ScreenPointToRay and Raycast? I mean, it seems cheaper that way.

  • @digrabbit170
    @digrabbit170 Před 4 měsíci

    Love your content man, we need more!

  • @GiantBean
    @GiantBean Před 4 měsíci

    I know I'm not supposed to focus on the code but I don't understand how you made that last architecture jump. How did you make the loggers and why would attaching those object by object be any quicker then a toggle per script? I get that its good for open-close principle of SOLID but I don't know how you made the loggers.

  • @GiPa98
    @GiPa98 Před 4 měsíci

    really interesting! Thanks!

  • @thebulletkin8393
    @thebulletkin8393 Před 5 měsíci

    This content is fantastic, but as a beginner it’s going to be tough to spot where I can apply this stuff in my own examples

  • @abdullah4653
    @abdullah4653 Před 5 měsíci

    we could use json format instead of text file.

  • @abdullah4653
    @abdullah4653 Před 5 měsíci

    Sir plz make new tutorials🎉🎉🎉

  • @leogcavalli
    @leogcavalli Před 5 měsíci

    great stuff

  • @pixelart0124
    @pixelart0124 Před 5 měsíci

    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?

  • @pixelart0124
    @pixelart0124 Před 5 měsíci

    2:33 "I just gave you change!" OMG that killed me LOL

  • @sharkle9
    @sharkle9 Před 5 měsíci

    Great example thanks!

  • @DeepWorksStudios
    @DeepWorksStudios Před 5 měsíci

    Would be happy to see you complete the topics you mentioned in your other videos some where theasing a second part Would do alot of good to us thanks in advance jason!

  • @DeepWorksStudios
    @DeepWorksStudios Před 5 měsíci

    Do you still planing to continue this topic?

  • @anshulsingh8326
    @anshulsingh8326 Před 5 měsíci

    In the coding part only thing I understood was public void CreateDirectories. And I have made some solo games for game jams. How do I learn all those? It wasn't in the c# course I did

  • @jtmcfarland3512
    @jtmcfarland3512 Před 5 měsíci

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

  • @jtmcfarland3512
    @jtmcfarland3512 Před 5 měsíci

    Great video, but I with it was longer. There are tons of resources for how to do single things in Unity with C#, but I’m struggling to understand how and when to implement them. Nobody seems to ever start the video explaining WHY you would do a certain thing. This discussion on architecture was a great start. I’d love to see the architecture of a developed game. What’s in their hierarchy? How are their files organized? How often and when are different principals used (state machines, statics and singletons, event systems, and other patterns). Great work. Keep it up.

  • @bjkgamedev
    @bjkgamedev Před 6 měsíci

    Nice video, actually touching upon important stuff. However architecture is more than just "change". I recommend watching "Where Does Bad Code Come From?". Instead of only "change" there are many more things that are important: - Write - architecture should help you write code faster - Argue - architecture should make it easier and reduce time programmers must argue about code - Read - architecture should make it easier to read code - Modify - architecture should make it easier to change things (this is the part mentioned in this video) - Execute - architecture should make code execution better (faster, easier, depends on context) - Debug - architecture should make it easier to debug bugs

  • @pratikchakravorty983
    @pratikchakravorty983 Před 6 měsíci

    Would be interested to see how you take notes when you learn things and integrate Obsidian with your PKM tools.

  • @daslolo
    @daslolo Před 6 měsíci

    Two things: 1. it's not compiling that's slow because compiling uses all cores and is blazing fast, it's domain reload and splitting project into assembly definition doesn't affect that part so much 2. try out Listary

  • @hodeisansebastian3528
    @hodeisansebastian3528 Před 6 měsíci

    Ok, but 50+minutes for 2 10 row while loop scripts??

  • @olavman88
    @olavman88 Před 7 měsíci

    great video! :) for some reason i'm not able to import the package. I'm wondering what i could be doing wrong

  • @khanhaoan9796
    @khanhaoan9796 Před 7 měsíci

    any1 could tell me why it took me forever to create a new project :(((

  • @SanyaBane
    @SanyaBane Před 7 měsíci

    You don't need to install new package for yet another Unity project, if you working on single project whole time 😄😅🙂🙃😥😭

  • @kainaris
    @kainaris Před 7 měsíci

    But why doesn't Unity just do it right by default? I don't get it. Also where's that "next video" ? :(

  • @niuage
    @niuage Před 8 měsíci

    It's too bad you stopped making videos, they were all pretty good! Hopefully you find the time/motivation again :)

  • @unlockener
    @unlockener Před 8 měsíci

    Hey how are you doing Jason? You made few Unity related videos and they were the best Unity related videos on the whole CZcams. Will there ever be more? Based on your content but also appearences on other Unity channels, you are The only content creator I would actually be willing to pay (patreon or some youtube model or whatever). There is a hole in the market - videos/blogs about semi advanced and advanced Unity/c#/software architecture in Unity (and similar) topics. There is not much quality content on the internet to be found on these.

  • @zstrizzel
    @zstrizzel Před 8 měsíci

    elephant in the room: d a t a b a s e s

  • @Haunchfluff
    @Haunchfluff Před 8 měsíci

    Did he ever make the follow up video to this?

  • @mrGee
    @mrGee Před 8 měsíci

    Hello I'm currently getting an error with the code. (23,52): error SC1513: }ecpedted Here is my code: using System.IO; using UnityEditor; using UnityEngine; using static System.IO.Directory; using static System.IO.Path; using static UnityEngine.Application; using static UnityEditor.AssetDatabase; namespace gee { public static class ToolsMenu { [MenuItem("Tools/Setup/Create Default Folders")] public static void CreateDefaultFolders() { Dir(root: "_Project", params dir: "Meshes", "Textures", "Materials", "Prefabs"); Refresh(); } public static void Dir(string root, params string[] dir) { var fullpath:string = Combine(dataPath, root); foreach (var newDirectory:string in dir) CreateDirectory(path: Combine(fullpath, newDirectory)); } } }