Draw a debug combined axis aligned bounding box in world space * @param {Vector2} posA * @param {Vector2} sizeA * @param {Vector2} posB * @param {Vector2} sizeB * @param {Color|string} [color] * @param {number} [time] * @param {boolean} [screenSpace] * @memberof Debug
(posA, sizeA, posB, sizeB, color, time, screenSpace=false)
| 175 | * @param {boolean} [screenSpace] |
| 176 | * @memberof Debug */ |
| 177 | function debugOverlap(posA, sizeA, posB, sizeB, color, time, screenSpace=false) |
| 178 | { |
| 179 | ASSERT(isVector2(posA), 'posA must be a vec2'); |
| 180 | ASSERT(isVector2(posB), 'posB must be a vec2'); |
| 181 | ASSERT(isVector2(sizeA), 'sizeA must be a vec2'); |
| 182 | ASSERT(isVector2(sizeB), 'sizeB must be a vec2'); |
| 183 | |
| 184 | const minPos = vec2( |
| 185 | min(posA.x - sizeA.x/2, posB.x - sizeB.x/2), |
| 186 | min(posA.y - sizeA.y/2, posB.y - sizeB.y/2) |
| 187 | ); |
| 188 | const maxPos = vec2( |
| 189 | max(posA.x + sizeA.x/2, posB.x + sizeB.x/2), |
| 190 | max(posA.y + sizeA.y/2, posB.y + sizeB.y/2) |
| 191 | ); |
| 192 | debugRect(minPos.lerp(maxPos,.5), maxPos.subtract(minPos), color, time, 0, false, screenSpace); |
| 193 | } |
| 194 | |
| 195 | /** Draw debug text in world space |
| 196 | * @param {string|number} text |