想了一下,还是自问自答吧,免得以后遇到同样问题的朋友,网上搜索找不到结果。这里先弄几个关键词:isTrigger, ColliderFilter.useTriggers,Physics.Overlap...
Physics或者Physics2D下的OverlapBox、OverlapCircle、OverlapCapcule函数无法识别检测出isTrigger为true的碰撞器,原来很可能是项目里的【Queries Hit Trigger】没有打勾,解决方法就是给该选项打上勾即可:打开项目的【Projuect Setting】,选中怕【Physics】或者【Physics2d】(根据你自己的项目设置来),找到那个【queries hit trigger】打上勾,如下免两张图片所示:
Is Trigger
Enable this if you want this Collider 2D to behave as a trigger. The physics system ignores this Collider when this is enabled.
Unity凉不凉我不知道,但是碰见意料之外的行为不查文档就开始胡思乱想的话,你迟早得凉。