GridVizualizer.cs 1.3 KB

12345678910111213141516171819202122232425262728293031323334
  1. using UnityEngine;
  2. [ExecuteInEditMode]
  3. public class GridWallVisualizer : MonoBehaviour
  4. {
  5. public int gridSize = 10;
  6. public float cellSize = 1f;
  7. public float wallHeight = 2f;
  8. public Color wallColor = new Color(1, 1, 0, 0.4f);
  9. private void OnDrawGizmos()
  10. {
  11. Gizmos.color = wallColor;
  12. for (int x = 0; x < gridSize; x++)
  13. {
  14. for (int z = 0; z < gridSize; z++)
  15. {
  16. Vector3 cellPos = new Vector3(x * cellSize, 0, z * cellSize);
  17. // Dessine les 4 murs de la case
  18. Vector3 posNorth = cellPos + new Vector3(cellSize / 2, wallHeight / 2, cellSize);
  19. Vector3 posSouth = cellPos + new Vector3(cellSize / 2, wallHeight / 2, 0);
  20. Vector3 posEast = cellPos + new Vector3(cellSize, wallHeight / 2, cellSize / 2);
  21. Vector3 posWest = cellPos + new Vector3(0, wallHeight / 2, cellSize / 2);
  22. Gizmos.DrawCube(posNorth, new Vector3(cellSize, wallHeight, 0.1f));
  23. Gizmos.DrawCube(posSouth, new Vector3(cellSize, wallHeight, 0.1f));
  24. Gizmos.DrawCube(posEast, new Vector3(0.1f, wallHeight, cellSize));
  25. Gizmos.DrawCube(posWest, new Vector3(0.1f, wallHeight, cellSize));
  26. }
  27. }
  28. }
  29. }