How to turn off display switching of limit manipulators by camera angle

As the title says, is there any way to disable this? I want to be able to see all limits of the currently selected marker at all angles.

Hm, can you take a screenshot of what you are seeing? And if possible, draw what you would like to see?



These displays switch depending on the angle from which the marker is viewed, but I would like to see all in same time.

It may be annoying to have them overlap, but it is also annoying to have to adjust them while spinning the camera around, and I would like to switch to do both.

Having said that, that in itself is not much of a problem.

As you can see in the image I posted, there is a problem with the axis of the joint and the axis of the limit being out of alignment. This is probably due to the Rotate Axis Attribute, but the fact that the limit is only partially visible when working to confirm or correct the problem is hindering my work greatly.

Thanks, just to confirm; you are seeing every axis, but would like to be able to manipulate every axis without moving the camera?

Here’s what you should expect to see.

Ah, a wireframe would be easier to see and edit with attributes. This seems to work for now.

However, it seems that the maximum value of the Limit Range slider in the Channel box is sometimes set to 3.

The units in the Channel box come from Maya’s global preferences for Angular units. In my case, which is also the default, it’s set to Degrees. But you may have it set to Radians, which would mean a value of 3.14 radians = 180 degrees, also known as 1 pi.

The setting is in degrees. It looks just like this.

I think a few days ago it was working at 180 degrees, but now all scenes are behaving the same way. Perhaps it is a problem with my maya.

P.S.

So, I just needed to select the attribute and manipulate it with a middle-drag. I learned this operation from your video😅

The outcome I wanted to visually obtain through this question is this result.

In this image, the limit axis differs from the direction of the joint axis. I want to know how to correct this discrepancy.

What determines the limit axis?

I always want to get this kind of axis. (perfectly aligned with the axis of Joint)

limitOrient.zip (123.5 KB)

They try and follow your Maya rotate axis, such that the X axis of your rotate handle is equal to the X axis of your physics limits.

Here’s what happens.

Under normal circumstances, newly created joints have rotate axes that point in the direction of their child, and as such your limits will behave as you’d expect.

But as you tune your joints and their positions, their axes can easily get out of sync. Because Maya always draws joints as facing their child, but it doesn’t always reflect where the rotate axes point.

So when you apply limits now, they will keep facing in the Object-space rotate axis the joints are still having.

You have 2 options here.

  1. Change the joint axes
  2. Change the limit axes

Here’s how you can realign the joints, which is the ideal option because it keeps the Maya and Marker axes aligned and will make the most sense when you want to e.g. limit rotation around e.g. the Maya X axis.

The other option is to keep joints as-is, and change the limit axes instead. This means the axes no longer align; to Ragdoll this makes no difference, but to you the user it might become more tricky to understand why Ragdoll is limiting one axis when your rotate gizmo shows you another.

Hope it helps!

1 Like

Thank you marcus! Now I know my xyz’s :baby:

1 Like

When I press Ctrl and adjust one end of the limit range, the axis inverts. How can I avoid this?

Looks like you might have found a bug; try using the manual Edit Constraint Frame menu item to adjust them directly.

If you are able to send me a .rag file of this scene I can try and have this fixed!

I’ve had a look at your .rag file now, and spotted the problem.

As we can see, the issue with symmetry is both for shapes and limits.

What you can do to temporarily work around this is to switch from Pose X to World X.

Which is how I spotted the issue; Pose X should work, but it looks like the symmetrical pose from authoring this character is inverted. It’s as if you assigned Markers first, and then reoriented the joints. Could that have been the case?

Ragdoll remembers the initial pose of your character when you assign Markers to it, and uses that for Pose-space symmetry. But if the initial pose is changed, then Ragdoll will still remember the old one which is why symmetry looks off here.

You can re-install the Pose space with this script.

from ragdoll.vendor import cmdx

with cmdx.DagModifier() as mod:
    for marker in cmdx.ls(type="rdMarker"):
        tm = marker["sourceTransform"].input()
        mod.set_attr(marker["originMatrix"],
                     tm["worldMatrix"][0].as_matrix())

I’ll turn this into a menu item you can use next time this happens, but! I’m really curious how this could have happened. If you remember the steps, or can reproduce it, that would help a lot!

1 Like

I’ve successfully resolved the issue, thanks to your help.

Yes, I adjusted the character with the Markers already assigned based on the answers I got in this thread.

This character had a problem where the direction of the joints and the limits didn’t align when I added markers to the skeleton. This seemed to be related to the fact that this character was originally in an relaxed-pose and was adjusted to a T-pose using the Rotate Axis attribute.

So, I corrected the direction of all joints and then used Reset Constraint Frames as you suggested here to align the axis of the limits with the joints.

With Reset Constraint Frames, it appeared on the surface that I achieved the expected results, and since I couldn’t see the originalMatrix in the Attribute Editor of rMarker, I didn’t notice the difference.

I don’t know if it’s enough to add to the menu, but this code helped me a lot!

Ahaa, yes that does make sense.

I’ll have a think about how to actually see this “origin matrix”, since it’s currently invisible and took me a while to figure out as well. Thanks for confirming!

1 Like