Blueprints Vs C++ Which One Should You Use In Unreal Engine 5

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
hello should you use blueprint or C++ for your Unreal Engine projects it's a question many beginners ask when starting with unreal and the answer isn't always straightforward factors like your objective the size of your team and your coding proficiency are all things that affect whether you should work in one or the other or perhaps use a mixture of the both I have been using Ral engine for years about 90% of the time I use Blueprints and I don't have as much experience with C++ I've dabbled in it a little so in this video I want to explore should you use blueprints or C++ blueprint visual scripting system or blueprints for short allow onal engine developers to create gameplay elements interactions and entire game systems without a single line of code blueprints utilize a node-based interface where you can connect various nodes representing variables events and functions to create complex behaviors C++ on the other hand is one of the oldest most widely used programming languages it is exceptionally versatile and Powerful but it's more difficult to learn onal engine itself is written in C++ making it the programming language of choice for onor engine game development because of its flexibility and faster performance compared to blueprints C++ is ideal for implementing low-level systems optimization and handling complex logic now let's view some of the pros and cons of each system using blueprints gives you a lot of advantages such as accessibility blueprints greatest Advantage is its accessibility it allows anyone from a complete unre engine beginner to a designer working on a AAA title the flexibility to create and iterate on gameplay mechanics and systems without needing deep programming language it is easier to learn more intuitive and mistakes tend to be easier to diagnose and fix compared to C++ this democratizes game development and enables a broader range of people to use it rapid prototyping blueprint is excellent for rapid prototyping since it doesn't require an offline compilation step you can change parameters and see the results in real time within the unreal editor if you don't like what you see do some tweaking and without any recompilation get right back into the editor to see if it had the desired result this rapid iteration process is particularly invaluable during the early stages of development when gameplay mechanics are still being refined and can save you a great deal of time even if you're an expert in C++ it is faster to work with blueprints for this sort of quick experimentation since you can always rewrite the function in C++ later after it's been finalized visual debugging debugging in Blueprint is intuitive and visual you can easily trace the flow of execution inspect variable values and identify issues Direct directly within the blueprint graphs this makes troubles suiting and Bug fixing more accessible especially for developers who are less comfortable with traditional debugging techniques handling assets and visual effects when editing blueprint you can inspect and modify assets and visual effects directly getting immediate feedback on how these changes are being implemented something that is much more complicated to do with C++ scripted behaviors blueprints allows you to easily construct intuitive self-contained graphs and express a sequence of events for scripted Behavior not only are these scripted events easier to construct they are much simpler to tweak and iterate than C++ limitations of blueprints performance overhead while blueprints can make your team more productive the same can't be said for the actual code there will almost always be a performance penalty when using blueprints which operates through a virtual machine compared to C++ since blueprints are interpreted at runtime rather than compiled into optimized machine code complex logic implemented in blueprints will generally not perform as efficiently as equivalent to C++ code this can create performance issues that prevent your game from running at a smooth frame rate code management if relied on extensively blueprints can easily become an unwisely spaghetti mess that is difficult to decipher especially when multiple team members with varying degrees of programming knowledge are working on the project project simultaneously complex math blueprint isn't great at handling complex math operations not only is it slower at doing the calculations but the actual Act of implementing complex math is more performance heavy in blueprints compared to C++ now let's go over some of the benefits of using C++ ultimate performance C++ allows developers to harness the full power of the underlying Hardware making it indispensable for the most performance critical parts of your unreal project by writing code directly in C++ you will fine grain control over memory management and algorithm efficiency the C++ code can be optimized at compile time for the platform it will run on with no unnecessary overhead additional functionality C++ exposes more functionalities of unreal than blueprint you can use it to do extremely helpful things such as detailed profiling to measure the performance impact or various game features or diagnose unexpected or invalid runtime conditions through the assert function you can even use C++ to add additional tools and menus to the honoral editor to assist designers in a way that is completely customized for that particular project since functions and variables defined in C++ have broader access to all other systems it is also good at passing information between different systems integration with thirdparty Library C++ provides seamless integration with thirdparty libraries and apis enabling developers to leverage existing solutions for tasks such as networking audio processing and platform specific functionality this extends the capabilities of onreal engine and empowers developers to implement custom features with ease if properly utilized this can become the most useful advantage that C++ will have over blueprints dipping and merging because C++ is written in plain text it is much easier to automate the tracking of changes whenever files are modified this is especially necessary when a team is large by simply looking at files version history one can identify what changes were made by looking at the highlighted differences between the original file and the modified file this is much harder to do with blueprints and generally only works for simple cases similarly if two people are working on a file simultan ously in C++ it is relatively straightforward for a Version Control software to merge the changes with the merge conflict being relatively rare and fairly simple to resolve challenges of C++ steep learning curve compared to blueprints C++ can be intimidating especially for developers with limited programming experience C++ is a powerful complex language with its own syntax Concepts and best practices requiring a significant investment of time and effort to master moreover buggy C++ can do more damage to a project than buggy blueprints the built-in guard rails are much better at stopping you from completely destroying your own project slower iteration times unlike blueprints changes to C++ code require compilation linking and possibly engine restarts leading to slower iteration times during development this can impede rapid prototyping and iteration particularly for iter ative design processes that rely on quick feedback loops finding the right balance personally I only really use blueprints cuz I think it's a lot simpler and allows me to develop things much quicker I have done a bit of C++ although my knowledge is much better in blueprints although with that being said I ultimately think it's best to think of blueprints and C++ as tools that are each useful in their specific ways and to use them accordingly so ideally you'll be able to just Leverage what you want to use for individuals who are just starting and have no programming experience I would recommend blueprints because they're pretty robust and would allow you to code anything that a basic project requires there are plenty of online resources and tutorials that show you how to implement various functionality through it step by step so in short the choice between blueprint and C++ in UNR engine ultimately depends on the specific requirements and constraints of your project hopefully you found this video interesting and learn something and if you want to learn how to create full games inside of onor engine with blueprints like a 2d platformer an FPS game and more without writing a single line of code make sure to check out my website H University I hope you enjoyed the video if you did like And subscribe and I'll see you guys on the next one bye
Info
Channel: Unreal University
Views: 10,279
Rating: undefined out of 5
Keywords:
Id: vDjkObXUkTg
Channel Id: undefined
Length: 9min 37sec (577 seconds)
Published: Sat May 04 2024
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.