DYNAMIC PHOTO CAMERA (MINI)

Документація для Unity-розробників. Розробник ©Octanta Studio 2026.

Огляд

Dynamic Photo Camera Mini - це простий у використанні Unity-асет, створений для внутрішньоігрової фотографії. Підходить для інтерактивних детективних квестів та розслідувань. Демо сцена містить базову локацію, де можна робити фото у будь-якій точці екрана. З розширеною системою інтерактивних фото на базі цього асета можна ознайомитись тут.

Технічні деталі

ОТРИМАТИ ПОВНУ ВЕРСІЮ →

Встановлення

Імпортуйте асет у проєкт.
Додайте префаб PhotoController на сцену.
Налаштуйте камеру (обов’язково):
  • Призначте вашу основну ігрову камеру в InputController в інспекторі та вимкніть камеру з префабу, АБО залиште камеру префабу та вимкніть вашу.
  • Камеру необхідно призначити в поле Current Camera у InputController. Якщо камера не призначена, система автоматично використає Camera.main.

Як працює

Основні компоненти

PhotoController.cs

Головний контролер системи, що керує процесами фотографування, сортування, операціями з файлами.

PhotoUIManager.cs

Відповідає за інтерфейс, взаємодію з фото, відображення галереї, візуальний фідбек.

InputController.cs

Кросплатформенна система введення з автоматичною конфігурацією для 2D/3D на десктопах та мобільних пристроях.

PhotoPrefab.cs

Скрипт, що контролює поведінку кожної фотокартки.

PhotoInputBlocker.cs

Додайте цей компонент до будь-якої кнопки, щоб уникнути випадкового фотографування під час кліку. У інспекторі необхідно вказати посилання на PhotoController.

Поширені проблеми

Елементи інтерфейсу (UI, Canvas)

Unpack Prefab Completely та ієрархія PhotoController

⛔ Проблема: Фото не реагують на введення. Префаб PhotoController містить свій Canvas із UI-елементами, які можуть перекривати існуючі або навпаки.

✅ Рішення: Розпакуйте префаб і перенесіть вміст UICanvas до існуючого Canvas або, навпаки, додайте існуючі елементи до Canvas префабу.

Система введення (Input System)

Active Input Handling зі значенням Both

⛔ Проблема: Якщо використовується нова система введення, може з’явитися помилка: “InvalidOperationException: You are trying to read Input using the UnityEngine…”.

✅ Рішення: Відкрийте Edit → Project Settings → Player і встановіть Active Input Handling у значення "both".

⛔ Проблема: Введення для фотографування може конфліктувати з існуючою логікою, наприклад, фотографування запускається при натисканні кнопки гравцем.

✅ Рішення: Використовуйте компонент PhotoInputBlocker.cs (див. розділ Компоненти). Додайте його до існуючих кнопок і вкажіть посилання на PhotoController в інспекторі.

Демо сцена

⛔ Проблема: Матеріали у демо сцені не завантажуються належним чином.

✅ Рішення: Усі матеріали та текстури для тестових об'єктів зберігаються у папці Materials. За замовчуванням матеріали використовують шейдер "Standard". Для проєктів URP змініть шейдер на "URP/Lit" або будь-який інший сумісний.

Контакти

Потрібна допомога? Зв'яжіться з нами:

Ідеї