Neos-Metaverse / NeosPublic

A public issue/wiki only repository for the NeosVR project
194 stars 9 forks source link

Recent Tooltip and Interaction changes (Projection Dev Tip, Logix Snapping) in VR #2009

Closed ProbablePrime closed 3 years ago

ProbablePrime commented 3 years ago

What topic do you want to discuss?

I wanted to provide some general feedback on the recent tooltip changes that were made for Desktop Support. Some of these changes also effected VR mode and I had some feedback.

I want to be clear that all of these changes are great for Desktop mode and that I've had no Desktop issues. I'd like to keep this discussion focused on the VR aspects.

Goal of discussion

I'm hoping to understand the goals, implications, issues and future of these interaction models to further adjust my mental model of how to build stuff in Neos.

Once again I'd like to keep this discussion to VR and the VR Implications of these changes.

Discussion:

Recently a couple of(there may be more, feel free to comment) changes associated with Desktop Mode have also affected VR Mode. These changes are wreaking havoc with my muscle memory but that's ok and I'll adjust. However there are some aspects that are causing some issues.

Logix / Logix Tool Snapping

I understand a fully support the inclusion generically of the Logix Node Snapping function that now exists on the LogiX tool. Its a good way for new users to learn how to link nodes quickly.

However, I'm having difficulty with a few aspects of this change:

  1. The Automatic Snap, makes no distinction between data types. For example a ribbon will snap to an impulse input when the actual ribbon is a float and visa versa.
  2. The Automatic Snap breaks some speed and precision that I used to have when making LogiX at speed. As it will now "Snap" to the nearest node sometimes this takes precedence over my intuition and knowledge. When combined with the first item it will sometimes cause an incorrect link. My tool is positioned where I want it to link to but a mild hand movement or jitter from tracking will snap it to a lower or high input momentarily. This throws off my whole plan and makes me sometimes work slower. It would be great to have this as an option similar to the Projection mode on the Dev Tip. I do agree its good for new users. (Feel free to tell me to open an actual feature request for this)

Developer Tip Project Oddities.

These are more some items which might be bugs or might be teething issues. I can open bugs for them but because I had a list I just wanted to use this type of issue. let me know.

  1. Scaling a sphere using the "Projection" mode of the developer tooltip and the sphere scaling gizmo is quite... tricky. I can't shrink a sphere beyond a few units off of its original size. I get into a loop where I can't really control its size if I want to shrink it... it grows larger.
  2. Scaling any object while in Projection mode using the scale gizmos's Central White Square is unpredictable. Before these changes the White square has always meant "Uniform scaling on all axises" now however using the white square appears to allow scaling in any axis. This is a little confusing

With both of these I can swap it back to the old interaction model "tip" but I wanted to discuss them and mention them on the chance that there's some logic, reason, upcoming changes or bugs going on here.

Summary

I'm not sure if these are bugs, feature requests or just teething while Desktop Mode is complete. Please provide some feedback on the items and I'll edit or make additional issues as needed. If other users have comments or have noticed things please let me know. I plan to test more gizmos in the new mode as soon as I can such as:

Thanks!

Banane9 commented 3 years ago

I've found the auto-snapping to have sped me up if anything, as I don't need to physically get the straight to the nodes.
However I've noticed the wrong type snapping too, which isn't so bad if you have a clear target, but might confuse new users too, if they think that it showing up for the auto-snap means it should connect somehow. At the same time, I assume this was done as the simplest form of allowing the snapping to target non-matching, but changeable inputs, like dragging an int onto a float slot and having the node's type change or a cast added.
In that regard, it would probably be the gold standard to only allow it to snap to targets that are compatible at all, although that'd require some more complicated filtering.

The problem you've described for the gizmos also seems to apply when trying to resize a sphere one just spawned, with the green grid. At that size, the laser then also focusses only onto the grid, not allowing one to target the sphere at all to open an inspector.

H3BO3 commented 3 years ago

I didn't play around with the snapping too long but I do agree that it should be a toggle like the devtip. The only other thing I noticed is that when grabbing a ribbon, the tool should not snap to the same point that the ribbon was grabbed from. This is something I had added in my experimental snapping logix tip, and it would have prevented the recent example of interface fields setting up drives on themselves accidentally.

Frooxius commented 3 years ago

On the LogiX one:

On the DevTooltip:

ProbablePrime commented 3 years ago

I can make the snapping optional feature in desktop

Did you mean VR?

Otherwise thank you, for responding

Frooxius commented 3 years ago

Ah yeah I meant in VR sorry!

In 2021.4.14.1059 the snapping is now optional, you need to inspect the tooltip to disable it though. The scaling gizmo should now also work properly!

Was there anything else that I missed?

shiftyscales commented 3 years ago

Prime has informed me that the needs of this issue have been met. Closing the issue.