I am a newbie. I want to create a little project to practice my c++ programming skills and learn in unreal engine. Nowadays people do everything from scratch or reuse code distributed over the internet?
I think the majority of UE users are using BP but a large group is using c++
You can join the github for unreal/epic and get the UE source there along with a couple different forks
but you don’t need the github source to make your own classes in the game, just start the project in as a c++ project not a bp one
Many of the epic projects for learning have c++ you can look at
Thank you so much Chris! I will check the github. Yes, I want to program in c++ and not in blueprint because if at some point I want to scale the project, the organization with blueprints is going to be complicated.
Hey @Billy-Pilly, first off, welcome to the forums! Second, I admire your resolve! Learning C++ is an excellent goal, and you’re right scalability and the things you can pull off does increase with C++ and it’s a far more transferable skill. That said, the best way to learn is entirely subjective. Some people like myself are great at picking things apart and learning from the best practices off the bat, others learn better visually or by tutorial, and a rare few prefer to start with an empty blank canvas and hand-code everything from the bottom up. All are valid approaches, just swing for whatever feels best to you. That said here on the site we have ton’s of learning resources over at the new learning hub, and as always if you have any questions for us, don’t hesitate to ask here, we’re here to help!
Interesting! Thank you! I’m gonna check that section.
I had understood that blueprints in large projects cannot match the performance that c++ provides. This is true?
always, blueprints are on a level above the c++ code and requires the engine to convert them to c++. c++ is always faster.
but how much?
it depends, if you have created a mess of a blueprint that has one million references and variables and functions all over the place, it will impact performance.
also if you don’t know c++ and you create the same mess as above, again impact performance.
so the answer to your questions is that good c++ will always be faster. if is good c++
anyway depends of the game you want to build.
I will give you an example. you are trying to build a game that can be compared in similarity with a wooden cart.
Once you will build a game that can be compared with a jet engine, then yeap, your c++ code is crucial.
You are saying you are newbie. go with blueprints first. to do something in unreal you need to know both c++ and blueprints. so learn the easy part first
Any form of visual scripting is going to be less efficient than pure code, as all of these blueprints are going to be pared down to C++ and compiled the same way, just with a bit of an extra step. That said, blueprints aren’t by any means slow. They are quite effective for small to mid sized games, but for a massive project I’d handle most anything involving data manipulation with C++ and let designers/other nonprogrammers on the team work with blueprints for prototypes and simple operations. Blueprints also get harder to read/parse as they get bigger. In BP spaghetti code quite literally looks like spaghetti. Though there have been lots of tools added to mitigate this, not everyone has adopted them yet. I’d still definitely play around with BPs as they are amazing, but C++ is just a far more extendable skill, say if you ever want to leave the games industry, software engineering is just a hop skip and a jump. If you only ever work in BPs you’ll get the problem solving skills for sure, but not really the programming chops even though that’s what you’re actually doing under the hood. BPs are still the first step though, so I still recommend learning them first unless you really want to go straight into the deep end!
this is true
but bp’s are compiled to c++ at build time
so its usually not a problem for most games
if you want to though
you can convert a blueprint to c++
then modify it yourself as code