So like what the title says. Is learning blueprint ethical?
The reason Im asking this is mainly because I want to learn c++ but can’t really
find any good tutorials in order for me to learn it and learning blueprints just feels very unethical to
learn it since it’s not really me programming the game.
Yes you will need to learn Blueprints. Even if you implement most of your logic in C++, you will likely want to subclass the C++ class with a Blueprint class in order to set defaults and add “scripting” events.
By “Scripting” I mean the game designer work on the Actor, rather than the game programmer work, that leverages the logic within the C++ classes. The script will need to be often changed (tuned) and you won’t want to be recompiling your C++ classes for every little change. When debugging the Blueprints you will be able to see events firing in response to game action. They are invaluable and a vital part of the Unreal Engine.
Depends on what kind of tutorials you are looking for, if you want to learn basic C++ using ue4 i have tutorials in my signature for that. If you know some c++ but are looking for tutorials on UE4 specific C++ tutorials like how to make X in ue4. I highly recommend looking through the source code.
Ethics isn’t a concern, I understand what you mean though–should you use a tool that makes things super easy without knowing how to do it without that tool----for jobs, yes it would benefit you to know C++, since you could look for jobs that don’t use UE4 and Blueprints. But, if you are in a situation where you can definitely do all of the potential work with that tool, then it’s OK.
I figure the same thing with stuff like 3ds Max and different plugins, and I figure it’s OK to depend on some tools that make things easier, those type of things will become the norm.
For example, Cryengine has its own type of node-based gameplay tool, and Unity has various similar plugins. So many tools are going that direction.
Great! Thanks for all the reponds and opinions. I will make sure to checkout that tutorial in your signature SaxonRah.
And thanks breese45 for giving me a few hints on where to go for learning a bit more.
I can’t imagine how ethics/morality could possibly be involved there.
Both blueprints and C++ operate on the same data types. So stuff you learn in blueprints, will transfer to C++.
You can download source code of the engine (in C++), recompile it, modify, etc.
If you have no C++ experience, the source code will be completely incomprehensible for you though.
The engine is roughly 300 megabytes of program code.
Well many of the same things are in Unreal C++ as BP. Granted, you can get a lot more involved with C++, and use things outside the engine in C++ - even enhancing the engine. But I’d argue, if all you’re doing is accessing the API from C++ instead of BP then it’s literally the same thing. C++ knowledge can help you outside the engine, but either way you’d be building skill in how to think in GameDev (if you are learning, I mean). You can learn different methods, different styles, and get some projects done either way. I’d actually say stick with BP to learn Unreal, and then learn C++ outside Unreal, and then bring them together.
It depends on your aim. If you want to learn C++ and want to use UE4 as a fun way to practice, then obviously blueprints aren’t ideal. In this situation I would recommend buying a good C++ book or looking at non UE4 tutorials to learn the basics, and read the API reference to understand the inner workings.
If you just want to make a game then use blueprints. They’re very convenient and useful for prototyping features rapidly and they’re a core part of the engine. You won’t be any less of a man for using them, nor will your game suffer in some definable way. The people who play the game won’t care.
Do you have any programming experience? If not, you should try to learn programming first. Blueprints are actually a good way to get the grasp of programming because you can create visual and moving thingies pretty fast.
If you are concerned about “not programming the game” by yourself, well, you shouldn’t be using a game engine. There are good books about 3D graphics programming, game engine implementation, etc.
Woah there. Graphics programming is a whole different kettle of fish, and for most developers using UE4 it won’t be used much.
OP: I don’t recommend you get into graphics programming yet because it isn’t a good place to start learning C++. Firstly, the focus in OpenGL and Directx programming is in the API calls and batching and processing of data. It’s not the right place to learn core concepts such as object orientated design and game logic.
I suggest you start with blueprints, as these will allow you to learn how the engine works and how each component is used and help ease you into the programming mindset. If you want to go down the route of C++, I recommend something like “C++ for dummies” so you can learn the core concepts of how a program is constructed.
Once you feel comfortable, take a look at the engine source and start poking around. See how a character object interacts with its movement component for example. It will start to come together.