В самом начале статьи указано три проблемы. Первая легко решается сервисом прогресса с которым работает весь код и который скрывает за собой версионированную модель данных. Вторая проблема непонятно откуда взялась, т.к. непонятно зачем вообще общий предок моделям сейвов. Третья проблема не решена, т.к. если модель данных будет 100 раз изменена то и в вашей реализации тоже будет нужно 100 классов которые отработают один раз.
Фермером устройтесь, дояркой или пастухом. Свежий воздух, мозолистые руки, комары в ассартименте. Детям опять же сможете показать что бульба не на полке магазина растет.
Своя квартира это актив который приносит так называемый доход в натуральной форме. Размер этого дохода можно оценить прикинув стоимость аренды такой же квартиры в такой же локации. Ведь если бы у вас небыло своей квартиры то вам пришлось бы ее снимать.
Мне эта статья напомнила сцену из балдур гейтс 3, где главный герой спрашивает пройдоху барда перед операцией на глазу делал ли он такие операции раньше и тот отвечает, что в мире не найти более опытного хирурга потому что он тысячу раз думал об этой операции.
Возможно стоило добавить инфу о том, что у юнити свой сборщик мусора, который имеет отличия от обычного шарпового. Так же il2cpp емнип накладывает некоторые ограничения на рефлексию.
Сидят две курицы в курятнике, одна другую спрашивает: "вот я яица несу по рубль двадцать, а ты?" Вторая ей не без гордости отвечает "А я по рубль тридцать". " И как стоит оно того ради десяти хозяйских копеек жопу рвать?".
А вообще если серьезно, то проблема низкой производительности труда она имхо проистекает и у программистов и в других отраслях от понимания что после увольнения уже завтра будет найдена работа за такие ж деньги, а может ещё и лучше. Желание впрягатся по полной у людей возникает только когда они понимают что другую такую же работу они не найдут поэтому надо держатся за эту обеими руками. Это такая стратегия оптимизации КПД усилий к профиту, иное поведенип иррационально при "рыночной" зарплате и дифиците кадров.
Плоховато описана проблематика, которую пытается решить этот подход. Бойлерплейтный однотипный код при обьявлении компонентов? Ну допустим, а чем предложенный подход лучше тех же сниппетов? Пока выглядит так что вы пытаетесь заменить один бойлерплейт другим велосипедным.
Да я вкурсе про командный буфер, в демке выше все структурные изменния так же через него происходили сотнями каждый кадр. Писать в него можно многопоточно, изменния действительно применяются в гланом потоке но это происходит очень быстро.
Ну ок если в Ваших руках он плохо скейлится остаётся только посочувствовать.
Я не знаю почему он у вас оказался медленным тут надо в код смотреть и искать где именно Вы ошиблись. Когда я писал проект в котором активно взаимодействовали (перестреливались) тысячи объектов одновременно там была просто тьма тмущая ecs-событий и создавалось/уничтожалось много сущностей каждый кадр и всё это отлично работало без тормозов даже на телефоне десятилетней давности.
Боромир выиграл бы в обе
Какойто ECS курильщика
В самом начале статьи указано три проблемы. Первая легко решается сервисом прогресса с которым работает весь код и который скрывает за собой версионированную модель данных. Вторая проблема непонятно откуда взялась, т.к. непонятно зачем вообще общий предок моделям сейвов. Третья проблема не решена, т.к. если модель данных будет 100 раз изменена то и в вашей реализации тоже будет нужно 100 классов которые отработают один раз.
Фермером устройтесь, дояркой или пастухом. Свежий воздух, мозолистые руки, комары в ассартименте. Детям опять же сможете показать что бульба не на полке магазина растет.
Корсаров забыли, вангеров и космических рейнджеров с колобками и петьками. Там везде богато
Ваш пинг в чате очень важен для нас. Примерное время ожидания ответа оператора 4 дня 3 часа 23 минуты
Своя квартира это актив который приносит так называемый доход в натуральной форме. Размер этого дохода можно оценить прикинув стоимость аренды такой же квартиры в такой же локации. Ведь если бы у вас небыло своей квартиры то вам пришлось бы ее снимать.
За много лет на хабре я ни разу не ставил минус ни одной статье хотя бы из уважения к труду авторов. Но данный высер это заслужил.
Мне эта статья напомнила сцену из балдур гейтс 3, где главный герой спрашивает пройдоху барда перед операцией на глазу делал ли он такие операции раньше и тот отвечает, что в мире не найти более опытного хирурга потому что он тысячу раз думал об этой операции.
Так было не всегда и так будет не всегда. Период высоких ставок когдато закончится, а бизнес со своей доходностью останется.
Возможно стоило добавить инфу о том, что у юнити свой сборщик мусора, который имеет отличия от обычного шарпового. Так же il2cpp емнип накладывает некоторые ограничения на рефлексию.
Чат.жпг создай такую картинку!
Затраты прямо пропорциональны времени проведенному разработчиками в браузерах на этих субботниках.
Спасибо, что поделились опытом. Полезная пища для размышлений.
А корень проблемы извечный в том, что коргеймплей и управление надо начинать тестировать на пользователях как можно раньше, а не через год разработки.
Странно что упомянули Вигерса но не упомянули BABOK
Сидят две курицы в курятнике, одна другую спрашивает: "вот я яица несу по рубль двадцать, а ты?" Вторая ей не без гордости отвечает "А я по рубль тридцать". " И как стоит оно того ради десяти хозяйских копеек жопу рвать?".
А вообще если серьезно, то проблема низкой производительности труда она имхо проистекает и у программистов и в других отраслях от понимания что после увольнения уже завтра будет найдена работа за такие ж деньги, а может ещё и лучше. Желание впрягатся по полной у людей возникает только когда они понимают что другую такую же работу они не найдут поэтому надо держатся за эту обеими руками. Это такая стратегия оптимизации КПД усилий к профиту, иное поведенип иррационально при "рыночной" зарплате и дифиците кадров.
Плоховато описана проблематика, которую пытается решить этот подход. Бойлерплейтный однотипный код при обьявлении компонентов? Ну допустим, а чем предложенный подход лучше тех же сниппетов? Пока выглядит так что вы пытаетесь заменить один бойлерплейт другим велосипедным.
Да я вкурсе про командный буфер, в демке выше все структурные изменния так же через него происходили сотнями каждый кадр. Писать в него можно многопоточно, изменния действительно применяются в гланом потоке но это происходит очень быстро.
Ну ок если в Ваших руках он плохо скейлится остаётся только посочувствовать.
Я не знаю почему он у вас оказался медленным тут надо в код смотреть и искать где именно Вы ошиблись. Когда я писал проект в котором активно взаимодействовали (перестреливались) тысячи объектов одновременно там была просто тьма тмущая ecs-событий и создавалось/уничтожалось много сущностей каждый кадр и всё это отлично работало без тормозов даже на телефоне десятилетней давности.
Вот можете полюбопытствовать: https://www.youtube.com/shorts/NERogo5dyoQ
Этот проект так же писался на DOTS-е причём древнющей версии, новые версии подозреваю еще производителней.