• Hi Guest!

    We are extremely excited to announce the release of our first Beta1.1 and the first release of our Public AddonKit!
    To participate in the Beta, a subscription to the Entertainer or Creator Tier is required. For access to the Public AddonKit you must be a Creator tier member. Once subscribed, download instructions can be found here.

    Click here for information and guides regarding the VaM2 beta. Join our Discord server for more announcements and community discussion about VaM2.
  • Hi Guest!

    VaM2 Resource Categories have now been added to the Hub! For information on posting VaM2 resources and details about VaM2 related changes to our Community Forums, please see our official announcement here.
Mouse Control Overhaul

Plugins + Scripts Mouse Control Overhaul

Download [<1 MB]

Datel

Active member
Joined
Jul 23, 2024
Messages
66
Reactions
156
Datel submitted a new resource:

Mouse Control Overhaul - Finally working mouse selection, Local/Global axis mode, controller dragging, many smaller tweaks

Note:
  • Works as session plugin.
  • I dont have VR, so I can't test how this plugin works with it.
  • Need to disable MacGruber's PowerHandles plugin because it's logic is already implemented here and they are interfere with each other.

Improvements:​

Custom hover selection:​

  • Choosing the closest controller to mouse position in screen space using mouse location and radius which depends of fov and...

Read more about this resource...
 
I used AI to port the grid mode in PowerHandles perfectly.
 

Attachments

  • MouseControlOverhaul.cs
    42.1 KB · Views: 0
I used AI to port the grid mode in PowerHandles perfectly.
Sorry, but AI uncommented PowerHandles variables and code, but added some UI control and description. It works the same as MacGruber's grid and it is rounding all coordinates even moving along one axis. I cannot use that. This needs different approach, like moving controller relatively by grid size distance along axis or surface.
But also, how many people use grid mode? I'm not sure it happens quite often :unsure:
 
This is undoubtedly a game changer! Nice work!:D(y)

Could you add a feature similar to ‘Gizmo Scale’ in PowerHandles to adjust the size of the handles? That feature is an important reason why I cannot leave PowerHandles, as my scenes often contain a large number of dense atomic assets
 
First off, thank you, the accuracy is stark and has been a long time frustration for scene building with a ton of stuff on screen.

I have to complain though. Disabling the C key is unhinged, no valid reason to flat out disable it with no option.
When two atoms are stacked at 0,0,0 there's no way to select the between them without clicking through the atom select menu.

Need a toggle to enable / disable the original binding please.
 
This is undoubtedly a game changer! Nice work!:D(y)

Could you add a feature similar to ‘Gizmo Scale’ in PowerHandles to adjust the size of the handles? That feature is an important reason why I cannot leave PowerHandles, as my scenes often contain a large number of dense atomic assets
Thank you) I thought about to move this logic with controllers size into separated plugin, because it does not need to be inside mouse control, and can be used in VR mode too :unsure:
 
First off, thank you, the accuracy is stark and has been a long time frustration for scene building with a ton of stuff on screen.

I have to complain though. Disabling the C key is unhinged, no valid reason to flat out disable it with no option.
When two atoms are stacked at 0,0,0 there's no way to select the between them without clicking through the atom select menu.

Need a toggle to enable / disable the original binding please.
Thanks)
The problem is default C button works with default selection method. I made a complete new system with different calculation methods and C key just don't do anything. I agree that controllers with same position are not selectable and need to think how to make it convenient :unsure:
 
Thank you) I thought about to move this logic with controllers size into separated plugin, because it does not need to be inside mouse control, and can be used in VR mode too :unsure:
Glad to hear that! You have a point, I can't wait for ur new plugin!! :D
 
Datel updated Mouse Control Overhaul with a new update entry:

Fixed hotkeys, Auto unfocus InputField, disable camera rotation on GUI

Fixed hotkeys:​

Before update hotkeys can be triggered when you entering text in an InputField.

Auto unfocus InputField:​

By default, when you finish writing text in an input field by Enter, the system still have this field focused and blocking default keyboard control.
And I made standalone plugin for this feature.

Disable camera rotation on GUI:​

Plugin is disabling default navigation (camera rotation and panning by mouse) if...

Read the rest of this update entry...
 
Nice! Feels much better selecting Controllers. However, when using Person -> Move -> "Select Align To From Scene" the selection feels worse to me when using your plugin in a dense controller environment. It keeps selecting unexpected nearby controllers not directly under the mouse cursor. Could be just me, though. I am using the plugin on the desktop display while running in VR mode. VR selection does not work at all.
 
Last edited:
Nice! Feels much better selecting Controllers. However, when using Person -> Move -> "Select Align To From Scene" the selection feels worse to me when using your plugin in a dense controller environment. It keeps selecting unexpected nearby controllers not directly under the mouse cursor. Could be just me, though. I am using the plugin on the desktop display while running in VR mode. VR selection does not work at all.
Thanks. No, all is fine with you, I wrote this issue in "Knowing issues", and buttons like "Select Align To From Scene", "Select Parent Atom From Scene", etc changing system's mode to select atoms or controlers with default mouse logic. I am thinking how could I replace this :unsure:
Not sure how to enable default VR methods, but not the mouse, a lot of functions are private.
 
Thank you for the great plugin. Sadly as you admit, it doesn't work in VR. I think maybe for the time being can you create an option that when VR is running it disables the plugin? As of right now, when VR is running I simply have to disable the plugin, however an option to automatically disable when VR is running would be a handy feature. :cool:
 
Thank you for the great plugin. Sadly as you admit, it doesn't work in VR. I think maybe for the time being can you create an option that when VR is running it disables the plugin? As of right now, when VR is running I simply have to disable the plugin, however an option to automatically disable when VR is running would be a handy feature. :cool:
Thanks) As I said, I cannot test it for now. If you have VR can you answer, can VaM switch between VR and Desktop modes runtime? And can monitor and VR work at the same time?
If VaM cannot do it and only supports something one, it should be not hard :unsure:
 
I did a test, I started the Desktop Vam using "VaM (Desktop Mode).bat", everything was working fine in desktop mode. I then started the VR version of Vam using batch file "START "VaM" VaM.exe -vrmode OpenVR". The VR mode started fine. I took off the headset and could see that the desktop mode went to a black screen with only the menu showing, but putting back on the headset the VR mode was working fine viewing thru the VR headset. I took off the VR headset, since the menu was working (but it was a black screeen) in the desktop mode I opened a new scene, it loaded fine in desktop mode. I put on the VR headset and the scene was frozen. I hope that gives you some information, I think they cannot both be ran at the same time.
 
I did a test, I started the Desktop Vam using "VaM (Desktop Mode).bat", everything was working fine in desktop mode. I then started the VR version of Vam using batch file "START "VaM" VaM.exe -vrmode OpenVR". The VR mode started fine. I took off the headset and could see that the desktop mode went to a black screen with only the menu showing, but putting back on the headset the VR mode was working fine viewing thru the VR headset. I took off the VR headset, since the menu was working (but it was a black screeen) in the desktop mode I opened a new scene, it loaded fine in desktop mode. I put on the VR headset and the scene was frozen. I hope that gives you some information, I think they cannot both be ran at the same time.
Thank you for this tests) Looks like VR and Desktop cannot work together, so checking is current mode Desktop and ignore actions if not, should be easy. I'll try to finish current modifications and update this thing too :unsure:
 
Oh my god this is awesome! One small issue: The gizmo sometimes pops up even when targets are off, mostly at the beginning. It seems like toggling targets on and off hides it so at least there's a remedy.
 
Oh my god this is awesome! One small issue: The gizmo sometimes pops up even when targets are off, mostly at the beginning. It seems like toggling targets on and off hides it so at least there's a remedy.
Thank you. Could you describe it in more details? Because i tried to check it and selecting random controller do not show gizmo, also with always showing handler, selecting random controllers do not hiding it even for one frame :unsure: Toggling targets should not do something with gizmo.
If you don't use some other plugins which modify handlers, like MacGruber's Power Handles, I need more information about it
 
Thank you. Could you describe it in more details? Because i tried to check it and selecting random controller do not show gizmo, also with always showing handler, selecting random controllers do not hiding it even for one frame :unsure: Toggling targets should not do something with gizmo.
If you don't use some other plugins which modify handlers, like MacGruber's Power Handles, I need more information about it
When I load the game, click "Return to scene view" button, and just add a cube atom, its gizmo is already visible. I have to toggle targets on/off to hide it. Then occasionally as I'm switching scenes and tweaking them, or working on stuff, it randomly pops up, but I wasn't able to figure out what series of steps is causing that yet.
 
When I load the game, click "Return to scene view" button, and just add a cube atom, its gizmo is already visible. I have to toggle targets on/off to hide it. Then occasionally as I'm switching scenes and tweaking them, or working on stuff, it randomly pops up, but I wasn't able to figure out what series of steps is causing that yet.
In my code, gozmo visibility is updating every frame in LateUpdate event after all updates. This should not be visible, so I think maybe some other plugin setting up handles visibility too? :unsure:
 
In my code, gozmo visibility is updating every frame in LateUpdate event after all updates. This should not be visible, so I think maybe some other plugin setting up handles visibility too? :unsure:
I cleared all of my session plugins from default profile, restarted vam, and I still see the gizmo on start. It clears once I toggle targets on->off. And whatever state is causing it to be visible is occasionally reintroduced while using vam so I have to re-toggle here and there.

 
I cleared all of my session plugins from default profile, restarted vam, and I still see the gizmo on start. It clears once I toggle targets on->off. And whatever state is causing it to be visible is occasionally reintroduced while using vam so I have to re-toggle here and there.

View attachment 510199
Thank you for the video. I found that this happens when targets are hidden initialization of plugin. I'll work on this :unsure:
 
Bug report
Tab key does not hide the "default" mouse cursor - it adds cross and cursors are doubled.

Feature request
Could you add option to display name of controller near mouse cursor? It's a little unproductive to constantly move eyes to the corner and back. With some solid background so it would be easy visible.

Otherwise - great work - finally can pick a controller without throwing fucks in every direction...
 
Bug report
Tab key does not hide the "default" mouse cursor - it adds cross and cursors are doubled.

Feature request
Could you add option to display name of controller near mouse cursor? It's a little unproductive to constantly move eyes to the corner and back. With some solid background so it would be easy visible.

Otherwise - great work - finally can pick a controller without throwing fucks in every direction...
Thank you)

About cursor, I have info about this in Little Issues section. When I try to hide it every frame, it blinking constantly and looks worse than just visible cursor.

I thought about name of controller near cursor, it would be very helpful, but did not test how to make it. For now, I am fixing other bugs and almost finished SelectFromScene buttons and scene.
I'll have some other ideas for future features, will try to make them after common methods which should work like default one.
 
Back
Top Bottom