Jump to content
Unity Insider Forum

Placr


Recommended Posts

"Snap to Ground" hast du ja, wenn dein vertical offset gleich 0 ist. Es wäre also eher "Reset Vertical Offset". Hab aber auch schon daran gedacht, dass man dafür kurz Shift drücken könnte; aber dafür habe ich nicht auf Anhieb ne gute IMGUI-Lösung gefunden.

//e: Also, vielleicht sieht man das bei dem Video nicht so, aber das läuft schon über Raycasts.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ah ok, habe nur das Video gesehen (und mir den Code nicht angeschaut) aber wenn die Initialposition schon der Boden ist, dann ist es das was ich meinte. Aber dann vielleicht das Gegenteil, also damit man Objekte auch einfach in der Luft platzieren kann. Ich denke ideal wäre dafür ein 2. Schalter am oberen Szenenrand mit "Snap to Ground" "on" oder "off". 

Link zu diesem Kommentar
Auf anderen Seiten teilen

Schwer zu sagen, oft möchte man ja daß Objekte "irgendwie" miteinander verbunden werden. Ob man nun ein Objekt mit dem Boden verbinden möchte oder mit einem anderen Objekt in der Szene ist dabei Fallabhängig. Ich könnte mir auch vorstellen, daß es beispielsweise Sinn macht, die Richtung des Raycastes (down / top / left  / right) steuern zu können. Stell dir vor du möchtest Bilder an die Wand hängen und dabei jedesmal mit "Vertex-Snapping" zu arbeiten kann gewaltig nerven.

Ich hab den Code mal kurz überflogen, interessant wie du die Z-Koordinate von der Mausposition im Worldspace ermittelst, daß hatte mir schon einmal Kopfschmerzen bereitet ;)

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 3 Stunden schrieb Zer0Cool:

interessant wie du die Z-Koordinate von der Mausposition im Worldspace ermittelst

Höh? Mit nem Raycast halt? :)

Ich sehe das Problem ehrlich gesagt noch nicht so ganz. Ich raycaste gegen die gesamte Szene, sodass du alles auf alles raufschmeißen kannst und von jedem Winkel (einfach die Kamera bewegen), solange es einen Collider hat. Wäre natürlich cooler, wenn ich gegen die MeshFilter casten könnte, aber das mag Unity ja nicht...

Link zu diesem Kommentar
Auf anderen Seiten teilen

Noch ein kleines Update: Mit lustigen kleinen Scripts wie diesem kann man ordentlich was anstellen:

using UnityEngine;

/// <summary>
/// Randomly scales a prefab instance after it has been placed.
/// Can be used in the editor while designing levels with prefabs.
/// Works most awesome with Placr.cs.
/// </summary>
[ExecuteInEditMode]
public class RandomScalePrefab : MonoBehaviour
{
    public Vector3 scaleVariance = new Vector3(0.1f, 0.1f, 0.1f);

    void Start()
    {
        var scale = Random.insideUnitSphere;
        scale.Scale(scaleVariance);
        transform.localScale += scale;
        DestroyImmediate(this);
    }
}

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 3 years later...

Lang ist's her... aber da ich das Tool die Tage etwas hübscher gemacht habe, dachte ich, ich rufe mal in Erinnerung, dass es existiert :)

Nach dem Update ist es jetzt ein Editor Tool (also alternativ zum Bewegen- oder Dreh-Werkzeug oben links in der Leiste zu finden). Das Options-Fenster ist jetzt auch viel hübscher, und man kann existierende Objekte aufheben und woanders hintun.

image (4).png

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 2 months later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Lädt...
×
×
  • Neu erstellen...