开源ECS框架
线绘制方式,也可用于统计线穿越的格子
1
2
3
4
5
6
7
// rect定义矩形,center为圆心,radius为半径
bool CheckIntersection(Rect rect, Vector center, float radius) {
var dx = MathS.Clamp(center.x, rect.minX, rect.maxX) - center.x;
var dy = MathS.Clamp(center.y, rect.minY, rect.maxY) - center.y;
var rr = radius * radius;
return dx * dx + dy * dy <= rr;
}
常用空间划分算法
下图为类A*寻路算法伪代码,从左至右分别为A*, Theta*, Lazy Theta*
Markdown的语法简单说明