I’ve been looking around and haven’t found much on the topic, so I figured I’d ask here. I understand that using UE4 for this is completely overkill, but is it possible to create form applications with UE4? By form applications I mean similarly to Qt or Windows Forms. A possible use case would be to create tools to communicate with a UE4 game via the network or something that could relay information too and from. Again, I understand there are other libraries designed specifically for forms, but UI programming is something I already know how to do and I could use that as an entry point to UE4. I’d like to just build a simple application just using the engine to get familiar with it.
I see that there is the Slate UI framework, could this be used to made a GUI form application by itself, and not tied to any game? Sort of like the Windows calculator app, or Steam, etc
Thanks!
If you don’t need/want it tied to game, don’t use UMG. Then you’re running the full deferred renderer stack under it. So it would be like the most expensive calculator app ever written, power wise. You can use Slate directly, take a look at SlateViewer, it’s our test bed project for Slate. It doesn’t run the full engine under it, it’s just slate, and a stand alone dx/opengl renderer. It’s what we use for the Launcher/Portal application you use to download the engine.
If your forms app is likely to have some 3d stuff in it at some point I’d go with UMG, or if you prefer to have a visual designer as Slate throws a lota people off their UI game the first time they use it.
Thanks for the reply, Nick! I’ve been programming UI with Qt professionally for a couple of years and I have to say, from what I’ve seen so far of Slate it definitely looks different. Still, it doesn’t look too bad. I’m sure my resilience forged from deep within the bowels of Qt source will not let me falter.
My app doesn’t need any 3D things in it and this is mainly a learning exercise to get used to UE4’s API without really needing to worry about 3D objects. Plus I’ll get a few useful tools written in the process. Maybe I’ll even throw the tools into the UE4 store for free if I find them useful enough. I will definitely take a look at SlateViewer, thanks for the heads up! Its funny you mentioned that you use it for the launcher, that’s how I figured making form applications had to be possible, I assumed you used some part of the engine to build that as well
I will probably document everything as I go along and create a video tutorial for the setup when I get it all sorted out, since there doesn’t seem to be one anywhere. Thanks again for pointing me in the right direction!
Hi Frostbytes. I’m developing a multi-user 3D Editing Application using Blueprints & UMG, that can operate as a standalone or embeddable in-game editing system. I have plans to develop an entire suite of editing apps for my games supporting pre-fabricating and customizing content in-game. Developers are using UE4 for more than games now so I have a strong feeling we’ll see a rise in UE4-Powered Applications in the future.
UMG is a awesome GUI system and its animation capabilities allows for some fancy menus. Its Parent/Hierarchical system lets you create very interesting and non-standard widgets. For an App, Loading and Saving Data is crucial. I’m Loading/Saving data locally with my own SLOT Management System and sharing data amongst Clients via UE4 Network Replication.
Communications to a HTTP Communication to Web Server is not supported in Blueprints, however, we do have the option to code one ourselves in c++ or use a Plugin. I elected Stefander’s JSON Query Plugin for HTTPS GET/POST from UE4 Client to my Gamesite Web Server w/ custom PHP Request Handler (Worpress Plugin API).
Those projects sound really interesting and ambitious! I wish you luck and maybe we can exchange notes here and there! Its always good to meet others who have the same goal of writing awesome software. Once I get up to snuff in UE4 maybe we could even collaborate, I’m still getting familiar with it though. I’m sure I will get to UMG in time, I don’t doubt its capabilities. I’m just specifically looking for familiarity before I start exploring the vast amount of features that UE4 offers!
That said, I found SlateViewer and took a look, that’s exactly what I’m looking for! Not a bad app either! It has really good intentions. Incredibly buggy but that’s okay, not like its production level app anyway. It’ll be a perfect example I think! Right now I’m going to examine its structure and source to see if I can deduce the following:
The build process for a standalone app using Slate
Is there a part of the documentation that explains how to set up a project like that? I see that there is a program called “BlankProgram” that has just what’s needed to interface with the logging part of the engine, and probably has access to other parts as well. Is there documentation that addresses how to create a project like BlankProgram, one that isn’t really tied to the editor and can run on its own? I suppose what I’d want to do is be able to just create a new project in an instance of Visual Studio and bring in the UE4 dependencies.
Looking at how its set up, if I go to SlateViewer properties, I notice in Configuration Properties underneath VC++ Directories an entry for NMake. There’s obviously quite the build process for something like this, but I don’t see any way to create this from the Unreal Project Browser. Maybe there is a different process? Or is it all just look at the code figure it out? I can do that if I have to, I just wanted to know if there is a well defined process somewhere and I just missed it in the documentation.
I have been looking for the same thing too - exactly like SlateViewer but able to load Unreal level in one of the children… well just like the Unreal Editor but simplified one. But one thing perplex me, how can I tell a particular child window to actually render level? I am quite desperate looking for the answer.
Nevermind, I figured out how to generate a standalone project Will post video tutorial soon, hopefully by this weekend if I can find time!
@Syedhs, I’m not quite sure that question is within the scope of this thread. In fact, neither is my question about how to build a standalone application. I’ll start another thread specifically referencing that issue along with my findings.
To summarize this thread, my question was Is it possible to build a Qt-like form application with Unreal without the full Engine? The answer is Yes you can, and a project called SlateViewer is a good example of such a project that does that.
It’s an old topic but still on the bench, even more with Unreal Studio! Be able to build a 3D application not just a fullscreen game. I think we are a lot to want to put a 3D view in a Slate application supporting resizing (not scaling), docking/undocking, and so on…
The SlateViewer sample is a good start, but how to put the 3D engine inside a view?
Is there an Epic developer that can provide this kind of app building from the Editor? I’m not sure it is possible to do this kind of customization. And please, avoid: “look the Editor source code”