using UnityEngine; using UnityEditor; using System.Collections;
public class ModelImportCollisions : AssetPostprocessor {
    void OnPreprocessModel () {         ModelImporter modelImporter = (ModelImporter) assetImporter;         modelImporter.globalScale = 0.01f;     }          void Apply (Transform t) {         if(t.name.ToLower().Contains("collider"))             t.gameObject.AddComponent("MeshCollider");                      foreach(Transform child in t)             Apply(child);     }          void ApplySphereCollider(GameObject go) {         go.AddComponent("SphereCollider");         go.renderer.enabled = false;     }          void ApplyCapsuleCollider(GameObject go) {         go.AddComponent("CapsuleCollider");         go.renderer.enabled = false;     }          void ApplyBoxCollider(GameObject go) {         go.AddComponent("BoxCollider");         go.renderer.enabled = false;     }          void ApplyMeshCollider(GameObject go) {         go.AddComponent("MeshCollider");         go.renderer.enabled = false;     }          void OnPostprocessGameObjectWithUserProperties( GameObject go, string[] names, object[] values) {         for (int i = 0; i < names.Length; i++)         {             if(names[i] == "sphereCollider")                 ApplySphereCollider(go);             else if(names[i] == "capsuleCollider")                 ApplyCapsuleCollider(go);             else if(names[i] == "boxCollider")                 ApplyBoxCollider(go);             else if(names[i] == "meshCollider")                 ApplyMeshCollider(go);                         }      } }
|
|