Не просто для проверки полей!
OnValidate() вызывается при изменении скрипта в инспекторе или загрузке сцены. Идеально для автоматической настройки.Используй для:
1️⃣ Валидации данных и автозаполнения.
public EnemyType type;
private SpriteRenderer _sprite;
void OnValidate() {
if (_sprite == null) _sprite = GetComponent<SpriteRenderer>();
_sprite.color = type.color; // Цвет меняется сразу в инспекторе!
}
2️⃣ Генерации уникальных ID для сохранения.
public string uid;
void OnValidate() {
if (string.IsNullOrEmpty(uid)) uid = Guid.NewGuid().ToString();
}
Важно: Не используй для игровой логики (не работает в билде!). Только для настройки в редакторе.
💬 Используешь OnValidate для чего-то ещё? Делися в комментах!
👉Akrus Games | Unity