reppiz Geschrieben 3. Februar 2014 Melden Share Geschrieben 3. Februar 2014 Hab gerade für die Arbeit ein sehr schlichtes Alignment System geschrieben, da ich es benötigt habe. Vielleicht kann es ja noch jemand verwenden. Das Skript muss übrigens im Editor Ordner erstellt/platziert werden. Bestimmt gibt es hier noch Optimierungsbedarf, aber für meine Zwecke reicht es. Anleitung: Betreffende Objekte markieren Das "Alignment"-Fenster öffnen (via Menüleiste, Strg+e oder einfach fix wo anpinnen) Zu setzende Vektorkomponente anklicken Allen markierten Objekten wird nun für diese Komponente (x, y oder z) der Wert des ZULETZT markierten objektes zugewiesen. Es ist kein "richtiges" Alignment, da ich die Objekte nicht an den Kanten aneinander ausrichte, lediglich die jeweiligen Koordinaten werden gesetzt. Alignment.cs using UnityEditor; using UnityEngine; using System.Collections; public class Alignment : EditorWindow { [MenuItem("Tools/Reppiz/Alignment %e")] static void Integerding() { Alignment window = (Alignment)EditorWindow.GetWindow (typeof (Alignment)); } void OnGUI() { if(GUI.Button(new Rect(0,0,100,20), "Align_X")) Xalign(); if(GUI.Button(new Rect(0,25,100,20), "Align_Y")) Yalign(); if(GUI.Button(new Rect(0,50,100,20), "Align_Z")) Zalign(); } void Xalign() { GameObject firstOne = (GameObject)Selection.activeObject; GameObject[] allOnes = Selection.gameObjects; foreach(GameObject gO in allOnes) { gO.transform.position = new Vector3(firstOne.transform.position.x, gO.transform.position.y, gO.transform.position.z); } } void Yalign() { GameObject firstOne = (GameObject)Selection.activeObject; GameObject[] allOnes = Selection.gameObjects; foreach(GameObject gO in allOnes) { gO.transform.position = new Vector3(gO.transform.position.x, firstOne.transform.position.y, gO.transform.position.z); } } void Zalign() { GameObject firstOne = (GameObject)Selection.activeObject; GameObject[] allOnes = Selection.gameObjects; foreach(GameObject gO in allOnes) { gO.transform.position = new Vector3(gO.transform.position.x, gO.transform.position.y, firstOne.transform.position.z); } } } 1 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Noa3 Geschrieben 17. März 2014 Melden Share Geschrieben 17. März 2014 Schaut gut aus, danke Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Sascha Geschrieben 17. März 2014 Melden Share Geschrieben 17. März 2014 Passend dazu: http://docs.unity3d.com/412/Documentation/Manual/PositioningGameObjects.html Muss man mal gelesen haben, Vertex Snapping ist einfach nur göttlich. 1 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.