Gizmo visibility and plugin /world UI related questions

JFKxxx

New member
Messages
10
Reactions
2
Points
3
Hello all,

So I'm into plugin developpement for a few weeks now and I managed to get a few achievements (thanks to @Acid Bubbles, @MacGruber , @JayJayWon , @hazmhox and a few others : I admit I basically ripped your code at first, but it allowed me to understand many things about VaM scripting and I'm starting to get it right by myself) .

I still struggle on many things though, and maybe you guys can give me some hints.

Basically, what I'm trying to do right now is to manage gizmos and UI visibility with scripts. The plugin I'm working on spawns a few collision triggers and parent them to a containing person Atom (which holds the plugin itself) , and I'm controlling their position and scale precisely within the plugin UI, but i'd like to get the trigger collision sphere visible (see below) while the plugin UI is open.
1689537086484.png

Right now the collision gizmo disappears whenever I open the plugin UI to tweak it's parameters, which is not convenient at all because you have to open the plugin, fiddle with the controls, then select the trigger atom to check, and so on...)


What I want to to is to force the visibility of the collision sphere, or at least add some kind of World UI element to see visually the scale and location of the object while editing.
I've tried to mess with the atom.maincontroller object, with a few results but it doesn't seem to lead anywhere.
Right now the only workaround I could think of is to spawn a sphere atom without collision and a translucid material and attach it to the trigger, but this is not satisfying form a perf/UX perspective.

Any hint on how to achieve this ? Should I look more into the maincontroller object, or maybe the UnityEngine.Gizmos class ? I'm only discovering Unity and it's articulation with Vam so maybe I'm missing something obvious here.

Also I'm trying to improve on my poor UI design skills and I'm looking for some hints to enhance Vam's native plugin and world UI (which is pretty crappy, I have to say) to make my plugins user friendly. From what I saw I may have to look into the UnityEngine.Canvas class, but I would love a few hints from the plugin gurus around ...For example: is there any way to get rid of the "two columns, fixed witdth" constraints of the UI's UIDynamic components ? To create custom controls ? How about world UI controls ? these kind of things...)

Thanks in advance for helping guys.
 
Have you looked at my PowerHandles plugin? (part of Essentials)
I vaguely remember doing something to hide that collision sphere, I think for Empty atoms? That may help to figure out what parts of VaMs codebase to look at.

Otherwise, IdlePoser may help to simply implement your own line rendering, so you can display whatever you want.

Then there is my FocusArea plugin (part of Connect) which renders 3D-capsules which serve as raycast targets for VirtualLock.

Regarding custom UI controls....various of my plugins have those, although it may not be that obvious as I usually try to keep the style of VaM. IdlePoser is full fo those and also LogicBricks StateMachine. Also the Benchmark scene, which uses in-scene UI imported as AssetBundle.
 
Hey thanks for your quick reply, I've looked some of your stuff but I never thought that these would use UI related stuff. I'l have a look. (y)

EDIT : Your PowerHandles thing did the trick ! Thank you !
 
Last edited:
Back
Top Bottom