Search Unity

How to modify a collider according to a bone?

Discussion in 'Scripting' started by shinriyo_twitter, Oct 31, 2011.

  1. shinriyo_twitter

    shinriyo_twitter

    Joined:
    Aug 12, 2011
    Posts:
    328
    Hello.

    I use FBX model on Unity.:p
    The FBX model has some bones include named "Body"

    it is definitions of SkinnedMeshRenderer and MeshCollider on C#.
    Code (csharp):
    1.  
    2. private SkinnedMeshRenderer  renderer; 
    3. private MeshCollider collider;
    4.  
    I also attached MeshFilter and added some codes in the Start().

    Code (csharp):
    1.  
    2. void Start () {
    3.     renderer = gameObject.GetComponent<SkinnedMeshRenderer>();
    4.     collider = gameObject.GetComponent<MeshCollider>();
    5.     Mesh meshFilter = gameObject.GetComponent<MeshFilter>().mesh;
    6.     collider.sharedMesh = meshFilter;
    7.  
    It is code snippet about modifying bone.
    After that It will change mesh.
    Code (csharp):
    1.  
    2. foreach (Transform bone in renderer.bones) {
    3.     if (bone.name == "Body") {
    4.         bone.position = Vector3(x, y, z); // variable x, y, z are assigned some values
    5.     }
    6. }
    7.  
    then, MeshCollider didn't change.
    So, I also would like to change the MeshCollider according to the Body bone.


    I saw the URL
    http://forum.unity3d.com/threads/32467-How-to-update-a-mesh-collider

    I added the scripts below. but not work
    Code (csharp):
    1.  
    2. void LateUpdate () {
    3.     renderer = gameObject.GetComponent<SkinnedMeshRenderer>();
    4.     collider = null;
    5.     collider = gameObject.GetComponent<MeshCollider>();
    6.     collider.sharedMesh = renderer.sharedMesh;
    7. }
    8.  


    Could you tell me how to write codes? :confused:

    I'm afraid my English isn't understandable :(
     
    Last edited: Nov 1, 2011
  2. shinriyo_twitter

    shinriyo_twitter

    Joined:
    Aug 12, 2011
    Posts:
    328
    does it disable?
     
  3. shinriyo_twitter

    shinriyo_twitter

    Joined:
    Aug 12, 2011
    Posts:
    328
    I'm afraid it is multipost. I will ask japanese community.
    but, I'm not sure how to delete the thread..