- Home /
Ways to visualize Fixed Joints in the Scene view?
Does anybody know of any way to visualize fixed joints in the scene view?
Essentially I have hundreds of objects in my scene chained together by fixed joints and it is really time consuming and tedious to remember which objects are connected to which and then go and select them from the hierarchy to edit them.
Essentially what I want is a clickable gizmo in the scene view for fixed joints, that when clicked would let me edit that joint. Is this possible? Through Unity itself or a plugin of some kind?
also, being able to edit all the fixed joints active in a scene at once would be really valuable, is there a way to do this without selecting each object and changing each joint one at a time?
I know I can do a multi object edit but this doesn't work so well because all of my objects have varying amounts of joints. Some have 6, some have 1, that kind of thing.
Any ideas on how to make this whole process easier would be greatly appreciated!
Assets Store recommendations welcome!
Answer by BrownBot · Jul 09, 2016 at 02:39 PM
I'm doing a 2D physics game with a similar challenge. Add this to your base class for your connected objects and it'll draw a line for all connected bodies when you select the object in the editor.
It's for the Physics2D engine hence it looks for the "Joint2D" base class, you should be able to swap this out for the 3D physics "Joint" class pretty easy if you're doing 3D.
void OnDrawGizmosSelected()
{
var joints = gameObject.GetComponents<Joint2D>();
foreach (var item in joints)
{
Gizmos.color = Color.yellow;
var connectedPos = item.connectedBody.gameObject.transform.position;
Gizmos.DrawLine(transform.position, connectedPos);
Gizmos.DrawCube(connectedPos, new Vector3(0.1f, 0.1f, 0.1f));
}
}
Your answer
Follow this Question
Related Questions
How do I iterate over all scene objects from an editor script? 4 Answers
Unity Scene File in Build Question 1 Answer
Is it possible to have editor-only native plugins? 0 Answers
Calling JS WebGL plugins from browser JavaScript 0 Answers
Camera.main.pixel incorrectly return scene view's size in OnDrawGizmos 0 Answers