Unreal Engine 4 API
Since the release of UE 4.10 I've been playing around with the engine and trying out the new updated tutorials. A lot has been changed/added since the last time I worked on the engine (4.6 I believe). The changes to the editor/engine are great. However, there is one thing that really bothers me. I am not a seasoned game developer. All my "game development" experience comes from the web. With that said, I do understand most of the concepts and terminology of game development. (I am a soft eng and been programming in c++ for a while) While using UE4 , I noticed that there are very limited resources on c++ scripting. My main goal is to do most of my projects in c++, and use BP only where appropriate. However, I find UE4 API extremely hard to use and navigate. searching it almost always results in the API call's representation of its BP version, not the c++ function, and when I finally find the c++ reference, the documentation is very limited/vague with no real life examples. (the web site does states it is a WIP so maybe that's the reason, I don't know) I hate to compare UE4 to , well you guessed it!, Unity but when I tried to learn Unity I was able to pick up its scripting in less then a week. I attribute that to its great API documentation and endless examples. I know UE4 is still a WIP and a much more complex engine but I sometimes feel that it is intended more for those who come with extensive Game Development background. so to sum my essay up, my point is, -> for an engine as complex as UE4, why is the c++ API is very poorly maintained? I think having an API that is easy to query with examples will make it a much easier learning experience for beginners like myself.
asked Jan 19 '16 at 08:07 PM in C++ Programming
I understand that this is an important issue and we appreciate your feedback, however the AnswerHub is for very specific questions about the engine rather than general discussion. This type of conversation would best be heard and received in the feedback section on the Epic Games forums (https://forums.unrealengine.com/forumdisplay.php?24-Feedback-for-Epic).
answered Jan 21 '16 at 05:30 PM
There is not BP version of the function, they work exact the same 90% cases, if you learn how they work in BP you already will know how they work in C++, they will be acting the same, so you can use those BP tutorials too. Learn C++ syntax, thats the key, if you learn that lot of things in API refrence becomes selfexplenetory.
I personally don't need examples (in most cases), for me lot of stuff are self explanatory, function and varables for me are like button and switchis with labels and they do what is explained if not i always find way how they work by expirance, but i know there people who needs that to understand things. But i also think API Refrence getting worse actully it starting to miss many function varables even entire classes (in most cases abstract classes), here you have example:
It actully makes lurking in UE4 source code more reliable then API refrence
answered Jan 21 '16 at 09:57 PM
As a game dev who has used to code with directx libraries I can say this. Epic seems to be focusing on the visual programming side to cater to those who do not have a background in software engineering. Many developers are working to extent the api and you can find their work on github. I think it's the next evolution in game dev to make these tools accessible to the common person who has an idea but doesn't have the skills to bring it to life like we do. Someday maybe someone will work on filling the gaps in the c++ learning side. Back in my day we had to have binders for libraries on code references. Instead of nice color picker to get green we would have change color with a hex value like #008000. Coding will always be a challenge. You are stepping into the arena with people who built the electronic age of computers and they didn't have Google websearch. Work hard and your reward can be to help write some of what's missing in the c++ training. =) good luck.
answered Jan 19 '16 at 11:11 PM
I think the BP system in UE4 is a brilliant idea and one which is now being imitated by its competitors (thru plugins etc). However, the BP caters mostly to those who come from art/graphic-design background. Although easy to learn (mainly because it is well documented), I find it cumbersome. It can quickly get messy and all over the place with spaghetti like patterns of nodes and connectors on the screen. My point is, from what I have seen in UE4, a simple task that can be achieved in 1-2 lines of c++ , might become a huge network of BP nodes. As the game logic grows, so does the network of nodes. Soon it becomes unmanageable. This is probably why I never really liked visual programming. A lot of commercial software nowadays offer visual programming as an alternative, but I always go with the old school scripting because its much more maintainable and readable.
Ultimately, it is Epic's decision how they want to allocate resources. I think it is great that the community helps with the c++ documentation but Epic needs to realize the importance of having a solid and high quality documentation, not only for their BP but also for their c++ api.
answered Jan 21 '16 at 08:24 AM
Follow this question
Once you sign in you will be able to subscribe for any updates here