What is it?
SetupUEr is an Unreal Engine editor/runtime plugin that allows you to create an optional, configurable, titled and logo’d setup front-end loader in which users can edit certain graphics and keyboard options, which will be saved across sessions.
Features:
Can be configured to be shown at game start automatically, or only if the user passes the command line parameter ‘-setup’ along
Decide the game title and logo in the Unreal Editor, and decide which setup options you want to show your users, in which order
Graphics options include resolution, fullscreen/borderless/windowed mode, vsync and various rendering quality sliders
Keyboard options include a quick QWERTY<->AZERTY button and the ability to reassign keys and mouse buttons for axes and actions
Technical Details:
Functionality split between an editor and a game startup element. Set up your basic UI options and look in the editor, then watch it appear when the game is run (as shown in the screenshots)
Basic graphics options: Fullscreen/borderless/windowed, resolution, VSync, multi monitor support
Graphics quality options for performance tweaking
Key remapping from project-assigned input keys/mouse buttons, supports most keyboard keys and mouse buttons
Settings are saved on disk and re-applied on game start
Confused? Maybe these images of it in action will help.
Depends on how far you want to customize it, really.
You can currently set the window title, logo image (any 300x100 Texture2D. Larger textures work, but will be resized to 300x100) and which sections to show in which order.
Once the marketplace version is up and the source code is released (which needs some cleaning up atm), you can customize more of it, and even add your own new sections.
Note that this is pure Slate though, and it happens in a very early stage of the game loading, so you won’t be able to do everything.
(Yes, I tried to get rid of the stripes in the background. No, I haven’t found a way to do it yet, since it’s a top level modal window and this seems to be ‘baked in’ so to speak.)
I’m open to suggestions and might be able to add some of them before it goes on the marketplace.
Did a small update to stop unicode characters in the game title from breaking everything.
(Repeat after me: Never use FFileHelper::LoadANSITextFileToStrings)
Also rewrote the keyboard input code to be slightly cleaner.
very interested in this !
but i would really love to have more grafik adjustment capabilities for it.
suggestions: (not sure if they are doable at all
title screen that spans the whole width of the menu
editable background picture that spans the whole menu
transparency of background (so you can see the desktop behind)
alpha channel support for background picture, so you can have non rectangular shapes
sorry if this is pure nonsense but i guess many of us would like to have the launcher designed specific to the games we work on
thx for the great work so far
kind regards
stucki
The rest of these aren’t, as far as I have been able to ascertain.
Given that it’s a plugin using slate before the actual engine has been initialized, you’re pretty much limited to what non-in-3D-engine slate supports, I’m afraid.
Thank you, glad you like it and it’s useful to you!
Strange. Is it being cooked out? (mine never were, but then my packaged versions never removed “unused” files)
Have you tried putting the logo texture in a separate directory and explicitly telling UE to include it?
(File\Package Project\Packaging Settings… then go to Packaging, click the little v arrow at the bottom to expand it and then adding the directory to additional asset directories to cook)
(Or alternatively, using it anywhere else in your maps/meshes/blueprints I guess?)
I really like this plugin and works great for testing my levels on different computers. But, I’m not a C++ programmer. Could you explain how to " pass command line parameter ‘-setup’ ". Can this be done in blueprints? It would be great if you could call this from another menu or a key press.
It has nothing to do with programming, and isn’t really something for you to worry about in general usage.
Imagine people started your game from the command prompt instead of just clicking on it in an explorer window.
They’d type something like
to make it run, and it would take you to the game, or show the SetupUEr window, depending on if you turned on showing it on start.
If they however typed
, they would definitely get the SetupUEr settings window (in case they turned it off by accident, for example) before the game, no matter what.
Look at it this way: say you get your game on steam.
Now the normal “Play Game…” menu option would just run
.
However, say you wanted to add another menu option called “Setup…” like some other games have. You would make that call
instead.
Or if you didn’t, and people wanted to see the SetupUEr window at the start, they could go to the library properties for your game, click “set launch options…” and just type
there and they’d get the same effect.
Makes sense?