[C#] Glue

Cette section est destinée aux scripts partagés par la communauté. Chaque post est destiné à un script. Suivez bien les recommandations.
Avatar de l’utilisateur
axel
Messages : 1924
Inscription : 26 Avr 2012 09:10
Localisation : Lille - Dunkerque
Contact :

[C#] Glue

Message par axel » 17 Sep 2013 08:19

Voici un petit script pour coller des objets sur d'autres dans l'éditeur.

Pour l'utiliser, copiez le script ci-dessous dans un dossier "Editor" de votre projet

Sélectionnez les objets que vous voulez coller sur le sol, puis allez dans le menu "GameObject" et choisissez "Glue selection" ou faites le raccourcis clavier Ctrl+q
comme ceci:
Image

vous obtenez ceci:
Image

Attention, le script ne fonctionne que si les objets dessous ont un collider, et les objets se placent en fonction de leur point de pivot.


nom du fichier : Shortcuts.cs

Code : Tout sélectionner

using UnityEditor;
using UnityEngine;

public class Shortcuts : MonoBehaviour {
	[MenuItem ("GameObject/Glue Selection %q")]		
	static void GlueSelection() {
		foreach (GameObject go in Selection.objects) {
			if (go) {
				Vector3 goPosition=go.transform.position;
				RaycastHit hit;
				if (Physics.Raycast(go.transform.position,Vector3.down,out hit)) {
					go.transform.position=new Vector3(goPosition.x,hit.point.y,goPosition.z);
				}
			}
		}
	}
}

Répondre

Revenir vers « Scripts »