Duvar
Coddy'nin Unity Oyunu: Tuğla Kırma kursunda ders 5 / 19.
Tuğlalar bir ızgarada durur: yukarıdan aşağıya satırlar, soldan sağa sütunlar; her biri, iç içe iki döngüde oluşturulan Brick prefabının bir kopyasıdır. Önce bir satır:
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);
}n sütun arasında n eksi 1 boşluk vardır; bu nedenle ilk sütun, (n - 1) * spacing değerinin yarısı kadar solda yer alır: Aralarında 2 birim olan 5 sütun -4, -2, 0, 2 ve 4 konumlarında durur. Her satır, bir öncekinin spacingY kadar altında yer alır. Instantiate işlevinin dördüncü argümanı üst nesnedir; bu nedenle her tuğla Wall nesnesinin altında bulunur. Prefab alanı için Brick gibi bir betik türü kullanıldığında Instantiate, yeni tuğlanın betiğini döndürür.
Görev
OrtaOrtalanmış bir tuğla duvarı oluştur.
GameManageriçinepublic Brick brickPrefab;,public Transform wall;,rows = 5,columns = 9,spacingX = 1.75f,spacingY = 0.75f,topY = 6fekle.BuildWall(): Her satır ve sütun içinwallaltında bir tuğla; x değerileft + col * spacingX, y değeritopY - row * spacingY, z değeri 0 olacak şekilde veleft = -(columns - 1) * spacingX / 2file.Start(),BuildWall()metodunu çağırır.
“Oyna” düğmesine bas: 45 tuğla bir ızgarada durur (henüz kırılmazlar). Ardından “Kontrol et” düğmesine bas.
Kendin dene
using UnityEngine;
public class GameManager : MonoBehaviour
{
public static GameManager Instance;
void Awake()
{
Instance = this;
}
// Daha sonra: tuğla duvarı, skor, canlar ve seviyeler.
}
Unity Oyunu: Tuğla Kırma bölümündeki tüm dersler
Kendi başına pratik yap: Unity playground