As a beginning indie game developer, I was planning on working with Unity-then the news broke, and I’ve been lost since. All this to say, thanks for making this series, it’s extremely helpful to get input from an experienced Unity user on these alternate game engines.
@outsiderealmgames Жыл бұрын
Thanks for dropping by, and hang in there! You're not alone.
@SKC_car Жыл бұрын
hey there! I hope I can give u some advice, godot is pretty good to make easy/quick games, and for mobile games too; now unreal is more for computer/console gaming, id advice you to still learn c++ and c# (knowing c# will help you understand java) and learn python, it will allow you to work with gdscript; dont be afraid to learn and use the right tool for the right job, good luck!
@acewayne3838 Жыл бұрын
same situation here, after 4 months of watching Unity courses and learning C# I was literally about to start this week and for my luck Unity decides to destroy itself. 😪
@LeoFazio Жыл бұрын
Same here!
@sunbleachedangel Жыл бұрын
same, but I pretty much immediately knew I'll switch to UE5
@_Smash_ Жыл бұрын
Its poetically ironic how a program called "unity" so successfully unfied gamers everywhere against itself.
@niallmoseley6760 Жыл бұрын
Underrated comment lol
@XDRosenheim Жыл бұрын
@@niallmoseley6760 overused reply lol
@niallmoseley6760 Жыл бұрын
@@XDRosenheim doesnt make it untrue tho
@brianj7204 Жыл бұрын
@@XDRosenheim cringy reply lol
@korypostma Жыл бұрын
33:35 as a pro UE dev, the reason the position values are large because UE uses centimeters instead of meters, these are called Unreal Units (UU) and you can modify this if you want for your project.
@outsiderealmgames Жыл бұрын
Great, thanks for the information!
@OpinionatedHuman Жыл бұрын
FYI: Unreal always starts with a basic map with landscape and lighting because you would otherwise have a black preview screen and you would assume something went wrong. If you really want to start from nothing you have to create a new map in your project where you can choose blank map (for real this time) where you would have to add a light source to see anything. Also in the project options you would have to choose your new (saved) map as starting map or else on next load of your project you would be on that default landscape map.
@XDRosenheim Жыл бұрын
> you would assume something went wrong Not if you chose a _blank_ project.
@UltimatePerfection Жыл бұрын
> Also in the project options you would have to choose your new (saved) map as starting map or else on next load of your project you would be on that default landscape map. This is factually incorrect. You only set map as the starting map to have it be the first map loaded by the engine if you build your game. In the editor preferences (Edit→Editor Preferences) in the General→Loading & Saving section you can set "Load Level on Startup" to "Last Opened" which would always open the level you were working on when you last opened your project.
@Schytheron Жыл бұрын
Hi! Great video! Keep it up! As a UE dev (and former Unity dev) I would like to point out some workflow errors (not necessarily "errors" but interesting choices) you made when creating the actors and scripting. My UE knowledge is slightly rusty because I have not used it in a little while but improving your workflow will make future development a bit easier. 1. You seem to have accidentally created an "ActorComponent" instead of an "Actor". An "Actor" is similar to a Unity GameObject, while an "ActorComponent" could be seen as a script that you can attach to a GameObject in Unity. What you did isn't necessarily wrong, it can be valid depending on how you structure your game logic, but it isn't the most straightforward way to script an actor. There is one big difference between a Unity GameObject and an Unreal Actor (if my Unity memory serves me well). Unreal Actors can be scripted directly without attaching a script/ActorComponent to them. You can script an inherent base logic on the actor itself and then EXTEND that functionality by attaching a ActorComponent to it. Think of an Actor as a Unity GameObject that has a base script permanently attached to it upon creation that is unique to that GameObject (cannot be removed or attached to any other GameObject). So you could have just (and this is the "proper" way to do it) created an "Actor" class (not "ActorComponent") by right-clicking in the Content Browser (the content panel at the bottom of the editor) and then it would have created a class for you in VS which you could script directly (without using GetOwner() like you did in the video, as you are now scripting in the "Owner" itself as this object has no owner, it can only own other objects, ActorComponents in this case). What you did was that you created a StaticMeshActor which you then attached a ActorComponent to. A StaticMeshActor is a child of the "Actor" class and this specific class it just supposed to be a static mesh with collision. You are not supposed to attach any logic or extra functionality to it. The base "Actor" class is the sort of class you should be scripting (it's basically a Prefab in Unity with a unique script attached to it). The StaticMeshActor which you pulled from the side panel is not a "Prefab" (using Unity terms here), which you can re-use. It is just an object template that is not saved as an actual file unique to your project. All your custom code and assets should always come from the Content Browser. 2. You can't just take a C++ class and just drag it into a level/scene as an actor (a pure C++ class should never appear in the Outliner). Instead, you need to right-click your C++ class in the Content Browser and create a Blueprint out of that class (this is your actual "Prefab"). This blueprint will now inherit your custom C++ class and you can now freely drag this Blueprint into your scene. An important thing to understand (many people get this wrong, don't worry) is that "Blueprint" does not refer to the visual scripting part of Unreal Engine. This is called "Blueprint Visual Scripting". The "Blueprint" itself is the object that the visual script is attached to (when you create a "Blueprint" a visual script is attached to it by default). If you double-click any Blueprint in your Content Browser or some actors in the Outliner (the Outliner part is sort of hazy for me, I might be wrong about this one, the "Open Blueprint" button might actually be in the details panel), it should open a separate window that shows you all the details of the Blueprint/Prefab (properties, hierarchy/attached components, event graph [this is the visual script] etc.). This view is where as the actual functionality and usefulness of the Actor lies. Think of it like this: Actor = GameObject, Blueprint = Prefab (sort of). I would recommend you read this documentation page specifically made for people who are transitioning from Unity to Unreal Engine: docs.unrealengine.com/5.2/en-US/unreal-engine-for-unity-developers/. They can explain this way better than I do (it's made by Epic Games themselves). Honestly, it's kind of a mistake to start of by creating C++ project in Unreal Engine as a beginner. It is much easier to start with a "Blueprint" project (which you can later add C++ classes to, converting it to a C++ project, you are not locked to Blueprint-only in any way, even if you initialize it as a "Blueprint" project) to learn the fundamentals. C++ on top of that is just confusing for a beginner (even if you understand how normal scripting and C++ works). I say this as someone, who, just as you, started out in Unity and later transitioned to Unreal Engine. Sorry for the long text, but I hope this clears some things up.
@outsiderealmgames Жыл бұрын
This is extremely helpful! I was going to check into the equivalent of prefabs in UE, but you got me covered. Thanks for taking the time to write up this detailed response.
@Jdfskitz Жыл бұрын
@@outsiderealmgames on another note, there is nothing wrong with working strictly in blueprint visual scripting. It has slightly slower compile times, but when I say slightly slower, I'm talking milliseconds. There is nothing I have been unable to create while working in blueprints. The true power of working in c++ is your ability to create additional tools for the engine itself; but thats a very advanced topic that most developers never even touch.
@kaya_stu Жыл бұрын
iam going to presume that you typed all that with your fingers
@GasterLab Жыл бұрын
I would not say that C++ project is bad for beginners. You just need to know how to manage Blueprints first and how to expose variables to them. I don't like programming at blueprints. It's kinda annoying and creates merge conflicts that hard to resolve. Every logic that were written on blueprints can be converted to C++ and it will be more easier to manage your code hierarchy. I believe Blueprint programming and yet you need to differentiate Blueprint programming and Actor's blueprint themselves(Prefab Unity). Two same words with two different meanings. And I believe Blueprints were designed to be like a replacement to script languages like Python or Lua. So yeah. I would consider blueprints as an script language. My advice to not use OOD using Blueprints
@imblackmagic1209 Жыл бұрын
@SkitzSkitzVids you should avoid big chunks of logic in blueprints, they are slow (we passed our prototype logic from blueprints to c++ and the performance gain was noticeable) another thing is that hard references in blueprints make that blueprint way more chunky (memory requirements), while the same doesn't apply to C++ complex logic using loops and such is way easier on C++ if you're familiar with programming binding events and timers is way easier in blueprints online functionality is best suited in C++ as well
@GasterLab Жыл бұрын
1. C# equivalent of var in C++ is auto 2. Basically Actor is a composition of Components. Every Actor have a Root Component. So when you first attached your New Actor Component to an Actor it was actually attached to the Actor but not the Root Component. So that's because it was under the line. You can't drag and attach UActorComponents to the Root or Other components. You basically need to create a component that derives from USceneComponent. Basic ActorComponent doesn't have any Transform relative things, so that's because you can't attach to any other components 3. Unreal Engine is a complex engine. I mean in compare of Unity or Godot. So when you learn more about it you gonna say - that with this engine it is way more easier to develop then in Unity or Godot. So yeah. Just because of that complexity on first look you think it's hard to understand. It's just have far more fundamental features in case like for example AActor in compare of GameObject in Unity. You have organized hierarchy of how do to things and you have far more functions to control when you actually want initialize your Object variables and etc. And it's an open source Engine, you can basically rewrite everything 4. So yeah. BeginPlay is after all initializations. You can override PreInitializeComponent, PostInitializeComponent, OnRegister etc 5. Documentation in Unreal Engine not very good I would say. So to understand more features I would see a source code, put a debug breakpoints and see how different features are working with each others. And source code is far more documented btw then in the website. I would only look on the website when I wanna see some fundamental things like Actor Hierarchy and Actor Lifecycle etc. There are not much things about specific features about how exactly this thing or another working 6. VERY GOOD ADVICE - I recommend this channel @AlexForsythe - you will have a beautifull first glance on how to work with Unreal Engine, particularly last four videos
@milkman2516 Жыл бұрын
For #1 not necessarily, auto has a lot more flexibility beyond the local scope in c++
@GasterLab Жыл бұрын
@@milkman2516 Equivalent doesn't means equal, isn't it? 😅 It's just a quick advice.
@milkman2516 Жыл бұрын
@@GasterLab I guess… to an extent..? Odd word I don’t like
@milkman2516 Жыл бұрын
@@GasterLab sry if that came off wrong
@TressaDanvers Жыл бұрын
@@milkman2516 I think Gaster meant that `auto` has the "equivalent behavior" of prompting type inference as `var`, as opposed to directly stating the type. Any other behavior of either keyword is coincidental, since they are interchangeable for the intended use of "infer the type of this variable".
@hristozafirov7110 Жыл бұрын
I started in game development directly in UE4. Now I'm moving on to UE5 for my next project. I'd say it is really beginner friendly for someone who had zero experience in game dev. I love it.
@bungusgaming2538 Жыл бұрын
so crazy seeing how 95% of unity developers are now abandoning it
@vitorcarvalho6006 Жыл бұрын
I am in the same Boat 10+ years of Unity experience and i am switching to Unreal once my current project is finished
@jacobhuppertz5625 Жыл бұрын
The damage that Unity caused will be very near irrevocable
@koopa_knight Жыл бұрын
Not so crazy, as nobody can ever trust them again
@liquidsnake6879 Жыл бұрын
Can you ever trust such a company that even attempts something like this? Trying to retroactively bill people for stuff they can't control and never agreed to? It's just galaxy level greed and Unity deserves to go bust over this as a warning to other companies (Like Epic) who might be thinking about doing similar things. I really think people should just be using Godot for most indy projects and if you get popular enough on PC then pay the 3k to a company for porting it, it's an honest one-time fee, you don't have to pay them again and you'll get your game on a console all the same, it's a fine use case for crowdfunding as well
@grixxy_666 Жыл бұрын
Unity fukt around, now they are finding out
@antonionii Жыл бұрын
The way you did this is akin to a UX designer's/researcher's Usability Test. Great stuff
@officialnickname Жыл бұрын
Short summary: Unreal coding UX is baaaad
@XDRosenheim Жыл бұрын
@@officialnickname Imagine making a _blank project_ that is not blank :p
@SirRebonack Жыл бұрын
@@XDRosenheimIt was blank. That was just a default level that wasn't saved anywhere in the project. Hence the "Untitled" level name.
@MonsterJuiced Жыл бұрын
This was so charming to watch as an unreal main user. Youll love the networking aspect, it's mostly automatic with tick box replication lmao have fun and I will enjoy seeing your next video :)
@RobertVari Жыл бұрын
I would like to welcome you on the Unreal side of game development. Just an advice: Blueprint is perfectly suitable for most of the indie games out there so you don't have to start a C++ project (Editor launch much faster with blueprint only project) Later you can still configure your project as a hybrid (Blueprint-C++) project.
@romannasuti25 Жыл бұрын
Also, if visual coding using blueprints becomes a headache (totally understandable, it can get messy fast), SkookumScript is a gaming-specialized async scripting language that can be more performant than Blueprints and is a normal text file.
@bitffald Жыл бұрын
Unity also has visual scripting
@stylishskater9210 ай бұрын
The only reason im not switching to UE is because of Blueprint, and because the programming side (C++) has terrible to no documentation and very little resources. I hate Blueprint and any visual scripting with a passion, but Blueprint especially. I have been developing and designing software for 14 years and yet i couldnt wrap my head around Blueprint instinctively - especially since once again.... tutorials are usually 1. outdated by the time you find them or 2. so basic they dont help you with much or 3. so specific that you cant take much general understanding from it. That was my experience trying to get into UE a year ago. Insult to injury is that they need togive many things their own special names in UE, which are all called the same thing in all other engines or in general game dev terminology. So even if you understand generalized components and systems, its not intuitively. You just have to know everything. Also, having to create and plug 6 things together for an extended if statement (especially with special parts once again you have no idea of) instead of just writing the line of code is beyond me.
@arthurbulhak1266 Жыл бұрын
Welcome to Unreal! From a friendly UE5 game dev - development on this engine feels sorta like Dakar Rally. You have to plan and prepare a lot in advance and everything you planned will fail, everything prepared will break. However, as soon as you figure out the flow, the pipeline of yours, sheer number of automated and drag n drop/visual interfaced stuff will make you soo happy to prototype. You will be basically playing big kids Roblox. With all big, hard shader/light/LOD/streaming/networking stuff taken care of :D
@Flowerpot2905 Жыл бұрын
Ahh that was brilliant. You are obviously way more advanced than me - but I was SCREAMING for you to hit the "Movable" button. Thanks - very informative to see your approach.
@azizkurtariciniz Жыл бұрын
So interesting to see someone is trying to figure out how Unreal Engine works haha. I've been using UE for like 8 years now.
@flagrama Жыл бұрын
Seems your experience with c++ is with the 2003 standard. Unreal supports the c++17 standard which builds upon the c++11 and c++14 standards each which have added more modern features to c++. I definitely recommend getting familiar with what the newer standards have added as it makes working with c++ much nicer.
@thavrisco1632 Жыл бұрын
Unreal is actually making C++20 their default
@flagrama Жыл бұрын
@@thavrisco1632 That makes sense. I seem to remember seeing some engine stuff that sticks to c++17 because it doesn't compile with c++20 or something, but that probably doesn't affect the user's code, just those particular engine pieces.
@NeytozINF Жыл бұрын
Hey! Good to see you trying Unreal Engine. I have few tips: If you want to have a mouse control you can use Simulate instead of Play, you can change it by a little arrow next to Play button. There, you can also change so that Playing doesn't move you to PlayerStart location but instead uses editor camera location. BeginPlay is called when actor is created and completed its initialization. If it was on the level from the start then it happens to be at the game start. Default unit is cm that's why it was moving so slow :D 1cm/s When flying in the editor with RMB+WASD you can use mouse wheel to modify flight speed. Good luck with Unreal
@scevvin7788 Жыл бұрын
Dude the Unreal Blueprint system has been amazing!
@baitposter Жыл бұрын
Looking at 5.3's new features, this is actually the perfect time for the switch. The _Nanite_ stuff is pretty exciting.
@minhuang8848 Жыл бұрын
Or PCG, their procedural generation stuff is still pretty early and changes fairly wildly between versions, it seems, but it already does so much at a pretty abstract level and allows one to easily populate wide landscapes with foliage, meshes, anything. Their destruction and particle stuff is great too, in fact, all of it is pretty nifty in its own regard. UE is just a really great engine.
@FlockersDesign Жыл бұрын
Not really if youre a UE level designer you know that its not that exiting doesnt change mutch
@FlockersDesign Жыл бұрын
@@minhuang8848PCG is terrible and not recommended to use yet
@baitposter Жыл бұрын
@@FlockersDesign A lot of people will not be existing UE level designers, given the mass exodus from Unity. Plus, if you can't see rendering triangle counts irrelevant as at all exciting, you lack imagination.
@FlockersDesign Жыл бұрын
@@baitposter that has 0 to do with the state of nanite and pcg's and lumen Plus people will see that even with the unity changes thr are still cheaper over there than with UE
@jarail Жыл бұрын
I'm invested! Now I need to see you continue learning UE!
@BooneyTune Жыл бұрын
It's exciting to see someone with so much experience in game dev use Unreal Engine for the first time. Subscribed
@maxn6641 Жыл бұрын
Great to see a sequel!
@ewwitsantonio Жыл бұрын
I just did the same thing a couple nights ago. Tried out the blueprints instead just to get a feel for it since I never do visual scripting. Just gave myself a similar task: use the 3rd person controller character, and jump on a cube that I made. If there's a collision between the two: change the cube material. Was fairly easy to wire up! It's gonna take a LONG time to get into the flow enough to plan out a large project the way I could in Unity. We'll see!
@michanik007 Жыл бұрын
Hey! I love this series because it shows the raw first experience coming from another game engine , which is always really interesting to see, and I think it also helps a lot of people. I think it would be *interesting* if you'd try out GameMaker Studio 2 next!!
@slackingveteran Жыл бұрын
30:39 Recent versions of C++ allows you to do define auto variable like so: auto newPos = FVector(x,y,z); Though I only prefer using that when quickly getting some proof of concept done and then will change it to FVector newPos = new FVector(x,y,z);
@FootPrint.Studio Жыл бұрын
I don't know much about the larger Unreal community, however my experience with smaller discords is that there are many very helpful individuals who have helped me as I continue to learn the engine. Either way great to see you giving Unreal engine a try! I'm no expert but throw a question my way... and I'll probably throw it to someone else, but I should be able to get you a satisfactory answer eventually. Also, I found the video format very interesting, sometimes frustrating, but still enjoyable watching someone "feel" their way through the engine. Granted you have experience with game engines already, but I couldn't image I would have done nearly as well, at least the documentation is fairly solid for the basics. Also, also, I know nothing about c++... so don't ask me about that, I'm relatively well versed with using Blueprints though.
@FlfyCats17 Жыл бұрын
"Is this a subset of terrain? I think it might be a subset of terrain? Let's find out by deleting it!" - the most game developer phrase I think I have ever heard on youtube
@peacefusion Жыл бұрын
You have to be gentle when using Unreal. Lots of items carry lots of data like when you open and view them. So organization is your bestfriend and roadmapping your goals is important once you begin imports, exports, blueprints, level blueprints. So remember to keep a backup.
@Diddykonga Жыл бұрын
Seeing someone try to understand the clusterfuck that is Unreal Engines structure, is very amusing and also Aware inducing. If you ever want a full breakdown of UE, let me know.
@retronaut8864 Жыл бұрын
You know this is legit the 4th or 5th video I have found where someone tries to navigate UE5 without any prior knowledge and I really wouldn't mind finding a perspective video from someone switching from Unity, but AFTER maybe learning their way around in UE first. I *do* actually want to look into it in an efficient way, and not just through trial and error. It does seem to be a popular video format lately though, just blindly trying to figure out Unreal (and I feel like this and Cry are probably the two most complicated engines out there, so it seems a little hopeless to learn anything this way. But that's just me.)
@FootPrint.Studio Жыл бұрын
I studied game art at a university and had my introduction of the engine in a formal education setting, so I had a similar response about this video being "aware inducing." Having a structured step by step introduction to the engine was certainly valuable. I also feel that the addition of a partitioned landscaped as part of the default level makes things a fair bit more confusing than the original default scene with the little plane and some lights.
@Toom316 Жыл бұрын
I would love to see you try out the Blueprints in UE5. I think you will find it is a very easy way to prototype stuff quickly and the overhead costs of blueprints is extremely small nowadays.
@DarkDax Жыл бұрын
Great video. Right in the same boat mate. It's going to be a journey but we'll get there in the end!
@Drakuba Жыл бұрын
GL to you comrade, i cant watch whole vid of yours as im busy watching UE tutorials, but remember, C is C and Lumen and Nanite are your friends as they will save you much time :)
@melleschellart5012 Жыл бұрын
i have also been learning unreal a lot and i must say, blueprints are amazing they can do almost everything code can do. and if they cant you can do it in code. love the video i hope to see more.
@crystalferrai Жыл бұрын
You asked about networking being built in. It is a fundamental part of the engine, as is multiplayer support in general. There is always a concept of server and client, even when running single player in a single process. The networking system is complex and an easy source of bugs if you don't use it properly, but it is powerful and handles a lot of things for you when utilized properly. You can also completely ignore it if you never plan to support multiplayer since server and client are the same thing in single player and things will "just work". But keep in mind that if you later decide to add multiplayer, probably a whole lot of things will be broken for the non-host player until you properly implement things with networking in mind. If you think there is any chance your game will want multiplayer, learn the networking and multiplayer concepts early (after you grasp the basics) and build/test a multiplayer game from the start. This will help you learn and form good habits for managing replication properly so that you don't accumulate months or years worth of code that won't network properly. And the same code will also work in single player without you needing to handle single player differently (from a networking perspective).
@piyushguptaji402 Жыл бұрын
this is the type of content i like to see. love it bro
@TheCenozoicEra Жыл бұрын
Once you learn UE you'll never leave it, there's a million good things about it, Personally I came from Unity myself (4 years ago) and I never went back to Unity since, and I used Unity for about 6 years when I made that switch about 4 years ago, BP's, VS etc. is a little tricky to understand when first use it, but it's defiantly the better engine
@zKaltern Жыл бұрын
Unreal always seems somewhat convoluted to me. Undoubtedly powerful, but just seems overly complex - at least for an amateur coming from Unity. (Great vids btw)
@XeZrunner Жыл бұрын
UE has always felt to me like it was meant for specific games, but was eventually pulled out to become a generic engine. The UI looks like something internal game development studios would use.
@zKaltern Жыл бұрын
@@XeZrunner Yeah that's definitely how it feels. Another reason it absolutely sucks that the Paypal Mafia have decided to destroy Unity - it certainly has it's faults but the sheer amount of user support both BY Unity AND the plugins assets and community just made it feel somehow more welcoming to new coders.
@sadasd-n2f Жыл бұрын
Unreal Engine is indeed for specific projects, before I would say if you want something huge like an big Online MMO RPG game you would go Unreal Engine or relatively games like Cyberpunk or Starfield or Halo would require Unreal Engine and everything else would be just fine using unity. Now that Unity is gone, I would just replace that standard with Godot. I personally love and use Unreal Engine 5 but Godot is quite the interesting engine that you can evolve to be partly yours with your own custom features in it. In theory with time and leveraging AI to assist you learn, design, develop, you could make Godot your own custom Unity while having practically full ownership of it with no fees or anything attached to it. I love the concept of Godot, but for me Unreal Engine 5 is the only place I can do the work I want to, if you were using unity, then most likely your work is more aligned with Godot than the Unreal Engine, but its obviously up to you to decide.
@apoclypse Жыл бұрын
@@XeZrunner It's very busy for sure. Lot's going on versus Unity, which looks like a blank slate when you open it. By default UE gives you a lot out of the box so it has everything there waiting for you to use it. It's also pretty heavy because of it.
@XeZrunner Жыл бұрын
@@apoclypse I respect UE for bringing current, state-of-the-art technologies to hobbyist and student developers, for free. The heaviness of the engine unfortunately means that it isn't really a proper Unity replacement for many, but if you're serious about game development, UE is a fantastic engine to learn and use. It is proven to be great, as well-known game studios use it for their flagship titles as well, including Epic themselves.
@cjr3907 Жыл бұрын
"This is where the fun begins."
@Phelms Жыл бұрын
"What if I delete this" Nothing bad has ever followed that sentence
@washynator Жыл бұрын
Well you got a new sub, let's hope for more UE5 content! Love the fact that you went with C++! UE5 C++ is not as bad as "raw" C++ so you can forget the traumas :)
@anonemoose7777 Жыл бұрын
It’s always great to do things spontaneously and for no reason.
@HeartcoreMitRA Жыл бұрын
The first thing all unitists do is go to C++ and try to do some basic stuff in it. As a long term UE user i have to say - YOU DON'T NEED C++ for almost all the tasks, except building your own plugins and adding some really specific tools to your project. Almost everything is perfectly doable with BP's. It's easy, it's fast and exttremely flexible. And that's the main reason why lots of artists, animators, narrative designers and other non-coders can easily build games in UE without having to learn the syntax and having a tons of problems with some case-sensitive variables and dozen types of different brackets.
@hermes6910 Жыл бұрын
And a hell to maintain or to work with more people than just yourself. BP is cool for prototype or try feature in a sandbox project. Beyond that, it's C++. And I'm not even talking about the issues in performance you can have if you are going full BP.
@Cesar_M_Romero Жыл бұрын
@@hermes6910I’d like to know more about this. Is it really so disastrous to use BP all the way? Would you say that using BP vs C++ would be 20% slower, 30% slower?
@dancoburn1108 Жыл бұрын
@@Cesar_M_RomeroIt's not really an across the board thing but if it is something happening every frame, BP can be as bad as 10X slower than equivalent code. Unfortunately, there are some things you just have to do in BP but it is hard to know which. Best rule of thumb I can make is: if it can be done easily in code do so. If it is some thing that a level designer needs to do let it be done in BP if they need it but keep an eye on what calculations are being done in functions that happen every frame or tick. Refactor those to code often.
@xxerbexx Жыл бұрын
I’m not using c++ a lot (as it’s not needed) but let me ensure you, you will have a MUCH better time looking some into blueprints. you can still use c++, mobile or desktop related to the preset settings in the project setting (AA and stuff) The landscape is created inside ue itself it’s technically a empty project with just some generated landscape.
@xxerbexx Жыл бұрын
Other actors like the datalayer excist bcs “world partition” is on in that’s levels world settings. Datalayer are layers you can sort actors in, unload or load whenever. It has a window (like photo shoot layers) top left window datalayer.
@dribbler8131 Жыл бұрын
As someone who works primarily with Blueprints (Basically Bolt in Unity) I cant help with C++ but can help with Basic Info. The PlayerStart component is basically where you want your player to start, You can see your Default Pawn Class in the Project Settings ((Project Main Panel(Edit->Project Settings-> Maps and Modes->Selected GameMode), The Game Mode is the "master" Blueprint which can define all your games rules etc.
@abbartol Жыл бұрын
Please do more videos learning Unreal!
@eekk2k242 Жыл бұрын
You should take a look at the Bevy game engine
@dancoburn1108 Жыл бұрын
If you are confused by this, I will tell you that this was pretty much my first experience with Unreal and I was unity dev since Unity 1.0 (before even because I was working in it when 1.0 had not yet been released. From the get go, Unity was very intuitive and easy to make stuff from scratch. I recently left a job of 2.5 years working on an existing game in Unreal and I still don't know how to start from scratch. In general, Unreal seems very complicated and it never really clicked for me. It might have been different if I had started at the beginning of a new game but most of my time was just trying to understand Unreal, blueprints and the actual game code that was already there. I was mostly debugging issues and a lot of that was in blueprints but some code as well. I didn't get to make a lot of new stuff except a bit of AI which was cool and fully featured in Unreal but also very complex. I also don't quite understand the way all of the built-in objects/classes work in Unreal. I still prefer C# to C++ and it is very easy to mess up memory things with C++. Blueprints kinda suck if you just wanna code things, if you need to worry about runtime efficiency and you don't like visual code editors. Most projects use a mix of blueprints and code and it is hard to find good examples if you only want to use code. Most examples were in the one I didn't want to use (Blueprints). I recommend using one of the starting points for FPS, Third person, etc because they set up a bunch of stuff that is not intuitive to do yourself. Also tutorials are a must for this engine, as it is way more fully featured to specific game types than Unity is. The starting points give you the ability to just jump in like you would in Unity. I wish you luck, all of you who have to work in this engine from a long time Unity experience. It is going to be brutal for the first few years.
@outsiderealmgames Жыл бұрын
Thanks for sharing your experience. The FPS, 3rd person, and vehicle templates are definitely what I will try next in UE5.
@SirRebonack Жыл бұрын
There is no such thing as Unreal Engine without Blueprints. That would be like Unity without prefabs. Blueprints don't have to contain actual blueprint scripting. A blueprint can just be an instantiation of a C++ class.
@dancoburn1108 Жыл бұрын
@@SirRebonackSorry, yes, my post should say blueprint scripting when I refer to blueprints. I stand corrected :)
@3dartstudio007 Жыл бұрын
Godot: Please please can we get a huge boost in interest in our platform? Unity: Hold my beer!
@Pink404 Жыл бұрын
Once again a great video. Thanks for this first look at Unreal Engine. Unlike Godot and Unity I have no experience with it. It's very much like watching myself explore a new development environment for the first time. I've also loved, that like in your previous Godot video, the UE community have jumped in and given loads of really good pointers (pun intended) for anyone wishing to explore further.
@IronBrandon22 Жыл бұрын
Kinda wondering how long that “Progress bar intermission” actually was (and the trip to the lobby).
@DarkSoul-pb6dv Жыл бұрын
it's because he installed the engine version and it was his first time launching it next time he launches it then it will be much faster 1st time it takes a few minutes
@jonteguy Жыл бұрын
It compiles all its default shaders the first time you launch it, it'll be *much much* faster the times after the first. For me it's almost instant, I have a pretty beefy PC though but I would think it would still be fast for anyone who is not sitting on a 3090 or 3080.
@IamSH1VA Жыл бұрын
For me it takes around 10 min, on Ryzen 5 5600x and RX 6700xt
@ZorMon Жыл бұрын
Epic needs to take this train and enhance 2d features in this engine plus some kind of "simplified mode" for indie developers that want a alternative to unity. Its bluprint system would be very atractive to start ups if the engine had less convoluted stuff.
@jackie.p6891 Жыл бұрын
there's a little eject button next to the Stop button, that will allow you to investigate objects at runtime.
@voltonik6404 Жыл бұрын
Love this series! You can try Unigine or Flax engine next. Unigine looks interesting.
@widrolo Жыл бұрын
30:50 you can also use "auto" in that case, which works like "var" in c#
@outsiderealmgames Жыл бұрын
Thanks!
@imblackmagic1209 Жыл бұрын
starting from blank while learning unreal is a bit overwhelming, same for c++ project, you can add c++ later also, premade projects and samples are oversimplified, so take them with a grain of salt (some don't follow some future proofing recommendations, they are cool to mess around and learn)
@aressilverfox Жыл бұрын
Nice video! Well, I am not a dev... i don't even know any script language nowadays (commands on MS-DOS from windows 3.1 does not count, i guess...), anyway, I am a gamer! Always will be... Started ages ago with Atari 2600 and never stopped playing... I am here to support YOU DEVs!!! Thanks for the hard work and countless hours making the games i love so much!!!
@floppytwist Жыл бұрын
Loved the godot video! That engine gets better every day
@vast634 Жыл бұрын
What about iteration times? Do you have to sit around for minutes to compile a larger project, just to test a change? High iteration speed is probably more important to a project -to get something done- than some visual features.
@sam_making_games Жыл бұрын
You prototype in Blueprints first and then move to C++ if needed. Iteration time on C++ is better than UE4 but it's still not perfect
@whitesnakefr Жыл бұрын
Interesting chill video (unreal engine my beloved)
Жыл бұрын
hahaha this was so fun, as dev that has study with unity and now works full time with unreal is so fun seen you figuring out the engine by possibly the hardest way haha,, for me UE is much better in almost every way, i only miss the simpler coding of C# and a couple simplicity of the unity particle system, but for me UE is way more expandable and powerful.
@mrzainozz1686 Жыл бұрын
Please make this a series of learning UE5 !!
@fosteredlol Жыл бұрын
As someone who has been learning UE for about 7 months now, its refreshing seeing someone else look at the engine source and be like "hope I dont need to be in here"
@dancoburn1108 Жыл бұрын
Me too, lol and I've been a programmer for 25+ years!
@Drew-Chase Жыл бұрын
Unreal Engine works best when you use Blueprints along side C++, using C++ for more complex calculations and blueprints for the more common and simple logic.
@thietduy Жыл бұрын
ME same nowsaday, I just tried UE 5.3, which like a good version to start on, after a decade of using Unity. Good luck on everyone on the new journey on UE boat
@xxerbexx Жыл бұрын
Floating point precision errors are not that big of deal, especially not in ue5. They increased there precisition by…. 3 times? Or something like that. Which also makes vertex shaders 3 times more expensive (there are workarounds) but I guess on giaaaant landscapes you might need to reset the origin, however I think ue has a build in system for that
@damienclassen2179 Жыл бұрын
In Unity you can run into floating point jiggling problems a mere 2km away from the origin. It’s a big problem where I work, we’ve had to implement a floating origin system, which is a big hassle.
@xxerbexx Жыл бұрын
@@damienclassen2179 2km!? Wtf okey no lol tbh I never build big enough in unreal to reaaaaly run into real trouble. And if u did. just recenter, whatever
@MulleDK19 Жыл бұрын
30:49 Not true. The equivalent to C#'s var in C++, is auto. And the location values in Unreal are that high because they're specifically using centimeters as the unit. So a kilometer is 100,000.
@TheFoxfiend Жыл бұрын
C++ Trauma break, lol. Oddly relatable.
@Kenjuudo Жыл бұрын
30:40 In C++ you can use the *auto* keyword for the same effect as *var* in C#.
@micke1216 Жыл бұрын
Use F8 while in game to regain editor control, what you did pretty much expects a console command it that's why it also gave you access to the editor but F8 will just pull you out and leave the editor in play mode
@krizpgaming837 Жыл бұрын
been waiting for this video, wanted to see what a dev in the business of making games thinks about ue5.
@UltimatePerfection Жыл бұрын
It's crazy how good Unreal's in-editor modeling tools are, way better than Probuilder and that's without modeling tools plugin enabled. Not to mention so much is done for you here, as opposed to Unity, where you pretty much have to reinvent the wheel constantly. For example, making an open world game is just a couple of clicks and Unreal handles level streaming for you. Overall, I love the time I spent in Unreal so far, even despite the crashes I've been experiencing.
@crystalferrai Жыл бұрын
You can unbind the ESC key from stopping PIE (play in editor). Edit > Editor Preferences > General > Keyboard Shortcuts > Play World (PIE/SIE) > Stop
@cooper5602 Жыл бұрын
Im unsure if anyone has mentioned it yet, but one world unit in Unreal is a centimeter, 100 "units" is a meter, etc
@Yggdrasil777 Жыл бұрын
It is so interesting seeing you go in "blind" to the engine and learn how things work. Welcome to Unreal Engine, if you have any questions, please do not hesitate to ask around.
@lordmaddog6003 Жыл бұрын
To answer your first question. Yes everything in the created project can be changed later all options from the start menus are available. Second question was about network and yes UE out of the box networks. Also even though UE is more geared to 3d it is also Much better at 2d then even unity. Third question was about the starting controlled pawn? That is found in world settings which is brought up in the windows tab next to edit.
@KyuubiYoru Жыл бұрын
Can you make a video about Flax Engine? Flax seems to be between Unity and Unreal.
@fv4202x Жыл бұрын
is unreal engine's inspector flexible as the unity editor? Best thing i like about unity is its easy to make customizable tools that makes your game development period easier and funnier. Does ue has these possibilities?
@AugustCoder Жыл бұрын
Also make sure to try out Stride engine! I found it recently and it has a very similar feel to Unity.
@dancoburn1108 Жыл бұрын
Yeah i am going to be looking at that one because Unreal is a lot to wrap your head around.
@StopItRyan Жыл бұрын
"Is everything an actor? Is a folder an actor?" hahaha
@damienclassen2179 Жыл бұрын
It’s kinda a valid question because in Unity you organise your scene by creating empty games objects as containers for groups of other objects (so they behave as folders), so from our perspective maybe Unreal does the same but just uses a folder icon for those objects?
@Isaacrl67 Жыл бұрын
I usually use F8 to eject from the player pawn when it's running in the viewport.
@ЮрийДолотказин-с4ы Жыл бұрын
We have an auto typing in C++. You can use auto now on variable declaration, to automatically deduce a type of the variable.
@xxerbexx Жыл бұрын
Actor = thing in level Level = asset to be created in content browser and opened Component = part of another thing like a actor, generally
@hawns3212 Жыл бұрын
31:00 you can use the auto keyword the same as var in c#
@7kGreen Жыл бұрын
How did I realize that I started to get into UE4? It crashes during compilation and then during startup. Giving an error something like: bzbz something somewhere there...
@ashtonx Жыл бұрын
tfw watching you and screaming in my mind "JUST CREATE AN EMPTY LEVEL"
@Dragoon95 Жыл бұрын
ive been wanting to start video game design for a while and i know its alot to do, but like where do i begin? where do i ask questions? this video i wish there where more and maybe i dont know what to search but just watching someone stumble though one of the various tools and how to start i want to see what the start looks like so i can have this in my mind like yes this is normal and fine, please keep going until you get to the point of creating like a tutorial area and then that could be a solid start for alot of people
@tehsimo Жыл бұрын
I got stuck with the same exact question "why do 1st person controls work when the project is empty"
@AndreaFromTokyo Жыл бұрын
it reverts back to the editor's default controller when no player character or controller is assigned
@mattiapezzano1713 Жыл бұрын
It's incredible how much knowledge you need to understand the basic stuff in unreal compared to unity. First time user experience is soooo confusing
@LacklusterFilms Жыл бұрын
Godot actually supports 64 bit precision aswell but you have to build the engine with it enabled I believe
@jonteguy Жыл бұрын
Godot is great, but it is not ready to fill the void of Unity. They need to step-up the development fast if they want that to happen and fill the void Unity left. Godot has by far the least features compared to Unity and Unreal. It needs more to be ready to spit out games as fast as Unity and UE can, which believe it or not is high on the priority list for developers and companies.
@GIRGHGH Жыл бұрын
While this is true, it also is the case that a lot of people are satisfied with the features it has as well as ones you can add yourself. For at least 70% of people they aren't gonna miss anything major, it'll probably be enough with the community made stuff. For anything that's still unity exclusive I'm not sure, but not every engine needs to be a jack of all trades. Godot is mostly lacking in 3d at the moment which is covered by others like Unreal.
@supernova8486 Жыл бұрын
I tried Unreal Engine 5.3 but my gtx 1050 with 2gb VRAM just said "NO" - it has poor performance even in blank scene 😁so I decided to choose UE 4.27 to start learning basics
@Denomote Жыл бұрын
you just have to turn off lumen and change the anti-aliasing method to FXAA I use a gtx 750 ti
@peacefusion Жыл бұрын
1050 and 10 series cards are really out dated though.
@supernova8486 Жыл бұрын
@@Denomote oh thank you. Didn't know lumen turned on by default. I will try this
@axh2 Жыл бұрын
"I used to be a Unity developer like you. then I took an irrational pricing model in a knee"
@lebronthegoat3509 Жыл бұрын
Sucks that its c++ and not c# but i suppose learning c++ can't hurt right.
@damienclassen2179 Жыл бұрын
Hehe, as someone who knows both, you can make a ton of mistakes if you accidentally do in C++ what you would in C#. Using the ‘new’ keyword accidentally in C++ and expecting it to behave like C# will lead to so many memory leaks etc.
@adambenrqia5780 Жыл бұрын
Definetly would like to see GameMakerEngine
@DavidAndersonKirk Жыл бұрын
I now want to become a developer on UE5 just to make a game where your mission is to liberate engineers from Unity and destroy their greedy CEO- and banish him to the shadow realm. Just amazing
@mindaugasstankus5943 Жыл бұрын
Do not forger UE are proprietary engine have shady shareholders (still private company but with massive stakes from others) and EPIC do not shined past years concerning consumers.
@madaraainna Жыл бұрын
EPIC IS FIGHTING FOR DEVELOPERS WITH APPLE AND GOOGLE. YOU KNOW NOTHING NIGG @@mindaugasstankus5943
@Khantia Жыл бұрын
Didn't C++ have an "auto" which you can use instead of "var"?
@Aisaaax Жыл бұрын
Your C++ is a bit outdated. In modern C++ you should avoid using raw pointers in favor of smart pointers, which is basically a special reference counter class that automatically releases the pointer when all references of it go out of scope. Sure, you CAN still use raw pointers, and they are a tiny bit better in terms of memory and performance, I believe. But it's generally considered to be not worth the risk, because raw pointers are messy. I'm not very sure, but I believe Unreal Engine in particular actually has a pseudo garbage collection in it too, so it's worth looking into that, if you're planning to continue. Don't quote me on that - It's just a memory I vaguely have from tinkering with engines years ago.
@projectgg6730 Жыл бұрын
"Maybe I can make a c++ project and still use blue prints" oh boy do I have news for you haha
@curiouslycory Жыл бұрын
Which alternate has been your favorite so far?
@jonteguy Жыл бұрын
You can use blueprints in a cpp project but not the other way around. This is why I think you should always make a cpp project, unless you really know nothing about programming. I will also say that the UE cpp library is easier than normal cpp, that might be good to know for people who are interested. But obviously if you know cpp from before that is a massive help. Welcome to my engine of choice! I hope you like it. It is definitely tougher than Unity and Godot but it has a lot more. So I think if you have patience this engine will serve you well, even as a indie dev.
@xXStringZXx Жыл бұрын
Are you sure about this? From the looks of the description in the initial screen (When they hover over the Blueprint/C++ options), it mentions that you can add a Blueprint to a C++ project and vice-versa.
@AndreaFromTokyo Жыл бұрын
not true, you can use them both at any time
@CaptainSnuggleButt Жыл бұрын
@@xXStringZXx Yeah, you can pretty easily just add cpp support to a blueprint project. Same with the different templates.
@jonteguy Жыл бұрын
@@CaptainSnuggleButt I'm mega late, been busy but yes, obviously I didn't mean it WON'T WORK EVER. What I meant was that you have to set it up with folders and solutions which it won't do for you if you start it up as a BP project, but obviously you can fix it. But if you create a BP project *right now* add a cpp-class and compile it won't work. This is what I meant. It's much easier to just make all your project cpp projects though even if you plan on only using BP. If you still don't believe me, whoever is reading this. Do what I said above, create a BP project and create a cpp-class in it, add some stuff to it and compile it and see if it works. It won't. But I will admit that my wording was awful for the point I was trying to make. *Edit: I just created a BP-project and added a cpp-class, compiled and got errors. So if it works for you then it's my file-structure that is messed up.* I still think it's a universal thing though but I could be wrong.
@bit9524 Жыл бұрын
Working in my project on unreal I can say unreal is another thing, specially if you learn the c++ side it is easy to script the stuff, more with IDEs like rider. I did the same level in both Godot and Unreal and the difference is so much in terms of visual result out of the box, yes, godot was easier to figure out with it gdscript and really good integration with the editor, but I felt in love with the result I got with unreal. Sorry for my crappy english, is not my main language.
@NoobsDeSroobs Жыл бұрын
Isnt F8 or another F key the key to give you access to the mouse pointer while ingame?