10 речей в Unity, які б ви хотіли знати на початку розробки?

Автор музичної гри Shred The Undead поділився порадами, які б він хотів дати сам собі на початку роботи над кооперативною hack-and-slash. Автор зазначив, що його гра знаходиться в ранньому доступі і ці нюанси розробки на рушії Unity він хотів би знати набагато раніше.

  1. PlayerPrefs — це легко. На початку розробник намагався створити власну систему збереження даних JSON, яка не залежала б від платформ. Однак згодом він зрозумів наскільки простий PlayerPrefs для збереження основних показників. Про цей інструмент рушія автор гри дізнався з відео на YouTube.
  2. FMOD — це чудово. Ігророб знову ж таки зазначає, що намагався так само створити власну аудіосистему. При цьому він сам музикант і гра його орієнтована на музику. FMOD він хвалить за чіткий робочий процес, інструменти редагування аудіо та чудову документацію.
  3. Відкриттям для розробника став менеджер локалізації, який є в Unity. Сам він не користувався, але хотів би знати про його існування до того, як скинути сценарій на 12 тисяч слів перекладачу.
  4. Потрібно бути обережним з плагінами сторонніх розробників, які не мають надійної документації. Автор Shred The Undead використовував InControl для керування вхідними даними контролера, але не міг ні з ким поговорити про плагін, коли виникали проблеми.
  5. В Unity є можливість компілювати після зупинки play mode. Протягом усієї роботи над грою розробник тестував її у режимі відтворення, виправляв помилки та, не замислюючись, зберігав свій код перед виходом з play mode.
  6. Потрібно зрозуміло називати об’єкти в ієрархії — не має бути лише GameObject(1). Автор зазначає, що зрізати кути це природно на початкових стадіях, але в майбутньому це додасть роботи.
  7. Не варто використовувати time.scale = 0, щоб зупинити гру. Набагато краще мати перемикач у Менеджері ігор, який керує всім, що ви хочете призупинити.
  8. Розділення — це добре. Спочатку розробник робив gameObjects з купою компонентів, але, за його словами, набагато легше все налаштовувати, коли кожен компонент (хітбокс, аніматор) має власний gameObject, вкладений у батьківський.
  9. Аніматор — потужний. Замість того, щоб намагатися анімувати елементи інтерфейсу за допомогою системи фізики, можна використовувати animator controller.
  10. Потрібно зберігати анімацію та контролери там, де вони були створені.

Наостанок розробник додав бонусний пункт — Time.unscaledDeltaTime існує!

А які б поради ви дали собі на початку роботи над грою? Які з помилок робили під час розробки?

Підписуйтеся на Telegram-канал @gamedev_dou, щоб не пропустити найважливіші статті і новини про геймдев

👍ПодобаєтьсяСподобалось3
До обраногоВ обраному0
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Гарні поради, до речі про них, а чи траплялася комусь повноцінна стаття чи відео як зараз опублікувати гру в стім? які там зараз етапи і що до чого?)
Дякую.

нещодавно публікував і сам шукав цю інфу. Нічого нормального не знайшов. До всього доходив сам, иам в цілому досить непогана документація, але поки з капсулами і репозиторіями розібрався то ледь не здурів. Думаю записати відео з процесом і викласти на ютуб, якраз нова гра на підході. Єдине що я розробляю не на юніті , але думаю це на процес заливу гри не дуже впливає

5 пункт не зрозумілий

Наскільки я зрозумів, це про те, що можна вносити зміни під час плеймоду і є варіант, щоб вони збереглися.

Так, але знаю, що таке вміють сторонні ассети деякі, а щодо вбудованого функціоналу, якщо це тут мається на увазі, вперше чую.

Підписатись на коментарі