首页 > 其他 > 详细

碰撞法线

时间:2015-02-25 18:21:21      阅读:186      评论:0      收藏:0      [点我收藏+]
using UnityEngine;
using System.Collections;

public class co : MonoBehaviour {
private Collider collider;
private ContactPoint contacts;
[SerializeField]
private Transform explosionPrefab;
// Use this for initialization
void Start () {

}

// Update is called once per frame
void Update () {

}
void OnCollisionStay(Collision collision) {
collision.rigidbody.useGravity = false;
//collision.rigidbody.velocity =new Vector3(0, 0, 0); 
Debug.Log("------");

foreach(ContactPoint contacts in collision.contacts){
//Debug.DrawRay(contacts.point, contacts.normal, Color.red,2);

//Debug.Log("contacts.normal:" + contacts.normal);
//collision.transform.eulerAngles = contacts.normal;
collision.transform.rotation = Quaternion.FromToRotation(Vector3.up, contacts.normal);
collision.rigidbody.AddForce(contacts.normal * 0.2f);
collision.rigidbody.AddForce(collision.transform.forward * 1f);
Debug.DrawRay(contacts.point,collision.transform.forward , Color.green, 2);
Debug.DrawRay(contacts.point, contacts.normal, Color.red, 2);
}

}
void OnCollisionEnter(Collision collision) {
ContactPoint contact = collision.contacts[0];
Quaternion rot = Quaternion.FromToRotation(Vector3.up, contact.normal);
Vector3 pos = contact.point;
//Instantiate(explosionPrefab, pos, rot);
//collision.rigidbody.useGravity = false;
//collision.rigidbody.AddForce(transform.forward*-0.2f);

}

}

 

碰撞法线

原文:http://www.cnblogs.com/sy88/p/4299829.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!