Menu
CoddyTech

Le mur

Leçon 5 sur 19 du cours Jeu Unity : casse-briques de Coddy.

Les briques sont disposées en grille : les rangées vont du haut vers le bas, les colonnes de gauche à droite, et chacune est une copie du prefab Brick créée dans deux boucles imbriquées. D’abord, une rangée :

float left = -(columns - 1) * spacingX / 2f;
for (int col = 0; col < columns; col++)
{
    Vector3 pos = new Vector3(left + col * spacingX, topY, 0f);
    Instantiate(brickPrefab, pos, Quaternion.identity, wall);
}

Entre n colonnes, il y a n moins 1 espaces, donc la première se trouve à la moitié de (n - 1) * spacing vers la gauche : 5 colonnes espacées de 2 se trouvent en -4, -2, 0, 2 et 4. Chaque rangée est située spacingY plus bas que la précédente. Le quatrième argument d’Instantiate est le parent, donc chaque brique se trouve sous l’objet Wall. Avec un type de script tel que Brick pour le champ du prefab, Instantiate renvoie le script de la nouvelle brique.

challenge icon

Défi

Moyen

Construis un mur de briques centré.

  1. Dans GameManager, ajoute public Brick brickPrefab;, public Transform wall;, rows = 5, columns = 9, spacingX = 1.75f, spacingY = 0.75f, topY = 6f.
  2. BuildWall() : une brique sous wall pour chaque rangée et chaque colonne, aux coordonnées x left + col * spacingX, y topY - row * spacingY, z 0, avec left = -(columns - 1) * spacingX / 2f.
  3. Start() appelle BuildWall().

Appuie sur « Jouer » : 45 briques forment une grille (elles ne se cassent pas encore). Puis appuie sur « Vérifier ».

Essayez vous-même

using UnityEngine;

public class GameManager : MonoBehaviour
{
    public static GameManager Instance;

    void Awake()
    {
        Instance = this;
    }

    // Plus tard : le mur de briques, le score, les vies et les niveaux.
}

Toutes les leçons de Jeu Unity : casse-briques

Entraînez-vous par vous-même : Playground Unity