| 1269 | } |
| 1270 | |
| 1271 | void Renderer::AddDebugBox(const std::array<Vector3, BOX_VERTEX_COUNT>& corners, const Color& color, RendererDebugPage page, bool isWireframe) |
| 1272 | { |
| 1273 | if (_isLocked) |
| 1274 | return; |
| 1275 | |
| 1276 | if (!DebugMode || (_debugPage != page && page != RendererDebugPage::None)) |
| 1277 | return; |
| 1278 | |
| 1279 | // Construct box. |
| 1280 | if (isWireframe) |
| 1281 | { |
| 1282 | for (int i = 0; i < BOX_EDGE_COUNT; i++) |
| 1283 | { |
| 1284 | switch (i) |
| 1285 | { |
| 1286 | case 0: |
| 1287 | AddDebugLine(corners[0], corners[1], color, page); |
| 1288 | break; |
| 1289 | case 1: |
| 1290 | AddDebugLine(corners[1], corners[2], color, page); |
| 1291 | break; |
| 1292 | case 2: |
| 1293 | AddDebugLine(corners[2], corners[3], color, page); |
| 1294 | break; |
| 1295 | case 3: |
| 1296 | AddDebugLine(corners[3], corners[0], color, page); |
| 1297 | break; |
| 1298 | |
| 1299 | case 4: |
| 1300 | AddDebugLine(corners[4], corners[5], color, page); |
| 1301 | break; |
| 1302 | case 5: |
| 1303 | AddDebugLine(corners[5], corners[6], color, page); |
| 1304 | break; |
| 1305 | case 6: |
| 1306 | AddDebugLine(corners[6], corners[7], color, page); |
| 1307 | break; |
| 1308 | case 7: |
| 1309 | AddDebugLine(corners[7], corners[4], color, page); |
| 1310 | break; |
| 1311 | |
| 1312 | case 8: |
| 1313 | AddDebugLine(corners[0], corners[4], color, page); |
| 1314 | break; |
| 1315 | case 9: |
| 1316 | AddDebugLine(corners[1], corners[5], color, page); |
| 1317 | break; |
| 1318 | case 10: |
| 1319 | AddDebugLine(corners[2], corners[6], color, page); |
| 1320 | break; |
| 1321 | case 11: |
| 1322 | AddDebugLine(corners[3], corners[7], color, page); |
| 1323 | break; |
| 1324 | } |
| 1325 | } |
| 1326 | } |
| 1327 | else |
| 1328 | { |