Iniciar sesión Registro
Anuncios
Tu espacio publicitario
Reserva este slot exclusivo para el periodo elegido.
Comprar publicidad →
Logotipo de la comunidad de telegram - Щоденник Сеньйора🥫💻📚
Añadido 06 dic. 2025 🌐 UK

Щоденник Сеньйора🥫💻📚

@seniorDiary
Número de suscriptores: 53
Fotos: 41
Videos: 14
Enlaces: 147
Descripción:
Живий девлог моєї власної Action RPG. Показую весь процес: код, механіки, арт і всі виклики на шляху створення гри. Без прикрас, лише розробка. І звісно море мотивації! https://hardcodeforge.carrd.co - всі посилання. @LytovchenkoV - автор каналу.
Fuente

Щоденник Сеньйора🥫💻📚 | ️ Сервіс для швидкого доступу до компонентів ПлеєраУ мене завжди була ...

Logotipo de la comunidad de telegram - Щоденник Сеньйора🥫💻📚 Щоденник Сеньйора🥫💻📚 @seniorDiary
66 Vistas/Alcance 2025-09-23 09:02 Mensaje №304
⚡️ Сервіс для швидкого доступу до компонентів Плеєра

У мене завжди була одна й та сама проблема: треба отримати доступ до Плеєра → роблю GetComponent() → повторюю це ще й ще раз у різних місцях коду. Виглядало це не дуже і явно було місце для оптимізації.Я пройшов кілька ітерацій:
1-а ітерація:

Зробив простий клас, який на Awake шукав Плеєра в сцені й віддавав його екземпляр через сінглтон. Це вже було зручніше, але все одно відчувався костиль. 2-а ітерація:

Зрозумів, що в такій реалізації можливі race condition-и. Тому:- підняв ініціалізацію цього сервісу вище в ScriptExecutionOrder;- додав реєстрацію в сейв-систему. Тобто, коли сейв-система завантажила Плеєра і він готовий — я його реєструю в сервіс. Це вже стало стабільніше. 3-я ітерація:

Подумав: "Ок, я оптимізував доступ до Плеєра як об’єкта, але ж усім потрібні його компоненти, а не сам GameObject."Тому зробив наступне: після того, як Плеєр реєструється в сервісі, я через рефлексію проходжу по всіх його компонентах і додаю їх у словник. Тепер будь-який код, якому потрібен компонент Плеєра, може просто вказати тип і одразу отримати його. Без пошуків, без дубляжів коду — все супер швидко і централізовано.
Звісно, там є ще купа дрібних механізмів для безпеки та обробки винятків, але загалом підхід себе виправдав на всі 💯.#Project_RPG #unity #devlog #tutorial #code