采用同向法逻辑检测
注意:需保证三个检测的边都是同一方向
结论:当所有的叉乘结果在同一个方向 就代表点在三角形内部
--判断一个点是否在三角形内(在边上不算)
function InTriangle(checkPoint, angleA, angleB, angleC)
local aC = Vector3.Cross((angleA - angleB).normalized, (angleA - checkPoint).normalized)
local bC = Vector3.Cross((angleB - angleC).normalized, (angleB - checkPoint).normalized)
local cC = Vector3.Cross((angleC - angleA).normalized, (angleC - checkPoint).normalized)
return aC.y > 0 and bC.y > 0 and cC.y > 0 or aC.y < 0 and bC.y < 0 and cC.y < 0
end