Yesh, and it’s broken again…
I have updated to 4.13 and it doesn’t seem to work?
(Also, bump)
I had the same problem. Probably it could be fixed by using new interactive component component.
Just wanted to post this here, this is the new method of interacting with 3D Widgets.
While I can understand the benefits of this method, it has also caused more issues (for me at least, mostly because the system I had was working fine, and now it’s not).
The big one being that you can no longer easily type into EditableTextBox’s on a 3D widget, where-as, before, you could.
Most of my game is based around interaction with in game computers, navigating the back-end of the in-game operating systems with command lines (in game hacking) and now it’s been made into a bit of a hassle.
I posted on answerhub in regards to the EditableTextBox problem if anybody wishes to contribute.
It’s broken again in 4.13 indeed.
sigh
Is there a way to disable new 3D widget interaction thing ? (since it’s an experimental feature anyway)
To what end? It’s a component, it doesn’t do anything until you tell it to.
It is working as intended in 4.13 AFAIK. What is currently broken?
Ah, I see. So, if it’s a component, how can it break existing setup that was made without the new component ? (assuming developer keeps existing contraption and doesn’t add Widget Interaction component to player’s character)
Because input into Widget Components is entirely different now; the component is an extension of those differences to allow input to widgets.
Basically what the initial post was about(there are repro steps) - when you create Widget comp. in the world and trying to interact with it via using mouse and “Game and UI input mode”/“UI input mode” nothing happens. For example, 3d widget in my SuperGrid works perfectly fine in UE 4.12.x, yet after converting project to UE 4.13 interaction won’t register.
I’ve changed interaction “style” to the new one - it works great and better than the old way for me, but the old way might be more preferable for other people and different tasks.
PS: Thanks for interactive widget, much easier to use
Nick, sorry to bother you about the EditableTextBox in UMG again, but you stated(in my AnswerHub post):
“Essentially you need to set focus as Slate User 0, instead of the slate user index you’re assigned based on the virtual user index. That will change the focus of Slate for the hardware mouse and keyboard user, placing it onto whatever widget you click.”
If you don’t mind, could you please elaborate a little further? I looked at the code and I was struggling with where I might be able to make these changes, or at least I didn’t know exactly where I might look to find somewhere to start, other than the WIC class.
I actually wanted to create some kind of switch that would change between the old and new interaction method, but my programming knowledge is very minimal, very limited.
Thanks
Everywhere the WIC calls Route_______ for slate events, you’ll tell it to use a specific user index, instead of the user index for the virtual user. In your case, user index 0, which is the user index for hardware cursor and mouse - though I expect the results won’t be great, since it will keep stealing focus from the viewport. The better way to do what you want, would probably be to write some C++ code that used the WIC to send all keyboard input the game receives, because otherwise you’re going right back to the problems caused by the system prior to the WIC. Also - there’s no way to know, “am i focused on an editable textbox” that concept doesn’t exist, there are widgets, and widgets have focus, what a widget chooses to do with its focus and any input is entirely up to the widget.
Thanks Nick, that’s certainly helpful. I’ll try and work something out from there. Although sadly I suspect I will probably eventually give in again and ask for more guidance…but until then. Let’s cross fingers and hope I can make some progress haha.
Exactly! I need to use mouse for interacting with 3D Widget. It worked well in 4.12. There is a way to make this works with UI input mode? or a way to create a 3D mouse, maybe ? Because for now, 4.13 just broke my project…
That exactly!
It there a way to make mouse in UI input mode works with 3D widget? Or maybe creat a 3D mouse, I don’t know? Because now 4.13 just broke all my gameplay project…
You set the mode of the WIC to Mouse, and you forward all mouse input to it not handled by other gameplay, letting it know when the mouse button is pressed and when it’s released.
It’s ok, I managed to get this worked but handling the focus with mouse widget component is not very clear/easy especially with text input.
(sorry for the changing name account)
How did you set up mouse input forwarding? I tried all kinds of events but either they don’t fire or there is some kind of input processing chain that catches input away before my pawn receives it.
EDIT: Nevermind, I had simply not made my PlayerController possess the Pawn containing that logic. It works now.
;604938]
Here’s a good way to get the Widget Interaction Component and your 3D Widget working with a MOUSE CLICK.
Go into your Characters blueprint.
- +Add a “Widget Interaction” component from the component window.
- +Add a “Widget” component from the component window.
- Make sure the Widget Component has your Widget of choice in the ‘widget class’.
These are my settings for the Widget interaction component:
Go into the graph editor of the blueprint widget you selected before.
Find your desired button, (or whatever you are using. I’ve only tested this for buttons), you want to work with the Widget Interaction component.
Click the “>OnHovered” Event for that button.
Then do this for that OnHovered event:
[/QUOTE]
Here’s a system I documented down