Thanks for the info, seems pretty valid choice for 30reqs/s for free.
Have to do some research on .
@ How is gamepad support in UMG looking for 4.5?
I see that we can set focus individually on widgets now in the preview release, but I still can’t see away to actually click a button with a gamepad button press…
No gamepad support in 4.5. Hopefully 4.6.
I really appreciate in other systems such as Unity’s NGUI or their own new GUI system, there is built in navigation support for keyboard and gamepad. Their systems attempt to determine the correct flow by default, but you can also specify each direction from a specific element if you need to.
Something like that for UMG would be wonderful.
I agree
Which one do you guys think it would be better for a noob like me to build a vehicle HUD: UMG or HUD blueprint?
I downloaded the 4.5 preview - looking really sharp Epic, great job! My only is, and I can provide more detail information if you think is needed. I used a UMG widget in 4.0 - I didn’t do much with it but display debug information knowing it was still pretty experimental but it failed to load in my project in 4.5 preview (the only I had). I got a linker load error, with bad name, appeared to happen when trying to do some sort of serialization with a struct. My guess without going to far into it, there is a struct in 4.4 or class in UMG that no longer exists. If is just expected - no big deal, but if not let me know I can post a bug on the answers page with more info if it will help with 4.5 Q and A.
Thanks,
UMG is shaping up nicely , awesome work!
I’m having some difficulty getting Slate Widget Styles to apply to Text Blocks in 4.4.1. I can’t seem to get any properties (eg. font, color, highlight color etc.) from a TextBlockWidgetStyle to show up on a Text Block in the Designer view. Using the same approach with a ButtonWidgetStyle and a Button seems to work. Is a known?
One more question - let’s say I have a Button that contains a Text Block. I know I can use a ButtonWidgetStyle to change the button background based on rollover state (eg. normal, highlighted, pressed etc). But is it possible to change the Text Block style based on the button rollover state? In my specific scenario I’d like to change the Text Block color to be yellow when highlighted/pressed, white when normal, and grey when disabled.
Sounds like the serialization we had just after branching for 4.5. I’m not certain what changelist the preview build was built from, but if you wouldn’t mind sending me enough assets for me to replicate the I would appreciate it - just to be sure it’s that and not something else.
Styles in 4.4 were terrible. For 4.5 the style asset is dead, at least as far as UMG is concerned. In 4.5, all the Slate structs representing the style information are exposed directly in UMG widgets, so that you can mutate all the state about any widgets style at runtime. A necessity if you want to use Dynamic Material Instances in the brushes for a style.
To change the text color, you should be able to now change the foreground color on the button during the different states, and configure your text’s color to be set to “Inherit”. Once you do that, the text will match the foreground color determined by the button. is all 4.5 stuff - I said should because the work to get slate colors working (the options for inheriting foreground color) was all kind of last minute improvement. Several widgets that should have slate colors may not and instead have linear colors, which prevent inheriting foreground color, something that will no doubt get more improvement in 4.6.
If all else fails, you can always do it with scriptable logic in a blueprint - which is less awesome, but it will work. And you can always make a reusable button by making a user widget of a button that contains the text, and then does all the work in the user widget. The only trick you’ve got to do is forward the click events by defining a new Event that gets fired by the user widget when the button is pressed internally. And expose a text variable that you set on the textblock on construct of the user widget.
Sent you a private message with the asset in question. Let me know if you find anything.
Mobile with “Get Input Motion State” node
I don’t understand why, but when I add a widget, the “Get Input Motion State” node return anything.
Without the widget, “Get Input Motion State” work fine.
And, when I use the “Virtual Joystick” touch interface, after a touch in the joystick, everything is back to normal. (But normally I don’t use virtual joystick, only Input Motion).
There may be a bug that causes UMG widgets to consume the input preventing it from reaching the game. We redid a lot of how things are added to the viewport for 4.5. I’ll try to find some time to see if is still a bug in 4.5.
is that future in 4.5 or do i use the other method you mentioned in previous page that was available in ?
Not 4.5, last minute issues. It will be in probably in a couple weeks - new target is 4.6 for basic support.
very disappointing. was looking forward to . another month of irrelevance coming up for me. smh
How to override Tick event?
I somehow made a class derived from UUserWidget to make a custom UMG Widget Blueprint. Next step is I need to put some custom C++ code on every tick as UMG widget shows up on the screen. Please show me how to do . So far 's what I’ve done :
At .h file :
class TESTUMGINVENTORY_API UMyInventoryUserWidget : public UUserWidget
{
GENERATED_UCLASS_BODY()
virtual void Tick(FGeometry MyGeometry, float DeltaTime) override; // i want to override tick
};
At .cpp file :
UMyInventoryUserWidget::UMyInventoryUserWidget(const class FPostConstructInitializeProperties& PCIP)
: Super(PCIP)
{
}
void UMyInventoryUserWidget::Tick(FGeometry MyGeometry, float InDeltaTime)
{
UUserWidget::Tick(MyGeometry, InDeltaTime);
print("Ticking brohh!"); // using #define print->gEngine
}
And then i make new widget blueprint based on custom UUserWidget class. I’ve made sure that the widget is perfectly initialized (created & added to viewport). Problem is the “Ticking broh” text never shows up. As if the Tick() function never gets called.
Is the correct way to do it? Please help.
Thanks.
Another question. Can you dynamically create/edit ui widgets.
If example, dynamically creating a button, textblock, vertical box through blueprints or c++.
For example for someone trying to make a UI editor plugin or UI editor blueprints
You can dynamically create user widgets, not primitive widgets in blueprints. In C++ You can do whatever you want
UMG isn’t designed to make editor UI though, if you want to do that you’ll need to continue using slate.
i don’t mean editor UI but “UI editor” like a specialized UMG or better understood as a “menu editor”.
A specilized editor to create AAA quality menus using already established presets.
Lets say i have a menu of:
Start game
Settings
Controls
Quit
I’m looking for an editor that can delete/create more options with the same configuration.
That way users would quickly be able to iterate with Menu presets, changing not only location, size, text and color which i think is possible using blueprints (beginning production today so i’m not sure??).
But also be able to add and remove new buttons, text-block, image-box, with the same configuration specified by the preset.
So for example if each menu option is a combination of one button, text-block and image box.
they are all in a vertical box.
using a ui editor a user can then add more combo as menu options with the same settings (location, font, color, etc for each element) for the combo.