So that is exactly the case. A while ago, I made an interactive 3D widget for a Chest Inventory I have in my game and worked a charm. I left it and moved to continue making my game until I had to use a 3D widget again. It didn’t work, and as I realized, my Chest Inventory didn’t either.
I tried making a 3D widget in a clean project, and it works. I reverted everything I had changed by looking at the clean project. And beyond that, I also tried everything. Possession number, the way the player spawns in the level, different numbers in user index, staying away from coffee, and nothing really worked. I am desperate, as my game is in a pretty advanced state to just scrap it and start over, a practice that should never be the solution to anything.
Please somebody help me? Whatever it is that got me stuck, it’s not within the Widget Interaction settings…
The Input flag is unchecked, just like in the clean project that the 3D Widget works. I set the Widget’s Z Order to 1000 as I remember I may have tweaked it in some widgets, but certainly not in such a high number. As for the Game Mode, instead of trying anything in the big project, I went to the clean one and set the Mode to Game Only on Begin Play and the 3D Widget STILL worked. I am still looking into it, although I don’t know what more I can do.
Run the project, hit the highlighted button in the upper left and then mouse over the viewport, the light grey horizontal highlight will show what you’re mousing over. Saved my bacon many times.
Ok, I did that now. I admit I really don’t know how to read it, I see nothing familiar in those lists, but what’s for sure is, nothing changes on the Widget Reflector window when I hover over my 3D widget.
nothing changes on the Widget
Reflector window when I hover over my
3D widget.
Can you drop a screenshot of that - when the cursor is over the element that you’re supposed to interact with.
Generally speaking you should be getting at least the name of the actor that owns the component; or the exact name of the widget element providing it’s set to something else than Not Hit-Testable.
You can also double check the 2d widget hierarchy to ensure that at least 1 element has its Visibility set to Visible. Grasping at straws here a bit.
So you’re hitting the viewport directly, meaning no other rogue widgets are in the way - at least we’ve eliminated that. And the widget component is drawing in world space (now that I’ve seen it) - meaning widget reflector will be useless from now on; still, it served its purpose.
I never worked with Widget Interaction component so I must take your word for it being set up correctly here.
How are the collision settings on the Widget Component? By default it’s UI, blocking Visibility.
Collision set to UI, and here’s a photo of the options for Text Block. It doesn’t work when it’s in visible or the Not Hit Self and Children. As you see there is no option for Hit-Testable(self and all children). I have done exactly what you suggest, and all I can think of now is the numerous complaints I read from various people about the 3D widget system. I guess I’ll have to change my gameplay after all, even though 3D widgets are crucial. If it was something fixable I guess we would have nailed it by now. Sad day today for my game!
The root and the canvas might as well be Visible, does not matter here much for as long as they’re not blocking tunnelling by being Not Hit-Testable (self and all children)
Nothing else comes to mind at this point. A checklist in case something else was missed:
block Visibility channel on the Widget Component and set collision to at least Query Only (UI mode defaults to this)
make sure the Interaction Distance is long enough and Enable Hit Testing is true
ensure the 2d widget elements can tunnel through and the interactive element (the button) is Visible
If I can think of anything else that might be interfering with this, I’ll update the thread.
Perhaps you could delete the widget component and its widget, create brand new ones and then try again. The almost proverbial switching something off & on works surprisingly well at times. And it’s surely easier than redoing the entire project.
I tried that too. I believe it’s either broken in the first-person character, or the whole project. I will test it with a new first-person character and see where that goes. I really can’t wrap my head around what could be the problem.
UPDATE: I made a NEW first-person character, STILL the same behavior. Is it possible that any of the UI widgets may be blocking the 3D widget? I believe that is impossible and that’s why we have the interaction component.