Предположим, я делаю игру. В которой много разных asmdefs. И

есть некий ЮИ для взаимодействия с миром. Естественно, что надо читать данные разных объектов расположенных в разных asmdef-ах и как-то представлять их игроку. Но мне не хочется делать, что бы ЮИ-асмдеф имел 222 using-а.

Итак, моя пока единственная мысль - сделать интерфейс "IReadableValue" в ЮИ-асмдефе, а потом каждый другой будет наследовать асмдеф ЮИ для именно одного интерфеса. Но тоже как-то не очень ощущается. Есть что подсказать?

7 ответов

14 просмотров

asmdef? как так получилось что их очень много?(зачем их много? это же как подпроекты можно сказать)

Antonius 🇺🇦-Budnychuk Автор вопроса
Kei Pew
asmdef? как так получилось что их очень много?(зач...

каждый большой модуль (игрок, ворд, строительство) + из ассет стора несколько отделили

ну так обычно и делают, а потом попадают в депенденси хелл. Могу посоветовать не разделять игровой код на сборки. в отдельные асмдефы выносить только модули атомарные и независимые от других запчасти все взаимодействие организовывать через прокси, ивент басы, команды и прочие коммуникационные паттерны

Antonius 🇺🇦 Budnychuk
каждый большой модуль (игрок, ворд, строительство)...

у меня в отдельных сборках примерно следующее: ресурсный менеджер менеджер игровых событий UI менеджер и все его базовые типы (сами окна в проектном скоупе) сервер апи (который при этом еще и как csproj собирается) сетевые менеджеры, каналы и прочие штуки ... и прочие game agnostic штуки

Antonius 🇺🇦-Budnychuk Автор вопроса
blackbone Osipov
у меня в отдельных сборках примерно следующее: рес...

То-есть, у тебя немного больших, условно, асмдефов. Но у тебя тогда получаются кросс-зависимости? ЮИ менеджер отправляет команду на сервер и сетевой менеджер отправляет ответ в юи?

Antonius 🇺🇦 Budnychuk
То-есть, у тебя немного больших, условно, асмдефов...

все кросс коммуникации в рутовой сборке проекта, сами асмдефы почти ни на что не ссылаются

Antonius 🇺🇦-Budnychuk Автор вопроса
blackbone Osipov
все кросс коммуникации в рутовой сборке проекта, с...

а как рут получает сообщения? Просто читает их со специальных интерфейсов/полей/методов?

Похожие вопросы

Обсуждают сегодня

Сonst magicTgHTML = (text, entities) => { let processedText = text; let offsetShift = 0; entities.forEach(entity => { const { offset, length, type, url, ...
Андрей
1
Чет мне ссыкотно опять Rainlab.User в проект ставить. Кто знает, опять наотъебись все сделали или после обнов пользоваться можно?
Black Cat
10
это группа токсиков или тех кто помогает?
Ибрагим
9
Можете помочь с этим, я тут использую Джанго как ОРМ для бота, но бот запускать не хочет, уже всезде перерыл не могу решить, может кто то сталкивался?
Ибрагим
4
В смысле более затратная? Общая стоимость владения лошадью меньше, чем автомобиля. В среднем.
Sergej R
10
коллеги привет. уже второй день бьемся об заклад с одной ошибкой, может вы сталкивались с таки странным поведением? есть тестовый сервер, на который паблишим релизную версию W...
Magzhan
11
Кстати, раз про скачивание файлов разговор зашел) Сделал бота для себя (транскрибирующего и суммаризирующего встречи) но не ожидал что за 2 месяца 10к пользователей набежит😅...
Andrey Obolenskiy
8
всем привет. подскажите. сделал политику, он верхнеуровневая. раздал права только на TEST2 (полные). вопрос - можно ли сделать так, чтобы был доступен только TEST2, а остально...
Андрей Сергеев
5
t.me/<username> и tg://user?id=<id> отваливаются по понятным причинам
Denis 🐍|👑 | darling! 🥰
7
Слушайте, а при создании навигации на Tailor рили нельзя определять активный пункт навигации, как в Static Pages?
Pavel Lautsevich
11
Карта сайта