Say Hello to the New Lua Draggers

I’ve been having an issue with any game that has a reasonably high part count (the place I’m testing with only has like ~5500 parts in the background). It’s way slower/laggier when using the move tool on parts that are adjacent to others (creating the white selection box on the face that is touching).
Old:


New:

It can be a little hard to tell there, but it’s very noticeably slower when working in studio. This has been the sole reason I’ve stayed away from the Lua Draggers beta so I’m hoping it’ll be improved soon (I haven’t seen many other reports of lag like this - is anyone else even experiencing this issue?)
Still excited though, these new draggers are wayyy better.

12 Likes

This is an amazing update. No more dragging a small part to the void when I’m trying to move it like 10 studs away from it’s original position.

4 Likes

I prioritized performance with Join Surfaces off since the majority of developers do their work with it off. I’m going to do an optimization pass on the Joint code soon, and things should improve noticeably when I do.

If you find a particularly good practical test case with noticeably worse performance than other similar situations please share it, I’d like some good real world test cases to use when I do that optimization pass.

7 Likes

Oh, gotcha. I only keep Join Surfaces on because of the white selection box, found it helpful to know when two surfaces are aligned properly but I forgot I could turn it off lol.
If I find anything noticeably severe in terms of performance I’ll share :+1:

5 Likes

A dream come true. I’m excited to try this out, should make my life a whole lot easier.

7 Likes

This is an amazing and welcoming change, if my request for move/rotate/scale increments back a while ago ever makes it into the next updates, then I’ll certainly be more happier, because I’ve used qCmdUtl before.

This won’t be in the initial release, but is very likely to be added as part of the further improvements we have planned.

And at the same time, we get a WIP alligning plugin! Amazing.

6 Likes

Will this be able to be option, like will we be able to continue to use the old if we wanted, when I tried it when it was beta there was some things I didn’t really like about it, such as parts moving into other parts etc when dragging and some other things. Also the draggers seemed not as easy to click and hold to move. I cannot really explain it out.

That said there are some features like parts snapping to angles of other parts. The smooth and small movement of parts

Basically I’m fine with using the old way if it’s possible to still be able to use it.

11 Likes

Have you tried to enable collisions?

5 Likes

No, the new draggers are currently force-enabled for 10% of users, and that will be increasing to 100% within a couple of weeks barring any significant issues coming up. We can temporarily disable the new draggers for you if you can explain a way in which they’re blocking your workflow while we work on a fix for that, but in the long run they will be forced for everyone.

We have planned features in the road-map which will fill the use case of actually “physically” freeform dragging something such that it never intersects with anything. In the meantime, let us know if there’s any use case which you’re actually blocked from completing with the new dragging behavior.

If I understand what you’re talking about correctly, you don’t like it that you can no longer click and slightly drag with your mouse to slightly adjust the position of a part (it will “jump” instead when you start the drag).

This is unfortunately a tradeoff that we had to make with the new dragging behavior: We decided that being able to predictably place a dragged object at almost any desired position was more important than being able to use the freeform dragging for those micro-adjustments.

2 Likes

You probably have the “Constraints” toggle turned on. When this toggle is turned on the draggers use Inverse Kinematic movement rather than geometric movement, you can think of it as moving the objects by applying a force rather than moving them by an exact offset. That “force” is applied through the center of the bounding box of the selected objects. Thus, if you drag an asymmetrical object, it will rotate (in the same way that if you push with your finger on the side of an object it will rotate as well as move).

I’m aware that this is not generally desirable behavior, and I’m going to be improving the situation with some changes coming in the next few months. For now you can turn off Constraints while moving models that aren’t part of a constrained mechanism.

2 Likes

This is cool but, is this supposed to happen?
https://gyazo.com/4f3aa62bf6d2b3ef6d3d587c6e105c33

Hold CTRL and resize, while still holding the mouse let go of the CTRL key and this happens

6 Likes

Personally, I prefer the old lua dragger at this moment - The new one seems very, very buggy still and shouldn’t have been rolled out to everyone yet. Pressing F On a model which you have moved sometimes means all of the outlines when dragging become huge, performance has seemed to have gotten a LOT Worst with this dragger, and I don’t have a bad PC (Ryzen 7 2700, 1660TI, 16GB Ram, SSD Storage). And most importantly I don’t like that fact that it forces you to use the overly size mouse icon. It should still allow you to use your own mouse icons rather than being forced to use the studio’s new default mouse. (When hovering over objects)

12 Likes

Great update! Making positioning more predictable is really going to help when quickly dragging models and objects from one place to another. I do have a question, however:

Is there any documentation available regarding the framework of the new lua draggers? Or will it be published at a later date?

1 Like

Although I really don’t use the draggers, I enjoy seeing them updated. However, this update did worsen something I’ve been noticing. Whenever you’re trying to use the move, scale, and rotate tools by clicking, holding and dragging the handles, sometimes it drags some other instance around where the mouse cursor is instead of moving/rotating/scaling the selected instance. This update seems to have worsened this, which contradicts the following statement:

The improper dragging of instances when you’re using the move, rotate, and scaling tools takes up time as you end up having to undo the accidental change. Additionally, the new rotate handles are a bit harder to use than the old handles as the area to click and hold the handle is smaller than the old spherical handles. However, I like how the handles get bigger and smaller depending on how far your camera is from the selected instance and that you can rotate the instance no matter where you click on the handle. My opinion on these changes are mostly positive, but the improper dragging of an instance when trying to use the move, scale, and rotate tools has persisted and worsened. I would prefer this to be fixed before using the new tool handles. Also, there should be an option to toggle between the old and new tool handles since I am sure there are people who prefer the old handles.

This is the intended behavior, and yes, it is a change from what it did before to make it more in line with how other editors work. (Though I just noticed that there’s a bug where it doesn’t update the part size immediately when you press or release Ctrl, only when you next move your mouse, that is a bug)

It’s supposed to be using whatever your system mouse icons are. Are you seeing different behavior?

Kinda. I don’t have plans to write explicit documentation for it, but after I’m done with whatever bugfixes are needed post-release I’m going to publish an example place with very descriptive comments where I show the framework being used to power a set of in-game draggers that work like the studio ones.

Basically, you think the area that you can click to “hit” the handles should be larger? It is slightly smaller than it was with the old tools, as the old hitbox was absurdly large compared to the hitboxes of the handle in many other tools.

If we get enough feedback on that we’re open to changing it or the overall size of the handles.

1 Like

I’m confused if this is the “New Lua Draggers” which got into my studio, image.
I can’t get rid of this new rotating tool and so as the new type of Move and Scale tool…

7 Likes

Yes, those are the new draggers. No, they aren’t optional, they’ve been in beta for a while and we’re incrementally force-migrating people over to them now.

5 Likes

i think so, i can’t remember though

2 Likes

Its Here And Its Great Sure Going To Make It Easier :grinning:

2 Likes

what I meant was I would click on the dragger (any of them but it was mostly resize and move) and it was as if I didn’t click it and it deselected my parts

Well that is disappointing if I’m being honest, I will have to give the new another try I guess. I just prefer the “old” more. its not that I don’t like/want change its just the way it is.

this may be my issue I stated above, if they are smaller. If this is the case it would be nice if they where a bit bigger.

Also regarding the hand courser like another user said it would be nice to use the one that is in the current build (non beta dragers) as its a little smaller, something else I mentioned and I see I didn’t word it or explain right.

this part I don’t like, using the selection tool and dragging the part around it goes into other parts rather then “hitting it” like it would with current draggers, it does however if you drag the courser over the other parts side. (if that makes sense)

beta (at first I am clicking near the left of the part then move it to the right to drag over the other parts surface)
robloxapp-20200727-0223251.wmv (505.4 KB)
current (what I like better, same thing)
robloxapp-20200727-0226417.wmv (435.1 KB)

3 Likes