换了模型之后 底盘太低了,导致如果从模型位置开始发射线检测的话,就会碰不到。。。 找了半天
因为模型太低的原因,把发射线放上放了放
private bool isNearCars <T>(out T targetCar) where T: Component {
Vector3 startPos = this.m_rigidBody.position + new Vector3(0,0.3f,0);
RaycastHit hit ;
Debug.DrawLine(startPos,startPos+ Vector3.forward * this.m_direction.z * this.m_RaycasthitDist,Color.red); //这个就是绘制出的射线了,包含发射位置,发射距离和射线的颜色;
this.m_meshCollider.enabled = false ;
bool isNear = Physics.Raycast(startPos , Vector3.forward * this.m_direction.z , out hit , this.m_RaycasthitDist , this.m_blockingLayer);
this.m_meshCollider.enabled = true ;
if (isNear) {
Debug.Log("shit ");
}
targetCar = hit.transform ? hit.transform.GetComponent<T>() : null ;
return isNear;
}