UNITY does WHAT NOW?? The State of Unity
HTML-код
- Опубликовано: 7 дек 2022
- I am looking at UNITY and, what has happened over the last few years - where are we now - and how can YOU move forward? After watching this video, you will know if you should bother with DOTS (the Data Oriented Technology Stack) including ECS (Entity Component System), Burst Compiler, Job Systems and you will know WHICH RENDER PIPELINE to choose for your next game. You will also know which UI you should use (yes, there are 3 of them now) and what the current status is with Unity networking.
It can all be a bit confusing, but I will try my best to help you understand where we are at and how we can make use (or not make use) of the new technology. Let's get started!!
Support me on Patreon:
/ imphenzia
This .blend-file can be downloaded from my Patreon page from the Tutorial tier and up.
Imphenzia's Handpicked GameDev.TV Courses with 85% Discount:
www.gamedev.tv/p/imphenzia?co...
10-Minute Modeling Challenge Series Playlist:
• Blender 10 Minute Mode...
In-depth learn how Low Poly Modeling in Blender:
• Learn Low Poly Modelin...
My web site:
www.imphenzia.com
Twitter:
/ imphenzia
My Itch.Io page with all my Ludum Dare games:
imphenzia.itch.io/
Imphenzia Discord server invite:
/ discord
My Instagram:
/ imphenzia
Imphenzia Merch:
teespring.com/stores/imphenzia
My Twitch Channel:
/ imphenzia
Additional info:
I've been modeling in Blender since about 2015 but more recently in the past couple of years. I've been making games and assets in Unity since 2011 and I'm currently working on a multiplayer RTS game called Line War that we released in 2022.
I use a Sony FX3 Camera, a Strix ROG Scar 17 3080TI laptop and not much more these days =)
Thanks a lot for watching and sharing my videos :)
00:00 Introduction
07:00 DOTS (ECS, Burst Compiler, Job System)
12:28 Render pipelines (Built-In, URP, HDRP)
16:56 UI systems (Unity UI, UI Toolkit, IMGUI)
20:58 Networking (Netcode, Transport, services)
29:32 Conclusion
Actually, you can use VFX graph in Built in RP to render millions of particles, I use it myself
Thanks for timestamps!
From a beginner's point of view the biggest change has been the shader section. RUclips is full of amazing tutorials from 2-3 years ago which are pretty much impossible to follow thanks to massive changes in shader creation. I'm sure all the same features are still somewhere in there but the tutorials have not been updated so it's a real pain most times.
Shader tutorials wouldn't need to be a thing if unity had documentation for shader API
Which they do not. Never had. I don't know why, only reason to find out what most built in hlsl stuff does is just by reading code...
Lack of tutorials for Shader Graph and VFX graph is also a problem. I think many people aren't even aware that they exist.
@@thomasfalcon6350 There's a tonne of support for ShaderGraph, Daniel Ilet for instance.
The problem with tools like unity, ue5, blender etc. Is that they rely too much on video tutorial (most of the time made by users themselves) rather than making a good written doc.
It's been a shift in the development world and even tho it pre-existed in 3d softwares, it turned out video tutorials are not a good replacement for documentation...
@@benjamin_fdw I never understood this. People are to blame, my brother is one of them. I tried to explain to him that everything he sees in youtube tutorials is a bad copy from a book.
The amount of information you explain in your videos are amazing! Thank you for your effort!
Very good in-depth analysis, I imagine this took a lot of time and effort to create. I really appreciate the video. To me one of the features that have been not in good state for a while are the world building tools. You get that by default in other game engines but in unity, doing level design is a bit painful. The PolyBrush, ProBuilder, and Terrain tools used to be in forever preview state and never really catching up very well with the latest versions of Unity. It’s been a while since I last checked but this was a deal breaker for me depending on the type of game you wanted to do.
About the Unity documentation: I just would not let a single Unity-piece to go through the code review until the related properties have Tooltips on them. This is be the bare minimum. Nowadays... not even docs, but the properties lack of useful information in several (if not the most) cases.
Great video! Thanks for that. All here were just like my own thoughts.
Unity is ran by corporate execs who don't care much about it and really only care about making money. It's getting worse and worse with every release.
I recommend switching to Godot if you can. It's still behind on some things (not as easy, not as many tutorials, 3d isn't as good) but it's licensed under MIT and improving a lot with every release. Plus you don't have to pay a massive license fee and you fully own the games you make with it
This is inspirational, thanks. I started in Unity but got overwhelmed and mostly ignored new fancy things. Thank you for doing the research. Now: Back to the game!
Thanks in giving some pragmatic feedback and some in the context of an RTS game. It's another world with other challenges. Also, nice to see the u guys have success in a very competitive market ... Nice job!
Really good job explaining complicated things with some dummys,im kinda new in gamedev and it makes things easier to understand.Thanks!!
I was going to college around this time and actually toured the Unity offices in 2017 during GDC, the year you're saying all this started. They had just unveiled "CineMachine" I think and they had all these people talking about how Unity was going to break into the 3D animation scene and try to become known not just as a game engine, but an animation engine as well. I'm not an artist so idk if this ever really happened, but I think Unity was trying to become more versatile in ways that didn't just involve games. Out of everything I wish they would go back and update their NavMesh engine, because it's actually really cool and easy to use, once you spend years of your life finding niche plugins to make it actually usable. But I've made some AWESOME stuff with the NavMesh like a hex tile game that also has square tiles integrated into it. All their cool tools they make they kind of abandon and it's sad.
Yeah, Navmeshes. Also the guy in the video is correct. Everything is is abandoned or in preview. Now I spend much less time in Unity than before
They just updated the Navmeshes for 2022.2
They've tried to break into 3D animation/movies with The Jungle Book and Lion King but lose competition to Unreal, which was used for Mandalorian and now is industrial standard.
Unreal is just better for HD.
@@Knuckles2761 the incompetence of unity company is unbelievable
Great video and good overview of where we are at with Unity! I love when you do more Unity related videos, cant wait to see whats up next for the Imphenzia channel now that youre back in the game! (P.s. Even though youre now down under, i love that you still have your swedish awkwardness, i was literally laughing at the bulging pocket XD)
Your video quality has increase so much since I started watching, well done Imphenzia!
Thanks for putting my thoughts down in words.
What should have mentioned IMO is the inevitable dependency chains you need to manage when you have different versions of Unity, packages, plugins, tools, platforms and operating systems. Especially on mobile it is a real problem, and more fragmented Unity has become, the more difficult it is to manage.
It's not nice when in order to update a plugin you end up updating Unity version, xcode, and your operating system, at the same time breaking two more plugins or packages 😭
Thanks for your videos. I started thinking on make a game, with Unity/Unreal ... then realized I needed some meshes... started Blender with your "10 minutes" series and now I want to mix all this in one useful game/program... I don't know exactly what to do ... I will see how you do and try to get inspired. Good luck in your new home.
UPBGE also exists as a cool tool if you're used to Blender already. Engine built directly in Blender using Eevee for the rendering.
Awesome overview for the current state of Unity. I truly appreciate it. Our project has been on hold for quite some time now and we are planning on developing it again soon. Thank you for this! Much appreciated!
The video is very helpful, thank you! One thing I wanted to note that I had been really reluctant to click the video because the preview image looks like a clickbait
Thank you for the Deep-dive!
I was seriously thinking of Multiplayer.
But i think i'll wait since this is my first game.
I've used Unity since 2012 and everything is much more difficult now and the engine has tried to do everything for everyone. The render pipelines specifically have been a gigantic headache, with URP especially breaking massively with each major version update. As an asset developer, ouch...
I used Unity on and off from the time Unity 5.6 was around to Unity 2019. I didn’t know anything about coding or how the engine works really at the time. I was mostly just playing around with the interface and placing things in the world at the time. Picking a renderer pipeline wasn’t difficult or confusing because by comparing them I just went with URP because of better performance than Built In and I want to make games for mobile and PC, and features such as the VFX graph and the localization tool to make it easier to add languages to your game. For networking, I went with FishNet. I used to use Mirror but after switching over the FishNet I never looked back because a lot more performance gains and they simply a few things that you had to do by hand in Mirror. So far I’ve never had any issues with Unity even though I am making an Open World Anime RPG game. It has all the tools to get the job done
Godot 4 still beta but support importing blender files like butter and super lightweight.
Also has 4x lower 3D performance.
@@comradekenobi8146 in that case if you want AAA graphics unreal 5 is way better than unity. Godot will get there in 1-2 years and is much simpler for indie dev. Unity is not good option anymore imo i used to love it as well im not godot fanboy. And for 2D godot really beats anything atm. Unity focusing alot on being other things than game engine and wants to make everyone happy and fails.
@@imaginaryash1807
My first pick about a year ago was Unity, but it was a bit more complicated than I wouldve liked and it wasnt what I hoped for. I didnt have a good pc for Unreal or Roblox Studio, so I went with Godot.
I never regretted my decision.
@@dr_mafarioyt4313 i dont know what it is about godot... But it is fun when i work with it. Unreal and unity dont have the joy i exprince when i use godot. It feels like im playing minecraft more than doing game develope 😁
@@imaginaryash1807 I think there's still a niche or two where Unity is better. The asset store is actually super versatile as well; I could spend a year developing a 3D map rendering tool for the grand strategy game I'm working on, or I could spend $100 to buy the WorldMapStrategyKit asset and spend that year developing and debugging my core mechanics. The same logic exists with other aspects; I could spend $50 to buy an XML UI framework to allow my UI to be moddable, or I could spend 1 month developing and debugging my own. I could spend 2 months developing a graphing framework to show in-game data to my players in an intuitive way, or I could just buy a pre-existing graphing framework.
Until or unless Godot has many more extensions than it currently does, it remains an inferior choice for larger/more complicated games that don't quite reach into the Triple A field, but where development would still benefit from offloading some of the more technical aspects to either the engine or an extension made by a dev more experienced in those aspects.
Your over-one-hour Blender video and your "Can I" platformer were very impressive.
Thank you for scaling and extruding with us and showing us how to be very productive in only 10 minutes.
Great video, great topic, great analysis, great animation. Glad to see you back online.
Great video! I'm kind of in the same boat, currently still using Unity 2018 but it might be time to check out all the new stuff. I wouldn't necessarily recommend HDRP actually, as URP is for most cases the better choice - even for PC only games. The effort for HDRP compared to URP is quite large and us "normal" indie devs probably don't have the resources to even create the necessary stuff to really make use of HDRP.
Heeeey, you're back! (I just checked and noticed i missed 2 videos, but anyway). Welcome back!
Nice overview of the past few years! Great video!
The bit about documentation reminded me of when I found out that one of the pages I was using related to shaders just straight up had wrong information. Like I needed to use a built in unity texture for a shader I was writing, but none of the default textures listed on the page would've worked for what I wanted. I then manually tested it myself and found that the textures in-engine were different than what the documentation said they would be (and cause of that there was one that suited my needs). Can't imagine that happens often, but I still find it funny that it did
Absolutely great walktrough into the new features of the Unity. Well done.
What an EXCELLENT review ! THanks
From minute 13 to minute 16, you simplify what can / can"t be done ...
I think that it would be very, very! intersting to ask why we can or can't do something with a render or another? :) Be the voice of community, please
Hi! I really loved this video, and I hope you make more talking about Unity. (I didn’t see a lot else on your channel.) Just some feedback for you, great video!
Mycket bra.. håller verkligen med om allting du tog upp i den här videon.
loved the little animations in this! enjoyed this video 👍
thanks so much for helping everyone out. Your work is greatly appreciated on all fronts
I feel that Unity is more of a modular engine nowadays, which of course requires some understanding in order to get what you want out of it, but I agree with many problems that you've pointed out. Still, working for a small company as I do, I've also learned that we can just ignore most of this stuff and do games the way we were doing before. I keep trying the new stuff on personal projects and bring to the company only what I think I can benefit from. Thank you for the video!
Yes, I agree with the modularity and also what you say. Try to identify the most suitable modules for your needs and it is an extremely good engine still.
"I've also learned that we can just ignore most of this stuff and do games the way we were doing before."
As a developer who sucks at art, this for me is my biggest con. I think it's a huge problem that Unity has yet to offer something new that is "too big and important to ignore". I want a shake up. I like familiarity, but not when it causes stagnation.
Nothing over the last 5 years has really changed the potential of what I can make, where as I look at Unreal Engine 5.1 and envy the kinds of new things it let's non-artists like myself do.
I don't want to leave C# so I'll never switch. But I'll also NEVER switch to ECS/DOTS and Unity need to understand that most developers think similarly. I shouldn't need to completely re-learn how I think about game design in order to utilize some simple new tech.
I work on physics-based games, and ALL new physics technology only supports DOTS. Fuck you Unity.
Unity is in a very rough place right now in terms of the future outlook.
@@bobbygriz1920 What you’re refusing to understand is that the change to *an* ECS, which is the architecture underneath everything, is all part of *how* the competition can offer what it offers.
Hopefully, you’ll get more accessible interfaces to that stuff when it’s out of dev hell, but there’s no clear path to instantiating a shitload of GameObjects or doing any of the high-speed, high-fidelity physics you crave with the “old” (existing) tech stack.
I will grant you, however, that this is with respect to the ECS a totally legitimate gripe, it’s just not something anyone can really fix. This is a paradigm shift and it’s coming like a train.
Some of this other stuff, however, really does boil down to folks needing to engage more with what you’re doing.
The package manager is not some mystical alternative way to install free components. It’s a really basic thing that programmers need and have been begging for this entire time. The “networking issues” aren’t networking issues if the person in charge is competent enough to use a third party networking library, but *gasp* it may but also might not be on the asset store, because it’s code, and code comes in packages from just about anywhere else. I could go on.
You guys are complaining, there’s really no way to sugarcoat this, you’re complaining that you have reached the limits of what you can do without learning what you’re doing. You don’t need a four year degree in software design, nor to become a programmer, but you need to engage a little bit with what these things *are* or you’ll be mystified for the rest of your careers.
@@chancencounter5014 I have 15 years of software experience. My complaints are not from inexperience lol.
@@bobbygriz1920 They’re from inexperience with what you’re doing, though, or “fuck you, Unity, I need more accessible ultraphysics” wouldn’t sound rational. I know it sounds harsh, but it is what it is. You can’t get what you want by treating the engine like a Lego set anymore.
What a breath of fresh air. Thank you for this, I couldn't believe how grounded your analysis was. Love it!
This is the best breakdown of the current state of play that I've seen, great vid thanks!
Great video - Just what I needed to see.. I’m fairly new to unity but all your points address questions I had + confirms I’ll likely go back to UE and save the headaches :)
I love building some editor tools for my games. In each game I make (none for market atm.) I build a custom editor tool and which tool I make depends on what that game will heavily focus on. For example, currently I am making some dungeon exploration type game with lots and lots and lots of weapons (like Enter the Gungeon) and I made a custom weapon editor tool that loads all my weapon scriptable objects, allows me to edit them, closes options depending on my toggles, etc. It is a life safer and it only took 1.5 weeks to create. No longer do I need to go script by script, I just open the editor tool and I have names and images and can adjust everything in there.
Before I started doing it with UI Toolkit...it was such a pain to create the editor tool. Now, it's so much fun with... Takes a lot of time to make one but if it is a serious system for the game it is definitely worth it.
Yeah, using UI Toolkit for our editor UI has been a life saver too. We have a custom animation framework and sprite editor, and a terrain editor.
In game... I wasted a month of my life and two months of my teams trying to force a circle into a square using Ui Toolkit which is not, at all, ready for Runtime outside of the most simple UI possible.
9:44 So CPU intrinsics is a very interesting and cool thing I learned about a few years back.
A lot of times when people talk about "CPU intrinsics", they are talking about another thing called "SIMD instructions", but really it's more than that.
But the gist is that, #1, your computer has MANY different ways it can "run faster" other than just clock speed and core count.
Normally, CPU's will perform operations between single pairs of data, one at a time. So like A+B, then C+D, but you could get performance gains by doing both A+B AND C+D at the same time (a form of parallelism). And that is what SIMD is about (Single instruction, multiple data). But not all CPU's have the same sets of instructions to be able to do that. So the idea is to compile code into a compatible form, but doesn't take advantage of the "faster instructions", but then when the game runs on a persons machine, it says "hay, we can use these faster instructions", and then uses them.
So that is **basically** what intrinsics is about. It's a bit oversimplified though. But the idea is that you want to have a system that will allow a game to use the "intrinsic operations" of the computer it is running on, to maximize performance even more.
As a final remark to how fascinating I find this... Instrinsics/SIMD find most of it's usage whem it comes to Vector math (A,B)+(C,D) because if what I said before.
You may have a CPU with 8 cores, which means 8 levels of parallelism, but each core will itself have access to SIMD instructions, which it may not always use most of the time. But imagine multithreading code that basicaly does a bunch of vector math. That means you could get effectively 24 levels of parallelism just for that code (8 cores * 3 dimensional vectors). There are literally parts of our PC so few people know about that actually make them faster, our CPU's are being underutilized in so many ways. And it's important as programmers to make sure we leverage as much of the CPU as we can. Because those resources are available.
Thank you for explaining! 🤙
god the network code.. forgot about that, put it in a dark place in my mind and only now resurfaces haha I do recall revisiting unity after a short break to find ECS and 3 render pipelines to wrap my head around. Definately shook me for a bit.
Nice video i enjoyed it
Great review and great advice. You earned a subscriber.
Very useful information, thank you!! 🙌
This was a fantastic overview of the quickly evolving state of Unity. Just bravo! 👏
i will come back to this video and this channel . this video helped me a lot
Fascinating watch, thank you! :)
This video is genius. You break down very complex wording and procedures into very understandable topics, so I can make my own informed decision about changing engines or not.
These complex jargon made me feel so apart from Unity, and now I can understand what and why it is like that. Thank you very much!
Hi. Great summary and update. Thank you. I am wandering why you did not put Photon in the list of networking facilities for Unity. Apparently it is pretty popular among newbies.
I don't make games, but I love listening to Imphenzia.
This was a fantastic overview of the quickly evolving state of Unity. Nice job!
Wow thanks so much for going over all this for us. Still enjoying Line War almost daily. Are we getting carriers? :)
Unity started as a proprietary engine created by the two founders who created it for the game they were making. They decided they didn't know how to make games, but had this engine they built sitting around. Well, why not sell the engine?
So, they released it to the Public, and the rest is history. Well, it's growing pains are well known and... heh, Epic. This is what happens when you abandon your dream, and go with plan B, which was never a plan, until plan A was unhappily abandoned.
I call Unity the "Reluctant Game Engine", because, it was never meant to service large segments of the industry - it was built for one specific very small team. Sure, many talented software techs have expanded, adapted and manifested the engine along the way into the commercial level engine it has become.
Still, Unity always, without fail, ends up where it's lost again and trying to find itself. Hence, we get these bizarre directions taken with the engine. Everything from ever changing convoluted licensing machinations, to the items mentioned in this video. Unity always has been, and renders itself as that it always will be, a concoction of forced ambition, strained cohesion and spastic pedestrian level vision for itself as an industry tool.
Just a thought, have a great day. ;)
Woah, you've set the words I had a long time in my head
Very useful info! Thank you!
The problem is, being the "beginner engine" can't bring in any money to pay the engineers salaries to even keep the engine going. Beginners generally spend a grand total of $0.00 on Unity, so it's not something that would survive. You can't run a company on debt forever, only the government gets away with that because they control our currency and just make us all a bit poorer each year to keep the cycle going. Companies actually have to pay, though, or they sink. And Unity did what a software company needs to do to try to grow and innovate. That doesn't mean they did everything perfect, there's lots I can criticize, but trying to just stay as a cute little "beginner engine" was a path toward death and obscurity.
That being said, nothing is really all that complicated except the new ECS/DOTS stuff, it's more advanced concepts (still, not super hard, just constantly changing and not consistent) the rest of it is just a lot of things that seem bigger and more confusing that it actually is. If you have no idea what you're doing, just open Unity and use the built-in pipeline. People who know what they're doing use URP and HDRP and the specialized packages.
And I hate all the Unity UI stuff, performance is sketchy at best. I went and got NoesisGUI which is a professional XAML-based UI system that works for all game engines (or even without an engine). Noesis is not simple, but it can draw huge UIs in all kinds of powerful ways and barely even uses any GPU or CPU resources to any noticeable degree -- it's so efficient it's like it's barely there, and you can have proper data binding and fully control everything.
For the first couple minutes I thought this was a 30 minute rant on Unity but you actually did a deep dive into everything that was criticized and I greatly enjoyed it. Thanks for the content.
Glad you mentioned Unity documentation, which is completely unusable at this point. Literally 90% of google results on the unity docs page are old pages, which would be fine except THEY DON'T GIVE YOU A LINK TO THE NEW PAGE despite telling you it's old and shouldn't be used. What the heck are they thinking?
IKR 🤦♂️
I'm one minute into this video, and what you're describing is exactly where I'm at: I've worked with unity (simple, but commercial products) in 2018-2019, but then "real work" drove me away from game dev. For the last few days I'm trying to wrap my head around Unity's current status and if I should bother trying to refresh my knowledge or just go ahead and download Unreal instead. Thanks for the video!
Go with 2
Great video, very informative.
It started a bit dramatized/cynical but the rest of the video was amazing and an objective overview.
Unity desperately needs to have their own large scale production in the same way most other studios use their own games as testbeds for their engines. Unity claims that certain features are “production-ready” but how would they know when they’re not using it in production? They’ll put out a tech demo every now and then but that’s nothing like building a full on game, and doesn’t stress test anything other than the renderer. This is all easier said than done, of course, but I do think it would solve a lot of the current issues with Unity.
So true.
That's what Gigaya was supposed to be but sadly it got cancelled
@@stylie473joker5 Honestly I completely forgot about that. The project was gone as quick as it arrived. 3 or 4 months from announcement to cancellation has to be some sort of record lol.
It’s a software product. They need more product and ux people, or they need to listen to the ones they already have. You don’t make these kinds of mistakes if you do user testing and proper product work. Unreal is great but it’s also a nightmare to learn or to do things that aren’t similar to what epic is working on from what I’ve read/ heard
@@someghosts Unreal can be complex, but I just find the whole workflow to be much more intuitive. Unity’s single prefab workflow is a major limitation with how you interact with the program in larger projects. They both have their own strengths, but for large productions there’s no doubt that UE is much more conducive to that. Its biggest downfall is how they set up the game tick. You either have to lock your framerate, use a variable framerate, or use substepping, which are all not great solutions. Without editing the engine source or using third party solutions like Havok, you have no option for a fixed tick + variable framerate. At least as of UE5.1, it seems like they’re finally addressing this officially though.
Thank you for going in depth in this. I've recently switched to Godot simply because it started to feel like Unity had a lot of bloat and little support. I don't think I'm fully convinced to switch back to Unity yet (mainly because I'm still a beginner), but it does feel like Unity is back on track to delivering what developers actually need.
The demos from Unity take like minutes to load... Sooo much bloat dude, in Godot they literally open in 3 seconds
@@DooMWhite Minutes? lol
@@DooMWhite IKR
Same here. It feels like 10 or 20% of my time was troubleshooting packages and figuring out what changed, rather than building my game. After switching to godot, I'm 100% of my time
building it.
But you can't publish to consoles with Godot?
Great Video! I agree, Unity can become confusing at time and have those features stuck in preview is frustrating, BUT... is it not great to have so many options available to create games as we please? The new UI Toolkit system is a good example. Nothing forces us to switch to this one but the way it has been design can appeal to some creator with Webdev background. I personally enjoy using it. DOTS is clearly not for everyone, but it's refreshing to learn a new way to create games. Your video clarifies the situation and help newcomers to navigate and choose the best tools for the right situation. Thanks a lot for that!
But it makes everything harder too. Because they stop developing something and start a new feature and everything makes you feel this engine is not completed.
You may not realize it, but it comes at a cost to the old system. I'm pretty sure they've said that they're not adding anything to the old UI system, just fixing bugs at this point now that they have their new system.
Nice content, nice drawings, nice video! Thx :)
PBS Terrain and Decals are possible in Built-in. Either by writing your own shader, or getting a solution from the Asset Store.
This was a really deep analysis. Thanks for this awesome video.
Unity recently announced a combined URP&HDRP workflow in the same project (it’ll automatically adjust based on target environment) - this will be a game changer! (If they can actually make it work seamlessly :)
Should've been like this from he start tbh, changing te pipelines should never been such an ordeal as it is now. And they should allow HDRP to be built to mobile chips, they are getting more powerful and eventually they will be able to run HDRP.
I can't seem to find where they announced this, do you have a link to it?
@@t0benai Unite 2022 Keynote - "Create Immersive Graphics" -> ruclips.net/video/wdmiPPjcBSA/видео.html
I seriously recommend everyone here to watch that last keynote - it looks very promising in the sense that they've regained their focus for us game/XR creators
That should've been the default from the beginning. Separating URP and HDRP was a massive mistake.
Such a good video! Thanks for making this
1) We need a video on how to make this video (draw style --> which tools do you use)
2) Make an ingame lobby/chat for linewar
Great summary, much appreciated!
great work, thank you for your explanation
16:05 How do you do that? With the strings and stuff? I've seen that a few times, but can never find it.
Great video, thank you! 🙂
Hehehe “this sounds like scope creep” 😅
I love all those tiny animations you made 👍
Great video. Thanks Stefan!
I have the exact same experience with xamarin/Maui.
Undocumented features, you need to reverse engineer and read several GitHub issues plus code and try-n-error to understand how they work.
It’s a big pita.
I’m amazed how calm you are.
These kind of bad docs infuriate me 🙈
I am really taking a hit with the lack of documentation for the new networking, well said
Hey @Imphenzia I'm really interested in your own infrastructure how you guys setting up virtual machines and stuff can you please make a dedicated video on that??
What I like about Unity is how easy it is to extend editor functionality.
But when shadowmaps have gaps and holes, when spotlights have wrong distance attenuation calculation, then you start to wonder why such basic rendering features aren't done correctly and how big part of the engine will you have to replace with custom code in your product.
It seems to me that since they decided to go public, they're more in a pursuit of "flashy" and "showcasable" and less so on foundations.
Unity has always been this way. The new CEO from EA Johnny Ravioli actually helped to stabilize the engine bc the previous CEO was far worse.
I am generally really happy with what unity is bringing to the table, however with all of these new features it can easily "clutter". For me it will feel like unity will be more aligned with my gripes I have with Unreal, so many features that are just in the way (that you just have to override in some situations) and poorly documented stuff.
Multiplayer: if possible try to make a game where servers can be hosted by the players themselves, and you only need to provide an active server-list. And that the game can have a singleplayer mode (against bots, or the world mechanics, or a proper singleplayer campaign)
Unity definitely drastically changed back in 2017. Heck it's evident even by the naming conventions. Before that it was using a version number (like Unity 4, Unity 5.5, etc) then suddenly it switched to using the release year in the name (Unity 2017, Unity 2018, etc). I used Unity 5 for several years during this phasing because I had ongoing projects (it's not usually a good idea to upgrade to a whole new version in the middle of production unless you REALLY have to). I went from Unity 5 straight to Unity 2020 and the difference was radical. It's still a good software though (even better in some regards) but one huge setback I've noticed is that it's alot heavier now even in an empty project, than what it used to be. It's full of bloat you cannot get rid of and you'll find yourself stuck with loading bars quite often. Back in the day the software felt really lightweight, now it feels quite slow and somehow sluggish.
Good point i even forgot about it.
But now i recalled how unity started up pretty much immediately back in the day, now its few minutes wait
hello and happy new year
I can't decide if it's more complicated for someone starting now or for us working on Unity the last 10 years constantly changing methods.
I think its definitely more difficult for noobs.
We pros can easily adapt, programmers use and learn new apis whole life anyways
I've never found anything in the Unity Asset Store that wasn't either HDRP compatible or able to be converted to HDRP. If you don't know how to convert materials then you have more to learn before you worry about which pipeline you use. Pick the one you want to use and learn what you need to if you have to convert something. You can even buy from the Unreal store and convert it. Better Lit Shader by Jason Booth has a handy texture packer. Invert roughness to smoothness, pack alpha or height maps into albedo alpha, etc.
Dont buy anything from that arrogant pos
Would love to see your explanations on multiplayer
Everytime I check out DOTS and ECS, I find oh Animations aren't working in there. Done. Unusable and this is annoying. We use in my current game the Job System for Unit Flocking. A great performance improvement, but that's it.
UI Toolkit is just not ready yet, which is sad. I really like the approach. We do it like recommended. Editor Extensions we do UI Toolkit and Unity UI for Runtime. I hope that they will soon make the UI Toolkit for runtime good.
Great video, thanks.
Thanks, glad you agree coming from such an experienced background. The limitations have always stopped me from going past anything than primitive tests in ECS.
Wholly agree with the Netcode side docs, do note that Netcode also utilizes Unity Transport and you can gleam quite a bit from how that does things to how Transport APIs work, though this is far from optimal
As for UI systems, there's also fancy, new, but not so popular Nova UI - costs a hundred bucks, but I've found it much better than Unity UI, since it's based on it.
There's also a free version, which won't work in build, but you can experiment as much as you want!
Everything is better when done by someone else than unity
I've seen so many people move from Unity to Godot. Godot 4 is very promising and performance is very impressive.
Yeah I just moved to Godot 4. So far it's been a fun experience and I'm enjoying it.
@Lord Bailey Godot4 = fucking awesome, Unreal = really fucking awesome, Unity = pile of shit... only people who cant code love unity
@@uidsea yeah its a really well thought out design. Ive been using Unity but I think they've screwed themselves over the last few years. Thats what happens when corporate greed comes before customer need.
@@JohnnyCashOriginal it might be different for you
but im really happy with Unity and really happy with the things they are building and i have been waiting for this for a long time
i feel really disconnected when people say that they dont use Unity anymore or moved to godot and "Unity screwed" etc.
like i would move to something else by now if they didnt change
Unity literally made c# a better different language with DOTS that i cant think of any other better alternative that has same performance while having a good syntax and ease of use, and i like how it forces you to write good code
i would probably use Unity with DOTS for stuff that are not even a game, its that good
@@nomadshiba if it works for you then keep using it. I am often on receiving end of insults just because I dont use unity anymore. My work flow is so much faster with godot and everything just works and is logical. I know the attraction that Unity has and i bought into it a long time ago but since I prefer more control and better performance Godot or Unreal just makes sense.
how to download logic brick editor in blender
in my bar logic brick is not appearing
plz answer
That rts looks great!
Also finishing my 4 player Mahjong game, a Unity conversion of my objective c game. Unify was great for this I optimized it down to 15k odd lines compared to 30k for objective C. But no network code yet.
Hi! thanks for your video. What about Animation and Timeline sequencing?
17:07 off topic, but can anyone explain how he makes that ui window auto size based ont he text?
I know you probably need the content size fitter and the layout element components, but I never figured out how to set this all up. And how this would even work if instead of text, you have a bunch of rect's and images and you want to make sure the parent rect encloses all the child rects.
Currently learning ECS+DOTS. It is really a pain trying to figure out what every API does. Most of the time what you only have is the painful ECS Sample projects on github with minimum comments and explanation.
Save yourself pain and don't bother with any shit done by unity. Its pure incompetence.
How come you go from any kind of unity api to any other api jts such a huge relief
This make me want to use unreal blueprints even more. But love your videos
You said no multiplayer for the first game... well, my job is related to data transfer and communication via for example TCP connections. I already created a library with which you can transfer messages, files and whatever I want to implement. Now, ~1 years ago I created a framework for space traveling, meaning you can fly in free flight through the universe where stars (including giant stars) are visible to you. It uses procedural generation to create solar systems with planets and moons (I use my own algorithms for everything). Just some days ago I happened to create a hashing algorithm that is roughly equal in quality to xxHash, but ~50 times as performant (for taking 3 Int64 as coordinates and converting it to another Int64 used as a seed).
The biggest challenge was to make it all performant so that it works and as many stars as possible could be loaded. Oh and managing the issue with crazy orders of magnitudes of coordinates (using 128 bits in total for coordinates) and showing it in Unity which uses 32 bit floats. The generation and loading of objects occurs in their own threads, and it hands the main thread the objects to load and unload (also not all at once, but over time, with a little formula which loads more if the queue is bigger).
It all works. I also created nebulae... which funnily enough also needed sophisticated algorithms so that I could create spheres which touched each other, up to 2 others, so that I could create coherent sphere structures in various randomized shapes (cloudy, extensive, etc) which served to grant a background feeling. The spheres (points with radius) are then manifested as particles, which also shift to alpha 0 as you approach them.
I did not implement realism regarding orbits (they'd take months or years anyway, and when you are close to astronomical objects your relative speed would only be relative to the object, and who cares anyway) and vision based on speed of light (too complex, probably not a good feature anyway).
So I want to create this as a MMO. I have all the vision in my mind how to create a good gameplay that mostly revolves around combat and exploration, also having accrued enough views to know about a whole lot of potential issues (like being forced into PvP, having too low risks, having too high risks). So I need multiplayer. I think I could implement my own networking. I could even optimize it and minimize data traffic.
This is not planned to be just a first game. This is meant to be something with a realistic chance of success and a long-term project, so I take the time to do it right, even if only aside to my 40h/week job. It's quite funny, I don't do things like this in my actual work.
Can I follow your progress on Discord?
Great video Stefan!
As I see it, on one hand Unity is getting super complicated, has more bugs, is confusing to get started with etc.
On the other hand, sometimes you need to break stuff to make it better, long term, and I really HOPE this is what they are doing and why they are doing it and not because things are falling apart :)
I use Unity everyday and would pick it for my next game too, no doubt. All engines have pros and cons, pick the one that have cons you can live with :)
I like your new hand drawn graphics style stuff to explain things - guess it takes ton of time to make - but it really adds a lot to the video I think.
Keep it up! :)
So glad I am not the only one struggling with the documentation, especially with a lot of documentation directly related to many of their packages.. The fact that the package documentation is not in the same place as the rest of their api documentation is annoy in itself, but it's all so vague. Great example: Lobby / Replay - How to allow users to set their own region. The "codes" are not uniform, and even then most of the time the engine says the region codes don't exist. Yet there is not even documentation on what region codes to use since there are many different formats. I had to use the console to output what Unity was assigning the existing code and research the code types from there.. That's just one of a LOT of very poorly documented issues i've been dealing with lately.. They need to get it together
What a BRILLIANT video!
Strongly agree with almost every single point you said. Unity has become so over-complicated and unstable compared with earlier versions
UI Toolkit has some pretty jacked up documentation and the original premise of it replacing IMGUI seems unlikely. The binding system was made to separate logic from presentation code, but depending on what you need to implement, it would require boilerplate code. Simple data types can be bound relatively easily through the UI Builder, but I've so many problems with PropertyDrawers.
Thanks!
I said stop when Unity went Public in 2020. During 2021, I went searching for alternatives, and test them out. On 2022, an open source engine that I had left for last, Godot? What a silly name, I thought. I heard it before, knew nothing about it, and never had any interessss... OH MY GOD IT'S AMAZING! -- Unity felt bloated all the time, the long loading of projects, hell, setting a new project, took ages to start, thousands of files being saved into a folder... WHY? -- And then there's this huge Godot community, free open source, soon to be a foundation like Blender, completely committed to perfection, offering just one executable file of 72 megabytes, zero installation, and... it's unbelievable! Easy to learn, good workflow, scripting is so easy. Takes an instant to setup a project, or to load huge projects, to test, to export, everything is about the speed of results. Looking back to Unity, what a bloated horse sh*t! I seriously advise anyone using Unity to pause and check Godot on RUclips introductions and tutorials, specially from GDQuest and HeartBeast channels. You have nothing to loose just by checking it out.