为什么Rigidbody上的OnMouseDown()事件不会触发?

时间:2019-11-19 13:13:50

标签: unity3d mouseevent mouse rigid-bodies

有一个可以用鼠标启动的动态刚体。但是在某些时候,刚体由于某种原因停止了对鼠标的反应。刚体的速度为0。

在一个刚体上附加了两个弹簧接头。

enter image description here

enter image description here

enter image description here

唤醒身体的唯一方法是在调试时禁用并重新启用弹簧接头。

total = df.groupby('CustomerID', 'ActivityType').agg({'count':df.ActivityType}).reset_index()(columns={'count':'ActivityType'})
emailtotal=total['ActivityType' == 'Email'].rename(columns={'ActivityType':'TotalEmail'})
calltotal=total['count_ActivityType' == 'Call'].rename(columns={'ActivityType':'TotalCall'})

final= pd.join([df,emailtotal,calltotal], on=['CustomerID', 'ActivityType'], how='inner')
final.head()
  CustomerID ActivityType  TotalCall  TotalEmail
0     01134A        Email          1           1
1     01134B        Email          0           2
2     01134A         Call          1           1
3     01134B        Email          0           2

}

这是什么原因?如何纠正?

1 个答案:

答案 0 :(得分:2)

将OnMouseDown()替换为Input.GetMouseButtonDown(0),一切都解决了。

void Update()
{
if (Input.GetMouseButtonDown(0))
{
    SpringJointDeactivate();
    clickedOn = true;
}

if (Input.GetMouseButtonUp(0))
{
    SpringJointActivate();
    clickedOn = false;
    SetKinematicState(false);
    Invoke("SpringJointDeactivate", 0.1f);
}
}