public GameObject Create(Model model, GameObject parent) { GameObject gameObject = new GameObject((Name == null) ? "unnamed" : Name); gameObject.transform.ResetToParent(parent.transform); if (Origin != null) { Origin.SetOrigin(gameObject); } Geometry.CreateVisual(model, gameObject); if (Material != null) { Material.SetMaterial(model, gameObject); } if (gameObject.GetComponentInChildren <Renderer>().sharedMaterial == null) { UrdfMaterial.SetDefaultMaterial(model, gameObject); } return(gameObject); }
public GameObject Create() { if (!AssetDatabase.IsValidFolder(Path.Combine(assetPath, "Materials"))) { AssetDatabase.CreateFolder(assetPath, "Materials"); } UrdfMaterial.CreateDefaultMaterialAsset(assetPath); foreach (UrdfMaterial material in MaterialList) { material.CreateMaterialAsset(assetPath); } GameObject gameObject = new GameObject(Name); Root.Create(this, gameObject); GameObjectUtility.SetParentAndAlign(gameObject, Selection.activeObject as GameObject); Undo.RegisterCreatedObjectUndo(gameObject, "Create " + gameObject.name); Selection.activeObject = gameObject; Rigidbody[] rb = UnityEngine.Object.FindObjectsOfType(typeof(Rigidbody)) as Rigidbody[]; foreach (Rigidbody body in rb) { body.isKinematic = true; } return(gameObject); }
public Visual(XElement node) { Name = (string)node.Attribute("name"); // optional Origin = (node.Element("origin") != null) ? new Origin(node.Element("origin")) : null; // optional Geometry = new Geometry(node.Element("geometry")); // required Material = (node.Element("material") != null) ? new UrdfMaterial(node.Element("material")) : null; // optional }