UE4 lack of UI documentation

Im looking to create a user interface and im mainly a C++ programmer so i tend to steer away from bluprints, ive found 2 solutions to create a UI. Slate or UMG, Slate i wouldnt mind using ive programmed html so im used to the “going backwards and forwards” design. Only one problem, lack of “good” documentation. There are tutorials out there but there not good, slate already looks menacing to learn on its own but the fact that there are no good tutorials explaining what it all means (start to finish) is such a shame :frowning: and from what i read people would rather use UMG, resulting in UE staff focusing there time on that rather than slate. So then i move to on UMG, this time there is good documentation on it… for blueprinters. Ive found a tutorial that Extends UMG to C++ here but there isnt much documentation
past that :frowning: which leaves me in a position with a great game on a great engine with no UI… My question/request is are there or can UE staff give more support to C++ UI because thats the only weak point in this engine and its a big enough problem to cause people to switch engine (little documentation in the UI category)

Just dig into source code and you’ll get everything there, it’s commented quite well. If you don’t get specific detail then you can ask community and you’ll always get answers.
Slate API docs is good too. I’ve been able to build a complex GUI with resizable/movable windows and stuff after I spent about a week reading source and api docs. It’s not that hard.

UMG is newest and it’s basically a visual designer based approach as was included in Visual Studio or Advanced WYSIWYG HTML Editor for developing UI, but it’s more of a visual UI designer, it’s a modern method.

Blueprints is easy for long term veteran programmers and beginners, it’s a visual scripting interface and if you understand the fundamentals of most programming languages then you’ll quickly realize you’re actually programming with it in a visual manner.

Blueprints supports the core functions, variables, I/O, custom data structures,
enumerations, and even execution of defined commands and macros while linking features of the engine, objects, events, and UI elements.

You can use Blueprint to create classes as well, you can use Blueprints alone, C++ alone, or a hybrid of both Blueprints and C++.

In terms of making games or even application development, it really has everything one would need in it’s base architecture.

A float is a float and vector is a vector a for loop is a for loop event is an event etc…classes, structures, enumerations.

Tech like networking, already built-in.

Over time more things are being added, and if there’s anything not added yet it’s simple to add.

The onlytime I can see anyone really needing to access the source code, would be to port to another platform, update the tools for a platform, add some extra core features, plugin development, to learn how things work, find and fix bugs while adding support for more hardware and features, or if you have lots of extra time and want to improve documentation, fix typo’s or broken parts, and improve performance adding some newer technology.

If you’re a business that has company product with something new to bring to the table, then that would be another great option.

But doing it just for UI only, I wouldn’t recommend C++ only, artwork and other content is also a major focus. If you have team great!

Here’s the main API Documentation:

Here’s the Main Site Map Index:
https://docs.unrealengine.com/latest/INT/SiteIndex/index.html

Here’s the main Programming Documentation:
https://docs.unrealengine.com/latest/INT/Programming/index.html

Note: That the editor and all of it’s tools as designed are meant to handle the core things in the background and simplify game development by default, hence how the visual interface was designed and it’s main purpose in aiding in game development which it does very well.

I’d love to see an assembler version in second from lowest level language version (those debug symbols and syntax would probably drive me crazy though, especially if you had a simpe flag error generated from a simple typo that generated several thousand random error’s, that’s a nightmare to debug when the print and log portion doesn’t dump or break on the exact binary execution point in the registered CPU register or cache block or memory is obfuscated on call break, all due to the architecture and usage of the instruction set and the chosen features, love protype declarations though, the dynamic libraries always ran the code faster in memory even for VB code converted back down to assembler via the compiler) and a VB.NET port would be cool. ;o)

After looking at some things a few minutes, it’s a simple structure, if you want to delve into some higher level graphical aspects you could look into these.

Start Here for Beginner Friendly Code:
A new, community-hosted Unreal Engine Wiki - Announcements - Unreal Engine Forums,Create_Buttons%26_Draw_Materials

Next thing would be to simply review the code in your default template files before getting too complicated, the FPS template is interesting.

For basic higher level check these Unreal Engine API Docs, could’ve added shader and more settings references but it should be all that’s needed:

OpenGL:
https://www.opengl.org/

DirectX:

Goodluck!

Thank you for your answers, this has without a doubt solved my problem. Thank’s