Токсим, срёмся, диагностируем шизофрению и объявляем крысу в хате тоже здесь.
Бесконечный тред для свободного общения.
Сейчас не нулевые. Создавать движок довольно просто.
Тем более если ты в РФ, то про заработок на играх можно забыть.
Но ты конечно прав. Создание игры на готовом движке научит базе и многое не придется придумывать с нуля.
Я тут делал движок и понял что нужно проверить как его делают крупные игроки.
Но мне не понравилось и я вернулся к своему варианту.
>ведь его ассет земли не поддерживает такую функцию.
Бляя, движок не влияет на ассеты. Их нужно делать самому или через ии если они 2д.
Для движка это тупо смена анимации. А модельку должен сделать ты сам.
>>2064 (Del)
Таких полно. Но они закрывают даже простые движки где тупо нужно поменять текст.
Там такая шиза в коде, что пиздец.
>пример из реальной жизни
а слоп в steam это не реальная жизнь? какие еще примеры нужны?
как будто я пишу какую-то дичь. хотя я всего лишь говорю очевидные вещи, что нужно делать хорошие игры, а не слоп ради мечты разбогатеть.
проблема в том, что сейчас у многих мечта сделать игру мечты заменилась на мечту заработать деньги на игре. а это не одно и то же.
приведи пример, когда сделать слоп в стим эффективнее без движка, чем с движком
префабы в любом случае придётся расставлять
лучше сразу начать расставлять префабы, чем сначала велосипедить движок, в котором можно расставлять префабы
ты паразит, бракодел и мошенник.
просто нашли лазейку, эксплойт, по другому и не скажешь, как получать деньги в steam, яндекс играх и т.д. так то, 90% поноса там не стоит и того, чтобы в него бесплатно играть.
Двачую. На Яндекс играх даже стыдно выпускать игру из-за мусора в каталоге новинок.
Но это единственная нормальная русская площадка.

360x360, 0:27
>ты паразит, бракодел и мошенник.
ну ты видимо очень богатый и за тебя жопу подтирают, поэтому и можешь себе создавать "игру мечты" на "движке мечты", спалилась ты бздынечка, спалилась...
> Тем более если ты в РФ, то про заработок на играх можно забыть.
Ну бред же. Все доступно, работа в найме есть, стим есть, гугл плей есть - да, с усилиями некоторыми, но если ты серьещно настроен проблем не будет чтобы сложности обойти.
Кто тебе сказал, что проще? Годный левел дизайн это сложно и требует высокого художественного скилла. Это сложнее, чем перепечатывать код из туториалов и инклюдить опенсорсные либы с гитхаба. Ты сам почему-то выдумал себе, что твое пропукивание - это что-то сложное и илитарное, на деле это душная обезъянья работа, с которой справится любой даун.
А вот там, где начинается арт (левел дизайн это тоже арт), это уже высокие материи.
бздотя никогда не дойдёт до левел-дизайна, потому что будет делать движок
а вот автор ассет-слопа откроет юнити и сразу примется за левел-дизайн, что недопустимо
вообще, я понимаю логику бздоти - он говорит о профанации геймдева. такое есть. но создание движков не поможет в повышении проф. урофня. так как для создания игр достаточно программистов средней или низкой компетенции, т.к. базовые инженерные задачи уже решены - рендеринг, ввод, кроссплатформенность, ассет пайплайн, сериализация данных и т. п.
я буду делать игру мечты, а ты будешь кусать локти, потому что твой никому не нужен.
это путь, который ты выбрал.
бевидотя
я ненавижу две вещи - игры и программирование
я его уже почти доделал. в нем можно почти все, что можно в godot (и даже больше, например, рабочий play mode) и все, что мне надо.
пока я склоняюсь ко второму варианту.
>blender
лучше создать свой редактор 3д-моделей
иначе ты откроешь blender, не поймёшь, как что-то изменить, и сразу же закроешь
ого, мощно продвинулся так-то. это же минут 5 работы в юнити, а то и 6
>свой редактор 3д-моделей
норм же идея? не придётся писать импортер или делать плагин экспорта в кастомный формат для блендера
>>1946 (Del)
недавно листал старую книжку (90х) по дизайнам проектирования, там в одной главе был пример проектироания текстового редактора, и там на одном из этапов был описан пример абстрагирования окна, с учётом, что придётся поддерживать разные оси, те раньше в 90е это не считали системщиной а вполне прикладной хуергой, с которой приходилось иметь дело.
>норм же идея? не придётся писать импортер или делать плагин экспорта в кастомный формат для блендера
идея норм, но это не приблизит тебя к созданию игры, а наоборот
>>2445
>те раньше в 90е это не считали системщиной а вполне прикладной хуергой, с которой приходилось иметь дело.
90-ые были 30 лет назад.
>я буду делать игру мечты
Не будешь, потому что ты безыдейный и безыгорный. Будешь своим пропукиванием бесконечно откладывать начало разработки игры, потому что не хочешь признавать, что ты не способен в творчество, и все эти годы просто проебывал время вникуда.
ну зачем ты его так приложил? он же сейчас заплачет...
Бздотище...
Так террейны никто не делает еще с начала нулевых. Посмотри какие инструменты для террейнов есть в анриле, и осознай, что ты это будешь делать лет 10, и еще столько же отлаживать.
Для этого точно нужно было писать движок? Пропукнуть спизженную модельку на плоскость с кубами без текстур можно даже в годоте.
да нахуй террейны
в игре, которую сейчас активно делаю уже четыре дня сру на дваче и ничего не делаю, все уровни вообще на плоском плейне
Какая разница как сейчас. Лучшая графика - это воображение.
Я равняюсь на золотую эпоху 90-2000-х видеоигр.

точки интереса ты сам должен расставить
впрочем, есть и процедурные способы расставить точки интереса
Если есть только 2 инструмента: сделать холмик и поставить префаб, то как с ними не извращайся, ничего интересного не получится. Мирок всегда будет плоский, одномерный.
ты же совсем не разбираешься в теме. воинственный неофит. "эффект даннинга-крюгера", как любят говорить в около-айтишной среде.
террейн это просто геометрия. левел дизайном тебе необходимо заниматься независимо от того, расположена ли сцена на плоскости либо на холмистом террейне.
точки интереса, такие как входы-выходы, бонусы, ключи, враги и спаунеры врагов либо расставляй сам, либо по алгоритму. вручную, кстати, ты тоже будешь расставлять по алгоритму, только алгоритм у тебя в голове.
если уж ты делаешь свой движок, почему не сделаешь 3д-редактор прямо внутри него?

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

> в зельде твоей любимой всё сделали
Зельда имеет свой движок. Как и почти любая игра у нинтенды.
На пике ты можешь на любую гору залезть, которую видишь и там будут коллектаблсы. В юнити и анриле ты не сделаешь такие уровни террейном. Только префабами натыкивать.
В Геншине тоже плохо сделали - всё префабами понатыкано, везде мостики и прочее. Потому что юнити, там такие горы не сделать без изъёбств.
а схуяли ты взял, что эти горы не нарисованы в бляндере и схуяли ты взял, что нельзя сделать кисть под эти горы в юнити
а причём тут движок? какую гору сделаешь, такая и будет
>Только префабами натыкивать
в любой игре "натыкивают префабами", это называется "модульные ассеты". В Halo 3 вообще используется только одна моделька камня на всю игру, как говорят (не проверял)

Просто лепишь меши поверх террейна и всё. В чём проблема? Солитьюд на картинке сделан мешами, остальная карта вся в heightmap'ах.
Редактор террейнов сделан для того, чтобы ускорить работу там, где не нужны изъёбы.
Геншин безыдейная хрень потому что, а не из-за злобного Юнити, который стоит с ружьём над китайцами и запрещает им моделить интересные ландшафты.
В старых движках по типу сталкера условного, весь террейн делается через 3д редактор, а потом ебка с масками и вуаля у тебя готовый террейн как в юнити/анриле только из блендор/макса.
Только нюанс в том, что если запихнуть такой террейн в юнити/годот/анрил, он будет висеть в памяти всегда, в отличии от встроенного. Встроенный автоматом делится на чанки.
Плюс придется свои шейдеры написать, чтобы через маски отображались текстуры корректно.
В самом же движке сталкера, все локи компилируются и во время компиляции - вся геометрия режется/оптимизируется автоматом. И так в большинстве старых игр.
А в юнити/анрилах вообще хз как такой террейн оптимизировать не разрезая на части заранее. Поэтому все юзают встроенный инструмент террейна и не ебут голову себе.
Отчасти - это правда, что при работе с террейном у тебя менее гибкий контроль за геометрией. К примеру вырезать где-то дыру проще в 3д редакторе. Но с другой стороны всё можно сделать точно так-же и с террейном.
Если прямо хочется, можно и через блендор/макс сделать террейн, если он не большой, на фпс критично это не должно повлиять.
Но какие-нибудь большие миры - уже вряд-ли.
Смотрите, на слопоте бздотя научился двигать солнце по скрипту. А как и была его демка калом с графоном на уровне контрстрайка, так и осталась.

это соевик который услышал крутое по звучанию слово? я-то думал наш слоняра
Вк плей это браузерные игры или чисто на ПК? Я когда-то давно выпускал у них браузерку и помню они мне трафика бесплатно отсыпали очень много. Прям по-братски (в отличие от международных платформ, где ты выпускаешь игру и тебе дают хуй с маслом).
они поняли, что не вывезут конкуренцию в вебе и закрыли веб игры
А ведь на юнити реально лучше выглядело
Но безыгорная бздотя это ты.
А разраб востока скилловый чувак, тебе до его уровня качаться лет 5, если начнешь изучать годот прямо сейчас.
Слова мудрого человека.
если изучать годот прямо сейчас можно стать таким как этот чел лет через 15-20.
а этот чел изучал с# и юнити намного до переката на годот, и получил навыки разработки именно там, а не на годоте.
годот - это не серьезный движок. это кусочек синей какашки, после выпитого отбеливателя.
>10 минут показывает готовый ассет light probe'ов
>скилловый чувак
на кого рассчитаны эти потешные ролики в 2025? кого он собрался удивлять техникой глобального освещения, которой 20 лет?
почему в ролике про технологии ноль информации про эти самые технологии, может потому что автор в них ничего не понимает?
Он никого не собирается удивлять технологией, он же не бздотя. Он делает игру, и у него уже 100к+ сабов, а это означает, что после релиза он станет долларовым миллионером.
>может потому что автор в них ничего не понимает?
Ты зато все понимаешь, самый умный у мамы, знаешь про все на свете, как и что надо делать. Вот только игр у тебя при этом нет и не будет, ты же безыгорный бздотя, завидующий любому, кто что-то делает.
опять безыгорный дурачок скатился к мерянью деньгами в теме технического обсуждения движков и технологий, признав свое поражение.
мне все равно что он делает. я критикую этот ролик и подачу.
понятно что секта годотей побежить лайкать. мне то что с этого
а мне не нужен "любой" ландшафт
у меня вообще модульные горы в блендере сделанные, и я их на плоскости расставляю
Ахаха, блять. Очередной вырожденец думает, что его подписки конвертируются в деньги.
На релизе этот финский васян с удивлением обнаружит, что лайкающие его реддиторы-гуньдотеры не купили нихера.
в юнити уже готовая есть, но она только в hdrp (нахуя они так издеваются - хуй его знает)
>уииии он ничего не добьется понели! маркетинг в соцсетях не работает понели я скозал!!! он ничего не сможет сделать, я же не смог сделать ни одной игры , а значит и он не сможет понели!!!11 а даже если сделает, никто не купит, потому что я так скозал понели?!!1
Да поняли мы, поняли, бздотя, не нервничай.
Не знаю, что он там делает, но пока увиденное не впечатляет с технической точки зрения.
Похоже на попытку сделать выживач из готовых ассетов. Ассетус-флиппитус вульгарис.
Тебе то сразу понравилось, понятно. Узнал брата ассет-флиппера. Сам такой же, все еще мечтаешь на ассет флипах заработать миллион?
Пойми, если так и будешь гоняться за тенью чужого успеха, то никогда ничего не сделаешь.
Странно слышать про купленные модельки от бздоти, которая сама не может в арт и загружает спизженные модельки в свой бздотя энжин.
А ты как собрался делать свой слоп? Генерить через ИИ? Ты же не можешь в создание ассетов
Хахах ты даже не переносишь это на один из двух движков который не используешь сам, зная что они оба служат основой этого слопа.
>Очередная игра, где нужно перемещать префаб игрока по стандартному террейну и собирать ресурсы в ассет инвентаря, стреляя в модельки купленных врагов из купленной модельки оружия.
Согласен, слишком банально.
Нужна игра, где нужно перемещать стандартный террейн по префабу игрока с учётом всех изгибов тела и одежды, и раскладывать ассет инвентаря в ресурсы на модельке игрока, стреляя в купленные модельки оружия пулями в форме моделек купленных врагов - чтоб на каждый выстрел новая моделька врага вылетала из террейна в сторону оружия на модели игрока. А финальным боссом на локации между ног игрока будет миниган, в который нужно стрелять из гор стандартного террейна модельками аниме девочек, пока тот не обмякнет.
Воруйте идею и зарабатывайте, пока не поздно.
Ну то есть кроме как сделать очередной выживач по известной формуле, идей больше не бывает? Ясно.
https://github.com/KTStephano/StratusGFX/tree/master
Советую посмотреть, если тоже делаете свой движок
У тебя нет даже 1% что есть в годоте, клоун.
Очередное переобувание в полете, когда приложили неудобным, а до этого кукарекал что игры на годоте не игры потому что зарабатывают не миллиарды
Ты оттуда свою бздотю энжин копипастишь?
Алсо, где там движок? Увидел только либу для рендера статической геометрии. До движка там еще 10 человеко-лет работы.
Если ты не знаешь, что такое движок - скачай посмотри анрил или юнити.

синенькое это и есть префабы.
С помощью этого и компьют шейдера, вроде бы можно.
https://docs.godotengine.org/en/stable/tutorials/rendering/compositor.html
Ты поделил на ноль, где OpenGL и где современные технологии. Скоро этот легаси кал перестанут поддерживать на уровне драйверов. Жаль, что ты не разбираешься в программировании и поэтому не смог разобраться в современных графических апи
opengl это просто API
что opengl что vulkan в итоге вызывают те же самые низкоуровневые функции драйвера.
имелись ввиду современные техники рисования, а не что-то уровня opengl 1. этот движок ничем не уступают любому ААА-движку в этом плане. эти техники можно легко перенести хоть на vulkan, хоть на dx12
OpenGL это набор черных магических коробок, которые ты дергаешь не зная, как они работают. Это тоже самое что тягать префабы в юнити, для тех, кто слабо разбирается в программировании. Кроме этого, это неэффективное устаревшее апи, которое не в полной мере использует потенциал современных gpu
Вулкан это тру программирование gpu, без черных ящиков. Если ты не понимаешь вулкан (а ты выше писал, что не понял wicked), ты не понимаешь как работает gpu, и даже на Опенгл сможешь писать только через магическое мышление.
Вывод - вулкан/dx12, это для тех, кто умеет программировать, поэтому неудивительно что бздотя типа тебя выбирает легкий способ, так как не умеет писать код. Да и готовых либ на гитхабе больше на OpenGL, есть откуда копипастить.
>годот, ты ничего не поймешь
В коде Godot всё хорошо абстрагировано, поэтому и разобраться легко.
мимо открываю исходники, когда хочу уточнить, как именно что-то работает
Это бздотя свои проекции написал.
Он сам скачал Юнити - ничего не понял, делать игры слишком сложно для бздоти.
Залез в исходники годота - ничего не понял.
Залез в викед , думал скопировать оттуда и назвать бздотя энжин - но даже там ничего не понял.
Вулкан тоже не понял, и как работают видеокарты тоже не разобрался.
Вот и приходится выдирать копипасту из каких-то древних рендеров на Опенгл. Тяжело быть бздотей, не разбирающейся в программировании.
>Вулкан это тру программирование gpu, без черных ящиков
Чепуха. Команд буферы, рендер пассы, дескриптор сеты и т.д. это черные ящики, которые не имеют никакого отношения к реальной архитектуре видеокарты.
Вулкан выглядит так, как будто его создавал неопытный студент, который все усложнил ради усложнения.
>Вулкан выглядит так, как будто его создавал
Vulkan создали те же люди, что создали OpenGL.
Изначально Vulkan назывался "glNext", т.е. "новое поколение OpenGL", и разрабатывался из-за опыта расширения OpenGL низкоуровневыми функциями.
Вообще, если углубиться в историю:
1. Первые CPU имели огромные наборы сложных инструкций, но как показала практика 99% из них использовались в 0.01% случаев, а место на чипе занимали много, поэтому появились RISC - очень маленькие, простые команды, зато быстрые.
2. Первые GPU не имели даже понятия треугольник, однако позволяли одной командой напечатать ASCII символ из захардкоженой в железо таблицы. Также понятие "спрайта" было захардкожено в железо. Т.е. выводили графику напрямую обращением к железу.
3. Первые 3D GPU научились рисовать треугольники, закрашивая их текстурой с градиентом освещения... Единственное, что они умели. Хочешь что-то больше? Делай софтверный рендерер (командами CPU).
4. Постепенно разрабы GPU осознали то же, что разработчики CPU раньше них - делать огромные инструкции в железе нерационально, лучше дать примитивные, но простые и быстрые инструкции.
OpenGL постепенно расширяли этими новыми инструкциями. Vulkan делали сразу из рассчёта на использование всех возможностей GPU напрямую.
Т.е. это не Vulkan виноват, а движение GPU в сторону универсального вычислительного устройства вместо специализированного отрисовщика ASCII/спрайтов.
Ты овощ, извини.
Абстракции дх12/вк гораздо ближе к драйверу чем полноценная библиотека опенгл, в которой куча бойлеплейта.
>>2982
Давно в движкосрач тредах не видел чего либо осознанного в контексте программирования.
От себя добавлю, что раз, упомянутый выше викед, как раз таки иллюстрация простого движка где все понятно, если в ним проблемы, то соболезную, и два, что и в викеде есть очевидные недочеты даже в базовых вещах связанных с вулканом.
nvidia 10 лет назад придумала bindless текстуры, просто передаешь указатель на текстуру в шейдер - абсолютно любым способом - и это просто работает. В vulkan до сих пор не могут это повторить, позорники делают какие-то костыли с большим массивом текстур.
Vulkan откатил технологии программируемой графики на 10 лет назад минимум. Вместо развития тенденций opengl к динамизму состояния видеокарты и упрощению API до уровня программирования CPU, они наоборот все откатили чуть ли не до фиксированного пайплана. Дегенераты.
Например, в opengl glsl есть субрутины, чтобы указывать спецификации шейдеров в рантайме. Разумеется в вулкане этого нет, поэтому там используется препроцессор, который генерирует десятки тысяч уникальных шейдеров со специализациями и пропуки их часовой компиляции.
Может оно ближе к архитектуре мобильных чипов и огрызков от АМД, но оно точне не ближе к нвидии.

1532x838, 0:15
Opengl это куча абстракция и неявных операций еще на стороне цпу, до передачи на гпу, те ты этим управлять не можешь никак, просто принимаешь как данность. Сделано за тебя.
По поводу нвидии и биндлесс, что ты имеешь в виду? Биндлесс дескриторы и пуш дескрипторы, давно есть и в дк12 и в вк, или ты о самой концепции таблицы дескрипторов в видеокарте? Непонятно.
> Например, в opengl glsl есть субрутины
Ну глсл ты зря приплел, это вообще о другом. Путаешь теплое с мягким. Дх12/вк никак не зависят от шейдеров и тем более глсл, модешь хлсл или сланг использовать, все едино.
Кстати забавно что нвидия сланг хроносам передала
Используя в дх12/вк разумеется не плохо бы кэшировать исходники/спирв щейдеровна подумать. И погугли про динамик стейт и шейдер обджект.
Да и про рекомпиляцию шейдеров уже совсем бред, к вопросу отношения не имеет. Это проблема говнорукой реализации а ни как не спецификаций дх12/вк.
В попенгл у тебя были только фиксированные пайплайны, но с редакциями по чуть чуть открывали фичи которые можно кастомизировать, но ты все равно будешь то тут то там упираться в стену. Вулкан конечно пока сырой и кривой, но это просто возможность создать произвольную программу для гпу, а не только дергать готовые кубики.
Еще пример, сделали ручное выделение памяти в вулкане. И в итоге все пользуя библиотекой vulkan memory allocator. Ну и в чем был смысл этой ХУЙНИ, можно объяснить? Вместо того, чтобы иметь аллокатор на уровне драйвера, оптимизированный под конкретные драйверы, теперь просто васянский аллокатор в юзер коде. В чем плюс этого маневра?
Они постоянно коммитят новые функции, и исправления в этот аллокатор. А это означает, что старые игры навсегда останутся с неэффективным, багованным аллокатором в юзер коде, вместо того, чтобы обновиться с новым драйвером. Спасибо, кронос!
Разумеется, никто с этим не спорит особенно на фоне старых дх.
Но всему свое место и время.
Просто задумайтесь если современный игроделы сидели бы на движках целиком на опенгл, имаджинируйте фпс как говорится.
>>3041
Амд в частности, а не хронос, так то. Ну и это чисто опенсурс, дареному коню.
Вма взлетел потому что он прост и хорош и легок в модернизации, не нравится - найди лучше или напиши свой.
>Аллокатору как и чему угодно уровня пользователя нет места в драйвере.
Бред. Все пользовательские программы используют системный аллокатор из операционной системы.
Только производитель видеокарты знает, как работает его память и как эффективнее сделать аллокатор под конкретную карточку, а не обобщенную модель памяти, которая учитывает всякое дерьмо типа мобильных телефончиков
> Бред. Все пользовательские программы используют системный аллокатор из операционной системы
Ой вей...
https://youtu.be/8-NYVYxbuhM
То есть он рендерер на вулкане делал 2 года, а на opengl за выходные. Чтобы вы понимали что такое vulkan

любая анрил игра это и дх11, и дх12, и вулкан игра. если разрабы спецом не вырубили поддержку вк или дх12. можно менять рендеры аргументами запуска
Придется продолжать пилить вручную.

на моём железе разогнал - примерно за 4 секунды 100 миллионов комбинаций обрабатывает
не понял
1. общее число игр растёт
2. число игр на вулкане после 2020 падает
3. число игр на опенгл падает
какая-то неполная статистика
очевидно, это ребёнок или подросток
Расскажите ему про дип сик. Сейчас уже не модно быть дауном.
Ну так этот чертила эти два года учился, он бы за неделю с OpenGL на вулкан переделал рендер. Да, не за два дня, но явно не годы.
Ну если отсутствие веба и мобил это фичи, то ебет. Видимо ртом.
это топ 1% разработчик, который кармака может многому научить. основатель leadwerks, с 2006 года делает движки
если он негативно отзывается о vulkan, то дело в vulkan
> leadwerks
Это какой-то шизоидный скам, ты сайт видел? Там обещают какие-то дикие фпсы, x1000 от юнити. Но при этом ни одной игры на этом движке за 20 лет.
Даже модель монетизации как у скама, не поделить процентом прибыли когда придешь к успеху, как у всех нормальных движок, а сначала гони 100 баксов, а потом ебись как хочешь без доков и поддержки. Как будто автор сам уверен, что на его высере игру никто сделать не сможет.
Я такому долбоебу не верил бы.
У того же кармака проблем с вулканом не было, хорошо отзывался о нем
можно взять и оптимизировать какой-то узкий юзкейс тысячекратно. особенно когда сравниваемый движок и правда не очень хорошо в это умеет
другое дело, кого ебёт что там х1000 из-за какого-то тупого гиммика. давай нам миллионную юзербазу, давай 100 тысяч часов туториалов на ютуб, тысячи курсов от профи, десятки тысяч вакансий по всему миру на своё двигло. тогда подумаем
Двачую, схуяль я должен платить за то чтобы попробовать движок когда топ 3 двига такого не требуют? Ебанутый, ладно бы он лицензию продавал за эту сотню, а сам двиг можно было ковырять бесплатно. А так нахуй пусть идёт.
этот ебаный помойный мусор активно покупают в стиме, интересно хоть один из всех купивших, релизнул где-то игру?
https://store.steampowered.com/app/251810/Leadwerks_Game_Engine/?l=russian
https://store.steampowered.com/bundle/43610/Leadwerks_Games_Bundle/
4 игры есть. уже больше чем на юнити
это как раз реально с использованием multi draw indirect и gpu culling, которых нет в unity. на сценах с большим числом объектов unity всегда проигрывать из за большого числа drawcall'ов.
кармак последний раз притрагивался к играм в 2011 году. потерял хватку. легко хвалить то, чем сам не пользуешься.

https://www.youtube.com/watch?v=GsGa-ubTlZQ
Как я понял особенность этого движка в том, что в нем легко делать уровни. В отличие от unity, godot где ты просто можешь расставлять префабы на сцене и все.
Просто скачиваешь пару аддонов и все становится просто.

Я не хочу переделывать на вулкан.
НЕЕЕЕЕЕЕЕЕЕТ
Нужно получше изучить другие движки чтоб не изобретать колесо. Так то у меня осталась рабочая версия, но смысла в ней не много.
https://2ch.hk/news/res/17955208.html (

Особенно после таких новостей. Значит придется все делать только для иностранцев.

Все? Бздотя обмяк, пукнув под себя, а разработка движка завершилась даже не начавшись?
А разговоров-то было, топ 25 программист на свете.
Впрочем, никто и не сомневался.
Я не он. Чисто без интерфейса сделать можно. Тупо в коде все прописать. Но чисто движок для пользователей не смог.
жесть ты его попустил

Fousands (of Frames) per Second
Означают что редактор работает в энергосбережении. Юнитидети даже таких простых вещей не знают?
Поэтому все игры на годоте работают в 15 фпс даже на топ железе и при этом пропукивают?
Экономят электроэнергию игроков?
Гигачад Анрил: сжигает твою печку и выбивает все пробки в районе пытаясь отрендерить куб в пустой сцене
Девственник-Годот: занижает фпс стесняясь выдать лоуполи картинку без пропуков
разрабы годоти экономят свою энергию
легковесный и маломощный, как движок от мопеда
Юнитихохлина...
Чел не смог собрать ассетфлип из готовых ассетов и обиделся.
Естественно, оказалось что по его словам "невозможно в годоте", делается годотерами элементарно.
Классика.
пердолики хвастаются необходимостью пердолинга? никогда такого не было, и вот опять
скачал ассет и решил задачу - плохо!
пропердолился три дня, накостылили решение - хорошо! раз заебался, значит, работа выполнена лучше
>>3721
Лолблять челик 100500 раз повторил что годот хороший двиг но ему легче оказалось работать с анрилом для его текущего проекта, но годотям так припекло что он вместо одного часа в анриле не пошёл пердолиться с солюшеном на рейтрейсинге в течении недели, что они на говно решили изойти и пилить говновидосы про него?
>скачал ассет и решил задачу - плохо!
Да там даже ассеты качать не надо, у анрила из коробки тулзы на все случаи жизни, можно почти любое решение собрать за час на лапше из блюпринтов, если знать что вызывать.
>работа выполнена лучше
Не лучше, а с душой, как все труъ инди игры на итче.
>скачал ассет и решил задачу - плохо!
Не плохо, а бездушно, корпопротивно, кабанчиково.
Ты сам в ассетфлипы играешь? Или только в АААА?
Пиарится чел, бывает.
>сделать самому за час нечитаемой лапшой блюпринтов в анриле - это не самоделкин и хорошо
>сделать самому за полчаса на простом и понятном гдскрипте и рейкасте - это самоделкин и плохо
Не пизди говнотя, в анриле это один нод и немного лапши. В годоте это целая библиотека и выйдет неоптимизонно если делать на гдскрипте. Как пример разрезание мешей - в анриле буквально есть функция из коробки которая режет процедурную меш, которая тоже идёт искаробки, тебе только лапшой нужно конвертнуть нужную мешь в процедурную и вызвать функцию, работы на пять минут. Или система хаоса, которая позволяет тебе "разбить" меш на куски - тоже 5 минут вопрос.
В годоте сам будешь писать всё и как быстро зависит от твоего скила.

Смешно, именно эти две системы я добавлял в последнюю игру минут за 20 взяв опенсорс аддоны за основу. (Раскалывание клетки при проигрыше). Ну и считать что в анриле все сделано оптимально - такое себе.
А хули ты ожидал? В этом смысл движков, чтоб нюфани типа тебя могли делать игры.
Хочешь чтоб было хорошо, делай как деды, сам. Нормально делай, нормально будет, как говорится.
в чем причина этого феномена?
Потому, что ты безыгорный шиз, не умеющий делать игры, поэтому и разглядываешь гизмы вместо того, чтобы делать игры, вроде бы все логично.
где ж за пару месяцев? уже минимум год с показа окошка прошел
гюнити, гуньрил

1280x640, 0:49
Почему курсор мыши спрятал? Стесняешься?
Тем, что это недопиленная технология. Он мироточит на глазах, срёт кучей артефактов и черных пятен, отражение понос ебаный, безумное количество шума даже в играх от самих эпиков. Ещё и мылит картинку TAA парашей. А Epic TSR - просто мусор.
Двигло в плане глобального освещения как было так и осталось во временах ue4. Т.е всё ровно запеченное освещение будет выглядеть лучше. А нахуя тогда люмен? А наниты? Киноделы уплатят за всё.
И самое печальное, что ладно бы киноиндустрия дрочила писюльку на это, но, теперь каждая игра АА или ААА+ на уе5 будет каждой новым болотом уровня фильмов марвелдс с капитанами таджикистанами и паштетом из говяжьих анусов вместо нормальной стилизованной картинки.

600x600, 0:08
А что по освещению в Godot скажешь?..
>безумное количество шума даже в играх от самих эпиков. Ещё и мылит картинку TAA парашей
Эээ, так не бывает братишка. Ты либо жалуешься на шум, либо на мыло, но не то и другое одновременно. Собсно ТАА/TSR нужны чтобы проблему шума убрать.
Выйдет Сталкер 3 в таком случае
во первых, красивее
во вторых, нет управления для uniform scale. вместо этого надо просто нажимать на любом месте в окне, что вообще неинтуитивно (я сначала решил, что это вообще не поддерживается, абсолютно случайно обнаружил), и это означает, что пока активны гизмосы, нельзя выбирать другие объекты на сцене.
это самая часто используемая функция в движке, и у нее настолько отвратительный UX. это многое говорит о движке, и отношении разработчиков к своему детищу.
>во первых, красивее
Пруфы?
> надо просто нажимать на любом месте в окне, что вообще неинтуитивно
Вполне интуитивно.
>пока активны гизмосы, нельзя выбирать другие объекты на сцене.
Можно, RTFM
>это самая часто используемая функция в движке
Вообще не припомню чтобы часто приходилось пользоваться uniform scale. Расскажи, что за игру делаешь, что это у тебя самая частая операция.
Я сейчас на время перестал делать свой движок и решил сделать коммерческое приложение по заказу.
Сделал МВП, вроде норм, решил проверить как делают другие.
А там ужас и пиздец даже у популярных приложений.
Я не говорю что я сделал лучше, у меня только ядро готово с функционалом. Но оно уже хорошо работает.
Просто годноту не выкладывают в открытый доступ.
Ты, наверное, пробовал при помощи голой нейронки сделать.
А тут надо RAG наворачивать или какую то LoRA обучать, в общем скармливать всякие PDF-ки по разработке движков.
>адекватного динамического освещения с тенями, которые бы делали норм тени с динамической сменой дня/ночи в купе с фототекстурами
по описанию похоже на сталкер
я имел ввиду гизмос трансформации - самая используемая функция. это лицо движка, оно должно быть реализовано идеально и интуитивно, значит самые популярные действия должны быть простыми и доступными по умолчанию, должен быть визуальный индикатор их совершения.
почему мне нужно изучать документацию, чтобы совершать лишние действия чтобы выполнить самое базовое действие? это плохой UX
Для своего времени там норм освещение было. И в целом картинка гармоничная, атмосфера ебеней присутствует.
И тут внезапно вторая часть на УЕ5, и то, с 4 анрила они форкнули движок на 5ку, создав тем самым какой-то пиздец в коде. Даже технически полный пиздец тоисть, да, а тут ещё и тот-же алайф не смогли завезти из "древнего" движка.
> нет управления для uniform scale
Че несет этот шиз неосилятор? В любом движке это есть, надо только хоткей зажать, шифт или контрол, везде по разному. Ты доки пробовал читать перед тем, как тянуть свои грязные неосиляторские ручонки к движку?
Или хотя бы посмотреть видеообучалку для умственно осиплых, коим ты и являешься.
Весь мир делает игры на анриле, юнити и годоте, в том числе большими командами, в том числе с огромными картами с тысячами пропсов, с десятками часов геймплея. И только одному умственно отсталому гизмы мешают делать игры. Сюр какой-то.
>Весь мир делает игры на анриле, юнити и годоте, в том числе большими командами
Юнити, анрил - да. На годоте по-моему реально больших команд нет.
Это звоночек. Встречают по одежке, как говорится. Это неряшливый движок, это показывает отношение разработчиков к своему движку. Это как нанять строителей, которые делают тяп-ляп, и т. д.
Если разработчики движка не могут нормально сделать даже такую базовую вещь, то что говорить про остальные. Да, на движке можно делать игры, но только через заднее отверстие.

Заебись, теперь слопа на стиме будет еще больше. Хорошо что ввели требование помечать игры с ИИ-контентом. Можно будет хоть как-то этот слоп фильтровать.
>почему мне нужно изучать документацию
Потому что новичок. В школе учебники читал?
>>4018
>Встречают по одежке, как говорится.
В чужой монастырь со своим уставом не ходят.
>>3977
>настолько отвратительный UX
А ты хоткеи пробовал использовать?
Q - выделение и все трансформации одновременно.
W - смещение, E - вращение, R - масштаб.
Конечно, это не то, что в Blender, но так даже лучше.
вот 3д генерация - супер пиздато, жду, сделаю свою ещё пока не сделанную визуальную новеллу с элементами 3д снова великой
>теперь слопа на стиме будет еще больше
Мне кажется наплыв говна ожидает скорее мобильный рынок. Там одно время все использовали одни и те же платные ассеты. Теперь будут использовать ИИ-кал.
Говноделы уже сейчас делают слоп на ии, тебе тоже никто не запрещает.
Кнопка «сделать пиздато» прямо в юнити - это уже совсем для умственно отсталых со стекающей изо рта слюной типа нашего бздоти.
https://app2top.ru/nejroseti/game-gears-s-pomoshh-yu-ii-my-uskorili-sozdanie-igr-v-4-raza-228727.html
>мобильный рынок
Ваще насрать, я пекабоярин и буду делать для пекабояр. Если взлетит отдам какой-нибудь фирме портировать на сосноли.

лицо малолетних нейродебилов, выросших на этом и поедающих настолько дебильный кал, лучше не представлять
Да норм так-то, яб даже сказал хорошо. Можно подумать что просто стилизованное лоу-поли, даже продавать можно. Я что-то упускаю?
Там правда на топологию надо глянуть, но вот так выглядит очень даже хорошо.
я про то что дом максимально нелогичен, кривой и у малолетних дебилов в подсознании будет откладываться, что это нормально, не знаю к чему это приведёт в будущем

Эээ, а ниче что он явно стилизованный?
>выросших на этом и поедающих
>>4086
>дом максимально нелогичен, кривой
Тебе не больше 10 лет, а пишешь как старик.
Это классика из 2003-го, на основе мультиков:
https://en.wikipedia.org/wiki/Toontown_Online
Напомню, Walt Disney делал такое с 1920-х.
Дети, игравшие в это, имеют собственных детей.
Дети, смотревшие это по ТВ, состарились/умерли.
как же хорошо, что я никогда не смотрел мультики и ненавидел их, а тебе видимо нравится копротивляться за барена
>никогда не смотрел мультики и ненавидел их
Тебе мамка/бабка запретила телевизор смотреть?
>копротивляться за барена
Насрать на барина, я сам что-то такое делать хочу.
Не ради прибыли, а так, чисто ради удовольствия.

>я сам что-то такое делать хочу.
>
>Не ради прибыли, а так, чисто ради удовольствия.
да-да-да, на анонимном-то форуме не пизди, делать слоп для детей, эксплуатируя вечную и давно известную схему, не осуждаю, но зачем пиздеть...

1920x1080, 0:15
Оскотинивание гоев идёт полным ходом. Они ведь даже не подозревают в какую яму падают.
Всегда работала, просто выключаешь нанит, люмен, виртуальные шадоумапы, вырубаешь ненужные плагины и скейлишь под свой пк. Если ты ждёшь что движок должен иметь настройки под твой случай из коробки то ты долбоёб.
в стиме банят игры если там персонажи выглядят младше 18 лет, мне одну игру забанили за блядь школьную тематику, пидоры ебучие, но это было вроде в 2022 году, может потом попробую в саппорт написать

1920x1080, 0:06
Проорал. Так-то база.
Потому что это монструозный инструмент, рассчитанный на работу в команде и на разработку около-ААА.
И что в нём такого приниципального что можно работать только в команде и только ААА?
не спрашивайте что случилось с предыдущими
Внезапно, используя опыт движка написал крутой софт для документов. Ну хоть что то пойдет в портфолио.
https://www.youtube.com/watch?v=Oylx_SWnlgE
Я тебе открою тайну - 90% размера билда это текстурки. Если не юзать 8к пбр карты с мегасканов, а оптимизировать текстуры, делать атласы, трим шиты, то можно делать копеечные билды, особенно если речь про стилизацию. Размер движка в билде игры это копейки
Ты видимо давно gimp не запускал.
Потому что любой пользователь просто отменит закачку твоего ф2п шидевра, если он длится дольше нескольких секунд, и пойдет играть в игры других.
Подумай вот над чем. Нейронка тренировалась на чем то. А значит этот стиль уже был в ходу массово.
Да, это очень хорошо. Ты буквально самоустранился чтобы не составлять конкуренцию игроделам.
Они почему-то ждут что движок который из коробки выдаёт ААА графоний должен одновременно выдавать копеечные билды не урезая эти самые ААА настройки.
Ну тут поможет только стать богаче гугла, выкупить его серверы и на каждом сервере в каждом городе закешировать твою игру, иначе хуй знает, анрил сильно не сожмешь, ну будет у тебя вместо 1,5гб 700мб, ну может быть 500, это все равно минут 15 качать.
>ну будет у тебя вместо 1,5гб 700мб, ну может быть 500, это все равно минут 15 качать.
Так ты этого не знаешь, ты ведь даже не изучал вопрос.
Тише бздотя, мы в отличии от тебя балансируем работу и отдых, это только ты ничего не делаешь кроме как высираешься тут.

ДУМАЙТЕ
string arguments = $"\"{path}\" --set-version-string \"ProductVersion\" \" \" --set-version-string \"FileVersion\" \" \" --set-version-string \"ProductName\" \" \" --set-version-string \"FileDescription\" \" \" --set-version-string \"LegalCopyright\" \"{Application.companyName}\"";
100% ты нарушил пользовательское соглашение и если выпустишь свою игру то тебя засудят
Тебе уже везде мерещятся бздоти?
сильно сомневаюсь, что они побегут роняя кал подавать в суд на рандом бомжа, даже если они меня заметят - думаю сначала предупредят, тем более всегда можно в самом начале, во время вступления выставить логотипы всех использованных продуктов и технологий прям как в крутых ААА играх, а значит за попытку сокрытия использования уже не получится притянуть
А смысл? Я знаю плюсы и делаю игру на анриле с игровой логикой на плюсах. Перфоманс у анрила топовый, если правильно готовить. То, что игра не запустится на калькуляторе 2005 года выпуска - мне не важно.
>То, что игра не запустится на калькуляторе 2005 года выпуска - мне не важно.
о, да у нас тут кто-то делает АААА+ проект, бюджет наверное лямов 100 баксов или нет?)
500 качаеися долго везде и пойдет под удаление как только на телефоне закончится место
в сша хуевый инет
Вулкан кривое говно плохо поддерживаемое производителями.
Да ну, гонишь? Неужели это нельзя просто в настройках экспорта поменять в движке за многомиллионов долларов?
Практически никгда не важно ни качество, ни цена сами по себе, а соотношение цена/качества.
Графеном ААА который жрет кучу ресурсов никого не удивишь, как и легковесным но простым.
А вот когда что-то мощное делают эффективно, это всегда круто.

это я знаю. вон как проигнорировал неудобное. пиздец ты наверное позеленел от злости
>А вот когда что-то мощное делают эффективно, это всегда круто.
В теории дохуя что круто, на практике таких движков пока нет.
всё еще в 10 раз меньше чем у "изучившего вопрос" идиота
и речь о download size. сетевой траффик всегда сжимается
лучше бы ты дальше со-дебилов на ютубе читал
>речь о download size. сетевой траффик всегда сжимается
АХАХАХА ну да, сжимаешь зипом или кодируешь видео, а потом передаешь по сети, информация видит что стала сетевым трафиком и еще в два раза дефргаментируется
Ну выглядит как стандартная визуализация из какого нибудь маткада
googleplay.apk
Это бздотя спизданул, он же дефрагментатор стека, логики в этом наборе слов можешь не искать
Зачем тебе анрил в апк? Бздотя не знает, что билд игры и дистрибутив движка это разные вещи?
Зачем? Делать что-то не для windows для инди - бесмысленная затея. Если даже эпики не портируют fortnite, потому что не видят смысла, то остальным и подавно не нужно.
Не ты не понял, сделать можно, самого редактора нет, типо делать из венды для всех платформ.
Что за конфа?
Все удивляются как такая годнота может быть бесплатной.
Ну ты ссылку дай, а то чет какое то говно выдает в гугле
>зачем тебе анрил в апк
Потому что шла речь про мобильную игру на анрыле
>что билд игры
Ну так о том и речь, бздотя предложил скачивать БИЛД игры сжатым траффиком (тм). Очевидно должен сначала установиться малюсенький апк, который его скачает (не данные игры, а именно билд игры на анрыле). Вот пусть и показывает, раз кукарекает
С блендером все так, они теперь делают игры на годоте. Называется DOGWALK
https://studio.blender.org/projects/project-dogwalk/
https://www.youtube.com/watch?v=Q5Jj1c_F6QA

ну держи еще мочи на лицо, раз так сильно просишь
Ты видел их прошлые игры вроде Yo Frankie?
Геймдев явно не сильная сторона разработчиков Блендера.
Самое смешное, что потом бздоти будут бегать и орать, какой глубокий художественный смысл заложен в собачке, бегающей по снегу, ведь это сделано на быстром (нет) и простом (нет) Годоте!
Нищук, конечно у моделлера мощный комп - он 3д фильмы на нем рендерит, и может себе позволить такую карту.
Кстати, с работой у моделеров чет беда, зарплаты пиздец низкие и вакансий нихуя нет, намного хуже чем у программистов ситуация.
Верим.

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

https://github.com/ezEngine/ezEngine/releases
https://github.com/ezEngine/ezEngine
https://www.youtube.com/watch?v=S342o8ZmPdA
потужно...
Ezengine около десяти лет.
И игры на нем есть, даже порты на консоли сделали, просто разрабы не афишируют
И игры не афишируют, никому поиграть не дают.
и был таков.
Все таки фреймворки делать легче чем движки.
блядь, еще охуенней
Это не очень сложная оптимизация, в тех "30 миллионах" тоже большая часть стоит или ходит всем чанком.
В Хоппе такое планируется. Сейчас там только 150 комаров, вроде.
Бздотя это с болгарского "чушь". Придумали братушки-славяне, спасибо им за этот перл.
Буквально "У нас есть такие приборы, но мы вам не расскажем".
Вон Хуан тоже форсит миф об успешной коммерческой истории Годота, а чего он тогда его открыл? Видимо, очень успешный у него бизнес был.
Идея очевидная, буквально вчера глядя на редактор карт придумал ровно то же самое. Вводишь промптом где хочешь разместить объект, это переводится в команды типа перемещение объектов в движке, вместо того чтобы двигать мышкой, полученная картинка оценивается нейронкой на адекватность расстановки и корректируется.
>не жрал говно значит не жил!1 что за молодежь пошла, не хотят жрать говно, вот мы в молодости так говно жрали, эх!!1
Луддит, спок, прогресс будет идти независимо от твоего визга.
>>5081
Да в будущем все так будет, не только расстановка ассетов. Vr шлем плюс нейроинтерфейс. Говоришь «создай комнату страшного замка», она материализуется вокруг тебя. «Добавь книжные полки», они появляются. «А теперь сделай так, как будто здесь была битва, добавь трупы и кровь на стенах». И так далее. Геймдев будет чистым творчеством без технической рутины. Дауничи типа этого >>5093 продолжать дрюкать мышкой, конечно, и будут 10 лет выкакивать то, что на нейронке делается за час, при этом лучше, без косяков по освещению, анатомии и т.д
И это замечательно, гораздо больше годноты получит шанс увидеть релиз.
Нет, если ты назовёшь что-то прогрессом, это не превратится автоматом во что-то хорошее или перспективное.
>Да в будущем все так будет
Кириллофантазёр не смог нихуя освоить и поэтому ему остаётся лишь фантазировать про прекрасное будущее.
>я освоил чистить говно вилкой, а другие не освоили! я у мамы самый скилловый говночист! запрещаю другим спать, не почистив говно вилкой!
Да-да, плачь дальше, жди когда останешься на обочине истории с единственным скиллом в устаревшем невостребованном пайплайне с осознанием того, что творческий процесс полностью прошел мимо тебя, пока ты тратил время на технические низкоуровневые детали, обезьянью работу, вопрос автоматизации которой будет решен в ближайшем будущем
>Vr шлем плюс нейроинтерфейс. Говоришь «создай комнату страшного замка», она материализуется вокруг тебя. «Добавь книжные полки», они появляются. «А теперь сделай так, как будто здесь была битва, добавь трупы и кровь на стенах»
это всё ебаное говно абсолютно бесполезно без кор и мета геймплея
Ну как же, просто говоришь "сделай заебись игру чтобы там эльфы домики строили" и оно делает. Торжество творческих личностей над бесполезными обезьянами. Надо только немного подождать.
Эти всё? Сдулись?
В российских базах пишут на русском фирмы
>Это из Дагора
>Это код cocos2d-x
>Это опять код cocos2d-x.
Проиграл, а ведь бздотьки из вк походу тупо получали шестизначную зарплату и пили смузи, а перед менеджерами отчитывались, показывая копипаст из опенсорсных движков с гитхаба.
Кто бы мог подумать, если тупо накопипастить код из разных либ и движков, то ничего хорошего в сумме не получится.
Даже представить страшно, сколько там багов, проблем с совместимостью и неэффекивного использования железа и ресурсов системы.
Нищебродина опять считает чужие деньги, вместо того, чтобы устроиться на работу.
Не ну понг сделать
Там же для 2д cocos-x
А на нем много игр.
С 3д уже посложнее, какая то 3д модель может не загрузиться, до анимирования я не дошел и дропнул. Не сосать мне грантов.
это если исходить из постулата "если где-то линкуется кокос, значит нау имеет функционал кокоса". что неверно. нау ничего не может и не работает
Это не так, там можно сделать что то примитивное, типа бомбермена или змейки 3д. Конечно бомбит что там нельзя сделать свой гта-вартандер при дагоре под капотом.
нет
Срау энжин - тупой безыдейный попил бабла, на котором не будет ни одной игры, даже примитивной, смирись.
Взять и тупо скопипастить кокос, потому что сами нихуя не могут, при том что у них была команда, бабло и больше года времени - это просто дно. За год можно сделать полноценный 2д двиг, все что они смогли - скопировать кокос так, что на нем даже нельзя сделать змейку в отличии от оригинала, это пиздец позорище. Кем надо быть, что копротивляться за этот кал, когда есть хидден гемы типа викеда или Ezengine - ума не приложу
Всё будет, надо только подождать.
>За год можно сделать полноценный 2д двиг
Откуда ты знаешь, ты не сделал ни одного движка, ни одной игры.
> Всё будет, надо только подождать.
Откуда ты знаешь, что будет? Его какая-то крутая команда сейчас делает, а не студенты из итмо?
Большинство движков впринципе мертвы, не выжержав конкуренции с решениями, над которыми сотни людей работали годами.
Почему именно у срау получится? Не понятно.
Вот если бы он закрывал какую-то нишу - что-то бы было, а так - наивно думать что у него есть шансы

показывай свой миллиард, свой движок или иди нахуй
сноси эту парашу от пидорасов для пидорасов
В API не видно функции наподобии Input.GetAxis ("Horizontal"); Input.get_vector("ui_left", "ui_right", "ui_up", "ui_down")
Зато предлагается получить gainput. (Видимо, она используется внутри. Звучит как привязка к конкретной реализации).
Правда есть нюанс. Судя по всему, либа заброшена уже лет 5. Да и похоже она сама не поддерживает оси джойстиков.

хочет по-хардкору убедиться в том, какой это мусор
Пойми, мы не можем ничего сделать, там были потрачены частные деньги инвесторов, не из бюджета, не из налогов, не наши. Просто забудь про него. Закрой сайт и забудь.
>там были потрачены частные деньги инвесторов
как-то подозрительно легко их потратили. как будто это были легкие деньги. интересно, откуда у окологосударственной конторы легкие деньги?
>окологосударственной конторы
Каким боком государство то там? Контора частная полностью. Твой аккаунт в ВК в частных руках.
Ясно, удаляю оттуда акк.
наупорк, спок! пиздуй коммиты пушить

Так изначально было ясно, что там нет ничего своего, тупо копипаст опенсорсных либ для того, чтобы пускать пыль в глаза инвесторам.
Странно ожидать, что из такого кала получится что-то годное.
у вашего государство нет своих денег, чубарик

например Десима прошла от 2013 пикрил до https://www.youtube.com/watch?v=eT_A2gPhTIw в 2025
пиздец какой скачок
Запоминаем: урина не умела в динамику ещё с хуй знает каких времён, только запеченное статическое освещение, большие открытые миры ещё с древних времён так-же не поддерживаются.
Исключение - это китайцы которые на ней сделали линейку и мб ещё какие-то ммо есть которые перепилили движок под собственное решение.
Нсфот на 4ке трон-либерала сделали.
Что сейчас: с приходом 5ки она все ещё не умеет это делать, не умеет в открытый мир. По словам Sвини упор на это будет аж в 6 версии...
Эпик спиздили хрюмены из другого движка(не точно), сделали сралниты, которые должны были помочь в оптимизации и облегчить работу - нихуя по итогу не добились, сделав наоборот, что игры нахуй лагают и выглядят как дерьмо-слоп из под конвеера.
А как вишенка - дерьмовая модель пбр-шейдеров превращает всю картинку в дерьмо из мыла и мочи осла, из-за чего любая студия которая не будет писать собственные кастомные шейдеры так, чтобы выкорчевать это пластиковое говно - обречена обосраться.
Гои съели рейейк сайлент-хила, уже второй же 1в1 визуально такой-же на подходе с завода скоро выскочит. А потом третий. А потом чётвертый. Они будут 1в1 одинаковы. Но тут хотя-бы можно простить.
Разрабы ведьмака прихуели когда увидели это дерьмо и теперь в замешательстве. ведь разрабы своего движка с половины ливнуло со студии.
Несколько игр вышло в релиз на уе5, от ммо до обычных бродилок и успело с треском провалиться(большая половина жалуется на производительность игр, вторая на криворукость разработчиков)
Итог: урина - проклятый движок; ему только и быть на грани банкротства и быть обоссаной обосраной с её мылом тянующимся со старых версий таа говнища. У этого говна как у калового-столпа говно тянется длинным шлейфом с древних версий, только увеличиваясь в размерах, не принося ничего в действительности нового.
Все технологии которые вышли - это псевдопиздеж, технологии стопнули своё развитие в угоду большому бизнесу. Либо их сложно применить где-то помимо производства фильмов. Что поимели гей-меры с этого? Ничего.
Все ещё верите в величие этого движка? Ждите, ждите ещё немного, пока выйдет ещё больше игр и обосрется с треском пожалев ̶п̶о̶п̶и̶л̶и̶в̶ ̶б̶а̶б̶л̶а̶.
Хотите ли вы надеть на себя амулет ̶с̶о̶н̶и̶ч̶у̶ ue5 и стать проклятым? Решать только вам.
Запоминаем: урина не умела в динамику ещё с хуй знает каких времён, только запеченное статическое освещение, большие открытые миры ещё с древних времён так-же не поддерживаются.
Исключение - это китайцы которые на ней сделали линейку и мб ещё какие-то ммо есть которые перепилили движок под собственное решение.
Нсфот на 4ке трон-либерала сделали.
Что сейчас: с приходом 5ки она все ещё не умеет это делать, не умеет в открытый мир. По словам Sвини упор на это будет аж в 6 версии...
Эпик спиздили хрюмены из другого движка(не точно), сделали сралниты, которые должны были помочь в оптимизации и облегчить работу - нихуя по итогу не добились, сделав наоборот, что игры нахуй лагают и выглядят как дерьмо-слоп из под конвеера.
А как вишенка - дерьмовая модель пбр-шейдеров превращает всю картинку в дерьмо из мыла и мочи осла, из-за чего любая студия которая не будет писать собственные кастомные шейдеры так, чтобы выкорчевать это пластиковое говно - обречена обосраться.
Гои съели рейейк сайлент-хила, уже второй же 1в1 визуально такой-же на подходе с завода скоро выскочит. А потом третий. А потом чётвертый. Они будут 1в1 одинаковы. Но тут хотя-бы можно простить.
Разрабы ведьмака прихуели когда увидели это дерьмо и теперь в замешательстве. ведь разрабы своего движка с половины ливнуло со студии.
Несколько игр вышло в релиз на уе5, от ммо до обычных бродилок и успело с треском провалиться(большая половина жалуется на производительность игр, вторая на криворукость разработчиков)
Итог: урина - проклятый движок; ему только и быть на грани банкротства и быть обоссаной обосраной с её мылом тянующимся со старых версий таа говнища. У этого говна как у калового-столпа говно тянется длинным шлейфом с древних версий, только увеличиваясь в размерах, не принося ничего в действительности нового.
Все технологии которые вышли - это псевдопиздеж, технологии стопнули своё развитие в угоду большому бизнесу. Либо их сложно применить где-то помимо производства фильмов. Что поимели гей-меры с этого? Ничего.
Все ещё верите в величие этого движка? Ждите, ждите ещё немного, пока выйдет ещё больше игр и обосрется с треском пожалев ̶п̶о̶п̶и̶л̶и̶в̶ ̶б̶а̶б̶л̶а̶.
Хотите ли вы надеть на себя амулет ̶с̶о̶н̶и̶ч̶у̶ ue5 и стать проклятым? Решать только вам.
К тому же, грантоедам на заметку - кому ИРИ с большей вероятностью дадут деньги, игре на родном российском движке, или на бездуховном юнити?
Все так.
У инди нет столько ресурсов чтобы в нем что то делать. Там любая операция типа импорта модельки и добавления коллайдера это часы ебли. Плюс придется писать с нуля весь код начиная с контроллеров - ассетов то нет. Ну и там наблюдаются баги которые инди не сможет починить, типа мигающие или исчезающие объекты в поле зрения.
а мог бы игры делать
Да, только хз зачем.
Кстати, вот чуваки пишут что сделали игру на своем движке. https://store.steampowered.com/app/3413150/Makai_Agito/

Внка - вообще пофиг на чем делать
Менюшки со статами - в принципе тоже, только дольше дрочить
3д часть там довольно примитивная. Уровня Wolf3d, ок. Хотя даже проще. Можно просто коробки рисовать скошенными текстурами.
Монстры там просто 2д спрайты с тенью, пререндеры.
Спецэффекты - спрайты флипбуки без частиц и мигание экраном, без какого либо освещения. Вроде видно пару постпроцесс эффектов с дисторшном задника.
Ну в общем такой случай на грани, когда движок еще не нужен.
Никто не запрещает делать на нём 2D проекты.
Релиз российского футбольного симулятора, по стилю напоминающего серию FIFA или EA Sports, должен состояться до 2030 года. Об этом сообщил генеральный секретарь Российского футбольного союза Максим Митрофанов в комментарии для ТАСС.
спортивные симуляторы - это для нормисных подпивасных скуфов (говноедов), мы в такое не играем

Наверное, если ты выбираешь технологию для длительного изучения, не сильно критично будет 10 секунд в гугле потратить, чтобы узнать?
https://dev.epicgames.com/documentation/en-us/unreal-engine/unreal-engine-programming-and-scripting
Круто, что они написали coding convention. Не нужно будет ломать голову как организовывать код.

Ты неправильно трактуешь ситуацию.
Это очередной бесполезный кусок дерьма, который тут форсит один шиз только потому он сделан(либы скачаны) в россии. Других достоинств у него нет.
А так тащи другие движки, тоже обосрем их.

В Nau Engine тоже есть стайл гайд.
https://github.com/NauEngine/NauEnginePublic/blob/main/doc/coding_style_guide.md
В принципе он довольно неплохой.
Есть пара моментов к которым я бы придрался.
20 стандарт - ну чтож, возможно когда начали делать 23 еще плохо поддерживался компилятором, но там есть вещи которые пофиксили. (тот же range-for проще писать - в примерах им приходится писать for size_t i=0;i<c.size();++i)
#pragma once это плохо, так как нестандарт и привязка к винде - потом придется вычищать вилкой при переходе на другие платформы.
Не использовать auto - ок внутри кода самого движка для ясности, но надо уточнить что в пользовательском коде это нормально. Да у них и в примерах он правильно используется.
То что RTTI запрещен это очень хорошо, но видел в коде NauRtti_TypeId , надо бы тогда уточнить что надо пользоваться каким то своим внутренним.
Скобки
{
}
- это моя личная неприязнь, так пишут только шарпомухи
нормальные крестовики всегда должны писать {
}

А мог бы делать на ФалькаЕнжин, который намного круче и от местного шиза.
Я пробовал, но поскольку фалько не опенсорс, то была виртуалка, а в виртуалке он не стартует.
То что он тут серит не делает его местным. Я его еще рсдн видел в прошлом веке. И много где еще
Ну так фалька давно делается (хотя ему движок на bgfx переписали, не помню когда это свершилось)
гений, если ты в вмваре запускал - то эти хуесосы принципиально не делают возможность проброса видеокарты в виртуалку

Имя ему - Иррлихт Энжин. Двадцать лет истории, опенсурс
Основные фичи:
High performance realtime 3D rendering using Direct3D and OpenGL [more]
Platform independent. Runs on Windows, Linux, OSX. Further platforms are in development and already used in projects.[more]
Huge built-in and extensible material library with vertex, pixel, and geometry shader support [more].
Seamless indoor and outdoor mixing through highly customizeable scene management. [more]
Character animation system with skeletal and morph target animation. [more]
Particle effects, billboards, light maps, environment mapping, stencil buffer shadows, and lots of other special effects. [more]
Several language bindings which make the engine available to other languages such as C#, VisualBasic, Delphi, Java …
Two platform and driver independent fast software renderers included. They have different properties (speed vs. quality) and feature everything needed: perspective correct texture mapping, bilinear filtering, sub pixel correctness, z-buffer, gouraud shading, alpha-blending and transparency, fast 2D drawing, and more.
Powerful, customizeable, and easy to use 2D GUI System with Buttons, Lists, Edit boxes, …
2D drawing functions like alpha blending, color key based blitting, font drawing, and mixing 3D with 2D graphics.
Clean, easy to understand, and well documented API with lots of examples and tutorials.
Written in pure C++ and totally object oriented.
Direct import of common mesh file formats: Maya (.obj), 3DStudio (.3ds), COLLADA (.dae), Blitz3D (.b3d), Milkshape (.ms3d), Quake 3 levels (.bsp), Quake2 models (.md2), Microsoft DirectX (.X)… [more]
Direct import of Textures: Windows Bitmap (.bmp), Portable Network Graphics (.png), Adobe Photoshop (.psd), JPEG File Interchange Format (.jpg), Truevision Targa (.tga), ZSoft Painbrush (.pcx)… [more]
Fast and easy collision detection and response.
Optimized fast 3D math and container template libraries.
Directly reading from (compressed) archives. (.zip, .pak, .pk3, .npk)
Integrated fast XML parser.
Unicode support for easy localisation.
Works with Microsoft VisualStudio, Metrowerks Codewarrior, Bloodshed Dev-C++, Code::Blocks, XCode, and gcc 3.x-4.x.
The engine is open source and totally free. You can debug it, fix bugs and even change things you do not like. And you do not have to publish your changes: The engine is licensed under the zlib licence, not the GPL or the LGPL.

Имя ему - Иррлихт Энжин. Двадцать лет истории, опенсурс
Основные фичи:
High performance realtime 3D rendering using Direct3D and OpenGL [more]
Platform independent. Runs on Windows, Linux, OSX. Further platforms are in development and already used in projects.[more]
Huge built-in and extensible material library with vertex, pixel, and geometry shader support [more].
Seamless indoor and outdoor mixing through highly customizeable scene management. [more]
Character animation system with skeletal and morph target animation. [more]
Particle effects, billboards, light maps, environment mapping, stencil buffer shadows, and lots of other special effects. [more]
Several language bindings which make the engine available to other languages such as C#, VisualBasic, Delphi, Java …
Two platform and driver independent fast software renderers included. They have different properties (speed vs. quality) and feature everything needed: perspective correct texture mapping, bilinear filtering, sub pixel correctness, z-buffer, gouraud shading, alpha-blending and transparency, fast 2D drawing, and more.
Powerful, customizeable, and easy to use 2D GUI System with Buttons, Lists, Edit boxes, …
2D drawing functions like alpha blending, color key based blitting, font drawing, and mixing 3D with 2D graphics.
Clean, easy to understand, and well documented API with lots of examples and tutorials.
Written in pure C++ and totally object oriented.
Direct import of common mesh file formats: Maya (.obj), 3DStudio (.3ds), COLLADA (.dae), Blitz3D (.b3d), Milkshape (.ms3d), Quake 3 levels (.bsp), Quake2 models (.md2), Microsoft DirectX (.X)… [more]
Direct import of Textures: Windows Bitmap (.bmp), Portable Network Graphics (.png), Adobe Photoshop (.psd), JPEG File Interchange Format (.jpg), Truevision Targa (.tga), ZSoft Painbrush (.pcx)… [more]
Fast and easy collision detection and response.
Optimized fast 3D math and container template libraries.
Directly reading from (compressed) archives. (.zip, .pak, .pk3, .npk)
Integrated fast XML parser.
Unicode support for easy localisation.
Works with Microsoft VisualStudio, Metrowerks Codewarrior, Bloodshed Dev-C++, Code::Blocks, XCode, and gcc 3.x-4.x.
The engine is open source and totally free. You can debug it, fix bugs and even change things you do not like. And you do not have to publish your changes: The engine is licensed under the zlib licence, not the GPL or the LGPL.
Интересно, какое должно быть ебало, чтобы такой интерфейс сделать
даже бздыня наверное лучше и красивее запилил

То есть мне мало просто прописать значения позиции. Мне ещё нужно нажать кнопку [Set]. И после наверное появится Alert: "Вы уверены, что хотите изменить позицию?".
это поди корявая тулза сделанная наскоряк разрабом этого окошка.
ирлличт это насколько я знаю фреймворк. у него нет редактора
>Since version 3 of the library, it is recommended to use VMA_MEMORY_USAGE_AUTO to let it select best memory type for your resource automatically.
А помните как авторы этого кривого дерьма (vulkan) оправыдались тем, что "да разработчик лучше драйвера знает свой движок! Только сделав все вручную можно достичь лучшую оптимизацию!"
А теперь оказалось, что библиотечка решает лучше разработчиков.
И так во всем. В памяти, в барьерах, синхронизации: ручные решения не работают от слова совсем, потому что не масштабируются. В итоге все пользуются библиотечками.
Ну и в чем был смысл этих "низкоуровневых API"?
Считаю эксперимент провалившимся.
Это база чел
Если ты не пишешь так - ты не настоящий программист, а просто скриптовик залетный.
Нет. Ты совершенно не понял суть вулкана. Он именно о том, что будет полный лоулевел доступ, но будут написаны библиотеки, которые скроют всю эту сложность.
Где и кто говорил что все каждый раз каждому надо писать с нуля и изобретать велосипеды?
эти библиотеки называются драйверы
>полный лоулевел доступ, но будут написаны библиотеки, которые скроют всю эту сложность
это какой-то новый копиум. раньше вулкан именно презентовали как "старые API делают много непонятных вещей под капотом, вот сделаем новое API где разработчик будет всем рулить, вот тогда оптимизации раскроются!"
очевидно этого не случилось
Очевидно только то, что все бросили делать свои движки. Во всей индустрии 3-4 компании, у которых еще есть свой движок.
Если это такое лучшее API, то где движки на нем. Ой, их нет.
анрил

ААА движок один (re engine), и как он работает знают все. Оптимизировано что надо
Вроде же японцы никогда не славились сильными программистами? Но при этом они умудряются писать топовые движки и крутые игры.
В обычной жизни много отвлекающих факторов.
Для юнити куча годноты японцами написано.
Vcontainer, unirx, unitask, memorypack. На них всё юнити держится.
KingSystem - Зельда ботва https://zeldamods.org/wiki/KingSystem
ModuleSystem - Splatoon 3 https://epd.zeldamods.org/wiki/ModuleSystem
Decima - Death stranding, Horizon Zero https://en.wikipedia.org/wiki/Decima_(game_engine)
Luminous - FF15 и форк FF14/Online https://en.wikipedia.org/wiki/Luminous_Engine
Hedgehog engine - разные соники
Еще куча мариокартсов, марио и прочих. (bezel engine, LunchPack)
Дарк соулсы на своем движке http://soulsmodding.wikidot.com/topic:engines
Cyllista Game Engine – Project Awakening https://ariabento.wordpress.com/2021/05/23/cyllista-game-engine-project-awakening/
Persona 5, Вроде бы на этом https://en.wikipedia.org/wiki/Katana_Engine https://medium.com/@aprilldean/persona-5-strikers-game-engine-9feee5846b6f
кроме десимы и ре энжина один калич, который заменяется любым 3д фреймворком
Ой да пашла эта Тим Свинья со своей уриной...
У них с 3 версии как пиздец начался, так и до сих пор не останавливается.
Хм, и правда. Сам эти пользуюсь (кроме memorypack). Японцы прям красавчики.
костыли ненужные
ну урина с древних времён известный поставщик мыла на рынок.
до сих пор помню, как на игры на движке 3 версии урины ставили решейды, чтобы избавиться от него...
бизнес и технологии так сказать
Они у них самые топовые. Буквально куча софта и сайтов. Просто они не хвалятся ими.
Ну есть сайт и есть. Зачем хвалиться?
> Они у них самые топовые. Буквально куча софта и сайтов. Просто они не хвалятся ими.
> Ну есть сайт и есть. Зачем хвалиться?
Тут вопрос не в том хвалитсч или не хвалится, а вопрос в зарабатывании денег.
Если что-то можно прорекламить и оно будет приносить деньги - это будет рекламить.
Юнити и анрил это продукты на которые найдется клиент, поэтому вливаются огромные дееьги в их продвижение.
Японские движки, видимо, не являются достаточно топовыми, чтобы на них нашлось достаточно клиентов.
у нас есть такие приборы, но мы их вам не покажем
У японцев деловые вопросы решаются личной встречей корпораций. И все это помноженное на закрытость корп типа нинтенды.
Поскольку движки ААА то и кто что на них разрабатывает известно.
У них просто нет цели продавать движки нищебродам с улицы.
Так же как никто тебе не продаст движок гта или баттлфилда.
Разработка движка для распространения среди индюков - это отдельный вид товара, не всем это интересно.
Юнити и анрил это не движки для индюков.
> У японцев деловые вопросы решаются личной встречей корпораций.
Откуда возьмется личная встреча по поводу твоего продукта, если про него никто и не слышал?
> Так же как никто тебе не продаст движок гта или баттлфилда.
Откуда тогда тйы знаешь, что они топовые, если они не распространяются за пределы компании?
>Юнити и анрил это не движки для индюков.
Юнити это буквально для индюков, на ней практически ни одной серьезной игры не делали
Анрил это была попытка продать не только индюкам но и ААА, но чет все на нем дружно обосрались.
>Откуда возьмется личная встреча по поводу твоего продукта, если про него никто и не слышал?
Кто надо тот слышал, через связи. Они все это в банях порешают.
>Откуда тогда тйы знаешь, что они топовые
>гта или баттлфилда
Ну даже хуй знает!
> Юнити это буквально для индюков, на ней практически ни одной серьезной игры не делали
Много серьёзных мобилок.
Можешь сказать, что мобилки - это не серьезно, а я скажу - посмотри на топовые мобилки, насколько они масштабные - сколько там систем, какие чудеса оптимизации проделаны, и сколько они денег качают.
То что тебе а них не интересно играть(или ты даже не пробовал) - никоим образом не умаляет их успешности и комплексности разработки.
> Анрил это была попытка продать не только индюкам но и ААА, но чет все на нем дружно обосрались.
Не знаю уж кто там обосрался, но анрил энжин живёт и процветает, на нём делают и делают игры.
> Кто надо тот слышал, через связи. Они все это в банях порешают.
А, ну тогда понятно. И как, много порешали? Напомни, какие игры на движке гта и батл филда сделаны.
> Ну даже хуй знает!
Игра это не движок. Исходники гта - это не то что можно было бы назвать "топовым движком", если подразумевать под этим понятием набор инструментов для разработки другой игры. А если что-то другое подразумевать - то что например?
>сколько они денег качают.
Вообще похуй. Это не относится к движку.
> какие чудеса оптимизации проделаны
Да никаких обычно. Или тормозит как говно, или "оптимизация" это отключение фич, дальности прорисовки, постобработки - ну так конечно если нет картинки то нет и нагрузки, но какое это имеет отношение к ААА?
Кстати на мобилках еще больше других движков используется. Тот же плейрикс в треде поминали.
>анрил энжин живёт и процветает, на нём делают и делают игры.
Ага а вот игроки ругают, и разрабы уже думают, а стоило ли переходить.
>А, ну тогда понятно. И как, много порешали?
Да, отлично порешали. На том же Frostbite разные студии игры выпускают, ага. А на RAGE выходила еще RDR. Получается, нормально для других игр, да.
> Вообще похуй. Это не относится к движку.
Буквально отвечаю на твой тезис - "юнити для индюков"
Мобилки делают индюки? Нет. И то сколько они зарабатывают - тому показатель - это очень крупный бизнес, а не индюки.
> Да никаких обычно. Или тормозит как говно, или "оптимизация" это отключение фич, дальности прорисовки, постобработки - ну так конечно если нет картинки то нет и нагрузки
Тут два проеба сразу.
1. А точно ли они тормозят из-за хуёвой/слабой работы над оптимизации, а не слабости мобильного железа и попыток запустить на нём что-то слишком амбициозное? На секундочку, на моьилки есть кал оф дюти, есть даже пубг и фортнайт которые работают даже на кусках говна.
И что забавно когда-то в пубг мобайл(мобильная версия была сделана тенсентом после релиза пк версии, пока разрабы пк версии страдали над ней) даже играли на пк, когда основная пк версия ещё работала хуёво, лол.
2. Любая оптимизация - может как иметь цену в виде урезания фичей, так и не иметь. Это относится и к пк и к мобилкам. На основании чего ты утверждаешь(ты же это утверждаешь), что именно на мобилках "ну просто отключают фичи)", а вот на пк-то ищут самые эффективные способы реализовать всё?
На пк кстати у тебя лодов нету, тени на всей дистанции одинаково четкие, объемные облака не жрут 10% фпс а потому выруюаются в настройках любым шарящим игроком без топового железа?
> но какое это имеет отношение к ААА?
Хороший вопрос.
Надо засинкать терминологию.
Ты упомянал:
Серьезные игры, как я понимаю это синоним ААК
Индюков
Я ввёл понятие "мобилки", в том отношении, что это тоже не менее серьёзные игры чем серьёзные пк игры и объяснил почему(масштабность проектов, затрачиваемые ресурсы на разработку, в том числе по части самоц разработки, а не только наполнения контентом)
Ты я так понимаю это не заметил, и выделяешь мобилки в отдельную категорию - не серьезные игры и не ААА. Почему?
Ну и бонусом, иут ещё такое дело... ААА и АА обычно обозначают бюджет разработки. А не то насколько игра тебе кажется серьезной или интересной или еще что-то.
> Кстати на мобилках еще больше других движков используется. Тот же плейрикс в треде поминали.
Точной статистики у меня нет какой движок насколько популярн, если судить по вакансиям - юнити такое ощущение сильно доминирует на мобилках, другие тоже присутствуют, но сильно меньше.
Но их присутствие заметно.
> Ага а вот игроки ругают, и разрабы уже думают, а стоило ли переходить.
Такой себе показатель, основанный на оценочных суждениях о том кто что-то сказал. По факту на нём куча игр крупных выходила и выходит и дальше.
А если оценочные суждения давать - так я тебе могу сказать, что анрил хуево подготовлен к большим открытым локациям, и для этого действительно самые крупные компании свои средства имеют и анрил им нахуй не нужен. Ну так, по моим ощущениям по тому, что я знаю.
> Да, отлично порешали. На том же Frostbite разные студии игры выпускают, ага.
Ага, разные студии) Только вот все они - внутренние студии ЕА.
А я напомню, ты говорил, что простым работягам про закрытые движки знать не обязательно, бизнес кабанчиком метаетсч и договаривается, только вот как мы вилим ничего подобного - движко ющаетсч внутренними студиями одного издателя и больше никем.
Хотя пример тем не менее годный, не для этого аргумента, а как пример закрытого движка который вероятно годный - так как на нём дохуя разных игр делают и несколько студий его успешно юзают.
Но всё в рамках одной компании.
> А на RAGE выходила еще RDR. Получается, нормально для других игр, да.
Это движок рокстаров. Кроме них кто им пользуется?
Мог бы CryEngine привести в пример - вот он живее всех живых, его кто только не юзает.
> Вообще похуй. Это не относится к движку.
Буквально отвечаю на твой тезис - "юнити для индюков"
Мобилки делают индюки? Нет. И то сколько они зарабатывают - тому показатель - это очень крупный бизнес, а не индюки.
> Да никаких обычно. Или тормозит как говно, или "оптимизация" это отключение фич, дальности прорисовки, постобработки - ну так конечно если нет картинки то нет и нагрузки
Тут два проеба сразу.
1. А точно ли они тормозят из-за хуёвой/слабой работы над оптимизации, а не слабости мобильного железа и попыток запустить на нём что-то слишком амбициозное? На секундочку, на моьилки есть кал оф дюти, есть даже пубг и фортнайт которые работают даже на кусках говна.
И что забавно когда-то в пубг мобайл(мобильная версия была сделана тенсентом после релиза пк версии, пока разрабы пк версии страдали над ней) даже играли на пк, когда основная пк версия ещё работала хуёво, лол.
2. Любая оптимизация - может как иметь цену в виде урезания фичей, так и не иметь. Это относится и к пк и к мобилкам. На основании чего ты утверждаешь(ты же это утверждаешь), что именно на мобилках "ну просто отключают фичи)", а вот на пк-то ищут самые эффективные способы реализовать всё?
На пк кстати у тебя лодов нету, тени на всей дистанции одинаково четкие, объемные облака не жрут 10% фпс а потому выруюаются в настройках любым шарящим игроком без топового железа?
> но какое это имеет отношение к ААА?
Хороший вопрос.
Надо засинкать терминологию.
Ты упомянал:
Серьезные игры, как я понимаю это синоним ААК
Индюков
Я ввёл понятие "мобилки", в том отношении, что это тоже не менее серьёзные игры чем серьёзные пк игры и объяснил почему(масштабность проектов, затрачиваемые ресурсы на разработку, в том числе по части самоц разработки, а не только наполнения контентом)
Ты я так понимаю это не заметил, и выделяешь мобилки в отдельную категорию - не серьезные игры и не ААА. Почему?
Ну и бонусом, иут ещё такое дело... ААА и АА обычно обозначают бюджет разработки. А не то насколько игра тебе кажется серьезной или интересной или еще что-то.
> Кстати на мобилках еще больше других движков используется. Тот же плейрикс в треде поминали.
Точной статистики у меня нет какой движок насколько популярн, если судить по вакансиям - юнити такое ощущение сильно доминирует на мобилках, другие тоже присутствуют, но сильно меньше.
Но их присутствие заметно.
> Ага а вот игроки ругают, и разрабы уже думают, а стоило ли переходить.
Такой себе показатель, основанный на оценочных суждениях о том кто что-то сказал. По факту на нём куча игр крупных выходила и выходит и дальше.
А если оценочные суждения давать - так я тебе могу сказать, что анрил хуево подготовлен к большим открытым локациям, и для этого действительно самые крупные компании свои средства имеют и анрил им нахуй не нужен. Ну так, по моим ощущениям по тому, что я знаю.
> Да, отлично порешали. На том же Frostbite разные студии игры выпускают, ага.
Ага, разные студии) Только вот все они - внутренние студии ЕА.
А я напомню, ты говорил, что простым работягам про закрытые движки знать не обязательно, бизнес кабанчиком метаетсч и договаривается, только вот как мы вилим ничего подобного - движко ющаетсч внутренними студиями одного издателя и больше никем.
Хотя пример тем не менее годный, не для этого аргумента, а как пример закрытого движка который вероятно годный - так как на нём дохуя разных игр делают и несколько студий его успешно юзают.
Но всё в рамках одной компании.
> А на RAGE выходила еще RDR. Получается, нормально для других игр, да.
Это движок рокстаров. Кроме них кто им пользуется?
Мог бы CryEngine привести в пример - вот он живее всех живых, его кто только не юзает.
>Не знаю уж кто там обосрался, но анрил энжин живёт и процветает, на нём делают и делают игры.
Впереди, однако, ждут интересные времена. Столько разрабов перешло на 5 анрил, начав делать своё детище. При этом, некоторые уже провалились и сидят ноют, что деняг теперь нету. Покупать игру не хотят. В чём же дело, знает кто?
Вот что бывает, когда забываешь о том, что делать игры - это нихуя не легкий процесс, а тяжелый труд. Вместо этого урина чё там предлагала?
Облегченная разработка игор? Забыть об оптимизации? Скоратить половину сотрудников, поскольку не нужны юниты теперь, которые отвечают за какую-то, но свою одинаково важную работу? Урина определенно уплатит за эту потерю.
Выстрел самому себе в ногу как я щитаю в принципе, связываться с UE5.
Хотя Total Chaos на 5 урине жду.
Причем тут движок и обсер игры? Ты бред какой-то несешь. Если игра говно, то она провалится независимо от движка, анрил там под капотом или бздотя энжин
А на анриле много известных и хороших игр сделали за десятилетия, для ааа там пайплайн никак принципиально не изменился с третьей версии, со времен условного биошок инфинити

пофиксил
Такова судьба популярных движков. Все уже позабыли наплыв говна на пике популярности юньки и как его лого стало ассоциироваться со школьными высерами и ассетфлипами?
Анрил изкаробы даёт возможность выдавать топ графен. Но без навыков, всё что смогут школьники это выдавать плохо оптимизированные, скучные поделки с ААА графоном, похожие друг на друга из-за нетронутых настроек.
Нюанс в том, что на уече игры делают не школьники...
Ну, на юнити не школьники могут написать свой SRP и игра не будет похожа ни на одну игру в принципе. Хотя спалить можно конечно.
На урине- пиздец... В далёком 14 году одна студия сделала оч красивую игру, и до сих пор ни одной игры так и не вышло похожей.
А на юнити уникальные вещи почаще встречаются.
(1-2 пик - юнити, 3-4 - урина.)
>А на юнити уникальные вещи почаще встречаются.
Хз, у меня вот глаз намётан палить юнитиподелки по похожему рендеру, также как и анрил. Например Subnautica и Outer Wilds словно одними и теми же ребятами делалась. Но мне и норм, главное чтобы игра весёлая была, и обе легко войдут в мой топ.
Субнаутика и аутер вайлд были написаны еще в те времена, когда срп не было, пожтому мало заморачивались с кастомизацией рендера - не целесообращно было.
А теперь можно, но это опять же опция для тех у кого очень много ресурсов на разработку.
>А теперь можно, но это опять же опция для тех у кого очень много ресурсов на разработку.
Тогда откуда ты высрал
>юнити уникальные вещи почаще встречаются
Это не я писал, и субнаутику с аутер вайлдс в пример привел ты сам.

1280x720, 0:43
Ты о чём? На 5 урине таких нет, поскольку даже вода выглядит как масло какое-то.
Вот если заменить на текстуру говна, будет уже философская хуйня о движке.

залётный не знает что такое шейдер
Покажи еще хоть один движок, который из коробки умеет в твой видрил
Это народный движок, нюфаня. Он всегда славился сторонними разработками. Например, они уже давно пытаются добавить нормальный сетевой движок, но у них не получается. Вместо этого люди используют различные сторонние решения, которые отлично реализованы.
с мамкой так будешь разговаривать
ну это база
кринж
Бери годот.
да чёт походу кроме урины4 и юнити - выбора особо то и нету.
есть если стоит цель 2д игру делать.
а если 3д - либо юнити, либо ue4.
годот сырой, не понянет чёт среднее и с норм графоном.
а ебаться с дописыванием исходников годота - это ещё хуже чем дописывание урины.
да и сам вопрос, где быстрее будет вкат - неоднозначный довольно тоже.
с одной стороны c# на юнити, с другой урина с блюпринтами и в будущем C++.
я на урине не разрабатывал, но мне кажется на ней намного легче обосраться с оптимизацией и даже сразу не понять этого
Давно там все тянет.

ебать ты больная тварь...
Так без хака винды не получится же, выясняли. Я находил игру в которую лет 10-15 назад играл и там работало, а теперь хуй, нужная фукнция винапи возвращает облом. Придется как то драйвер писать и подписывать, так как игрока просить отключать проверку подписи - все нахуй пошлют.
ну смотри, ты делаешь какую-то систему в игре и делаешь её синглтоном
например, систему диалогов или систему квестов
а если одновременно можно вести два диалога? а если ты добавишь мультиплеер, и система квестов у каждого игрока своя? придётся переделывать синглтон на сервис, например
вот то же самое и с кнопкой - если она мультиплеерная, придётся переделывать
Ну тебе по сети приходит команда "interact(player_id, object_id)" это значит такой-то игрок провзаимодействовал с таким-то объектом (кнопкой например).

Сейчас я подробности забыл, поищу в треде.
Идея в том, чтобы два игрока мышкой пытались отобрать друг у друга кнопку. У меня есть несколько мышек, но винда позволяет управлять только одним курсором. И если кликнуть по второму окну, другие потеряют фокус (ввод с клавиатуры/геймпада).
Ответ:
Я еще лет 20 назад играл на винде в хотсит матч-3 с несолькими мышками. Очевидно это можно закодить самому (различать USB мышки по HID?) или поставить какую то прогу мультиплексор, правда на гитхабе опенсорсных не нашел.
https://web.archive.org/web/20100706162106/https://store.steampowered.com/app/7440
>Using the revolutionary Mouse Party, you can play with multiple players on the same computer
>OS: Windows 2000, Windows XP, Windows Vista
>Release Date: Dec 22, 2004
Плохие новости - винда блокирует чтение через HID мышки чтобы мешать кейлоггерам
https://github.com/signal11/hidapi/issues/247
Хорошие новости - как то же эти три-четыре проги работают
https://softwarerecs.stackexchange.com/questions/79650/need-two-mouse-pointers-on-windows-10-11
https://forums.developer.nvidia.com/t/vk-khr-present-wait-issues-stuck-frames-in-winewayland-gamescope/326248
к вопросу о том, почему на вулкане не делают игры...
с opengl и тем более vulkan лучше не связываться
на amd, intel 100% вылезут какие-то ошибки
единственное API которое ПРОСТО РАБОТАЕТ это directx, потому что только его полируют для поддержки ААА-игр
с unreal и тем более godot лучше не связываться
этот прав
>почему на вулкане не делают игры...
Че несет клоун, живущий в выдуманной параллельной реальности.
Не смог осилить перепечатать хелло ворлд на вулкане, и теперь тратишь время на поиск оправданий вместо создания игр?
https://www.pcgamingwiki.com/wiki/List_of_Vulkan_games
Если 4 версия была уже раздутой и перегруженной всяким говном, то что о 5 говорить... Движок не для игр.
Клоун, не смеши.
На уе5 уже овердохуя игр вышло с момента его релиза. И будет еще больше.
Даже в случае уе5 99% размера билда игры - текстуры, звуки, анимации. Движок там нихуя не весит на фоне остального.
Но ты безыгорный, поэтому тебя видимо очень беспокоит размер пустого проекта. Даже он у анрила приемлемый, уже давно у всех терабайтные ссдшнки стоят.
Дододо.
Физики сломанной в 5 урине не было ни разу, её придумали себе безыгорники. А в 4 версии у физикса нет симуляции колёс, вместо них шарики, т.к просто не имеет математической модели коллайдера под колёса, в отличии от юнити где это всё есть.
Не говоря уже о том, что там у персонажа встроенного в 5ке какие-то чеки и проверки постоянно на фоне работают, которые просто так не отключить.
И это любой чел который работал на 4 урине скажет, что это дико раздутое ПО с коробки.
Чисто СЛОП-движок с мистическим величием, который выполняет тем не менее свою работу как-то +-
Ну то есть ты не разобрался как что-то там настроить или отключить в твоем хеллоу ворлде, поэтому решил высраться?
Ну так ты безыгорный, для тебя все движки нерабочие, потому что ты ни на одном ничего не сможешь сделать.

480x352, 0:01
>там настроить или отключить
Т.е мне надо переписать весь движок физикса в урине, чтобы получить то что мне надо?
Лучше на хуюнити дальше сидеть в таком случае, и иметь такие вещи серьезные уже с коробки рабочие, чем изобретать велосипеды на велико-гойском уринале.
>для тебя все движки нерабочие, потому что ты ни на одном ничего не сможешь сделать.
Главное повторить мантру: урина всеголишь инструмент, и то, что он хуёво работает - виноваты разработчики игр, безыгорники, перфораторы и бетономешалки. Это они сделали такой хуевый базис-фундамент движка. А никак не те, которые его изначально проектировал.
>А в 4 версии у физикса нет симуляции колёс, вместо них шарики, т.к просто не имеет математической модели коллайдера под колёса, в отличии от юнити где это всё есть.
цилиндр штоле?
там как бы со времен царя гороха есть целый темплейт с симуляцией подвески, колес и т.д., как в ЖТА 4
что ты там на голом физиксе цилиндрами наговноделал, не прибегая к кастомным контроллерам, даже представлять не надо: типичное юнитиговноделие от юнитиговнодела
Вышло много, но тормознутых игр даже на самых топовых пк. То есть лучше бы не выходили.
Годот - это движок для вечного подпивасного васянства, типа старого Москвича в гараже, в котором можно копаться каждый день, но ехать на нём куда-либо просто опасно.
>кроссплатформенный
почему 10% потреблядей не может запустить это дерьмо?
>альтернатив ему нет
есть
>2 игры в месяц, а если постараться можно и игру в месяц делать
выблядки делающие 3 в ряд, тут? на месте?
У разраба Круелти-сквада уже крыша едёт от гуньдота. То есть знак как-бы да, что не стоит использовать это чудо для игр.
>почему 10% потреблядей не может запустить это дерьмо?
Спрашивай производителей бракованного железа. На таком у любых будут отказы (собственно я об этой проблеме и узнал от юнити, лол)
>есть
Если бы альтернатива была, я бы ей уже пользовался, но мы тут перебрали уже десяток, и во всех чего-то не хватает, годот просто есть и работает.
>выблядки делающие 3 в ряд, тут? на месте?
Не знаю, я делаю нормальные интересные уникальные игры
Так на любом движке при серьезной разработке тебе придется копаться, на той же юнити пользоваться готовым практически невозможно и все пишут свое. А так, любой инструмент должен быть свободным и открытым, а не как юнити отправлять запрос на проверку лицензию к барину и надеяться что он одобрит.
ты совсем в аналогии не можешь? я о том, что это хобби-деятельность
копайся себе в удовольствие, только за пределы гаража не выезжай, да и не заведётся она у тебя
>физикса в урине
Че несет клоун? В анриле chaos уже года 4.
Ты сейчас обсасываешь проблему, которая не существует уже 4 года, вместо того, чтобы делать игры.
>выблядки делающие 3 в ряд, тут? на месте?
Не надо про 3 в ряд пиздеть, это алгоритмически сложный жанр, ты вряд ли осилишь такое запилить. Топы жанра уровня homescapes это большие бюджеты, большие команды и годы непрерывной разработки.
Тот чел скорее всего делает игры про прыгающий кубик на черном фоне, иначе хз еще как объяснить "2 игры в месяц".
>Не надо про 3 в ряд пиздеть, это алгоритмически сложный жанр, ты вряд ли осилишь такое запилить. Топы жанра уровня homescapes это большие бюджеты, большие команды и годы непрерывной разработки.
покажи сложную задачу оттуда

Да там много всего, на самом деле. Просто ты не пробовал делать, поэтому у тебя ошибочное заблуждение, что это просто. Алгоритмов в разы больше, чем во многих "трушных" жанрах типа условных платформеров.
Начиная от движения фишек и поиска матчей (для этого нужен детерменированный пошаговый резолвер ходов с диагональным движением, есть разные варианты, кто-то на графах пишет, кто-то на клеточных автоматах, это нетривиально, уже на этом этапе можно отведать не один десяток хуев, отлаживая корнеркейсы), и заканчивая генераторами уровней и ИИ агентами для автоматического прохождения. Это еще без учета десятков вспомогательных механик, которые сейчас есть в любом 3 в ряд из топа рынка.
Просто скачай homescapes и поиграй час, если ты думаешь, что это просто сделать - то ты либо слепец, либо никогда не делал игры.
Нейродебил, ты опять на связи? А теперь реализуй это все в графическом интерфейсе, т.е. в виде реальной работающей игры. Еще чтобы на алгоритмы влияли айтемы и пейволлы.
так и в чем сложность? все разработчики игры с этим как-то справляются
просто признай, что никаких сложных алгоритмов там нет, и команды программеров если и есть, то годами разрабатывают лишь друг другу очко, а не сложные алгоритмы
ты ебучий хуесос, я знаю про сложность этого дерьма, 3 в ряд - это не игра, а наёб гойских потреблядков
>>6857
Дураки, простофили.
Современный 3 в ряд это:
1. Сюжетка с катсценами
2. Десяток валют, десяток магазинов, акции
3. Ачивки
4. Квесты - дейли, месячные, сюжетные
5. Симулятор сити билдер со строительством базы
6. Кастомизация персонажа
7. Мини игры
8. И наконец, 3 в ряд, с десятками видов фишек с разными механиками, анимированной доской, автобалансером сложности и системой спавна фишек с учетом комбинаций

Самое смешное то, что dx11 версия работает быстрее
это всё необязательно для три в ряд
"гоночки" это не значит "гта с минииграми и ограблениями банков", это именно что "гоночки", свой разросшийся до состояния раковой опухоли метагейм засунь себе в задницу
Выше был вопрос "выблядки делающие 3 в ряд тут?", а не вопрос о минимальной простейшей реализации матча в 3 в ряд.
Делание 3 в ряд подразумевает ебанутый метагейм, по-другом3 3 в ряд сейчас не делают вообще.
Клоун, то, что ты высрал на пике - это не рабочий сблев. Оно в принципе не будет работать корректно. Матчи нельзя сложить в общий сет, за каждую фигуру дается разная награда (большие фигуры превращаются в бомбы, средние в другие бонусы и тд), плюс фигуры есть разные, даже в самом примитивном 3 в ряд кроме простых цепочек надо уметь матчить квадраты 2 на 2, пересечения 3 по вертикали + 3 по горизонтали, причем делать это в порядке приоритетов (если сматчили большую фигуру с высокой наградой, эти фишки потом не участвуют в матчинге более простых фигур).
То, что ты припер этот высер - только доказывает то, что ты безыгорный клоун, ничего не понимающий в программировании и геймдеве, и не смог сделать бы даже простенький 3 в ряд. Не позорься.
Ты в три в ряд играл вообще? Там заранее нет комбинаций на поле, чтобы получилась комбинация, игрок должен свапнуть две фишки.
Плюс сматченные фишки пропадают с поля и сверху падают новые, они двигаются по алгоритму типа падения песка в noita, но со своими нюансами.
А сложность уровней определяется доп. механиками, бывают замороженные фишки, которые надо разморозить, всякие порталы, бывает надо сначала надо собрать весь под под фишками и т.д, там овердохуя всего придумали.
Сделать хотя бы кор механики топовой 3 в ряд, даже без учета меты - нетривиальная задача.
Сделать несобранные комбинации, очевидно. Чтобы на стартовом поле гарантировано что-то собиралось. Потом подсыпать случайно или можно считать типы элементов на поле и подсыпать таких.
Ты переусложняешь. В этом нет ничего сложного.
Гугл в помощь
> не рабочий сблев
возложенную на него функцию выполняет
> Матчи нельзя сложить в общий сет
такой задачи не стояло. алсо, просто возвращаешь первый матч, если тебе не нужно
>за каждую фигуру дается разная награда
sum(x.nagrada for x in match)
> кроме простых цепочек надо уметь матчить квадраты 2 на 2, пересечения 3 по вертикали + 3 по горизонтали
это еще 20 строчек нейросеткой
> большие фигуры превращаются в бомбы
задача добавления единички к индексу во все стороны
>делать это в порядке приоритетов
sort(key=lambda m: m.priority)
а зачем ты пёрнул, что нельзя совать матчи в сет?
> То, что ты припер этот высер - только доказывает то, что ты безыгорный клоун, ничего не понимающий в программировании и геймдеве, и не смог сделать бы даже простенький 3 в ряд. Не позорься.
то что ты задачку парой вложенных циклов на 10 строчек называешь задачей века которую нужно решать годами доказывает, что ты лох педальный, а не программист. натуральный дегрод, перекладыватель ямлов и смузихлёб
и всё на примитивном уровне. редактор персонажа уровня замени тело в костюме на тело в спортивке. строительство базы уровня floor.upgrade = 3, walls.upgrade = 2, furniture.upgrade = 0. мини игры уровня собери разорваное фото как пазл, квесты уровня надрочи 10 уровней. обычная бытовуха с задачами, которые решают абсолютно все
алсо дискуссия про ахуительные алгоритмически-сложные игры в этом жанре превосходящие другие игры, где дэбил вспомнил все умные слова которые знает, попытавшись создать вокруг матч3 кала ореол мнимой значимости
Ты не шаришь, не позорься. Сомневаюсь, что ты вообще хоть раз в жизни писал код. Даже змейку скорее всего не осилишь написать, не говоря уж про 3 в ряд.
Лол, только посмотрите на эту чмоху, сгоревшую от осознания того, что она даже 3 в ряд написать не в состоянии.
>возложенную на него функцию выполняет
Так запусти его и покажи что он там выполняет.
Что, не запустится? Это просто картинка с высером из буковок, которая не имеет отношение к реальности? Вот и мне так показалось.
Реальный код можешь посмотреть на гитхабе, если интересно.
Простейшая реализация кор механики без наворотов - тысячи строк кода. Но ты вряд ли сможешь столько прочитать и осознать, это ведь больше, чем обычно нейронка тебе выпукивает.
https://github.com/ninetailsrabbit/match3-board/

аргументация у дебила закончилась? пынимаю
>>6943
это алгоритм поиска матчей. алгоритмы не "запускают", дебил. их изучают. пишут на их основе софт, который и занимает
> тысячи строк кода
но самих алгоритмов там 50 строк
остальное это программирование игровых кнопачек да эффектиков и никзкокачественные простыни копипасты. смотри, у него на 257 строке копипасщенная функция не работает, говнокодер этот баг даже не заметил
На пике код джуна который бы никогда не пустили в прод.
> но самих алгоритмов там 50 строк
> остальное это программирование игровых кнопачек да эффектиков и никзкокачественные простыни копипасты.
Большая часть любого прикладного софта и игр, это ебанутая бизнес логика на оопе с впихиванием невпихуемого.
Там не покопипастишь, там надо думать, как сделать, чтобы оно не превратилось в пиздец и с этим можно было работаьь дальше.
>>6943
Ты по делу говоришь, но
> Реальный код можешь посмотреть на гитхабе, если интересно.
> Простейшая реализация кор механики без наворотов - тысячи строк кода. Но ты вряд ли сможешь столько прочитать и осознать, это ведь больше, чем обычно нейронка тебе выпукивает.
Стоит учитывать, что на гитхабе реального кода не найдешь, 99% это трешак пиздец. Это пример судя по всему не исключение.
>>6922
> и всё на примитивном уровне. редактор персонажа уровня замени тело в костюме на тело в спортивке. строительство базы уровня floor.upgrade = 3, walls.upgrade = 2, furniture.upgrade = 0. мини игры уровня собери разорваное фото как пазл, квесты уровня надрочи 10 уровней. обычная бытовуха с задачами, которые решают абсолютно все
Не. Намного сложнее и всё должно быть скомбинировано со сложным визуалом.
А на добив то, что это всё должно работать на самых слабых телефонах
>Не. Намного сложнее и всё должно быть скомбинировано со сложным визуалом.
не смеши. примитивный геймплей + примитивные системы + примитиваные алгоритмы (пока дебилоид выше не доказал обратного на примере)
> ебанутая бизнес логика на оопе с впихиванием невпихуемого
Чтобы так не получалось, нужно предпочитать компоненты наследованию.
Если делать так, то игры никакой не будет вообще. Такой подход не пригоден для меты совершенно.
Ты пишешь о вещах, в которых ничего не понимаешь, и которые не смог бы сделать сам. Не позорься, это выглядит жалко

Смотри, нейронка написала нам гта 6. А значит, что такую игру просто сделать и там простые алгоритмы. Еще строчек 10 добавить и норм.
Ебало дегенерата и представлять не надо.
>Это пример судя по всему не исключение
Ну это понятно, что там не топы из маркета свой код заливают, а просто чуваки, которые учатся. И что здесь нет и десятой части того, что есть в полноценных 3 в ряд. Но это хотя бы рабочий код, который запускается, а не нейросетевые фантазии в картинках умственно-отсталого дебила.
Вот поиск матчей, например, тут можно увидеть, сколько корнеркейсов и условий, одним тупым проходом по массиву на 10 строчек это не решается.
https://github.com/ninetailsrabbit/match3-board/blob/main/addons/ninetailsrabbit.match3_board/src/modules/sequence_detector.gd
Вот пример на графах
https://github.com/youssefmyh/Match3Algorthim/blob/main/Match3Algorthim/Match3Graph.cpp
Вот пример на луа под дефолд, тут только простейший кейс с вертикальными линиями, без сложных фигур, но уже 1000+ строк
https://github.com/britzl/emthree/blob/master/emthree/emthree.lua
Но полноценные игры уровня homescapes в разы сложнее, конечно, и они свои алгоритмы не сливают в открытый доступ, повторить на их уровне это очень нетривиальная задача.
а ты ублюдок поганый проси её чтобы писала коментарии в коде
ход в матч-3 просто меняет местами 2 фигуры. это настолько простая игра, что можно брутфорсить все ходы и перебрать все искомые комбинации за наносекунду

Главное на собеседовании такого не ляпни, а то тебя в чёрный список внесут.
Круто. На крестах заняло бы не меньше 5 тысяч строк.
Знаменитые neighbour-checking algorithms
Я как то делал игру с такой же мехой.
Реализовал через костыль обычным перебором цикла for с индексом в числе по которому выбиралась нужная глубина.
Если просто это была рекурсия которая выполнялась количество раз, которые подавалось на вход.
> зацените
_нейбор_хас_пис_базе(нейбор: Нейбор) -> буль: ретурнь нейбор и нейбор.хаз_пиз()
нейбор_райт_хас_пис() -> буль: ретурнь _нейбор_хас_пис_базе(нейбор_райт)
Не оценил.
крута завернул
Кроме хода в матч 3 еще миллион механик и алгоритмов.
Алсо, ход это не просто поменять местами две фигуры. Ты не видишь дальше своего носа, потому что не написал ни строчки кода в жизни и не сделал ни одной игры.
Надо поменять, проверить матчи, если нет, вернуть фигуры назад. Если есть матчи, надо разрезолвить их, убрать с поля все фигуры и вместо каждой заспавнить и активировать соответствующий бонус (бомбу, самолетик и т.д)
После активации всех бонусов, часть фишек пропадет, к оставшимся надо применить клеточный автомат и продвинуть их вниз, заспавнив при этом новые фишки сверху поля. При этом тоже могут образоваться матчи, если так получилось - надо убрать их с поля, опять активировать бонусы и рекурсивно продолжать симуляцию клеточного автомата, пока поле не стабилизируется. При этом надо подсчитать сгоревшие фишки, обновить цели уровня (собрано ли нужное кол-во очков, фишек и тд), проверить, остались ли еще ходы, или пора завершать игру. И это только один ход.
Хотя кому я это объясняю, объяснить как работает игра безыгорному нейродебилу это тоже самое, что объяснить астрофизику свинье, она продолжит хрюкать с умным видом, но не поймет не слова.
как же всё это сложна. посчитать фишки и проверить остались ли ходы. боюсь тут придется приенить алгоритм IF ELSE
Ну да, все остальные пункты мы проигнорируем, потому что непонятно, зацепимся за единственное слово, которое слышали раньше, пукнем что это просто.
Проконсультируйся у нейросети, клоун, может научит тебя делать игры. Начни со змейки для начала, в более сложные вещи тебе пока точно лезть не стоит.
Это целый отдельный мир, плюсом еще управление, как сделать сочный фидбек, чтобы игрок получал спинномозговой кайф от ходов, там тоже куча своих тонкостей, как фишка должна реагировать на клик, с каким изингом должен проходить свап, сжатия, растяжения, партиклы, звуки, эффекты от бонусов. Это для всех игр актуально, но в 3 в ряд прямо плотно переплетено с кор механиками и сильно их дополняет.
В эту степь даже не лезем, нейродебил игры никогда не делал, поэтому не в курсе про такие тонкости, это для него будет слишком абстрактно.
нейросеть рекомендует применять алгоритм IF ELSE и иногда FOR. подскажи научных работ по этим алгоритмам плиз, я вижу ты мощнейший программист
> как фишка должна реагировать на клик, с каким изингом должен проходить свап, сжатия, растяжения, партиклы, звуки, эффекты от бонусов
Тут важно отметить, что это всё должно быть вынесено в настройки для артистов и у них должна быть возможность быстро просмотреть результат.
Тебе, безыгорному клоуну, обосравшемуся и обоссавшемуся под себя на весь тред, смешно, а по 3 в ряд есть научные публикации.
Не надоело позориться?
https://www.mdpi.com/2079-9292/12/21/4456
https://www.mdpi.com/2079-9292/12/19/4098
когда покажешь алгоритм отличный от проверки переменной ифом?
Вы приняты в русскую фирму!
Как же я ору с того что самую простую механику пытаются выдать под топ.
Даже nikke сложнее всех ваших 3 в ряд.
Фидбек блять, лол
Как же я ору
Это все очень просто. Перестань троллить тред.
Шиз, спок
программирую матч 3 алгоритмы по проверке оставшихся ходов
пишу свой движок и свои графические библиотеке на своей ОС на своём языке программирования на собственноручно сделанной плате

680x720, 0:12
>Шизы, спокуху оформили.
>Шиз, спок
>вы шизы
Я гордо заявляю на весь тред - Я ШИЗ.
Я ШИЗ потому что решил делать игры и выкладывать их бесплатно.
Я ШИЗ потому что за место зарабатывания денег, трачу все время и силы на разработку игр из моих мечтаний не получая за это ничего.
Я ШИЗ потому что сижу в этом треде и пишу этот пост.
за тебя всё решили. твоего мнения никто не спрашивал
Чем больший процент ЛГБТ+ среди игроделов, тем круче, прогрессивнее и современнее движок.
Итак, кто лидирует на данный момент?
>Итак, кто лидирует на данный момент?
Юнити. У них на докладах постоянно трансгендеры выступают.
Nau в кавычках Engine выходит в моментальные лидеры с большим отрывом
Урина ака нереальный движок ака Unreal Engine.
Количество трансов и лгбт+ персон в комьюнити, которые как-то да отсвечивают в соц.сетях либо по стримам на твиче - прямо таки зашкаливает.
Другой вопрос сколько на языках различных сидит.
На C++ и RUST так-же почему-то аномальное количество всяких фурри-сьютенров и трансов.
[Хз почему-так, видимо язык сложный, башню клинит.
Хуита, считать надо, я когда в юньке работал постоянно натыкался на обучалки от трансух, Wokot сам себя так провозгласил. Эра пидерастии такая, но она подходит к концу.
>подходит к концу
Долбоеб, она только начинается. Готовься скоро видеть такую педерастию которую мир доселе не видывал. Детятки щас бесконтрольно через интернеты самоиндоктринируются. Когда подрастут ты охуеешь прост.
Банально не использовать её, а изучать предмет.
Нейронки это трюк, наебалово. Вот здесь можешь узнать почему текущие модели никогда не будут осмысленно отвечать.
https://www.youtube.com/watch?v=-wzOetb-D3w
Не используй компилятор, конпелируй сразу головой в двоичный код, а то это ж трюк блять. Или ты хочешь сказать что половина существующей кодовой писанины это не унылый бойлерплейт и тасование данных по массивам, а высокохудожественное недоступное нейронке произведение с глубоким абстрактным смыслом? По мне так как раз наоборот. Потому я и прочие нейрогоспода будем напрягать нейронку на поработать за нас, пока неолуддиты будут закидываться копиумом и увеличивать разрыв с нами по производительности. И кстати не надо думать что кодить с нейронкой это манна небесная, ведь надо думать и за себя и за того парня, что только увеличивает нагрузку на голову и не даёт время на остыть покуда идёт реализация, так как реализовала нейронка, а ты просто должен проверить.
Чел, ты вообще суть то уловил? Всё что делает ии генерирует символьную чушь. Он не формирует никакое абстрактное ядро, сколько его не обучай. Он буквально необучаемый, по крайней мере все современные лингвистические модели. Которые просто пытаются угадать ответ сидя на большой базе данных.
О каком написании кода с такой фигнёй вообще заикаться. Её потолок подглядеть типовые реализации со стак оверфлоу и то всё переврёт 10 раз.
Я все время вижу какието не понятные срачи где одни говорят нейронка мастхэв ТОП, а вторые говорят что кал и не нужно, нет души.
Так вот вопрос - Какой смысл срача если кто хочет использует, а кто не хочет нет?? К чему все это??
Аналогичные же срачи были за винду/линукс и еще подобное, зачем?
Если у тебя приходится писать много бойлерплейта, то что-то не то с языком/движком, смени на нормальный, где есть шаблоны или хотя бы макросы.
Как я тебе рожу макрос на инит nodepath в годоте? Или макрос на фабрику? Не слыхал о языках которые умеют думать вместо программиста. А нейронке я скормил интерфейс, описал логику и вуаля. Либо скормил объявление класса с логикой и получил результат.
Ты решил раскрыть суть того, как именно я сформулировал твою позицию в своем посте и перепечатать ее другими словами? Благодарю, но это излишне. Чиобы конкретизировать, назову сценарии где бредогенератор на редкость удачен - изолированные фичи с четкой задачей которую алгоритм должен решать, успех от 0 до 70, зависит от степени редкости задачи и количества этапов обработки данных. Если этапов меньше 5 - почти всегда вин. Инициализационные портянки - почти всегда вин, если дать пример уже существующей портянки из проекта либо это известный nodepath сценарий. Формошлепская обвязка - скормить ей контролы с с названиями и описать их логику - почти всегда вин. Переложить массивы - зависит от количества этапов перекладывания. Если описать этапы с конкретными задачами без деталей реализации - почти всегда вин. Методы расширения - вин. Как ты заметил - абстракциями тут и не пахнет. Но нейронка умеет подражать и знает популярные кодовые вещи, что позволяет ей подражать ещё веселее. И сценариев на самом деле гора, это то что я вспомнил. Можно заставить переводить с языка на язык, переводить с движка на движок. Выдаст съедобное.
Гуньдотеры хуже шизов. Изучать гуньдот - неуважать своё время.
В чем он не прав?
тоже в итоге пришел к его аналогу.
алсо, игрался с созданием редакторов для своего движка.
Чтоб пользователи могли делать игры на нем.
для новелок создал за пару дней.
для рпгшек за месяц
для всего остального это слишком долго. Легче самому быстро вбить без редактора.
Это всё замечательно в теории, а на практике проверять уйму генерированного кода дольше чем написать самому как следует. Ну и бредогенератор не понимает контекст задач в принципе, поэтому навалит всякой чуши которую не просят, просто потому что. От этого вреда больше чем пользы.
Да какой нахуй теории) я уже со счёта сбился по объёму применяемого мной рабочего нейрокода, счёт уже идёт на десятки тысяч строк. Скрипты, минитулзы, админские софтины супер узкоспециализированные написанные на 95% нейронкой (некоторые 100,% plug and play как говорится), куски игры, полностью написанные нейронкой кастомные ресурсы к игре на годоте, иниты nodepath, туда же ui, управление, самая ржака что где-то с момента релиза дипсика - я вообще для некоторых задач код нейронки не проверяю а тупо пихаю и он пашет.
Сейчас вот кстати одно немаленькое приложение переношу с явы на шарп гроком, если предприятие окажется успешным - скачок будет уже до сотен тысяч строк.
JIT
Ахахаха. Представили ебало школьников которые будут жить в таком мире где все просто будет падать и ломаться?
Это типа нейронка генерирует такой хитрый код, который работает у меня, а если чует школьника - сразу ломается? Или че ты вообще сморозил то?
ну тип раз нейронка написала значит код плохой, все сломает. а если человек написал, значит в нем заведомо нет багов. я так понял
Когда ты сам пишешь код, ты понимаешь его, может отлаживать. Если ты нагенерил хуйни, а в ней какой-то хитрый баг, который в зависимости от фазы луны крашит твою игру в половины игроков, ты уже не найдено его, т.к. это не твой код, ты в нем не разбирался, да и вообще ты не шаришь в коде, если юзаешь сблев нейронки, это будет копиться как снежный ком, итоговое качество продукта будет уровня дно.
Это актуально не только про баги, еще и оптимизацию, в твоей игре будет 5 фпс из-за неоптимальных алгоритмов,и ты ничего не сможешь с этим сделать
>Это типа
Это напотипо инженеров и программистов заменяют зумеры-вайбкодеры, которые производят говнокод. Качественная деградация программных продуктов уже произошла лет 10 назад с наплывом вкатунов, дальше будет хуже, в т. ч. и из-за вайбкодинга, когда он станет нормой.
Я не кодер, а пользователь.
>Если ты нагенерил хуйни, а в ней какой-то хитрый баг, который в зависимости от фазы луны крашит твою игру в половины игроков
Автотесты видимо от лукавого. Да даже хуй с ними с автотестами, код не работает от фазы луны, если это не код на плюсах и не многопоточка с локами. Хотя даже плюсы я бы скорее нейронке доверил чем макаке джуну.
>Когда ты сам пишешь код, ты понимаешь его, может отлаживать
Тебе, вкатуну зелёному, походу невдомёк что читать чужой код ещё важнее уметь чем писать свой и это в равной степени относится как к коду нейронки так и к коду прямоходящей макаки. А значит если у человека есть мозг, он отладит и поймет любой код, неважно кто был его автором.
>Это актуально не только про баги, еще и оптимизацию, в твоей игре будет 5 фпс из-за неоптимальных алгоритмов,и ты ничего не сможешь с этим сделать
Ебало профайлера представил? Что значит не смогу ничего сделать? Даже в годоте есть профилировщик скриптов. Маняфантазер очередняра.
>>7627
Эту хуйню вообще не буду комментировать, опять навалил маняфантазий. Ты блядь говна на Делфи из нулевых не видел, там нейронки отдыхают.
Видел и пользовался. Говно на дельфи из нулевых лучше любого высера вайб-кодера на электроне.
> Что значит не смогу ничего сделать? Даже в годоте есть профилировщик скриптов.
И что, клоун?
Ты будешь заново переписывать скрипты за нейронкой?
Так быстрее тогда изначально самому написать норм, чем потом переделывать кривое говно, читать его, разбираться в нем, переписывать, менять подход и архитектуру.
> код не работает от фазы луны,
Ты игр не делал, значит, если не сталкивался с такими багами, которые могут вылазить у одного игрока на конкретном железе при очень редком стечении обстоятельств.
> Автотесты
Сам собрался писать ? Или так же генерить, не проверяя и не понимая, что там проверяется?
> если у человека есть мозг,
Видимо это не про тебя, иначе бы ты понимал, что на вайб кодинге не уедешь дальше первого вау-эффекта «оно компилируется»
Нейронка не сможет отлаживать код, поддерживать, допиливать, расширять. Ты просто придешь к тому, что проще вбить новый промпт и попробовать перегенерить, чем пытаться починить ранее криво сгенерированное. Так и будешь роллить, пока не повезет. Но на одном промпте комплексирую систему с кучей связей и сложной логики не построить

480x480, 0:21
Ну чо у вас нового? Надеюсь годотю всё так же в говно опускаете?
Тут я заметил в индустрии положняк теперь прямо отчётливо виден - игры не нужны. Совсем. Теперь точно. Никому. А годотя ещё предлагает человекочасы тратить на потеху публике, чтобы кривой движок доделывать. Потом будете как автор какого-нибудь Marathon - "ну я же хотел игру хорошую сделать, пожалейте, мне кушать надо..."
Игровой рынок огромный. Но не в РФ. Тут только Яндекс игры по 500 новых игр каждую неделю две.
https://yandex.ru/games/category/new
Поговорил с одним мужиком у которого его 3Д игра в каталоге. В месяце он с нее получает 2к, хотя комментов к ней много.
Причем игра у него нормальная.
>Игровой рынок огромный
И с огромной конкуренции, где количество продукции увеличивается каждый год. А количество людей не увеличивается.
Единственный маркет который ещё может как-то помочь - это дождаться пока индусы разбогатеют немного.
А так каждый год для обычного васяна будет хуже.
>Тут только Яндекс игры по 500 новых игр каждую неделю две.
Звучит не очень. Возможно он успел по началу проекта и сделал какой-то модный "три в ряд", который офисные тети до сих пор юзают (как еще можно удержать интерес в таких играх)? Или как-то в рекламу вкладывается (там вроде яндекс дает рекламится на своей же рекламной платформе, лол. Дойка с двухсторон прям)
Или же звездун, чтобы показать что не фигней занимается за копейки.
Шиз, просто смоделируй ситуацию. Я пишу нейронке промпт, кидаю референсный код, жду генерацию и все это минуты за две, получаю строчек 100-300 готового кода, который валиден в прямой зависимости от сложности задачи. Задачи реализовать что-то простое - перебрать массив, вы4ленить что-то из чего-то, сравнить и подвигать объекты - валидны в 100% случаев, остальное - иногда он обсерается с апи, которое фиксится ещё за минуту пока я скопирую ошибку из линтера и скормлю по новой + ожидание решения. Сколько я буду руками их корябать? Минут 10 а то и 15 так точно, ещё и в доку как назло лезть придется. Либо 15 минут либо 2-3 минуты. Уловил, шизло? Даже если проверять высер нейронки - это займет 2 минуты на 300 строчек.И я не говорю о том что допустить рантайм ошибку может и человек, а нейронка ибо недурная сама все нуллчеки проставит.
>>7665
Кейсик назовешь? Не считая плюсовой хуетени по типу того что флоат на разных платформах может иметь разный размер и прочий long long. Единственный источник такой ошибки - это неправильная работа с путями и тонкости сохранения на разных платформах. Хотя я конечно знаю ещё один, но это вина чисто микроsофта, который сделал таймерам на Винде минимальный шаг 15 мс, а на линуксе/андрюше этот же таймер начинает поглощать цпу потому что у него минимальный шаг сильно поменьше. И у меня ноль претензий к нейронке потому что я бы тоже использовал эти таймеры, а потом постфактум узнал что оказывается надо писать свои.
>Сам собрался писать ? Или так же генерить, не проверяя и не понимая, что там проверяется?
Зависит от сложности. Обычно нейронка генерит.
>Видимо это не про тебя, иначе бы ты понимал, что на вайб кодинге не уедешь дальше первого вау-эффекта «оно компилируется»
Нейронка не сможет отлаживать код, поддерживать, допиливать, расширять. Ты просто придешь к тому, что проще вбить новый промпт и попробовать перегенерить, чем пытаться починить ранее криво сгенерированное. Так и будешь роллить, пока не повезет. Но на одном промпте комплексирую систему с кучей связей и сложной логики не построить
Ещё 10 раз напиши. А лучше перечитай мои посты и найди где я советовал ее использовать вот так.
Шиз, просто смоделируй ситуацию. Я пишу нейронке промпт, кидаю референсный код, жду генерацию и все это минуты за две, получаю строчек 100-300 готового кода, который валиден в прямой зависимости от сложности задачи. Задачи реализовать что-то простое - перебрать массив, вы4ленить что-то из чего-то, сравнить и подвигать объекты - валидны в 100% случаев, остальное - иногда он обсерается с апи, которое фиксится ещё за минуту пока я скопирую ошибку из линтера и скормлю по новой + ожидание решения. Сколько я буду руками их корябать? Минут 10 а то и 15 так точно, ещё и в доку как назло лезть придется. Либо 15 минут либо 2-3 минуты. Уловил, шизло? Даже если проверять высер нейронки - это займет 2 минуты на 300 строчек.И я не говорю о том что допустить рантайм ошибку может и человек, а нейронка ибо недурная сама все нуллчеки проставит.
>>7665
Кейсик назовешь? Не считая плюсовой хуетени по типу того что флоат на разных платформах может иметь разный размер и прочий long long. Единственный источник такой ошибки - это неправильная работа с путями и тонкости сохранения на разных платформах. Хотя я конечно знаю ещё один, но это вина чисто микроsофта, который сделал таймерам на Винде минимальный шаг 15 мс, а на линуксе/андрюше этот же таймер начинает поглощать цпу потому что у него минимальный шаг сильно поменьше. И у меня ноль претензий к нейронке потому что я бы тоже использовал эти таймеры, а потом постфактум узнал что оказывается надо писать свои.
>Сам собрался писать ? Или так же генерить, не проверяя и не понимая, что там проверяется?
Зависит от сложности. Обычно нейронка генерит.
>Видимо это не про тебя, иначе бы ты понимал, что на вайб кодинге не уедешь дальше первого вау-эффекта «оно компилируется»
Нейронка не сможет отлаживать код, поддерживать, допиливать, расширять. Ты просто придешь к тому, что проще вбить новый промпт и попробовать перегенерить, чем пытаться починить ранее криво сгенерированное. Так и будешь роллить, пока не повезет. Но на одном промпте комплексирую систему с кучей связей и сложной логики не построить
Ещё 10 раз напиши. А лучше перечитай мои посты и найди где я советовал ее использовать вот так.
> Игровой рынок огромный. Но не в РФ. Тут только Яндекс игры по 500 новых игр каждую неделю две.
Ну зачем вы пишете ебаный бред?
У нас покупает игры в стиме на консоли.
Также, разработчик из россии модет зарелизить свои игры в стим и любые другие площадки.
Ты своей игрой меньше 100к планируешь заработать? Так то даже если меньше миллиона, то уже вопросы есть.
>Ты своей игрой меньше 100к планируешь заработать? Так то даже если меньше миллиона, то уже вопросы есть.
На игра не надо зарабатывать. Я могу за неделю миллион заработать, но не в каждую неделю естественно, звёзды должны совпасть.
Нахуя мне делать игру минимум год? (На деле 3)
Заработок специалиста за год имеет мало отношения к прибыли игры как частного предпринимательства.
поэтому лучше работать на стабильной работе, чем делать игры
а игры надо делать, если уже деньги есть и хочешь их потратить
это как казино
В казино хотя бы весело. А геймдев это хроническая депрессия и тлен.
Бля, ты вообще полностью переворачиваешь мои слова в какую-то хуйню.
Вспомни откуда разговор начался.
Я говорил, что если ты делаешь игру для заработка копеек на уровне 100к, то это значит, что ты её делаешь впринципе не для заработка(=тебе не нужен рынок), а для души.
А если ты делаешь игру для заработка и твоя цель 100к или даже миллион, то есть вопросы.
Вот буквально тут это и написано >>7705
Могу раскрыть мысль подробнее, почему и что за вопросы: потому что если ты планируешь заработать на игре пару копеек, то полагаю ты и труда в неё слишком мало вложишь и она утонёт в конкуренции.
Миллион на самом деле еще ок цель для начинающего соло индюка который будет год ебошить - чисто по затратам усилий скорее всего что-то похожее на игру выйдет, либо не начинающего который какие-то крутые идеи воплощает за 1-3 месяца, но вот ебошить делать игру ради 100к это точно чет трешак какой-то уже и возможно можно намного проще эти 100к поднять.
>>7715
Ну в конечном итоге каждый для себя сам решит наверное.
Если ты серьезно настроен, готов вложить в игру трудовые и финансовые ресурсы, и понимаешь что ты делаешь, в какую нишу лезешь и чем твоя игра должна цеплчть, то это звучит как план.
Можно. И если прочитать мое сообщение и кому оно отвечает, то можно заметить, что я об этом тоже говорил.
Вообще не умных, а очевидные вещи.
Просто типа а что ещё я должен ответить, когда мне говорят, что рынка игр в россии нет, а аотом уводят разговор в сторону "игры надо делать для души, на играх все равно не заработать"? Нахуй тогда вообще про рынок говорить?
Эээ ну да типа 140 миллионов человек страна, большая геймерсаая аудитория которая готова тратить деньги на игры.
В тот же стим деньги несут только в путь, в кингдом каме жители россии на 5м месте по онлайну.
А если говорить о разработчиках, то они вообще могут относительно легко на любую площадку выйти на мировую аудиторию
Чел, суть в том что игры это лотерея, все надеются что они принесут не 100к, а 100миллионов.
Не рвись, игры все равно уже нет смысла делать, можешь расслабиться и удалить и то, и другое.
Нет, ошибся только, не 5 а 4 место
https://ixbt.games/news/2025/04/03/rossiyanam-zapretili-pokupat-kingdom-come-deliverance-2-no-rossiya-okazalas-cetvyortoi-po-kolicestvu.html
>>7740
Лотерея - лишь твоё название для степени рисковости бизнеса по разработке игр. Любой бизнес это риск, к слову.
И слово "лотерея" раскрывает его довольно таки слабо, как минимум потому, что рисковость одним словом не описать.
Вот только когда идут в бизнес, понимают что идут в бизнес.
Когда идут пилить игру на год, не понимают что идут в бизнес, который скорее всего не выстрелит.
Так про что угодно можно сказать, да и не весь бизнес выстреливает.
Но это никак не отменяет того, что можно проанализировать че щас на рынке, что ты можешь сделать, и на какие примерно результаты рассчитывать, и в процессе разработки следить за метриками маркетинговой кампании и смотреть че ты там как попадаешь куда надо или нет.
Так ты будешь заранее понимать, какие примерно потенциальные рамки дохода игры.
Нет, не про что угодно. Грузчик в пятерочке ходит год на работу и не ожидает что вдруг станет миллионером. А ему нужно меньше квалификации. А разрабу игры нужны компетенции во всем от кода до арта до геймдизайна до маркетинга. куча вложений и на выходе 8 рублей вместо миллиона. Такое себе. Хоть унализируйся, игр слишком много. пробиться в заметность чрезвычайно тяжело.
Речь шла о бизнесах, но так то можно и натянуть и на вообще что угодно, на любую деятельность - ты когда что угодно делаешь можешь примерно определить рамки потенциального результата, и чем больше статистики найдешь и хорошо проанализируешь, тем точнее будет твоя оценка.
> Нет, не про что угодно. Грузчик в пятерочке ходит год на работу и не ожидает что вдруг станет миллионером.
У грузчика зарплата около миллиона в год. Чем тебе не миллионер? А так, грузчик может тоже предполагать свои перспективы, что потенциально с опытом он сможет стать начальником грузчиков или попробовать найти работы в более крутых компаниях с зарплатой в 2 раза больше условно как верхняя рамка успеха, и остаться на том же месте как нижняя рамка успеха.
Так и с созданием своей игры, на ранних этапах ты можешь оценить нишу и что за игры в ней есть, узнать их примерный доход(это не сложно, статистика по которой его можно прикинуть есть составленнач по тысячам игр), и взять например промежуток с 25% по 75% как верхнюю и нижнюю границу.
После того как начнёшь разработку, у тебя будут набираться вишлисты, ты сможешь оценить какая твоя деятельность сколько вишлистов даёт, сколько стоит 1 вишлист с закупки трафика и как следствие сколько ты наберёшь к концу разработки.
И главное - по количеству вишлистов уже можно прикидывать продажи(порядка 10% вишлистов конвертируются в продажи за первую неделю для игр ценового сегмента 5-20 долларов).
> А ему нужно меньше квалификации.
А мы разве обсуждали квалификацию, а не то возможно ли спрогнощировать успех? По моему все таки второе.
> А разрабу игры нужны компетенции во всем от кода до арта до геймдизайна до маркетинга. куча вложений и на выходе 8 рублей вместо миллиона. Такое себе. Хоть унализируйся, игр слишком много. пробиться в заметность чрезвычайно тяжело.
Ну, какие вложения и сколько чего выйдет можно прикинуть так, как я выше описал.
Если у тебя получились такие цифры, что какая то другая деятельность тебе кажется намного более выгодной - не вопрос.
Но, возможно не у всех будет также как у тебя, пожтому мы и видим, что регулярно ввходит много новых игр, в которые в том числе вкладывалось много сил.
Речь шла о бизнесах, но так то можно и натянуть и на вообще что угодно, на любую деятельность - ты когда что угодно делаешь можешь примерно определить рамки потенциального результата, и чем больше статистики найдешь и хорошо проанализируешь, тем точнее будет твоя оценка.
> Нет, не про что угодно. Грузчик в пятерочке ходит год на работу и не ожидает что вдруг станет миллионером.
У грузчика зарплата около миллиона в год. Чем тебе не миллионер? А так, грузчик может тоже предполагать свои перспективы, что потенциально с опытом он сможет стать начальником грузчиков или попробовать найти работы в более крутых компаниях с зарплатой в 2 раза больше условно как верхняя рамка успеха, и остаться на том же месте как нижняя рамка успеха.
Так и с созданием своей игры, на ранних этапах ты можешь оценить нишу и что за игры в ней есть, узнать их примерный доход(это не сложно, статистика по которой его можно прикинуть есть составленнач по тысячам игр), и взять например промежуток с 25% по 75% как верхнюю и нижнюю границу.
После того как начнёшь разработку, у тебя будут набираться вишлисты, ты сможешь оценить какая твоя деятельность сколько вишлистов даёт, сколько стоит 1 вишлист с закупки трафика и как следствие сколько ты наберёшь к концу разработки.
И главное - по количеству вишлистов уже можно прикидывать продажи(порядка 10% вишлистов конвертируются в продажи за первую неделю для игр ценового сегмента 5-20 долларов).
> А ему нужно меньше квалификации.
А мы разве обсуждали квалификацию, а не то возможно ли спрогнощировать успех? По моему все таки второе.
> А разрабу игры нужны компетенции во всем от кода до арта до геймдизайна до маркетинга. куча вложений и на выходе 8 рублей вместо миллиона. Такое себе. Хоть унализируйся, игр слишком много. пробиться в заметность чрезвычайно тяжело.
Ну, какие вложения и сколько чего выйдет можно прикинуть так, как я выше описал.
Если у тебя получились такие цифры, что какая то другая деятельность тебе кажется намного более выгодной - не вопрос.
Но, возможно не у всех будет также как у тебя, пожтому мы и видим, что регулярно ввходит много новых игр, в которые в том числе вкладывалось много сил.
Нашел нужные мне туторы по гототу, почему будет ошибкой поменять юнити на годот?
Почему при условии наличия рынка, деньги должны приносить именно ЯИ, а не стим?
и ЯИ приносит кстати, хоть рынок ЯИ и намного меньшие обороты имеет
>Какие реальные отличия юнити от годота
В юнити больше фич из коробки и больше фич доступно за деньги в виде ассетов. Поэтому если твои человекочасы не стоят копейки проще взять юнити и в случае чего докинуть пару долларов за код, который писать месяц.
Ты шизик так ничего и не понял.
Кто-то действительно зарабатывает, но это не ты. Ты ничего не заработаешь, а если и заработаешь то копейки. Деньги скорее Вудушу на очередной турик по героям занесут или папичу на смишные мемы.
Игры ради денег нет смысла делать.
Гуньдот для 2д, либо для очень маленьких 3д игр.
Какое-нибудь комплексное, даже среднее решение - он тупо не вывезет.
А переписывать ядро вокнутых пидоразИ - себе дороже. Да и зачем, если есть юнити/урина, которые работают лучше.
Почему хуже, за счет каких решений?
Да не гони, комплексное 2д он потянет ещё пизже чем юнити, просто потому что там настоящее 2д. Другое дело что доступ к этому 2д очень жирный, хоть всю игру в аддоне на плюсах пиши.
>Да не гони, комплексное 2д он потянет ещё пизже чем юнити, просто потому что там настоящее 2д.
Лол. Не забудь ещё логикой на гондоскрипте это поправить, точно обгонишь тогда.
Еще немного и растеризация треугольников окончательно уйдет в прошлое. Останутся только рейтресинг и программная растеризация
Тото сишурп на древнем моно летает, когда сверху еще обмазываются динамические метаданные редактора.
Запомни Сишарп в юнке это не Сишарп современного дотнета core
В чём смысл этих мантр?
> Кто-то действительно зарабатывает, но это не ты. Ты ничего не заработаешь, а если и заработаешь то копейки.
Думаю на этой доске полно людей, которые нормально зарабатывают в геймдеве. Я кстати тоже.
А вот зачем ты пытаешься отпугивать новичков от этого занятия приводя пустые аргументы мне совсем не понятно.
> Деньги скорее Вудушу на очередной турик по героям занесут или папичу на смишные мемы.
Какое бредовое заявление.
Я даже хз ты уже троллишь или ещё нет.
Во-первых поебать что там в стримерской среде, мы говорим только о геймдеве, что в нём реально есть. Без причин и следствий, просто что есть по факту.
Во-вторых игровая индустрия побольше стримерской будет, мягко говоря.
Юнити более зрелая и продакшен реди платформа. Оно так то сломано к хуям, но оно хоть как-то живёт и игры выпускать позволяет.
На годоте выпущенных игр в разв меньше, утверждать не буду, но полагаю проблем там тоже в разы больше, чем в юнити.
В остальном - под юнити в разв больше готового контента, намного больше полезных встроенных решений, производительность намного лучше
В юнити не стандартный моно рантайм, а переделанный.
>Запомни Сишарп в юнке это не Сишарп современного дотнета core
Ага, вот бы обмазаться везде Task а потом думать почему память выделяется постоянно. Современный рантайм шарпа сам по себе не гарантирует тебе быстрые полёты.
Похуй, бери годот. Потом будем смеяться над тобой.

Количество выпущенных игр как-то не важно (ввиду возраста и рынка, это очевидно, я больше за техническую часть).
Но я вот подумал, из-за опенсорсности годота, может быть у него больше опенсорсных и бесплатных решений чем у пропритарного софта? теоритически, или геймдев слишком жадная индустрия?
> Но я вот подумал, из-за опенсорсности годота, может быть у него больше опенсорсных и бесплатных решений чем у пропритарного софта?
Для юнити как ни странно дохуя всяких бесплатных мастхев либ, unirx, unitask, vcontainer/zenject - эти вообще база для почти любого проекта.
>В юнити il2cpp даано есть
Костыли чтобы пофиксить природу динамикидресни.
Из коробки ты сосешь булыжник.
>В юнити не стандартный моно рантайм, а переделанный.
Из статичного языка сделали динамикадресню, сделав по сути сишарп-скрипт (а потом комментом выше фиксят костылями).
>Современный рантайм шарпа сам по себе не гарантирует тебе быстрые полёты.
Если вылезти из помойки геймдева и посмотреть что там творится последние годы с рантаймом сишарпа, так вот там не только переписали все, но и как раз каждый релиз гарантирует нехилые такие полеты на языке с VM. Многие приходя из донета в юнити, по незнанию ведутся на это, хотя в юнити по сути свой GDscript (только в годоте он закошен под питон, а в юньке закошен под сишарп).
Какой-то словесный понос.
> Костыли чтобы пофиксить природу динамикидресни.
Динамикодрисня?... Сишарп язык со строгой статической типизаций.
> Костыли
А конкретные минусы будут?
Окей, костыли, че дальше, как это будет мешать кому-то?
> Из коробки ты сосешь булыжник.
Переключаешь рантайм в выпадающем списке в настройках и все.
> Из статичного языка сделали динамикадресню, сделав по сути сишарп-скрипт
Ты всё перепутал.
Статическая/динамическая типизация это свойство языка, а не рантайма.
В жаваскрипте у тебя нету возможности в коде явно прописывать типы и делать проверки корректности работы на этапе компиляции.
Это называется динамическая типизация.
В тайпскрипте ты обязан прописывать типы, можешь накладывать констрейнты, корректность используемыз типов проверяется в компайл тайме.
Это называется статическая типизация.
Статическую типизацию ещё ранжируют по силе.
Например в С++ ты легко можешь кастить любые данные в любой тип - у тебя есть указатель на инты, ты по этому адресу расположил массив интов, а потом присвоил этот адрес указателю на какую-то структуру - и сразу работаешь с данными лежащими по тому адресу как со структурой.
Такие махинации позволяют потенциально некорректно использовать типы.
Это называется слабая статическая типизация.
А есть например такой язык как джава, там ты такие фокусы проворачивать не можешь(вроде бы), какие типы напиманы в коде, те и будут, некорректное испольщование невозможно никак, это называется строгая статическая типизация.
Есть ещё язык си шарп, он ближе к С++ в этом плане, так как позволчет польщоваться указателями и заниматься цирком с данными. Но он всё же более строгиц чем с С++, так как все эти фокусы обязаны делаться в ансейф блоке, что позаоляет для отладки быстро локплизовать проблемные места или полностью их заменить на сейф.
> с рантаймом сишарпа, так вот там не только переписали все
Il2cpp это тоже переписанный рантайм сишарпа.
> Многие приходя из донета в юнити, по незнанию ведутся на это, хотя в юнити по сути свой GDscript
В юнити точно такой же сишарп как и в дотнете с точно такой же спецификацией, только версия постарее.
Если ты говоришь про перформанс - дот нет хорошо постарались и рантайм дотнета намного быстрее моно, но вот ил2цпп уже ближе к нему. А в юнити ещё есть бёрст, который уже круче будет.
Какой-то словесный понос.
> Костыли чтобы пофиксить природу динамикидресни.
Динамикодрисня?... Сишарп язык со строгой статической типизаций.
> Костыли
А конкретные минусы будут?
Окей, костыли, че дальше, как это будет мешать кому-то?
> Из коробки ты сосешь булыжник.
Переключаешь рантайм в выпадающем списке в настройках и все.
> Из статичного языка сделали динамикадресню, сделав по сути сишарп-скрипт
Ты всё перепутал.
Статическая/динамическая типизация это свойство языка, а не рантайма.
В жаваскрипте у тебя нету возможности в коде явно прописывать типы и делать проверки корректности работы на этапе компиляции.
Это называется динамическая типизация.
В тайпскрипте ты обязан прописывать типы, можешь накладывать констрейнты, корректность используемыз типов проверяется в компайл тайме.
Это называется статическая типизация.
Статическую типизацию ещё ранжируют по силе.
Например в С++ ты легко можешь кастить любые данные в любой тип - у тебя есть указатель на инты, ты по этому адресу расположил массив интов, а потом присвоил этот адрес указателю на какую-то структуру - и сразу работаешь с данными лежащими по тому адресу как со структурой.
Такие махинации позволяют потенциально некорректно использовать типы.
Это называется слабая статическая типизация.
А есть например такой язык как джава, там ты такие фокусы проворачивать не можешь(вроде бы), какие типы напиманы в коде, те и будут, некорректное испольщование невозможно никак, это называется строгая статическая типизация.
Есть ещё язык си шарп, он ближе к С++ в этом плане, так как позволчет польщоваться указателями и заниматься цирком с данными. Но он всё же более строгиц чем с С++, так как все эти фокусы обязаны делаться в ансейф блоке, что позаоляет для отладки быстро локплизовать проблемные места или полностью их заменить на сейф.
> с рантаймом сишарпа, так вот там не только переписали все
Il2cpp это тоже переписанный рантайм сишарпа.
> Многие приходя из донета в юнити, по незнанию ведутся на это, хотя в юнити по сути свой GDscript
В юнити точно такой же сишарп как и в дотнете с точно такой же спецификацией, только версия постарее.
Если ты говоришь про перформанс - дот нет хорошо постарались и рантайм дотнета намного быстрее моно, но вот ил2цпп уже ближе к нему. А в юнити ещё есть бёрст, который уже круче будет.
Всё ровно юнити – хороший выбор для быстрой разработки и похуй на сурцы.
На урине не сделать быстро стилизованную картинку ни на что не похожую. А на хрюнити можно.
На рынке ща одно унрыло-люмен дерьмо в трейлерах, которое ещё и одинаково выглядит.
Ещё ремастеред подливы выйдет на урина 5, и те кто и так плевался от урины, вообще опробуют индусской вкусняшки.
Надежда лишь на то, что всё действительно нормально будет. Потерпеть тока надо...

>Статическая/динамическая типизация это свойство языка, а не рантайма.
Как ты себе представляешь динамически типизированный язык без рантайма?
Ты как чатгпт высрал шаблонный надрессированный текст. А кто сказал что динамикодресня это отношение к типизации, а не природе рантайма? Причем там даже фраза была про мета программирование, которое как бы намекает про природу интерпретации (байткода или скрипта) в неком VM (по другому невозможно, исключая макросы).
Ты просто увидел знакомый триггер и как та обезьянка побежал писать простыню текста. Кого ты пытался тут удивить в разделе разработки? Если ты учишься программировать, это не значить что надо писать целую выжимку своих недавних открытий. Всем насрать.
В юнити 2д это 3д с ортографическим режимом камеры, что даёт лишнюю нагрузку, так что да, минусы будут. А ещё в годоте система ресурсов прикольная, прям в разы прикольнее любой возможной ее пародии на скриптаблобжектах. Циклических ссылок разве что нет, но я хз как надо извращать иерархию ресурсов чтобы потребовались циклические ссылки.

Я ньюфаг, но мне больше нравится система тайтлов годоте. Может просто я тоже ньюфага смотрел, но тут прям коллизию выставляют в tilemap и это круто. А аниматор с деревом в юнити просто костыль какой-то, когда в годот намного проще из кода задать анимацию wasd и там же сразу направление задать, чем затрах с матрицей -1 0...
> Как ты себе представляешь динамически типизированный язык без рантайма?
Статически/динамически типизированный язык это свойство языка, вне зависимости от моих представлений. тебе рассказать как? Храним в памяти любого кастомного типа сначала идентификатор типа. Впринципе, все. Виртуальная машина тебе для этого не нужна.
> Ты как чатгпт высрал шаблонный надрессированный текст. А кто сказал что динамикодресня это отношение к типизации, а не природе рантайма?
Потому что есть два таких понятия - статическая и динамическая типизация.
У них значение такое, как я описал. Если найдешь хоть один источник, где оно отличается - давай глянем. Просто я не видел других вариантов.
Больше ничего что на слово динамикодрисня можно натянуть(и внезвано, именно динамикодрисней называют динамическую типизацию... лол) я не знаю. Можешь подсказать?
> Причем там даже фраза была про мета программирование, которое как бы намекает про природу интерпретации
Метапрограммирования и интепретация это полностью параллельные понятия.
В с++ дохуя мета программирования(макросы, темплейты, к примеру). И как, он интерпретируемый?
Вижу ты сам упомянул - за исключением макросов. Ну, чуть чуть не считается знач.
Понятно, что ты наверное говоришь про метаинфу типов, типа вот в обжекте лежит указатель на метаинфу его типа КАРАААУЛ. Лол.
Но это не имеет никакого отношения к интерпретируемости.
У тебя может быть язык нативно компилируемый, который будет просто первые несколько байт любого инстанса класса резервировать под айдишник его типа, по которому ты сможешь о нём инфу вытащить.
Ты можешь кстати реализовать это всё в С++, например.
> Ты просто увидел знакомый триггер и как та обезьянка побежал писать простыню текста. Кого ты пытался тут удивить в разделе разработки? Если ты учишься программировать, это не значить что надо писать целую выжимку своих недавних открытий. Всем насрать.
Я увидел, что ты используешь рандомные слова вкладывая в них рандомный смысл, и говоря, что это плохо.
Я расписал тебе, в чем заключаются твои недопонимания используемых тобой терминов, и объяснил, что даже то, что ты и сам под ними неверно подразумеваешь, проблемами не является.
> Как ты себе представляешь динамически типизированный язык без рантайма?
Статически/динамически типизированный язык это свойство языка, вне зависимости от моих представлений. тебе рассказать как? Храним в памяти любого кастомного типа сначала идентификатор типа. Впринципе, все. Виртуальная машина тебе для этого не нужна.
> Ты как чатгпт высрал шаблонный надрессированный текст. А кто сказал что динамикодресня это отношение к типизации, а не природе рантайма?
Потому что есть два таких понятия - статическая и динамическая типизация.
У них значение такое, как я описал. Если найдешь хоть один источник, где оно отличается - давай глянем. Просто я не видел других вариантов.
Больше ничего что на слово динамикодрисня можно натянуть(и внезвано, именно динамикодрисней называют динамическую типизацию... лол) я не знаю. Можешь подсказать?
> Причем там даже фраза была про мета программирование, которое как бы намекает про природу интерпретации
Метапрограммирования и интепретация это полностью параллельные понятия.
В с++ дохуя мета программирования(макросы, темплейты, к примеру). И как, он интерпретируемый?
Вижу ты сам упомянул - за исключением макросов. Ну, чуть чуть не считается знач.
Понятно, что ты наверное говоришь про метаинфу типов, типа вот в обжекте лежит указатель на метаинфу его типа КАРАААУЛ. Лол.
Но это не имеет никакого отношения к интерпретируемости.
У тебя может быть язык нативно компилируемый, который будет просто первые несколько байт любого инстанса класса резервировать под айдишник его типа, по которому ты сможешь о нём инфу вытащить.
Ты можешь кстати реализовать это всё в С++, например.
> Ты просто увидел знакомый триггер и как та обезьянка побежал писать простыню текста. Кого ты пытался тут удивить в разделе разработки? Если ты учишься программировать, это не значить что надо писать целую выжимку своих недавних открытий. Всем насрать.
Я увидел, что ты используешь рандомные слова вкладывая в них рандомный смысл, и говоря, что это плохо.
Я расписал тебе, в чем заключаются твои недопонимания используемых тобой терминов, и объяснил, что даже то, что ты и сам под ними неверно подразумеваешь, проблемами не является.
> В юнити 2д это 3д с ортографическим режимом камеры, что даёт лишнюю нагрузку, так что да, минусы будут.
Не.
Видеокарты рендерят всё в 3д, им без разницы используешь ты 3 координаты или 2.
А софтварный рендеринг в разы медленнее хардварного.
В юнити можно спрайтам через эдит спрацт скиннинг эдитор задавать меш, думаю он может использоваться в тайлмапе, а если нет, то можно реализовать, но это не для новичка совсем задача.
Но на практике это не оч юзается, у меш коллайдеров очень плохая производительность.
Поэтому все юзают комбинации квадратиков и кружков обычно для подобного.
Ну, по ситуации надо смотреть.
>нормально зарабатывают в геймдеве
Таких тут было ровно 2 человека из всей доски. И были они 5-10 лет назад.
>А вот зачем ты пытаешься отпугивать новичков
Это пустая трата времени. Им же будет лучше заняться чем нибудь другим.
>что в нём реально есть.
Там есть 99.99% мертвых игр в стиме или яндекс играх.
Вчему свое время. И время вкатывания в игрострой закончилось.
https://m.youtube.com/watch?v=1yb0MSF2Mm4&pp=0gcJCdgAo7VqN5tD
Так поубедительней? И не надо кивать на dots, это совершенно другой мир. Какая-то дополнительная нагрузка явно присутствует, судя по всему - накладные расходы на рефлексию в юнити, даже если рендер влияет минимально.
>Вчему свое время. И время вкатывания в игрострой закончилось
А ни одной крутой игры для кумеров как небыло так и нет. Одни только моды для Скайрима лямку тянут за все направление.
Это кстати убедительно для меня (2д-дрочера).

Чтобы замерять пооизводительность рендеринга, надо создать симуляцию, в которой рендеринг станет ботлнеком, а не какой-то другой код.
В идеальном случае, она бы использовала статические объекты.
С динамическими объектами в ход вступает батчинг, который может стать новым ботлнеком и это уже становится не тест рендеринга, а тест в целом перформанса графического движка, что тоже интересно.
Вот только для этого надо было бы использовать линейное перерещение, чтобы математика используемая для этого не стала ботл неком.
В данном же случае, мы можем спуститься в комментарии и сразу понять в чём дело...
> И не надо кивать на dots, это совершенно другой мир.
Дотс никак не влияет на скорость рендеринга(что ты предлагаешь замерять)
> Какая-то дополнительная нагрузка явно присутствует, судя по всему - накладные расходы на рефлексию в юнити
Тут не используется рефлексия.
Ну и на всякий случай, раскрою тебе страшную правду... годот тоже использует 3д рендеринг для 2д...
> Таких тут было ровно 2 человека из всей доски. И были они 5-10 лет назад.
Со всей доской лично знаком?
> Это пустая трата времени. Им же будет лучше заняться чем нибудь другим.
> Там есть 99.99% мертвых игр в стиме или яндекс играх.
> Вчему свое время. И время вкатывания в игрострой закончилось.
Ничем не подкрепленные утверждения.
Можешь походить по стиму, посмотреть популар нью релизес, посмотреть что там за игры, сколько там отзывов и по ним вычислить примерное число продаж.
>Дотс никак не влияет на скорость рендеринга(что ты предлагаешь замерять)
На скорость рендеринга влияет количество транзисторов в видеокарте. А на скорость подготовки подачи информации на расчет в видеокарту вполне себе влияет. Разумеется что там что там вызовы те же, но видимо порядок и организация этих вызовов имеет некоторые различия, да и несколько лишних дополнительных вызовов может дать ещё минус по производительности.
>Тут не используется рефлексия.
Уверен? А что такое update и как он вызывается с++ ядром юнити, не расскажешь?
https://github.com/smartpenguins/BeeTestsUnity/blob/main/Assets/CS%20Script/FlyingBee.cs
В отличии от гдс в гд4, где его вызовы движок делает практически напрямую.
>С динамическими объектами в ход вступает батчинг, который может стать новым ботлнеком и это уже становится не тест рендеринга, а тест в целом перформанса графического движка, что тоже интересно.
Я кстати хз с чего ты решил что мне интересно сравнивать именно рендеринг. Как ты верно заметил - апи по факту вызывается тот же, там буквально нечего мерять, скорость рендеринга в этом случае уже от бэкенда зависит и это уже будет сравнение опенгл vs directx vs vulcan vs metal. Я говорю про то что у годота более оптимизирован 2д конвеер, где нет даже намека на 3д, они ощутимо разделены.
>Ничем не подкрепленные утверждения
Любой кто хоть раз стимдб открывал понимает о чем я говорю. Очевидно ты ни разу не смотрел статистику стима.
Годотя, если зввтра нейронки отберут у меня работу я начну зарабатывать больше. Вот такой вот парадокс.
А у игр кстати еще и другой кризис помимо нейронотвтрчества, когда приходится уже суперплотно с соц сетями за время конкурировать.
> На скорость рендеринга влияет количество транзисторов в видеокарте. А на скорость подготовки подачи информации на расчет в видеокарту вполне себе влияет.
Верно
> Разумеется что там что там вызовы те же, но видимо порядок и организация этих вызовов имеет некоторые различия, да и несколько лишних дополнительных вызовов может дать ещё минус по производительности.
Имеют. Могут.
Но так ли это на самом деле?
> Уверен? А что такое update и как он вызывается с++ ядром юнити, не расскажешь?
Лол. Расскажу. Прямой вызов(с некоторым оверхедом связи нативной и моно части).
Рассказать как это можно сделать?
Если бы апдейт в юнити вызывался рефлексией, его бы было невозможно юзать, там производительность просто сразу х20 вниз даст.
Можешь это довольно легко проверить, затестив 10000 апдейтов раздельных, и 10000 вызовов функции, а потом 10000 вызовов с рефлексией.
Для первых двух кейсов тесть есть на хабре.
> Я говорю про то что у годота более оптимизирован 2д конвеер, где нет даже намека на 3д, они ощутимо разделены.
Ты мог бы прочитать подробнее что я написал и посмотреть приложенный скриншот.
У годота не более оптимизировпнный 2д конвеер, тест который ты скинул его не тестирует.
Более того, я более чем уверен, что он ничем вообще не отличается, кроме того, что у юнити батчинг есть и вероятно он значиьельно более производительный за счет использования джобов.
Отктрывал. Стата по доходу игр тоже имеется. Конкретные игры сколько конкретно заработали тоже довольно легко узнать.
Насладись новым шедевром от разработчика хрюкающего волка на топовом движке "годот".
https://www.youtube.com/watch?v=_Jwal221l2s

Тысячи игр в 2д на юнити не дадут соврать - годот говнота. Пальчики оближешь прям.
Даже близко не конкурент юнити если что, даже не блендер и даже не рядом. А перспективы у него "радужные" в плохом смысле этого слова.
Годот создан чтобы смешить челов которые сидят на нормальных движках. И пока что он справляется на отлично.
Гойда лучшая. За ней будущее. В блендер тоже многие не верили поначалу. Игры на гойде спасут мир...
Что я увидел:
Производительнее
Удобнее работа с тайтлами
Очень понравился концепт сцен - юнитов. По сути работаешь сразу с пребафами.
Вроде есть наличие горячей перезагрузки для gdscript но я не юзал.
Мне кажется программирование шейдеров кодом (близкое к GLSL) лучше чем эта визуальная залупа где ты точки соединяешь.
Открытый исходный код. Я могу покопаться когда мне будет нужно.
Мне как новичку юнити кажется сложнее, субъективно, но факт для меня.

Страшно?
Ты выкладываешь их на бесплатный сервис который делится с тобой прибылью от рекламы.
Понятно что тебе падают копейки.
Начни продавать их.
>Начни продавать их
На самом деле на мобилках большая часть дохода с рекламы идёт. Так что можно создать бесплатную игру, причём вообще без доната, и при этом дохера заработать.
у меня до сих пор мобилка кнопочная, я не представляю как это - игры на мобилках да и узнавать лень
> Производительнее
Чем что?
Если ты про юнити, то это бред. Юнити производительнее, стабильнее, без пропуков, рендер мощнее и более конфигурируемый, батчинг всего и вся.
Как-то итт сравнивали в рендердоке 2д рендеры Юнити и годота, в Юнити все было четко, в то время как гандотя рисовала каждую буковку двумя драв коллами, хз пофиксили это или нет с тех пор, но это далеко не единственная проблема гандотьки
Купи тысяч за 20 самсунг. С одной стороны у тебя будет универсальный удобный гаджет (карта города, банковские счета, оплата ЖКХ и всё что угодно), с другой стороны может тебе понравится мобильный гейминг и ты решишь туда влететь.
Помню тут один анон пилил симулятор ядерного реактора. Казалось бы, кому на мобилках может быть это интересно? Но его игра зашла людям, было много установок. Так что на мобилки можно любой геймплей запилить.
> Производительнее
Юнити намного производительнее
> Удобнее работа с тайтлами
Вроде в юнити все тоже самое есть и сдк от Tiled
> Очень понравился концепт сцен - юнитов. По сути работаешь сразу с пребафами.
Для прототипирования норм, как проект разрастется бкдет хуево
> Вроде есть наличие горячей перезагрузки для gdscript но я не юзал.
Это да
> Мне кажется программирование шейдеров кодом (близкое к GLSL) лучше чем эта визуальная залупа где ты точки соединяешь.
В юнити программирование кодом, визуальная залупа для тех аристов и новичков
Как всегда годоти не могли не смухлевать. Вот так и куются перемоги.
И че сделал он новое видево?
>Опенсорс победит.
3дмакс и маю как юзали так и дальше юзают, особенно если это касается студий.
У блендера два плюса: анимации удобнее делать и аддонов много. Всё.
Да и популярность что у годоти, что у блендера сейчас упала, многие попробовали и вернулись обратно на свой софт привычный.
А кто-то вообще обосрался на годоти, и сидит ноет теперь, что игра говно, годоть не вывозит, дайте денег бедным нам.
Половина игр на опенсурс движках даже близко не касалось его ядра при разработке. И пилят свою игру 1в1 как на юнити, без изменений рендера или каких-то либ внутри. Зачем об этом все вопят - непонятно.
Не заметил
Ключевая разница между Godot и Unity заключается в их архитектуре, философии разработки и экосистеме. Вот основные отличия:
### 1. Архитектура и подход
- Godot использует деревь сцен (node-based), где каждый объект — это "нода" (узел), а сцена — это иерархия таких нод. Это даёт гибкость, но требует привыкания.
- Unity работает на основе игровых объектов (GameObjects) и компонентов (Components), что ближе к традиционному ООП.
### 2. Языки программирования
- Godot поддерживает GDScript (Python-подобный язык), C#, C++ (через GDNative) и VisualScript (устарел).
- Unity использует C# как основной язык, с более зрелой экосистемой и производительностью.
### 3. 2D vs 3D
- Godot изначально заточен под 2D (есть отдельный 2D-движок с пиксельно-точным позиционированием).
- Unity изначально 3D-ориентирован, но имеет мощные инструменты и для 2D (хотя требует дополнительных настроек).
### 4. Лицензия и стоимость
- **Godot** — **полностью бесплатный и открытый (MIT License)**, без скрытых платежей и роялти.
- **Unity** — **условно-бесплатный**, но с подпиской Pro и платой за использование при определённых условиях (ранее был скандал с Runtime Fee).
### 5. **Производительность**
- **Unity** обычно быстрее в **3D** (особенно с большими проектами) благодаря оптимизированному движку и Burst Compiler.
- **Godot** легковесный, но в 3D пока отстаёт (хотя Godot 4 с Vulkan улучшил ситуацию).
### 6. **Сообщество и документация**
- **Unity** — огромное комьюнити, много ассетов в Asset Store, обширная документация.
- **Godot** — сообщество меньше, но быстро растёт, документация хорошая, но иногда не хватает продвинутых гайдов.
### 7. **Кроссплатформенность**
- Оба движка поддерживают **PC, мобильные устройства, консоли и Web**, но:
- **Unity** проще портировать на консоли (из-за официальной поддержки).
- **Godot** проще экспортирует в **Linux и Web** без лишних сложностей.
### **Вывод:**
- **Выбирайте Godot**, если хотите **бесплатный, открытый движок** с удобным 2D и простым workflow.
- **Выбирайте Unity**, если нужен **мощный 3D-движок** с C#, большим количеством готовых решений и поддержкой консолей.
Если кратко: **Godot — это "инди-дружелюбный" движок, а Unity — более коммерчески ориентированный.**
Ключевая разница между Godot и Unity заключается в их архитектуре, философии разработки и экосистеме. Вот основные отличия:
### 1. Архитектура и подход
- Godot использует деревь сцен (node-based), где каждый объект — это "нода" (узел), а сцена — это иерархия таких нод. Это даёт гибкость, но требует привыкания.
- Unity работает на основе игровых объектов (GameObjects) и компонентов (Components), что ближе к традиционному ООП.
### 2. Языки программирования
- Godot поддерживает GDScript (Python-подобный язык), C#, C++ (через GDNative) и VisualScript (устарел).
- Unity использует C# как основной язык, с более зрелой экосистемой и производительностью.
### 3. 2D vs 3D
- Godot изначально заточен под 2D (есть отдельный 2D-движок с пиксельно-точным позиционированием).
- Unity изначально 3D-ориентирован, но имеет мощные инструменты и для 2D (хотя требует дополнительных настроек).
### 4. Лицензия и стоимость
- **Godot** — **полностью бесплатный и открытый (MIT License)**, без скрытых платежей и роялти.
- **Unity** — **условно-бесплатный**, но с подпиской Pro и платой за использование при определённых условиях (ранее был скандал с Runtime Fee).
### 5. **Производительность**
- **Unity** обычно быстрее в **3D** (особенно с большими проектами) благодаря оптимизированному движку и Burst Compiler.
- **Godot** легковесный, но в 3D пока отстаёт (хотя Godot 4 с Vulkan улучшил ситуацию).
### 6. **Сообщество и документация**
- **Unity** — огромное комьюнити, много ассетов в Asset Store, обширная документация.
- **Godot** — сообщество меньше, но быстро растёт, документация хорошая, но иногда не хватает продвинутых гайдов.
### 7. **Кроссплатформенность**
- Оба движка поддерживают **PC, мобильные устройства, консоли и Web**, но:
- **Unity** проще портировать на консоли (из-за официальной поддержки).
- **Godot** проще экспортирует в **Linux и Web** без лишних сложностей.
### **Вывод:**
- **Выбирайте Godot**, если хотите **бесплатный, открытый движок** с удобным 2D и простым workflow.
- **Выбирайте Unity**, если нужен **мощный 3D-движок** с C#, большим количеством готовых решений и поддержкой консолей.
Если кратко: **Godot — это "инди-дружелюбный" движок, а Unity — более коммерчески ориентированный.**
Большинство Анонов итт из России. Основная прибыль с гугл плея идёт мимо нас.
>>7932
>Опенсорс
Сейчас во всю пиарят https://defold.com/
>У блендера два плюса: анимации удобнее делать и аддонов много.
Именно потому что опенсорс и нарастил комьюнити. Нечто такое может ждать годот (но не скоро).
Хорошая инвестиция если ты только начинаешь и у тебя есть много лет и желания вариться в индустрии.
непривычная архитектура
много чего нет
подходит для мини игр или игр среднего размера
нет учебных материалов
LUA вместо языка
> Большинство Анонов итт из России. Основная прибыль с гугл плея идёт мимо нас.
Было бы желание или готовые к выпуску годные игры(либо уже вышедшие на ру площадке и показавшие хорошие метрики) - нашли бы вариант выйти на гугл плей.
Google признали виновной в монополизации рынка онлайн-рекламы
Суд США установил, что Google незаконно удерживала монополию на рынке онлайн-рекламы, используя антиконкурентные практики на протяжении более десяти лет. Компания связала свои продукты — сервер объявлений и рекламную биржу — для контроля над ключевыми этапами размещения интернет-рекламы, что нанесло ущерб издателям, конкурентам и пользователям. Google могут обязать отделить свои рекламные технологии. Это уже второе крупное антимонопольное поражение корпорации за год — ранее ее признали виновной в злоупотреблении доминированием в сфере онлайн-поиска.
На дотсе деыолтная юнити партикл система работает из коробки
> что-то там еще дебанкал а годоти это в тред несли
Надо же оправдать сверх-быстрый движок гуньдот. Как это ещё разраба роад-ту-восток не упомянули, который перешел на этот кал, ещё и блять на гдскрипте, а не на шарпе.
По итогу: сейчас как будто замедлился в х100 раз, чем когда делал на юнити.
Плюс отсеял половину челов которые писали ему, что на гуньдоти стало хуже всё выглядеть и работать.
Разработка +- норм проекта в будущем, перетекла в скам на долляри ждунов и объект вожделения для гуньдоть, верящих в поделие хуана, которое пришло типа спасти мир гейдева от злых корпорашек.
Все по факту ответил, это практически никакого вклада на результат не внесет.
Нюанс в том, чтобы начать продавать, тебе сначала надо будет потратить около 50000р на оформление. То есть тебе нужна гарантия что это купят хотя бы 200-500 человек чтобы отбить.
Вопрос, наверное, даже философский - сможешь ли ты убедить 200 человек из 20000 просмотревших заплатить реальные деньги за игру, если не смог заставить 200 000 просто посмотреть рекламу?
>Да и популярность что у годоти, что у блендера сейчас упала, многие попробовали и вернулись обратно
Верим.
Ни разу не зависал, в отличии от говнодота, особенно если шорткатом винды сворачивать все окна, либо просто попытаться свет запечь.
Позорище а не движок. Как его ещё не удалили в принципе отовсюду, неужели годоти так терпят сильно
Да писали петиции в стим чтобы удалили все говнюнити, но там большие бабки замешаны.
надо было писать петиции на удаление хрюкающего волка за клевету движка
Но буду.
ууууииииихрююююю
Как у меня горит очко с этих даунских техно-деок.
https://www.youtube.com/watch?v=o1JIK5W3DRU
Какой в этом смысл? Если в анриле техно-демка что-то показывает, то это так и выглядит в ИГРОВОМ ПРОЦЕССЕ. А тут что? Типа, ты можешь отрендерить синематик на движке? И хули? Я его и в 3д редакторе отрендерить могу, чтобы потом в игру вставлять, хоть в годот сраный. Но в игре такого не будет никогда. Это же просто скам называется.
За такое даже на китайских маркетплейсах уже банят, за откровенную ложь на обложке.
так это замануха для быдла и инвесторов
демки на анриле ту же функцию выполняют
разрабам поебать на эти "4080+" технологии, они зомби-шутаныы из синти ассетов клепают
На анриле буквально всё из технодемок реализуемо в движке. На юнити я не уверен, что даже реально можно такой синематик отрендерить, и это не наебалово. Но рилтайм в игре ты даже 10% от этого не получишь, хоть изъебись там, такого функционала просто нет.
Как будто в анриле всё то что показывают - так-же реализуют дальше ассетов для пустых комнат или синематиков.
Либо трейлер/тизер выглядит привлекательно, а в действительности это дерьмо неоптимизированное/неинтересное/мертваяигра, и играть невозможно без нанокомпуктира с железом уровня 4070+.
Просто дурить гоев легче на урине, и у неё уже прямо традиционно такой маркетинг.
"Мы подходим для создания любой игры, но, при этом мы не подходим для ничего, кроме коридорных шутеров как и 10 лет назад."
Вот у какого-нибудь сруенжина было RT освещение 10 лет назад, а они зазвездились с лицензией, и не пытались пиариться как это делают эпики рассказывая о волшебных люменах.
В итоге урина ужасно раздутый движок с уебищным освещением, а сруенжин- банкроты, максимально не юзерфрендли движок, но, зато с очень легким RT которое работает даже на слабом железе.
А это ещё если не упоминать сурс, который недавно запускали на куске говна мамонта пентиум4 и там были и отражения и RT и тени.
Это больше вопрос контор-пидорасов, и эпик-гей тут явно лидирует.
P.S Свинина - пидорас и хуесос.
>дерьмо неоптимизированное/неинтересное/мертваяигра, и играть невозможно без нанокомпуктира с железом уровня 4070+.
Пиздец унылое виляние жопой. Уровень "а нам это нинужно". Речь идёт о том реализуемо заявленное в принципе или нет, а не о твоих предпочтениях. На анриле повторить технодему можно. Просто взять и сделать, даже если тебе это в игре не нужно. Повторить на юнити даже 50% от этого просто НЕЛЬЗЯ, это буквально скам.
Покажи мне проект, где это реализовано хотя бы на 30% от такого уровня графона в игре (не отрендеренном видосе, игровой движок не для этого существует, я могу отрендерить и вставить видео в любой движок). Или ты сейчас тупо скажешь, что это "не нужно", поэтому это никто не сделал? Я тебе сразу отвечу - это бы сделали даже просто так, за бесплатно, энтузиасты, если бы это было возможно. Не говоря уже о том, что разрабывать игры с хорошей графикой выгодно финансово и твои мантры о том что только гиперказуалки приносят бабки просто смешны..
>>8300
Причём, самое смешное, ладно бы это была новая тема, типа наебали на хорошй графон только щас, я вот скинул самый свежий видос, но подобная хуета технодемок у юнити выгодит ГОДАМИ с гиперреалистичным графоном, но как вершину разработки в юнити всё так же приводят firewatch и сабнавтику с графикой понятно какого уровня.
пидор, спок, ты в юнити идёшь за графикой? цель какая? ты сначала определяешься с целью, потом подбираешь инструменты и начинаешь делать
>Речь идёт о том реализуемо
А что на юнити не реализуемо? Технодемку с картинкой как в кино?
Эпики их клепают на блюпринтах по большей части, поэтому и можно повторить по быстрому.
Только какой смысл? Это не влияет ни на что, кроме как стимуляцию гоев.
> но как вершину разработки в юнити всё так же приводят firewatch и сабнавтику
"Кто то там что то говорит". Аргумент "ну говорят же" это всегда кринж.
Я вот про фаервотч вообще нихуя не знаю, а сабнаутика игра охуенная, но не вершина фотореалистичного графона, да и старая уже довольно, и мне в целом поебать кто там что абстрактно говорит, не знаю, посчему это должно считаться аргументом.
>>8300
> Покажи мне проект, где это реализовано хотя бы на 30% от такого уровня графона в игре
Многие технодемки юнити в открытом доступе лежат, бери, запускай.
Вопрос только один - с чего ты взял, что знаешь всё что делается на юнити и все технодемки созданные энтузиастами?
> Не говоря уже о том, что разрабывать игры с хорошей графикой выгодно финансово и твои мантры о том что только гиперказуалки приносят бабки просто смешны..
Не знаю, откуда ты такие мантры выдумал и с чего ты взял, что они мои.
Гиперказуалки, к слову, уже давно всё и мало приносят.
А что касается графики - если игра на 2060 не работает - её перспективы уже очень сомнительны
> не отрендеренном видосе, игровой движок не для этого существует, я могу отрендерить и вставить видео в любой движок
Тебе показали уровень графона который можно достичь в реалтайме на современном железе, а не наполненный открытый мир, в котором будет сотни домиков с тысячами объектов с таким уровнем графона.
Обмвна никакого нет, все что в технодемках реализуемо.

Ну у тебя картинка правильная подобрана
вряд ли, т.к. обычно всё со всем связано
Bevy что-то подобное пытается сделать, но она еще на ранних стадиях разработки
Урина с обреза свинины не иссякнет никогда! Идеальный движок говна для объеба гоев! Быстрее делайте игры на нём, пока все не одумались!
Это очень сложно и не имеет смысла.
Легче сразу определить что тебе нужно.
Сейчас делаю движок одновременно с игрой для веба и это шиза полная.
Лучше использовать юнити или унреал. Но у меня конечно не совсем игра, так что не вариант.
>невозможно без нанокомпуктира с железом уровня 4070
Как же проигрываю с нищуков для которых 4070 это такая гипердорогая-убержелезка что они даже приводят ее в пример "нереалистичности" требований УЕ к компуктеру.
Абсолютно все претензии на этой борде к УЕ можно свести к "ряяя на моей нищесборке ниидет!"
Дауничи, если у вас нет денег на среднее железо, надо не в игрушки играть, а начать с себя пойти наконец-то работать.
>Абсолютно все претензии на этой борде к УЕ можно свести к "ряяя на моей нищесборке ниидет!"
Свинолахтовый глюпи глюпи гои, уже купил 5090 чтобы поиграть в игры на урине в 60 фпс? 80 версия исправит этот каловый движок, главное верить.
С точки зрения разработчиков, ожидание видеокарты уровня 4070+ - может сильно срезать аудиторию.
> Дауничи, если у вас нет денег на среднее железо, надо не в игрушки играть, а начать с себя пойти наконец-то работать.
Если у тебя все хорошо сложилось, не значит, что у всех так. Рабочих мест с большой зп на всех не хватит, абсолютное большинство рабочих мест довольно малооплачиваемые и 100к на видеокарту будет ох как не просто найти

хз, у меня 900 фпс на старой карточке 5 летней давности
с ТАА, динамическим освещением и тенями, постпроцессом, на дх12
может у вас руки из жопы просто растут?
>С точки зрения разработчиков, ожидание видеокарты уровня 4070+
Ожидание видеокарты такого уровня только если ты хочешь топ графон, настройки по-хорошему разрабы должны тебе дать срезать до твоего уровня. Так что претензия к анрилу всё равно не в тему. Если у тебя в принципе говнопека, то никакой движок тебе не даст поиграть с топовым графоном. На анриле при желании можно отрубить наниты и люмены и ебашить по-старинке: делать LODы и запекать свет.
>ебашить по-старинке: делать LODы и запекать свет
Но, большинство конечно берут его как раз чтобы избежать этого процесса.
Особенно если в игре динамическая сменя дня/ночи.
> Ожидание видеокарты такого уровня только если ты хочешь топ графон, настройки по-хорошему разрабы должны тебе дать срезать до твоего уровня. Так что претензия к анрилу всё равно не в тему.
Просто все на разных языках говорят и спорят с выдуманными ими самими же аргументами для противоположной стороны.
Я даже не про тебя лично конкретно, это просто частая ситуация в этом треде и не только, и сейчас одна из них.
Вот тут чел >>8291 как будто бы говорит, что 4070 это минимум для приемлимой работоспособности технодогий рекламируемых анрилом. Подразумевая, что видеокарты слабее уже не смогу приемлимо использовать эти технологии.
Ты же сейчас говоришь, что можно просто взять отключить все эти технологии и 4070 тогда перестанет быть минимальным требованием поэтому нельзя это записывать в претензии.
Как там в 2007? Сейчас курьер 120+ получает. С учетом расходов на еду и питание, это максимум месяца 3 на самокате покататься
Ожидания что современный движок должен выдавать качество ааа уровня на компуктерах из музея, по меньшей мере странно.

Может быть, дело в том, что курьерам платят не так уж плохо?
В стране медиана 50к по официальным данным(в москве 70к), и если немного пообщаться с народом, то понятно что так оно и есть, очень многие получают 30-50к, продавцы, кладовищики, слабоквалифицированные офисные работники, обычные юристы, заводские рабочие(смотря какой завод), научные работники(лол). Больше медианы это те у кого уже хоть сколько-то востребованная занятость.
Даже если все малооплачиваемые специалисты пойдут резко курьерить - деньги в экономике из воздуха не возьмутся, ставка курьеров обвалится ввиду такого предложения на рынке соискателей и уже у курьеров зарлата станет 40к.
если все разработчики игр сейчас пойдут курьерить - ничего не изменится, т.к. их несколько сотен человек на всю Россию
Где я написал что курьерам плалят плохо? Курьерам платят очень хорошо и грех не воспользоваться таким перекосом рын очка пока еще есть возможность.
Даже если не идти курьером, то можно откладывать по 10к в месяц и скопить денег чуть менее чем за год. Вы охуели совсем просто в край и хотите ничего не делать и чтобы все было при этом. Есть ли смысл напоминать что так не бывает? Настолько детские инфантильные ожидания от жизни кроме игрунов я видел только у ебнутых баб, которых растили принцессами и которые теперь ждут что вот прям завтра должен свалиться принц и увезти на белом бентли в дубай.
Причем тут вообще разработчики игр?
Речь шла о том, что большинство народу не может позволить себе 4070, и совет "те кто не может должны не в игры играть а просто пойти работать)))" идиотский, в большинстве сфер большинству работников платят довольно мало, а востребованных мест на всех не хватает.
Такую хуйню несешь
> Даже если не идти курьером, то можно откладывать по 10к в месяц и скопить денег чуть менее чем за год
Пиздец) Год копить на видяху)))
Это и есть не можешь себе позволить считай, поэтому что на такое пойдут уже совсем единицы самых упертых кому больше ничего не нужно.
Я буквально не знаю никого, кто стал бы год копить на видяху в здравом уме, да даже не в здравом.
> Вы охуели совсем просто в край и хотите ничего не делать и чтобы все было при этом.
Расскажешь это продавцам, поварам, офисным работникам, бухгалтерам, работягам на заводе, юристам, консультантам, челикам в пвз, учителям, которые ебашут на работе, даже больше 8 часов в день, и получают копейки?(не надо только плез говорить что на заводе 200к можно получать, как и некоторым другим из списка - это нужна особая специализация или квалификация - не на каждом заводе делают одно и то же)
Инфантильная позиция как раз у тебя - ну чо вы просто курьерами устройтесь)
А в стране есть куча поселков, куча маленьких городов где курьеры не актуальны, да что уж говорить - курьером не каждый сможет работать на постоянной основе, об этом говорит банально их востребованность, было бы так легко - толпы бы ломанулись и зарплаты бы упали.
Ну и уже упомянутая мной вместительность рынка - все вышеперечисленные разом курьерами стать не смогут.
Всё в общем-то зависит от размера экономики, из воздуха она не берётся, все станут курьерами - и зарплаты такие им будет брать неоткуда - об этом я тоже уже писал.
>А в стране есть куча поселков, куча маленьких городов
В каждой стране такое есть, 4070 и выше - не популярные карты, нечего приплетать Россию
https://store.steampowered.com/hwsurvey/videocard/
>>8612
При том, что это раздел /gd, и совет пойти работать курьером для разработчиков игр - вполне здравый, а вот фантазии "если бы все пошли курьерить" - подростковые хотелки, недостойные обсуждения. Я посчитал собеседника слишком умным.
> В каждой стране такое есть, 4070 и выше - не популярные карты, нечего приплетать Россию
Это ответ был не про доступность 4070 по миру, а про то, что совет "идите просто работать)" идиотский. Люди и так работают где могут.
> При том, что это раздел /gd
Только вот был тезис, что если не можешь купить видяху - ну иди просто работать, в нем не были упомянуты разработчики игр, и этот тезис вообще откололся от обсуждения ЦА игр. На что и бвл дан ответ.
Так что в нем разработчики игр не причем.
> и совет пойти работать курьером для разработчиков игр - вполне здравый
Тут сразу 2 проблемы:
1. Курьер это профессия не для всех(актуально для больших городов, большая нагрузка, психологически может быть тяжело монотонно кататься)
2. Разработчики игр это все же востребованная профессия, и получают они намного больше курьеров. Рациональнее подтянуть навыки и нацти соответствующую работу, чем курьерить.
> а вот фантазии "если бы все пошли курьерить" - подростковые хотелки, недостойные обсуждения. Я посчитал собеседника слишком умным.
Какие хотелки? Я тебе говорю о том, что это рыночек, если чел не работает курьером, значит на то есть причина, ты не модешь просто каждому дать совет пойти курьерить
тем не менее, совет правильный, ведь средний курьер зарабатывает больше среднего гэдачера, у которого доход это 11к пенсия по шизе и 8 рублей с яндекс-игр
статистика мной преукрашена, да

Вот каждый такой чел, говорит абсолютно одно и то-же на каждую игру сделанную на урине - что вот руки прямые надо, инструмент то хороший. А если и это плохо - ну это руки не прямые были.
Это вот прямо в 9 из 10 случаев звучит так от каждого. И ничего не меняется, даже при том, что над игрой могут работать целыми студиями, а игра будет кривой казалось бы в банальных вещах.
А сами эпики неприкасаемые будто, в их сторону ничего не говорят, что такое говно создали. Хотя надо им вылить не одно ведро помоев на голову, чтобы поели за своё детище.
Они только в плюсе по сути - больше студий будет платить эпикам, чтобы те привлекали своих спецов-индусов в помощь, так как разрабы чёт не справляются с нагрузкой на таком непонятном движке, который как будто специально сделан с нюансом который обнаружишь намного позже по мере освоения.
Умно.
"Это правда нужно объяснять?"
Я еще раз повторю СВОю мысль для особо тупых. Она довольно проста. Есть деньги - играешь в игры, нет денег - не играешь. Игры это удовольствие, а за удовольствие приходится платить. Так устроен этот несправедливый мир.
Пока твои претензии к УЕ выглядят как претензии толстой, прыщавой телки к администрации Дубая. Сделали слишком дорогой и красивый город. Страшных телок туда не зовут.
>Расскажешь это продавцам, поварам, офисным работникам, бухгалтерам, работягам на заводе
Мы же не о цене на картошку в пятерочке говорим, а о компьлюктерном оборудовании для игр. 4070 как бы не входит в число жизненно важных товаров первой необходимости и не обязяна быть доступна малоимущим.
>Есть деньги - играешь в игры, нет денег - не играешь.
Игры на урине - говнище ебаное для тупых гоев. Твои попытки оправдать это поделие индусов выглядят ещё более смешно, чем попытки оправдать мистическую потребность в современном железе, желательно самое актуальное, которое даже за бесконечные деньги не способно вытянуть плавно любую игру на урине какой-нибудь без статтеров, либо мыла на экране.
> Пока твои претензии к УЕ
У меня не претензий к УЕ
>>8673
>>8670
В целом, я не знаю, на что эти 2 ответа и что тут сказать.
В них приводятся ответы на аргументы и утверждения, которые я никогда не приводил.
То есть я выше сделал какие-то утверждения, а в этих 2 ответах они никак не затронуты и идет ответ на чето вообще другое что-то, что и так само по себе очевидно.
Тип я говорю, что большинству населения недоступны топ пека и оно с этим ничего не может сделать(массово) и не надо народ в этом винить(т.к. выше было обвинение, что вот все у кого денег нет и не ебашут курьерами - охуели, а я приводил арумент почему это невозможно) на что получаю ответ:
>Есть деньги на игры играешь - нету не играешь
Ну, заебись. Кажется по этому вопросу у нас и не было разногласий, и более того все обсуждение и началось с обсуждения этого факта. Да, именно факта, никто даже не выражал сомнения, что если на что-то не хватает денег - то на это на хватает денег.
Ещё добивается вот этим
>4070 не входит в число жизненно необходимых товаров, она не должна бвть доступна малоимущим
Хуй знает, с чего вообще ты решил, что я это заявлял.
Я заявлял, повторюсь опять, что народ и есть малоимущий в массе своей и не по своей вине, и мой доеб был в том, что тв подавал это так, будто это очень легко поцти ебошить курьером и лутать деньги для кого угодно.
Вы в курсе, что игры на анриле оптимизируют так, что они могут работать на встройках?
Сам редактор да, тяжеловат, но раз ты решил что ты разработчик, то изволь купить мощный компуктер, любой софт для разработки тяжелый по ресурсам, на слабом железе ни код нормально не попишешь, ни модельки не по раскрашиваешь.
А итоговый билд игры на анриле может требовать гораздо более простого железа, чем сам движок.
теоретически да, если модифицировать движок и использовать его мобильный рендеринг на ПК. практически - вряд ли запустится на таком старом железе, потребует каких-нибудь инструкций, которых нет в четвертом пеньке
В чем смысл этой демки? Типа запустили очередной дум на кофеварке? Зачем вообще что-то делать с 4 пнем в 2025 году? Его место в компьютерном музее.

Толстовато
Если ты программист - позови художницу, если ты художница - позови программиста.
Ну ты конечно можешь верить в свой манямир где все выходящие на урине игры говно и лагают, а марвел райвалс, вуконг и ремейк подливона дальше собирают гешефт.
замени проц, видяху и добавь оперативы, очевидно же. правда придется купить мать к новому процу, а к новой видяхе еще и БП. и желательно о новом системном диске можно подумать на PCI-e 5.0. корпус тоже лучше заменить на продуваемый, чтобы вся эта мощь не душилась. как-то так
Видяэа ускоряет только рендеринг и запечку света, ссд любой одинаково перформит примерно с разницей в несколько процентов, реальная разница будет только в линейной записи и чтении очень больших блоков данных на много гигабайт
Юнька блочит персональную (бесплатную) лицензию если посчитает что ты слишком успешен или заподозрит что ты работаешь в компании. Как и обещали. Не просто так же зондов-аналитики напихали, это теперь малварь, которая следит за каждым действием.

576x1024, 0:12
эта хуйня на все версии распостраняется я так полагаю? или только на свежие хрюнити666?
Задним числом - на все. Это последствия того первого скандала при увольнении СЕО. Потом они там чего-то откатывали после бури дерьма в соцсетях, но не помню откатили ли конкретно это.
>анрилобояр
Так ты такой же, лол. Полагаешься на доброжелательность Свыни. У него завтра фортнайт перестанет мегаденьги приносить и все, приехали.
Вообще необучамые.
Тяжело реализовать ECS
Шиз который пишет свой движок на говнорасте, детектед
Нихуя, в случае со свыней ты защищён лицензией, которая привязана к версии движка. Если свыня одебилеет, то сможет дичь творить только в новой версии, иначе его ждут судебные тяжбы, то есть в случае чего ты сможешь спокойно дорабатывать на своей версии.
Юнипитеки всегда были мутными пидорасами и поэтому изначально не привязывали лицензию к версии движка, а потому могут заниматься дичью ретроактивно.
>только в новой версии
Юнидауны так же говорили, поэтому и бурлили после факта.
>иначе его ждут судебные тяжбы
Которые осилят только большие дяди вроде беседки, а скорее всего просто договорятся. А лично тебе, нищему петухониксу с двача, проведут по губам и удалят к хуям твой нескучный симулятор ходьбы на ворованных ассетах, не говоря о том что до нормального суда ты даже не доползешь.
Вв ебанутые? Фри лицензия = зарегал акк, вот тебе лицензия.
Без хаба, полагаю, она даже нахуй не нужна.
Алсо работаю в большой компании, тут у половины персонал лицензия.

Спасибо что сообщил.
>Юнидауны так же говорили
Не пизди, никто так не говорил, они внесли изменения ретроактивно, поэтому и бурления были. Многие сьебали с юньки после этого, как тот же Тарков, Сабнаутика.
>Юнипитеки
Аналогов хрюнити - всё ровно нету. Годот слишком говно, урина слишком затратная в плане доведения стилизации до ума и кода. Особенно если цель сделать чтобы игра выглядела как что-то из 2010.
А уж тем более нюфаням по типу меня.
На хрюнити поковылся в настроечках плагина и у тебя хорошая запеканочка на выходе. В урине насколько помню какая-то мутная хрень с этим, и без мочной ГПУ не запечь адекватно.
Терпим.
Наес маняистории со дна бутылки. Говорили еще как, в точности как ты, ДО того как изменения внесли, ещё при мердже с айронсорсом.
Нюфаня, а почему ты думаешь что твои мысли хоть как-то основаны на реальности? На опыте? На чем-нибудь? Ты же нюфаня, твой опыт в геймдеве - сегодня и вчера. Ты даже релиза не нюхал.
Залетышь, ты вчера родился? Слюнки тебе утирать никто не будет.
>На хрюнити поковылся в настроечках плагина и у тебя хорошая запеканочка на выходе. В урине насколько помню какая-то мутная хрень с этим, и без мочной ГПУ не запечь адекватно.
Ну ты просто туповат видимо, нормальным людям ничего не мешает и 2Д и лоуполи на урине делать. Но да, анрил посложнее юнити и годота, там нужно айкью выше двузначного хотя бы.
> основаны на реальности
У меня есть несколько знакомых, которые работают аутсорс на УЕ5 в т.ч ебанутые плюсовики, и несколько блюпринтодрочеров. И как-бы слегка поинтересовавшись/понаблюдав пришел в такому выводу.
>>8791
>даже релиза не нюхал
По факту так и есть. Я и не говорю так-то, что это истина в которую я верю. Могу ошибаться конечно.
Я понаблюдал за твоими постами в ИТТ и пришел к выводу что ты даун с однозначным айкью, нюфаня. Хотя ты, к счастью, даже не мой знакомый.
>ты даун с однозначным айкью, нюфаня
Ты меня щас оскорбить хотел? Мне тебя тоже можно хуесосом назвать?
Просто не пизди с уверенным видом о том, чего не понимаешь и чем даже не занимаешься.
Минусы будут?
Brackeys, ваш же юнитибох и все его адепты. А полтора шизика остались убеждать всех вокруг что никто не съебал.

Так он сьебался, как только юнити перестало заносить ему деньги. Попытался поделать контента на годоте, а там хуй. За год смог только 3 видео сделать.
https://www.youtube.com/@tokyospliff
Это просто один из вариантов прокрастинации. Вместо того, что делать игру, он пишет движок и снимает дебильные видосики.
Мне пох ньюфажище или не ньюфажище.
Факт в том, что брекей делал контент для тех кто в первые зашел в юнити, ушел он или нет - поебать на самом деле он ушел с юнити, потому что занялся органищациец гейм джемов, но это мы опустим
Бизнес и про игроделы как сидели на юнити так и сидят
Так он безыгорный, хули бы нет, если дохуя свободного времени. Делает контент, рисует очередной треугольник на опенгл, собирает на этом просмотры с монетизацией, игры не делает и не планирует
В этом ничего плохого нет, если ты сам осознаешь, что безыдейный в плане игр, или не можешь в арт/дизайн/сторителлинг, например
>Никто не съебал, кроме полутора шизиков
Сабнаутика, Тарков, Darkest Dungeon, Amogus, Slay the Spire
Танков никуда не уходил, не?
> Сабнаутика
Уход не связан с политикой юнити
> Тарков
Пиздежь и я хз зач даже комментирую
> Amogus
а?
> Darkest Dungeon
> Slay the Spire
Полтора шизика

@
РЕШИЛ УСТАНОВИТЬ BEVY ПОПРОБОВАТЬ ЧОЭТА
@
СЛЕДУЕШЬ ДОКУМЕНТАЦИИ
@
ЗАПУСКАЕШЬ ПЕРВЫЙ БЕВИ ПРОЕКТ
@
ЦПУ ЗАГРУЖАЕТСЯ НА МАКСИМУМ И ХУЯРИТ БИЛД 10 МИНУТ
>НАЧИТАЛСЯ ПРО ECS МОЛ БЫСТРА ЕБАТЬ
ну может быть для анальников с 20 летним стажем - это легко и просто, но ECS это уже другой уровень кодинга, вкатуны не потянут
Ецс это архитектурный подход в первую очередь.
Уже во вторую очередь ецс может быть реализован как дод архитектура, с линейным расположением данных в памяти и многопотоком, что уже даёт и перформанс в рантайме.
Про скорость компиляции никто ничего не говорит.
>ЦПУ ЗАГРУЖАЕТСЯ НА МАКСИМУМ И ХУЯРИТ БИЛД 10 МИНУТ
Welcome to rust
Зависимости проекта загружают зависимости зависимостей, и это все пердит и долго компилируется
Зависимости в любом языке кэшируются, загрузка не является фактором.
Ровно как и их компиляция - повторно компилировать то, что скомпилировано - не нужно.
ничего сложного. то для чего екс предназначен на нем легко делать - композитные игровые сущности с разными свойствами
сложно и костыльно делать на екс те вещи, которые с ексом хуево дружат (гуй, рендеринг, скрипты, оптимизация)
>?
ну вот ты делаешь дайти_всех(мувабл, пёрдабл, омайгадабл}, и задача решить что такое "все" находится вне компетенции екс, и не имеет однозначного оптимального решения
А без ецс получается есть однозначное оптимальное решение? Значит ецс накладывает какое-то фундаментальное ограничение, кгторое этому мешает?
эта проблема актуальна для абсолютно чего угодно, и что с ецс, что без ецс имеет разные решения
В дотсе например данные группируются по архетипам, и все ентити с одинаковым набором компонентов лежат в одних и тех же линейных массивах данных.
Соответственно выборка по архетипам эквивалент цикла по массиву структур
Для других сценариев, когда выборка включает несколько архетипов - хранится кеш какие архетипы удовлетворяют условию выборки и также цикл по всем подходящим архетипам
Другими словами, у дотса перформанс для выборок максимальный
Структурные изменения более прожорливые, чем в некоторых других ецс фреймворках из за системы архетипов
ключевое слово - без екс. сталкиваясь с проблемой оптимизации, екс архитектура перестает быть екс
это очевидно, когда ты с нуля пишешь екс игру, не используя готовый движок с прикрученным где-то сбоку ексом
Что?
Простой вопрос - каким образом концепция ецс(ентити, компонент система) накладывает ограничения на оптимизацию?
> сталкиваясь с проблемой оптимизации, екс архитектура перестает быть екс
Пример?
Покажи такую оптимизацию, которая вынуждает ецс перестать следовать канонам ецс.
> это очевидно, когда ты с нуля пишешь екс игру, не используя готовый движок с прикрученным где-то сбоку ексом
Какая разница готовый движок или твой личный? Это как то меняет концепцию ецс?
>Какая разница готовый движок или твой личный?
в готовом не ECS движке архитектура уже не ECS. ECS там это просто гиммик
в настоящей ECS архитектуре всё делается через ECS
в том числе рендеринг объектов. подтянул все рендераблы, отрендерил
подтянул все физически сущности, отсимулировал столкновения
и т.д.
> в готовом не ECS движке архитектура уже не ECS. ECS там это просто гиммик
Ецс это архитектура в которой есть такие сущности: ентити компонент систем.
Если программный код оргагизован в соответствии с этой концепцией, то его логично назвать ецс.
В чем противоречия юнитевского ецс или беви этоц концепции?
> в настоящей ECS архитектуре всё делается через ECS
> в том числе рендеринг объектов. подтянул все рендераблы, отрендерил
> подтянул все физически сущности, отсимулировал столкновения
> и т.д.
Ты сказал? Лол.
А если у меня в игре кор геймплей логика сделана на ецс, логика интерфейса на MVP, контролы интерфейса на юнитевской компонентной системе, рендер и физика вообще проприетарная хуйня с совершенно другим проектированием и использованием статики и синглтонов, то получается у меня игра сделана ни на ооп, ни на ецс, а и то и другое там - гиммик и нещитова?
А на что влияет то что нечто является нещитовым гиммиком? У этого есть негативные стороны помимо того, что ты скажешь, что это гиммик?
То есть если я прочитаю какую-то статаью по ецс с примером реализации какой-то механики - применить я это не смогу потому что у меня "не ецс, а гиммик"?
Или если я прочитаю про вариант организации фабрики для попапов - соответственно тоже не смогу применить потому что у меня и не ооп толком?
Кстати а вот мы сделали например и рендер, и физику, и геймплей, флоу игровой на ецс например. Но чтобы проиграть звук - надо дернуть нативное апи. А в нативном апи там ваще не ецс, а кривой косой набор функций. Значит тоже не ецс уже?
Нет никакой "настоящей ецс архитектуры", да и вообще какой либо ещё, есть набор абстрактных идей и конкретных практик по организации кода.
Если ты какими-то из них пользуешься для реализации какого-то кода, то ты модешь сказать что ты им пользуешься и это другому программисту даст в общих чертах понимание устроцства твоего проекта. А также позволит тебе посмотреть какие-то ещё практики и идеи по поддержке этого подхода и применить их.
Обрати внимание на аыделенное жирным - какого-то кода.
Ты можешь всю игру сделать на ецс, можешь кор геймплей, а можешь и вовсе какие-то фрагменты геймплея. Это никоим обращом не менчет то, что этот кусок кода можно впринципе попытаться классифицировать и это даст результат.
А какие-то понятия существующие в вакууме и твой вердикт гиммик или не гиммик не играет роли
> в готовом не ECS движке архитектура уже не ECS. ECS там это просто гиммик
Ецс это архитектура в которой есть такие сущности: ентити компонент систем.
Если программный код оргагизован в соответствии с этой концепцией, то его логично назвать ецс.
В чем противоречия юнитевского ецс или беви этоц концепции?
> в настоящей ECS архитектуре всё делается через ECS
> в том числе рендеринг объектов. подтянул все рендераблы, отрендерил
> подтянул все физически сущности, отсимулировал столкновения
> и т.д.
Ты сказал? Лол.
А если у меня в игре кор геймплей логика сделана на ецс, логика интерфейса на MVP, контролы интерфейса на юнитевской компонентной системе, рендер и физика вообще проприетарная хуйня с совершенно другим проектированием и использованием статики и синглтонов, то получается у меня игра сделана ни на ооп, ни на ецс, а и то и другое там - гиммик и нещитова?
А на что влияет то что нечто является нещитовым гиммиком? У этого есть негативные стороны помимо того, что ты скажешь, что это гиммик?
То есть если я прочитаю какую-то статаью по ецс с примером реализации какой-то механики - применить я это не смогу потому что у меня "не ецс, а гиммик"?
Или если я прочитаю про вариант организации фабрики для попапов - соответственно тоже не смогу применить потому что у меня и не ооп толком?
Кстати а вот мы сделали например и рендер, и физику, и геймплей, флоу игровой на ецс например. Но чтобы проиграть звук - надо дернуть нативное апи. А в нативном апи там ваще не ецс, а кривой косой набор функций. Значит тоже не ецс уже?
Нет никакой "настоящей ецс архитектуры", да и вообще какой либо ещё, есть набор абстрактных идей и конкретных практик по организации кода.
Если ты какими-то из них пользуешься для реализации какого-то кода, то ты модешь сказать что ты им пользуешься и это другому программисту даст в общих чертах понимание устроцства твоего проекта. А также позволит тебе посмотреть какие-то ещё практики и идеи по поддержке этого подхода и применить их.
Обрати внимание на аыделенное жирным - какого-то кода.
Ты можешь всю игру сделать на ецс, можешь кор геймплей, а можешь и вовсе какие-то фрагменты геймплея. Это никоим обращом не менчет то, что этот кусок кода можно впринципе попытаться классифицировать и это даст результат.
А какие-то понятия существующие в вакууме и твой вердикт гиммик или не гиммик не играет роли
> А если у меня в игре кор геймплей логика сделана на ецс, логика интерфейса на MVP, контролы интерфейса на юнитевской компонентной системе, рендер и физика вообще проприетарная хуйня с совершенно другим проектированием и использованием статики и синглтонов, то получается у меня игра сделана ни на ооп, ни на ецс, а и то и другое там - гиммик и нещитова?
да. твоя игра - ООП с незначительными вкраплениями ECS
хочешь познать настоящий ECS - пиши с нуля игру на ECS, без движков. в процессе 95% твоего ECS кода перейдет в категорию "это на ECS не делается, ECS не для этого"
Хорошо. Так а минусы будут?
Мой основной вопрос был - хорошо, не ецс а гиммик. А на что это влияет?
Дополнительный вопрос(к оригинальному твоему посту) - какие проблемы с производительностью заложены в концепции ецс и как отсутствие ецс помогает их обойти?
Ведь "это на ецс не делается" это как правило не вопрос производителньости, а вопрос архитектуры, фабрики с диаем это не то чтобы более быстроее решение, чем ецс
ни на что не влияет. я же не писал, что екс это плохо. это как настоящая стейт машина: хочется где-то применить, но постоянно хуйня какая-то возникает, и в итоге проще выкинуть и переписать без неё
> какие проблемы с производительностью заложены в концепции ецс и как отсутствие ецс помогает их обойти?
екс это про итерирование по массивам, и чем оно более дробное и изолированное - тем ексней. ты теряешь в производительности из-за постоянного итерирования по близким по смыслу массивам в разных системах. ну или склеивать в одну гигасистему, которая имеет гигантский апдейт метод с кучей проверок внутри. это противоречит философии екс
> ни на что не влияет. я же не писал, что екс это плохо.
Нет, я спрашивал что влияет гиммик или не гиммик. Ты говоришь - в движке там не настоящий ецс, а гиммик. Я и спрашиваю - а на что это влияет?
Вот я говорю например - на ецс можно заебись производителньости достигать, в юнити ецс фреймворк очень производительный.
Ты отвечаешь - там ецс это гиммик и не настоящий ецс. Ну... э... и что? В чем ценность термина гиммик, что он должен обозначать, в чем его смысл?
> это как настоящая стейт машина
Блен, ну я не понимаю просто тебя.
Нету ничего настоящего. Есть просто идеи и практики и всё, и не более.
Игрушечнач стецт машина, или настоящая - эта терминология не имеет смысла. Если какая то часть кода похода на стейт машину - то эта часть кода похоже на стейт машину и скорее всего правильно будет её называть стецт машиной при общении с другими программистами и поиске каких-то решений проблем или полезных практик.
Ты же не будешь искать "как в гиммике игрушечной стейт машине сделать контроллер анимаций персонажа"? Нет конечно.
Поэтому и наличие этого термина - бесполезно. Поэтому я и не понимаю твоего исходного сообщения
Давай вспомним вообще с чего все началось - ты сказал на ецс хуево делать оптимизацию.
Я уточнил что именно
Ты сказал - нуу выборку по данным
Я сказал - да нет, заебись, на ецс можно дод реализовать и выборки будут перыормить также как проход по линейному массиву
Ты ответил - это не настоящий ецс, а гиммик
Эаэаээаээа
Это в чем вообще смысл того что ты пишешь? Я НЕ ПОНИМАЮ
У меня простая позиуия - если что-то выглядит как х, любой фрагмент кода, то оно выглядит как х. Называть этт не намтоящим потому что другой кусок кода в проекте не выглядит так - просто бред
> ты теряешь в производительности из-за постоянного итерирования по близким по смыслу массивам в разных системах. ну или склеивать в одну гигасистему, которая имеет гигантский апдейт метод с кучей проверок внутри.
А ты уверен? То что ты описал - добровольный путь к кеш миссам и невозможность многопотока.
И главный вопрос - ок, отказываемся от ецс, чем твое решение будет производительнее в итерировании? У тебя точно также будет вопрос итерирования по разным сущностям абсолютно такой же, хоть ецс хоть ооп хоть что ты выдумаешь.
> ни на что не влияет. я же не писал, что екс это плохо.
Нет, я спрашивал что влияет гиммик или не гиммик. Ты говоришь - в движке там не настоящий ецс, а гиммик. Я и спрашиваю - а на что это влияет?
Вот я говорю например - на ецс можно заебись производителньости достигать, в юнити ецс фреймворк очень производительный.
Ты отвечаешь - там ецс это гиммик и не настоящий ецс. Ну... э... и что? В чем ценность термина гиммик, что он должен обозначать, в чем его смысл?
> это как настоящая стейт машина
Блен, ну я не понимаю просто тебя.
Нету ничего настоящего. Есть просто идеи и практики и всё, и не более.
Игрушечнач стецт машина, или настоящая - эта терминология не имеет смысла. Если какая то часть кода похода на стейт машину - то эта часть кода похоже на стейт машину и скорее всего правильно будет её называть стецт машиной при общении с другими программистами и поиске каких-то решений проблем или полезных практик.
Ты же не будешь искать "как в гиммике игрушечной стейт машине сделать контроллер анимаций персонажа"? Нет конечно.
Поэтому и наличие этого термина - бесполезно. Поэтому я и не понимаю твоего исходного сообщения
Давай вспомним вообще с чего все началось - ты сказал на ецс хуево делать оптимизацию.
Я уточнил что именно
Ты сказал - нуу выборку по данным
Я сказал - да нет, заебись, на ецс можно дод реализовать и выборки будут перыормить также как проход по линейному массиву
Ты ответил - это не настоящий ецс, а гиммик
Эаэаээаээа
Это в чем вообще смысл того что ты пишешь? Я НЕ ПОНИМАЮ
У меня простая позиуия - если что-то выглядит как х, любой фрагмент кода, то оно выглядит как х. Называть этт не намтоящим потому что другой кусок кода в проекте не выглядит так - просто бред
> ты теряешь в производительности из-за постоянного итерирования по близким по смыслу массивам в разных системах. ну или склеивать в одну гигасистему, которая имеет гигантский апдейт метод с кучей проверок внутри.
А ты уверен? То что ты описал - добровольный путь к кеш миссам и невозможность многопотока.
И главный вопрос - ок, отказываемся от ецс, чем твое решение будет производительнее в итерировании? У тебя точно также будет вопрос итерирования по разным сущностям абсолютно такой же, хоть ецс хоть ооп хоть что ты выдумаешь.
>эта терминология не имеет смысла
настоящая стейт машина - машина, которая возвращает другой стейт, удаляя старый стейт. дискретная стейт машина. но в реальной задаче ты начинаешь серить туда костылями с иерархиями, стеками, глобальными переменными, до тех пор, пока не задашься вопросом - а нахуя мне этот гиммик, если без него будет проще и лучше? это и есть определение гиммиковости
гиммиковый екс - когда ты в ущерб архитектуре организовываешь себе екс песочницу, где играешься в екс, потихоньку вытаскивая оттуда свой бывший ексным код в категорию модулей которые "не подходят для екс". заметь как ты сразу задефолтился про "гуй, рендеринг, скрипты" что не надо это делать на екс. хотя как ты это решил? прочитал как другие так пишут? или сам пробовал? в юнити с прикрученным сбоку екс плагином ты не мог этого сделать. а значит прочитал как другие так говорят, и повторяешь за другими. только вне движка можно сделать полноценный проект на екс. потому что екс это компетенция движка, а не игры
> - а нахуя мне этот гиммик, если без него будет проще и лучше? это и есть определение гиммиковости
Вот, всё, ты дал чёткое определение. С этим можно работать.
> гиммиковый екс - когда ты в ущерб архитектуре организовываешь себе екс песочницу, где играешься в екс
А вот тут ты сильно ошибаешься.
"В ущерб архитектуре" - а где ущерб? А в ущерб ли? А может не в ущерб? Как ты понял, что в ущерб, и что там у меня? А может быть я применяю ецс там где нужно?
> потихоньку вытаскивая оттуда свой бывший ексным код в категорию модулей которые "не подходят для екс".
Это тоже очень странное утверждение.
Мне кажется, надо делать задачу таким способом, который для нее подходит.
Подходит ецс - делай на ецс. Не подходит ецс - делай не на ецс.
Если в процессе выяснилось, что не подходит - ну, можно порефакторить, если время на это есть и оно того стоит.
> заметь как ты сразу задефолтился про "гуй, рендеринг, скрипты" что не надо это делать на екс. хотя как ты это решил?
> прочитал как другие так пишут? или сам пробовал?
Ну, я не ждунище, у меня есть какой-то опыт. Мой опыт мне подсказывает это.
Может у тебя есть хороший вариант реализации гуя на ецс. Мне она не известна и есть проблемы которые мне кажется будут у такого подхода.
> в юнити с прикрученным сбоку екс плагином ты не мог этого сделать.
Лол. Мог. Что угодно можно. А в чем проблема?
Просто обычно берут лучший доступный инструмент под задачу, а не задачу натягивают на инструмент.
Под инструментом я разумеется подразумеваю не либу которую можно подключить, а набор практик и архитектурных решений, которыми можно оперировать для решения задачи.
> а значит прочитал как другие так говорят, и повторяешь за другими.
По поводу этого выше ответил
> только вне движка можно сделать полноценный проект на екс.
У тебя в движке доступен язык программирования, на котором ты можешь написать что угодно.
"Полноценный проект на ецс". А я например делаю не полноценный. И что?
В чём смысл этого утверждения? Какую полезную смысловую нагрузку оно несёт?
> потому что екс это компетенция движка, а не игры
Грань между движком и игрой размыта. Где кончается движок и начинается игра? Тупейший вопрос в обсуждаемом нами вопросе.
Движок закрыт, где начинается проприетарщина - там и кончается игра, да? Так лол, у тебя есть язык программирования, на котором ты можешь написать что угодно.
Это какое-то переливание из пустого в порожнее. Это настоящий ецс, это игрушечный, а это гиммик, а это полноценный ецс.
Да поебать вообще как ты это называешь так то.
Ты мне вот на главный вопрос ответь лучше, мне только жто было интересно
>>9004
> И главный вопрос - ок, отказываемся от ецс, чем твое решение будет производительнее в итерировании? У тебя точно также будет вопрос итерирования по разным сущностям абсолютно такой же, хоть ецс хоть ооп хоть что ты выдумаешь.
>>8995
> какие проблемы с производительностью заложены в концепции ецс и как отсутствие ецс помогает их обойти?
И давай сразу определимся, мы смотрим ограниченную задачу организации игровой логики. Нам совершенно похуй что там с другими частями игры, и настоящий это ецс или инрушечный, вот мы сделали геймплей на ецс и в нем все на ецс. Ты говоришь, ецс накладывает ограничения по оптимизации. Какие и как не-ецс поможет? Ты упомянал итерирования по разным сущностям - я тебе ответил, что на ецс ты можешь сделать так, что будешь итерировать по линейным массивам без каких то проверок. Есть какой то вариант итерации быстрее и он не доступен с ецс, но доступен без ецс?
Ток не надо опять про мегасистему с ифами как пример вырождения ецс ради оптимизации плиз, это не то что несерьезно, это просто пиздец и выстрел себе в хуй с точки зрения оптимизации будет.
> - а нахуя мне этот гиммик, если без него будет проще и лучше? это и есть определение гиммиковости
Вот, всё, ты дал чёткое определение. С этим можно работать.
> гиммиковый екс - когда ты в ущерб архитектуре организовываешь себе екс песочницу, где играешься в екс
А вот тут ты сильно ошибаешься.
"В ущерб архитектуре" - а где ущерб? А в ущерб ли? А может не в ущерб? Как ты понял, что в ущерб, и что там у меня? А может быть я применяю ецс там где нужно?
> потихоньку вытаскивая оттуда свой бывший ексным код в категорию модулей которые "не подходят для екс".
Это тоже очень странное утверждение.
Мне кажется, надо делать задачу таким способом, который для нее подходит.
Подходит ецс - делай на ецс. Не подходит ецс - делай не на ецс.
Если в процессе выяснилось, что не подходит - ну, можно порефакторить, если время на это есть и оно того стоит.
> заметь как ты сразу задефолтился про "гуй, рендеринг, скрипты" что не надо это делать на екс. хотя как ты это решил?
> прочитал как другие так пишут? или сам пробовал?
Ну, я не ждунище, у меня есть какой-то опыт. Мой опыт мне подсказывает это.
Может у тебя есть хороший вариант реализации гуя на ецс. Мне она не известна и есть проблемы которые мне кажется будут у такого подхода.
> в юнити с прикрученным сбоку екс плагином ты не мог этого сделать.
Лол. Мог. Что угодно можно. А в чем проблема?
Просто обычно берут лучший доступный инструмент под задачу, а не задачу натягивают на инструмент.
Под инструментом я разумеется подразумеваю не либу которую можно подключить, а набор практик и архитектурных решений, которыми можно оперировать для решения задачи.
> а значит прочитал как другие так говорят, и повторяешь за другими.
По поводу этого выше ответил
> только вне движка можно сделать полноценный проект на екс.
У тебя в движке доступен язык программирования, на котором ты можешь написать что угодно.
"Полноценный проект на ецс". А я например делаю не полноценный. И что?
В чём смысл этого утверждения? Какую полезную смысловую нагрузку оно несёт?
> потому что екс это компетенция движка, а не игры
Грань между движком и игрой размыта. Где кончается движок и начинается игра? Тупейший вопрос в обсуждаемом нами вопросе.
Движок закрыт, где начинается проприетарщина - там и кончается игра, да? Так лол, у тебя есть язык программирования, на котором ты можешь написать что угодно.
Это какое-то переливание из пустого в порожнее. Это настоящий ецс, это игрушечный, а это гиммик, а это полноценный ецс.
Да поебать вообще как ты это называешь так то.
Ты мне вот на главный вопрос ответь лучше, мне только жто было интересно
>>9004
> И главный вопрос - ок, отказываемся от ецс, чем твое решение будет производительнее в итерировании? У тебя точно также будет вопрос итерирования по разным сущностям абсолютно такой же, хоть ецс хоть ооп хоть что ты выдумаешь.
>>8995
> какие проблемы с производительностью заложены в концепции ецс и как отсутствие ецс помогает их обойти?
И давай сразу определимся, мы смотрим ограниченную задачу организации игровой логики. Нам совершенно похуй что там с другими частями игры, и настоящий это ецс или инрушечный, вот мы сделали геймплей на ецс и в нем все на ецс. Ты говоришь, ецс накладывает ограничения по оптимизации. Какие и как не-ецс поможет? Ты упомянал итерирования по разным сущностям - я тебе ответил, что на ецс ты можешь сделать так, что будешь итерировать по линейным массивам без каких то проверок. Есть какой то вариант итерации быстрее и он не доступен с ецс, но доступен без ецс?
Ток не надо опять про мегасистему с ифами как пример вырождения ецс ради оптимизации плиз, это не то что несерьезно, это просто пиздец и выстрел себе в хуй с точки зрения оптимизации будет.
> чем твое решение будет производительнее в итерировании?
тем что ты не итерируешься и не подготавливаешь себе екс-песочницу чтобы поексииться по ней
>Ток не надо опять про мегасистему с ифами как пример вырождения ецс ради оптимизации плиз
ну что поделать, если не хочешь 50 тысяч раз итерироваться по всему миру, сначала чтобы сделать всем пук, а затем чтобы сделать всем среньк?. и ведь каждый кадр нужно пересобирать эти массивы для ексенья по ним, потому что мир динамический и игрок двигается, загружает-выгружает чанки и т.д.
Причем тут быстрота екс и скорость билда, ты точно связан с программированием хоть как-то?
У bevy 300 либ зависимостей, поэтому первый билд идет долго, потом это все закешируется и при повторный билд будет быстрый.
А екс там и правда летает.
> тем что ты не итерируешься
Цепяюсь к словам, но че это за бред?
То есть твой тезис "не ецс лучше ецс тем что ты там не итерируешься"? А как ты там обрабатываешь свои игровые сущности?
> и не подготавливаешь себе екс-песочницу чтобы поексииться по ней
В чем заключается "подготовка ецс песочницы"?
> ну что поделать, если не хочешь 50 тысяч раз итерироваться по всему миру, сначала чтобы сделать всем пук, а затем чтобы сделать всем среньк?. и ведь каждый кадр нужно пересобирать эти массивы для ексенья по ним
Ну это просто ты не знаешь как можно ецс под капотом устроить.
А я тебе уже выше писал как в дотсе сделано, там не надо делать такого каждый кадр. >>8973
Это в целом довольно очевидный подход, думаю почти везде так и сделано.
> потому что мир динамический и игрок двигается, загружает-выгружает чанки и т.д.
При подгрузке-выгрузке действительно будут структурные изменения. Но неросредственно при добавлении уничтожении ентитей, а не каждый кадр, для этих структурных изменений тоже есть варианты как сделать, чтобы было не слишком дорого. И само собой никакой полной пересборки тут нету.
А без ецс получается можно сделать бесплатную подгрузку и выгрузку? Как?
Кстати
> и ведь каждый кадр нужно пересобирать эти массивы для ексенья по ним
Хоть это и по сути не релевантно ецсу, но... А ты уверен что пересборка каких-то данных каждый кадр будет обязательно того не стоить?
Типа если у тебя много динамичных объектов в игре и надо делать операции связанные с поиском объектов в разных областях, то в начале кадра заполнить структуру данных типа квадтри будет выгодно, например, если таких операций много за кадр. Быстрее, чем этого не делать, и все объекты перкбирать, чтобы нацти ближайший.
Сап аноны. Появилась идея сделать игру. Игра должна быть трёхмерной и при этом нетребовательной к железу, с графикой уровня Crab Game, может чуть лучше. При этом должна быть мультиплеерной. Мультиплеер на аренах, не опенворлд.
Программировать умею, но только на Scheme читал сикп в прошлом и больше ничего
Я так понимаю лучше всего взять юнити?
Либо юнити, либо анрил, пох
>В чем заключается "подготовка ецс песочницы"?
в том что тебе нужны структуры данных по которым ты будешь итерироваться в своем типа ексе. эти структуры нужно обновлять каждый кадр. ООП движок делает свои куллинги и оптимизации, а потом сверху на это еще раз делает вторую работу, чтобы побегать по сущностям ексом. у тебя игра делает две работы. в настоящей екс архитектуре делается одна работа. через екс.
Хз, я не знаю, это троллинг или что
> эти структуры нужно обновлять каждый кадр
Нет, не нужно.
И как это работает я уже описал в посте, который я линканул >>8973 и дополнительные пояснения про структурные изменения тут >>9113 перепечатывать не имеет смысла
Если не понятно что-то в этом объяснении или считаешь где-то там будет лишняя работа - процитируй и обоснуй почему.
> ООП движок делает свои куллинги и оптимизации, а потом сверху на это еще раз делает вторую работу, чтобы побегать по сущностям ексом. у тебя игра делает две работы.
Такой шизобред, пиздец.
У тебя в абсолютно любой игре будет сначала обработка игровой логики, потом рендеринг.
Абсолютно в любой игре у тебя по состоянию на конец игры будет набор каких-то данных, которые должен обработать графический движок и транслировать это в картинку.
Расскажи мне вот что:
В чем различия рендеринга, откуда берется оверхед, в подходе "с прикрученным сбоку ецс" и "тру ецс" или вовсе "не ецс", если в результате обработки игровой логики у тебя формируется одинаковый набор данных для графического движка?
В гиммик ецсе у тебя у тебя в структуре лежат данные описывающие нужную модель и материал и позицию... и в тру ецсе у тебя тоже самое. И не в ецсе у тебя точно также будет модель и материал в какой-то структур лежать.
Каким образом использование не гиммик ецс позволяет тут что то ускорить? Где будет повторная работа?
>процитируй и обоснуй почему
там ответ в стиле "где брать деньги? у мамки в кошельке!". ты на уровне юзера не понимаешь, что эти массивы нужно обновлять каждый кадр и при изменениях мира во время кадра
две работы происходят когда ты дважды обрабатываешь объекты, сначала в обычной парадигме, затем в екс. в настоящем екс ты всё делаешь через екс
> там ответ в стиле "где брать деньги? у мамки в кошельке!". ты на уровне юзера не понимаешь, что эти массивы нужно обновлять каждый кадр
> во время кадра
ЗАЧЕЕЕЕМ
У меня есть массив entityData[] в нем лежат данные ентити.
Что мне с ним надо делать каждый кадр и зачем? Нахуя?
Если говорить о более практичном примере, то будет несколько массивов под каждыы архетип и если говоорить про юнити там внутри еще будет разметка по чанкам, но глобально ничего не меняется - массивы точно также не требуют никаких изменений из кадра в кадр.
> и при изменениях мира
Структурные изменения я упомянал. Никакой полной пересборки массивов там нихуя не будет.
И вопрос очень интересный на эту тему я уже поднимал выше - а без ецс у тебя если новые какие то хрени появились или исчезли в игре в реалтайме - у тебя твои любые структуры данных бесплатно обновятся?
> две работы происходят когда ты дважды обрабатываешь объекты, сначала в обычной парадигме, затем в екс
Давай конкретику. Что значит "обрабатываются"?
Настоящий ецс и гиммик ецс делают условно абсолютно идентичные вещи:
цикл по ентитям1
ентити.ДуЛогик1() - модификация данных в структуре
цикл по ентитям2
ентити.ДуЛогик2() - модификация данных в структуре
цикл по ентитям
ентити.Дроу() - генерация дроу коллов по данным в структуре или иная обработка перед отрисовкой(пометки надо ли рендерить и т.п.)
Покажи мне где тут будет "обработка в обычной парадигме" для гиммик ецс по сравнению с тру ецс?
Также давай рассмотрим и не ецс подход
- вот для примера выше - у нас есть две каких то совершенно разных сущности в игре и и те и те надо нарисовать.
Какой мы можем сделать более эффективный вариант для этого чем "прочитать данные в структуре, поменять данные в структуре связанные с графикой и сгенерить дроу коллы"?
Просто судя по твоему примеру с мегасистемой, мне кажется, что у тебя есть огромное заблуждение ты считаешь что это заебись насрать ифами лишь бы лишней итерации по циклу не было, хотя на деле это руинит предикт процессора и с таким подходом тебе недоступна многопоточность - как минимум дроу коллы надо генерить когда все уже подготовлено и это можно распараллелить, а с таким подходом ты убиваешь эту возможность.
Я уж молчу про то, что ты можешь ну если уж так хочешь например взять юнити с гиммик ецс даже не дотс... и сделать там чтобы был один проход по массиву и в нем сразу все обрабатывалось как тебе нужно, сначала логика потом рендер. И абсолбтно ни в одном варианте не будет никаких лишних прослоек.
Концепции ецс это не противоречит и технически без проблем реализуемо.
> там ответ в стиле "где брать деньги? у мамки в кошельке!". ты на уровне юзера не понимаешь, что эти массивы нужно обновлять каждый кадр
> во время кадра
ЗАЧЕЕЕЕМ
У меня есть массив entityData[] в нем лежат данные ентити.
Что мне с ним надо делать каждый кадр и зачем? Нахуя?
Если говорить о более практичном примере, то будет несколько массивов под каждыы архетип и если говоорить про юнити там внутри еще будет разметка по чанкам, но глобально ничего не меняется - массивы точно также не требуют никаких изменений из кадра в кадр.
> и при изменениях мира
Структурные изменения я упомянал. Никакой полной пересборки массивов там нихуя не будет.
И вопрос очень интересный на эту тему я уже поднимал выше - а без ецс у тебя если новые какие то хрени появились или исчезли в игре в реалтайме - у тебя твои любые структуры данных бесплатно обновятся?
> две работы происходят когда ты дважды обрабатываешь объекты, сначала в обычной парадигме, затем в екс
Давай конкретику. Что значит "обрабатываются"?
Настоящий ецс и гиммик ецс делают условно абсолютно идентичные вещи:
цикл по ентитям1
ентити.ДуЛогик1() - модификация данных в структуре
цикл по ентитям2
ентити.ДуЛогик2() - модификация данных в структуре
цикл по ентитям
ентити.Дроу() - генерация дроу коллов по данным в структуре или иная обработка перед отрисовкой(пометки надо ли рендерить и т.п.)
Покажи мне где тут будет "обработка в обычной парадигме" для гиммик ецс по сравнению с тру ецс?
Также давай рассмотрим и не ецс подход
- вот для примера выше - у нас есть две каких то совершенно разных сущности в игре и и те и те надо нарисовать.
Какой мы можем сделать более эффективный вариант для этого чем "прочитать данные в структуре, поменять данные в структуре связанные с графикой и сгенерить дроу коллы"?
Просто судя по твоему примеру с мегасистемой, мне кажется, что у тебя есть огромное заблуждение ты считаешь что это заебись насрать ифами лишь бы лишней итерации по циклу не было, хотя на деле это руинит предикт процессора и с таким подходом тебе недоступна многопоточность - как минимум дроу коллы надо генерить когда все уже подготовлено и это можно распараллелить, а с таким подходом ты убиваешь эту возможность.
Я уж молчу про то, что ты можешь ну если уж так хочешь например взять юнити с гиммик ецс даже не дотс... и сделать там чтобы был один проход по массиву и в нем сразу все обрабатывалось как тебе нужно, сначала логика потом рендер. И абсолбтно ни в одном варианте не будет никаких лишних прослоек.
Концепции ецс это не противоречит и технически без проблем реализуемо.
затем, что это нормально. враги убиваются, пули исчезают, игрок двигает камеру. и все массивы тебе нужно еще раз пересчитать, сделав двойную работу
> затем, что это нормально. враги убиваются, пули исчезают
При любом подходе это требует модификации существующих структур данных
> игрок двигает камеру
Абсолютно никоим образом не влияет на структурные изменения на стороне ецс и любой другой организации твоей геймплейной логики. Все что можно закэшировать для рендеринга остается закешировано на том же самом месте
> и все массивы тебе нужно еще раз пересчитать, сделав двойную работу
Что значит "пересчитать массив"?
мне не нужны массивы архетипов и прочие кэши для екс, которые призваны сделать итерирование в екс дешевле. если я не применяю екс, мне не нужно это всё пересчитывать каждый кадр и пересобирать екс мир каждый раз когда я сдвинул камеру или заспавнил врага
> мне не нужны массивы архетипов
А, хорошо, не вопрос.
А что тебе нужно?
Где у тебя твои игровые сущности хранятся и в каком виде?
> и прочие кэши для екс
Кэши в сообщение выше были упомянуты как закэшированные данные для ренлера. Иных упомянаний не было.
У тебя есть кусок говна с физикой, он может перемещаться если его пнуть.
Для оклюжен кулинга у тебя есть возможность сохранить то в каком чанке он лежит и пересчитывать это только при изменении позиции, чтобы не делать это кпждый раз.
С ецс ты при изменении его позиции пометишь что ему надо пересчитать чанк.
Без ецс ты при изменении его позиции пометишь, что ему надо пересчитать чанк.
Что мне надо дополнительно "кэшировать" для ецс, что не надо без ецс?
> если я не применяю екс, мне не нужно это всё пересчитывать каждый кадр
> и пересобирать екс мир каждый раз когда я сдвинул камеру или заспавнил врага
В сообщении выше уже было упомянуто, что структурные изменения происходят только при наличии спавна/удаления ентити в ецс, и точно такие же изменения тебя ожидают без ецс.
Также выше было упомянуто, что каждый кадр нет никаких обязательных действий связанных с модификацией структур данных и было предложено тебе привести пример если есть, а те что ты тут обозначил уже были разобраны в том посте)
>С ецс ты при изменении его позиции пометишь что ему надо пересчитать чанк.
>Без ецс ты при изменении его позиции пометишь, что ему надо пересчитать чанк.
а с гиммик екс придется сделать и то и другое
Нет, зачем?
Ты в гиммик ецс сделал пометку и сохранил координаты чанка, эти данные напрямую будут использовать при рендеринге.
Зачем еще раз это делать?
затем что в екс мире еще раз закэшировано то, что закэшировано в ооп мире. то есть при удалении объекта в мире сначала почистить тут, затем почистить кэши в екс мире, всё пересчитать. 2 раза делается работа
Что ещё за ооп мир?
У нам просто массив структур, больше нихуя нет.
Вот просто нах натурально пишешь коде у себя(либо эквивалент скодогенерирован за тебя в готовом фреймворке)
entityData1[] - ентити с компонентом позиция, урон, пуля, моделька, графика
entityData2[] - ентити с компонентами позиция, моделька, хп, датаврага, графика
Никаких нахуй оопов нет и в помине, просто эти 2 массива и больше ничего.
вот настоящий екс это и есть то что "скодогенерировано за тебя" разрабом твоего плагина, а то что ты с точки зрения юзера не видишь что работа делается 2 раза - это специфика работы с плагином в не екс движке типа юнити
Окей.
Я беру юнити.
Я руками пишу буквы в коде:
entityData1[]
entityData2[]
Делаю цикл по 1, делаю в нем
позиция += пуля.скорость х дт
рендерДата.маркДирти = тру
Делаю цикл по 2, делаю в нем
иф (енеми.долженПойти)
{
позиция += пиздуй
рендерДата.маркДирти = тру
}
Делаю цикл по 1 и потом по 2 и делаю
иф (рендерДата.маркДирти)
{
рендерДата.чанк = считаю чанк
рендерДата.маркДирти = фолм
}
дроуМеш(рендерДата, меш) - который напрямую вызыввет графическое апи дайрект хэ
Зачем мне какой-то ооп мир тут нужен?
Какую он роль выполняет?
В какой момент будет задействован? Я же букыально делаю прямые вызовы методов.
Ты думаешь я должен заспавнить юнити геймобжект с компонентом меш чтобы модельку отрисовать?) Нет, я могу напрямую графиечское апи юзать, ну почти напрямую, в юнити довольно низкоуровневая обертка.
> скодогенерировано за тебя
Кодогенерацией обычно обозначают автоматическую генерацию инфраструктурного бойлерплейт кода в конкретном проекте, а не "то что ращрабом сгенеиировано за тебя"(не уверен, что это вооьще значит? что разраб скодогенерировал)
Ну типа чтобы я руками не писал одно и тоже, оно само напишется. Для депенденси инжекшен еще юзают кодогенерацию например.
Окей.
Я беру юнити.
Я руками пишу буквы в коде:
entityData1[]
entityData2[]
Делаю цикл по 1, делаю в нем
позиция += пуля.скорость х дт
рендерДата.маркДирти = тру
Делаю цикл по 2, делаю в нем
иф (енеми.долженПойти)
{
позиция += пиздуй
рендерДата.маркДирти = тру
}
Делаю цикл по 1 и потом по 2 и делаю
иф (рендерДата.маркДирти)
{
рендерДата.чанк = считаю чанк
рендерДата.маркДирти = фолм
}
дроуМеш(рендерДата, меш) - который напрямую вызыввет графическое апи дайрект хэ
Зачем мне какой-то ооп мир тут нужен?
Какую он роль выполняет?
В какой момент будет задействован? Я же букыально делаю прямые вызовы методов.
Ты думаешь я должен заспавнить юнити геймобжект с компонентом меш чтобы модельку отрисовать?) Нет, я могу напрямую графиечское апи юзать, ну почти напрямую, в юнити довольно низкоуровневая обертка.
> скодогенерировано за тебя
Кодогенерацией обычно обозначают автоматическую генерацию инфраструктурного бойлерплейт кода в конкретном проекте, а не "то что ращрабом сгенеиировано за тебя"(не уверен, что это вооьще значит? что разраб скодогенерировал)
Ну типа чтобы я руками не писал одно и тоже, оно само напишется. Для депенденси инжекшен еще юзают кодогенерацию например.
я не в курсе реализации твоего плагина. я исхожу из твоих же постулатов, что у тебя всё что не для екс вынесено за пределы екс. например, ожидаемо что управление подгрузкой уровней, рендеринг и физон делается движком. а то что ты пишешь это детские примеры екс из статьи "что такое екс".
хотя я даже не понимаю, зачем ты делаешь цикл по пустому массиву и что-то там исполняешь. ты создал пустой массив и итерируешься по пустому массиву? как это у тебя работает?
> я не в курсе реализации твоего плагина
Это не реализацию плагина, это псевдокод который буду запускать на псевдокомпьютере
> я исхожу из твоих же постулатов, что у тебя всё что не для екс вынесено за пределы екс
Предположим?
> например, ожидаемо что управление подгрузкой уровней
читать файл
подождать чтение файла
ентитиес1 = копировать(файл.данныеентитиес1)
> рендеринг
Дроумеш(меш, позиция)
> и физон делается движко
ентити.позишен = ассошиейтедРигидБади.позишен
Кстати знаешь есть еще всякие разные физические движки вроде хавок, бокс2д, физИкс? Они используются в юнити и во многих других движках, даже если игру с нуля пишут часто берут какой-то из них.
Каким образом их дружат с геймплейной логикой, как считаешь? Как думаешь, чем будет отличаться вариант подружить их с ецс или любым другим вариантом организации геймплея?
Или если мы например в компьют шейдере считаем фищику - как данные оттуда назад в в игру получить и как их туда запихать?
Да ничем нахуй, все что тебе надо сделать это проассоциировать айдишник объекта в этой физической ебале с твоим куском говна и копировать в кусок говна позицию проассоциированного с ним физического тела. Всё, вот весь оверхед.
А так, я даже свой физон писал в юнити. Я это уже несколько раз повторял - тебе доступен язык программирования. Ты можешь сделать им что угодно абсолютно.
> а то что ты пишешь это детские примеры екс из статьи "что такое екс".
Это минимизированный пример для демонстрации оверхеда при взаимодействии ецс-кора с разными системами.
Я же уже писал более общими словами, но ты отказывался что либо читать и понимать.
Я просто хз как тебе еще сказать, что если мы используем движок, то мы не обязаны все реализовывать только его средствами, что в том же юнити есть низкоуровневое апи для всего.
Более того, ты можешь даже юзать внешние системы без проблем как я приводил пример с физическими движками, можешь даже юзать юнити геймобжекты - это тоже рабочая практика, и делается это также как и интеграция физики куда угодно - проассоциировать твою какую то хуйню с сущеостью из другой какой то системы
Условно у тебя будет
struct BulletComponent
{
BulletView - геймобжект в юнити
Position
Speed
}
И оверхед тут тоже около нулевой так как это принципиально разные независимые сущности кроме одного момент - в BulletView надо скопировать позицию из BulletComponent.
Всё.
Никакое нахуй движение камерой никак не повлияет на буллетКомпонент.
Никакой окклюжен куллинг не будет влиять ни на что кроме БуллетВью.
Никакие массимвы не надо никак не пересчитывать ни кэшировать каждый кадр. Кор геймплей управляет всем, а не наоборот.
Отдельно хочу отметить гуи - абсолютно поебать свой ты движок пишешь, не свой, подружить ооп гуй с ецс кором это примитивнейшая задача с нулевым оверхедом для геймплейной части, тебе надо просто писать данные из геймплея в такю область памяти, откуда их сможет прочитать гуй. Всё.
>>9208
> хотя я даже не понимаю, зачем ты делаешь цикл по пустому массиву и что-то там исполняешь. ты создал пустой массив и итерируешься по пустому массиву? как это у тебя работает?
Хорошо! Дополню пример
entityData1[] entities1 = new entityData1[100];
for(int i = 0; i < 100; i++)
{
entities1 = new EnemyEntity(randomPos);
}
Пули заполнять не будем. Или надо, или ты скажешь "ну а попробуй пулю заспавнить или уничтожить надо перещитать все)))"?
Тогда я повторяю ставший уже вечным вопрос - а без ецс ты как пулю заспавнишь?
> я не в курсе реализации твоего плагина
Это не реализацию плагина, это псевдокод который буду запускать на псевдокомпьютере
> я исхожу из твоих же постулатов, что у тебя всё что не для екс вынесено за пределы екс
Предположим?
> например, ожидаемо что управление подгрузкой уровней
читать файл
подождать чтение файла
ентитиес1 = копировать(файл.данныеентитиес1)
> рендеринг
Дроумеш(меш, позиция)
> и физон делается движко
ентити.позишен = ассошиейтедРигидБади.позишен
Кстати знаешь есть еще всякие разные физические движки вроде хавок, бокс2д, физИкс? Они используются в юнити и во многих других движках, даже если игру с нуля пишут часто берут какой-то из них.
Каким образом их дружат с геймплейной логикой, как считаешь? Как думаешь, чем будет отличаться вариант подружить их с ецс или любым другим вариантом организации геймплея?
Или если мы например в компьют шейдере считаем фищику - как данные оттуда назад в в игру получить и как их туда запихать?
Да ничем нахуй, все что тебе надо сделать это проассоциировать айдишник объекта в этой физической ебале с твоим куском говна и копировать в кусок говна позицию проассоциированного с ним физического тела. Всё, вот весь оверхед.
А так, я даже свой физон писал в юнити. Я это уже несколько раз повторял - тебе доступен язык программирования. Ты можешь сделать им что угодно абсолютно.
> а то что ты пишешь это детские примеры екс из статьи "что такое екс".
Это минимизированный пример для демонстрации оверхеда при взаимодействии ецс-кора с разными системами.
Я же уже писал более общими словами, но ты отказывался что либо читать и понимать.
Я просто хз как тебе еще сказать, что если мы используем движок, то мы не обязаны все реализовывать только его средствами, что в том же юнити есть низкоуровневое апи для всего.
Более того, ты можешь даже юзать внешние системы без проблем как я приводил пример с физическими движками, можешь даже юзать юнити геймобжекты - это тоже рабочая практика, и делается это также как и интеграция физики куда угодно - проассоциировать твою какую то хуйню с сущеостью из другой какой то системы
Условно у тебя будет
struct BulletComponent
{
BulletView - геймобжект в юнити
Position
Speed
}
И оверхед тут тоже около нулевой так как это принципиально разные независимые сущности кроме одного момент - в BulletView надо скопировать позицию из BulletComponent.
Всё.
Никакое нахуй движение камерой никак не повлияет на буллетКомпонент.
Никакой окклюжен куллинг не будет влиять ни на что кроме БуллетВью.
Никакие массимвы не надо никак не пересчитывать ни кэшировать каждый кадр. Кор геймплей управляет всем, а не наоборот.
Отдельно хочу отметить гуи - абсолютно поебать свой ты движок пишешь, не свой, подружить ооп гуй с ецс кором это примитивнейшая задача с нулевым оверхедом для геймплейной части, тебе надо просто писать данные из геймплея в такю область памяти, откуда их сможет прочитать гуй. Всё.
>>9208
> хотя я даже не понимаю, зачем ты делаешь цикл по пустому массиву и что-то там исполняешь. ты создал пустой массив и итерируешься по пустому массиву? как это у тебя работает?
Хорошо! Дополню пример
entityData1[] entities1 = new entityData1[100];
for(int i = 0; i < 100; i++)
{
entities1 = new EnemyEntity(randomPos);
}
Пули заполнять не будем. Или надо, или ты скажешь "ну а попробуй пулю заспавнить или уничтожить надо перещитать все)))"?
Тогда я повторяю ставший уже вечным вопрос - а без ецс ты как пулю заспавнишь?
>Никакое нахуй движение камерой никак не повлияет на буллетКомпонент.
то есть ты всегда рендеришь все объекты в игре?
> то есть ты всегда рендеришь все объекты в игре?
Нет, с чего ты взял? Ты видишь в буллетКомпоненте какие либо данные связанные с рендерингом или оклюжен кулингом?
Я не вижу, я вижу только позицию и скорость.
Булет вью это ебаный адрес какой-то там хуйни в движке, геймобжект заспавненный в роп мире игры.
Каждый кадр надо к позиции прибавить скорсоть и сделать булетВью->позишен = позишен. Всё, больше ничего.
Не вадно вижу я булетВью, не вижу - это никакой роли на буллетКомпонент не оказывает. Рендеринг работает только на булетВью, и он да, будет участвовать в оклюжен кулинге, там заданы материал и меш, там даже есть какие то данные для рендеринга типа тот же маркДирти который мы выше упомянли. Точно также как без ецс он бы это делал.
>>9213
> ты каждый кадр перегенериваешь массив?
Нет, это на старте игры происходит.
А дальше по ходу игры в апдейте делаю циклы которые выше приводил
ECS в принципе не приспособленная к оптимизации архитектура, тормознутая и поэтому в принципе не пригодная для разработки игр. Она хороша только в тупых демках типа миллион спрайтов в одну сторону двигать.
> ты каждый кадр перегенериваешь массив?
>>9215
> > ты каждый кадр перегенериваешь массив?
> Нет, это на старте игры происходит.
Чтобы было проще
entityData1[] entities1 = new entityData1[100];
СтартИгры()
{
for(int i = 0; i < 100; i++)
{
entities1 = new EnemyEntity(randomPos);
}
}
Апдейт()
{
Делаю цикл по 1, делаю в нем
позиция += пуля.скорость х дт
рендерДата.маркДирти = тру
Делаю цикл по 2, делаю в нем
иф (енеми.долженПойти)
{
позиция += пиздуй
рендерДата.маркДирти = тру
}
Делаю цикл по 1 и потом по 2 и делаю
иф (рендерДата.маркДирти)
{
рендерДата.чанк = считаю чанк
рендерДата.маркДирти = фолм
}
дроуМеш(рендерДата, меш) - который напрямую вызыввет графическое апи дайрект хэ
}
> ты каждый кадр перегенериваешь массив?
>>9215
> > ты каждый кадр перегенериваешь массив?
> Нет, это на старте игры происходит.
Чтобы было проще
entityData1[] entities1 = new entityData1[100];
СтартИгры()
{
for(int i = 0; i < 100; i++)
{
entities1 = new EnemyEntity(randomPos);
}
}
Апдейт()
{
Делаю цикл по 1, делаю в нем
позиция += пуля.скорость х дт
рендерДата.маркДирти = тру
Делаю цикл по 2, делаю в нем
иф (енеми.долженПойти)
{
позиция += пиздуй
рендерДата.маркДирти = тру
}
Делаю цикл по 1 и потом по 2 и делаю
иф (рендерДата.маркДирти)
{
рендерДата.чанк = считаю чанк
рендерДата.маркДирти = фолм
}
дроуМеш(рендерДата, меш) - который напрямую вызыввет графическое апи дайрект хэ
}
Хорошо.
Мы просто в 100 ебал делаем игру на ецс и выжимаем нереальный перформанс, учтем твое мнение в следующий раз.
>Нет, с чего ты взял? Ты видишь в буллетКомпоненте какие либо данные связанные с рендерингом или оклюжен кулингом?
то есть у тебя существует буллет компонент несуществующей уже пули? нихуевые у тебя утечки памяти должно быть
>Нет, это на старте игры происходит.
то есть дальше у тебя вся игра статична, ни новых врагов, ни новых пуль, никакого куллинга объектов?
> то есть у тебя существует буллет компонент несуществующей уже пули? нихуевые у тебя утечки памяти должно быть
А хоче лайфтацм обсудить. Хорошо.
Только вопрос сразу некорректный
> то есть у тебя существует буллет компонент несуществующей уже пули?
Еще раз - кор контролирует все. Мы создвли ентити пули в коре - тогда создали буллетВью. Уничтожили - тогда уничтожил и буллетВью.
Если пулю не видно - не значит что она должна перестать "существовать" лол, просто она скипается при рендеринге.
У тебя за кадром пули не летают?
Наверное летают, просто не рендерятся.
> то есть дальше у тебя вся игра статична, ни новых врагов, ни новых пуль, никакого куллинга объектов?
Децйствительео, происходит такое.
А без ецс ты бы как эту задачу решил?
Вот надо заспавнить пулю, а у нас не ецс. Что мы делаем? Или уничтожить.
Может я смогу этот способ в своеф игре на ецс применить?...)))))))
>кор контролирует все
только что было 2 пустых массива, теперь уже появился некий волшебный контролирующий всё кор. а что такое кор? как он всё контролирует?
Хорошо, показывай игру. Будем мерить производительность.
> только что было 2 пустых массива, теперь уже появился некий волшебный контролирующий всё кор. а что такое кор? как он всё контролирует?
А, тут небольшое недопонимание, сейчас все объясняю.
Кор - это наш ецс. То есть весь код что писал тут >>9217 это кор
Когда мы делаем вот это
> СтартИгры()
> {
> for(int i = 0; i < 100; i++)
> {
> entities1 = new EnemyEntity(randomPos);
> }
> }
Там внутри new EnemyEntity(randomPos) вот что происходит:
EnemyEntity(pos)
{
Position = pos;
Hp = 100;
EnemyView = Unity.ZapiliGameObjectVraga();
}
Когда мы убьем врага и удалим его из нашего массива мы сделаем
Unity.Destroy(entity.EnemyView);
> А еще ECS невменяемо отлаживать
Да, бывает не просто. Но не невозможно.
> на ECS невозможно написать нормальный гуй
Ну я б тоже не писал. А зачем, если можно на ООП заебись сделать?
> (поэтому ECS-шизики пишут эмуляцию отношений parent-child, лол)
Пишут, но не для гуя.
> и невозможно сделать сетевую игру с rollback.
Ты что?... ты... ку ку?
Ецс для этого и предназначен можно сказать. Это та задача, которую ебанешься делать без ецса
Это задача которая делается элементарно на оопе и через жопу на ецс.
Стреляем в игрока, он умирает, объект игрока деспавнится, пуля деспавнится, надо сделать откат, спавним пулю там где деспавнилась, игрока там где деспавнился, изи.
Что у нас в ецс? А, просто фарш разных компонентов. Как узнать что этот трансформ и этот меш относился к одному и их надо вернуть? Снова написав эмуляцию оопа, лол.
но в твоем коре нет менеджмента массивов для екс, и ты просто из тумбочки берешь уже подготовленный екс мир и делаешь пук() и среньк() лайк э босс
ты никогда не удалял ничего и никуда, всегда рендеришь все объекты в игре (ну или скипаешь, но всё равно продолжаешь итерироваться по ним), а когда пуля улетает у тебя в массивах остаются буллет компоненты которые никуда не деваются
> но в твоем коре нет менеджмента массивов для екс, и ты просто из тумбочки берешь уже подготовленный екс мир и делаешь пук() и среньк() лайк э босс
Цитирую то что я уже писал:
- Когда мы убьем врага и удалим его из нашего массива мы сделаем
Unity.Destroy(entity.EnemyView);
- А без ецс ты бы как эту задачу решил?
Вот надо заспавнить пулю, а у нас не ецс. Что мы делаем? Или уничтожить.
> всегда рендеришь все объекты в игре (ну или скипаешь, но всё равно продолжаешь итерироваться по ним)
БЛЯЯЯЯТЬ НУ ХВАТИТ
Я просто уже хуй знает сколько раз одно и то же повторяю, ты прост игноришь и через 1 пост спрашиваешь
- У тебя за кадром пули не летают? Наверное летают, просто не рендерятся.
> а когда пуля улетает у тебя в массивах остаются буллет компоненты которые никуда не деваются
Когда пуля будет уничтожена с точки зрения геймдизайна - тогда она будет удалена. Если пуля за кадром - с точки зрения геймдизайна она жива.
Когда врежется - тогда удалим.
Обсудим удаление объектов в целом? Напиши, как удаляешь без ецс объекты. Всё ещё жду.
>Когда врежется - тогда удалим.
то есть дропаем кэши и считаем заново. но ты вроде говорил, что этого не происходит? как так?
> там где деспавнилась, игрока там где деспавнился, изи.
Как мы понимаем где они задеспавнились? И кто именно? Что надо заспавнить по новой?
Как думаешь, что мешает сделать тоже самое на ецс?
> Что у нас в ецс? А, просто фарш разных компонентов. Как узнать что этот трансформ и этот меш относился к одному и их надо вернуть? Снова написав эмуляцию оопа, лол.
Бляяяяяяя
Связь сущностей - это простейшая задача. С ецс тебе ничто не мешает хранить те же данные, что ты и на ооп хуеп хранишь, только с этим в разы проще работать
> то есть дропаем кэши и считаем заново.
Какие кэши? У нас 2 массива.
> но ты вроде говорил, что этого не происходит? как так?
У нас кэшец никаких нет, поэтому ничего не чистим. Удаляем напрямую из массива.
Блин, наверное не самый удачный вариант да? А не подскажешь, как ты без ецс это делаешь? Наверное есть какие-то еще варианты простые это делать?
Это не вопрос о реализации или симуляции ооп.
Это вопрос о том "какая информация нужна чтобы понять что мы должны зареспавнить по новой"
Ну так а ты расскажи, как ты на ооп делаешь.
Или не на ооп, а как то ещё. Наверное там есть какие то такие структры данных, чтобы операции удаления и создания были дешевле, да?)
дропаю кэши, что поделать. ооп же не екс, где кэши не дропаются и всего лишь происходит удаление из массива
В ооп я могу даже не деспавнить объект а поместить указатель на него в пул недавно удаленных, и скажем поставить булевый флажок внутри объекта что его сейчас не надо обрабатывать. При респавне просто добавить снова в массив обрабатываемых объектов и флажочек очистить.
Как примерно ты себе это на ецс представляешь? Для начала тебе нужно удалить каждый компонент объекта из каждого массива компонентов. Что может приводить к перестроению этих массивов. Или ты собираешься каждому компоненту заводить флажок или айдишник, чтобы разъебать этим кэш? Ну собственно как я и говорил ецс дрисня для геймдева не годится.
> В ооп я могу даже не деспавнить объект а поместить указатель на него в пул недавно удаленных, и скажем поставить булевый флажок внутри объекта что его сейчас не надо обрабатывать. При респавне просто добавить снова в массив обрабатываемых объектов и флажочек очистить.
О! Да!?
Нихуя себе!
Блин а что если... а что если мы в ецс тоже флажок сделаем?...
> Как примерно ты себе это на ецс представляешь? Для начала тебе нужно удалить каждый компонент объекта из каждого массива компонентов.
Я сейчас пил воду, и я поперхнулся. Ты ебанутый такое писать?
Я думал мы друг друга понимаем, а ты не понял даже ничего.
Помнишь мы про 2 массива говорили?
В одном враги были, в другом пули?
А ты не задумался, почему у нас компонентов много разных, а массива всего 2?
Смотри, простой фокус.
Давай посмотрим на первый массив, что там лежит внутри по порядку:
[позиция][пуля][меш][флажок][позиция][пуля][меш][флажок]
Дошло?
> Что может приводить к перестроению этих массивов. Или ты собираешься каждому компоненту заводить флажок или айдишник, чтобы разъебать этим кэш? Ну собственно как я и говорил ецс дрисня для геймдева не годится.
>>9244
> дропаю кэши, что поделать. ооп же не екс, где кэши не дропаются и всего лишь происходит удаление из массива
Так давай, я жду с самого начала этой хуйни пример. Как ты хранишь какие то объекты, как их создаешь, как удаляешь?
Потому что у тебя там либо реально ооп и все ебало в указателях, соответственно данные хранятся не линейно в памяти, и мы после этого сразу дружно с тобой ебашим бошками об стену с разбегу, а потом ебашим молотком по процессору за то что этот пидорас простаивает со своим бесполезным кешем и дохлым контроллером памяти который не вывозит такие фокусы.
Либо у тебя не ооп а какое умное решение с дата дривен дизайном и структуры данных ускоряющие эти операции. Я кстати неиронично думал что у тебя там этот вариант, но когда ты заговорил про ооп начал подозревать, что что-то тут не чисто.
> В ооп я могу даже не деспавнить объект а поместить указатель на него в пул недавно удаленных, и скажем поставить булевый флажок внутри объекта что его сейчас не надо обрабатывать. При респавне просто добавить снова в массив обрабатываемых объектов и флажочек очистить.
О! Да!?
Нихуя себе!
Блин а что если... а что если мы в ецс тоже флажок сделаем?...
> Как примерно ты себе это на ецс представляешь? Для начала тебе нужно удалить каждый компонент объекта из каждого массива компонентов.
Я сейчас пил воду, и я поперхнулся. Ты ебанутый такое писать?
Я думал мы друг друга понимаем, а ты не понял даже ничего.
Помнишь мы про 2 массива говорили?
В одном враги были, в другом пули?
А ты не задумался, почему у нас компонентов много разных, а массива всего 2?
Смотри, простой фокус.
Давай посмотрим на первый массив, что там лежит внутри по порядку:
[позиция][пуля][меш][флажок][позиция][пуля][меш][флажок]
Дошло?
> Что может приводить к перестроению этих массивов. Или ты собираешься каждому компоненту заводить флажок или айдишник, чтобы разъебать этим кэш? Ну собственно как я и говорил ецс дрисня для геймдева не годится.
>>9244
> дропаю кэши, что поделать. ооп же не екс, где кэши не дропаются и всего лишь происходит удаление из массива
Так давай, я жду с самого начала этой хуйни пример. Как ты хранишь какие то объекты, как их создаешь, как удаляешь?
Потому что у тебя там либо реально ооп и все ебало в указателях, соответственно данные хранятся не линейно в памяти, и мы после этого сразу дружно с тобой ебашим бошками об стену с разбегу, а потом ебашим молотком по процессору за то что этот пидорас простаивает со своим бесполезным кешем и дохлым контроллером памяти который не вывозит такие фокусы.
Либо у тебя не ооп а какое умное решение с дата дривен дизайном и структуры данных ускоряющие эти операции. Я кстати неиронично думал что у тебя там этот вариант, но когда ты заговорил про ооп начал подозревать, что что-то тут не чисто.
Что?
Это ецс!
Есть ентити, есть компоненты, есть системы.
У нас в нашем с тобой примере даже 3 системы получалось, одна пули двигает, другая врагов, третья рендерит.
Можно даже сделать такую умную систему.
Смотри
Я пишу
foreach(var pos in Ref<Position>())
{
}
И цикл будет по 2 массивам по очереди. Т.е. по всем массивам у которых есть позишен. Автоматически.
Или пишу
foreach(var pos in Ref<Bullet>())
{
}
И цикл будет только по массиву пуль. Потому что только там такоц компонент есть.
Видишь, я даже так и быть сделал тебе апи для выборки компонентов по типам.
> массив с ооп объектами
Это что блять нахуй такое. Как можно ооп объект запихнуть в массив? Разве там не должен быть массив ссылок на ооп объекты?
Повторим: ецс - это архитектура. А не технические нюансы.
Что?
Это ецс!
Есть ентити, есть компоненты, есть системы.
У нас в нашем с тобой примере даже 3 системы получалось, одна пули двигает, другая врагов, третья рендерит.
Можно даже сделать такую умную систему.
Смотри
Я пишу
foreach(var pos in Ref<Position>())
{
}
И цикл будет по 2 массивам по очереди. Т.е. по всем массивам у которых есть позишен. Автоматически.
Или пишу
foreach(var pos in Ref<Bullet>())
{
}
И цикл будет только по массиву пуль. Потому что только там такоц компонент есть.
Видишь, я даже так и быть сделал тебе апи для выборки компонентов по типам.
> массив с ооп объектами
Это что блять нахуй такое. Как можно ооп объект запихнуть в массив? Разве там не должен быть массив ссылок на ооп объекты?
Повторим: ецс - это архитектура. А не технические нюансы.
У тебя какая то хуерга которая хуже и ецс, и оопа.
Без технической составляющей нет смысла обсуждать перформанс, поскольку именно оттуда он и берется.
То что ты описывашь называется просто Structure of Arrays
https://en.wikipedia.org/wiki/AoS_and_SoA
В c++ это можно сделать бесплатно продолжая пользоваться мощью ооп https://github.com/crosetto/SoAvsAoS
И нет конечно массив может быть массивом объектов, не обязательно указателей. (только есть подозрение что в твоем коде указателей будет еще больше)
Твой код отличается от ецс тем, что ты не можешь делать некоторые энтити без компонентов. Смысл ецс в том что у тебя есть только один массив на компонент, чтобы можно было добавлять и убирать компоненты, например флаг "может летать", "может стрелять". У тебя же никакой экономии нет, потому что вхолостую будут перебираться все поля.
А от ооп отличается тем, что компилятор не сможет оптимизировать, например если у тебя системаА делает y += 5 и системаБ делает y -= gravity, то в ооп компилятор бы увидел что это относится к одному объекту и соптимизировал в y = y + 5 - gravity (что превращается в более быстрый машинный код с меньшим числом записей чтений).
> У тебя какая то хуерга которая хуже и ецс, и оопа.
Ецс - это арзитектура в которой есть ентити, компоненты и системы. В системах можно итерировать по разным наборам компонентов. Тут всё это есть.
> Без технической составляющей нет смысла обсуждать перформанс, поскольку именно оттуда он и берется.
Блять, да тут не в конкретной технической составляющей дело.
У нас весь затык в удалении и добавлении каких то игровых сущностей.
Ты на отрез отказываешься говорить как бы сделал это без ецс, хотя я тебя в каждом посте прошу это сделать.
Потому что в этом и кроется весь ответ.
Проблема работы с изменяемыми данными актуальна для чего угодно и там используются одни и те же решения, потому что она не характерна какой-то архитектуре, она характерна тому в каком виде хранятся твои данные.
Массив структур у тебя, структура массивов, линкед лист, хэш таблица, дерево, массив с кэширующим дерьмом, разбитый на чанки мир поверх любого из вариантов, любые - это всё работа с данными на низком уровне. Ты можешь любую ебалу наколдовать для своей архитектуры. Хоть ецс, хоть ооп, хоть вообще какая-то хуйня неведомая.
Ты не поверишь, есть даже ецс фреймворки, которые юзают референсы и хуй забивают на локальность данных. Цена - скорость итерации и кэш миссы, зато это развязывает им руки в гибкости и скорости структурных изменений, потому что когда у тебя реф а не индекс в линейной области памяти никакие структурные изменения тебе уже не устроят говняк.
> То что ты описывашь называется просто Structure of Arrays
Это не архитектурное решение. Есть же грань между архитектурой и технической реализацйией?
Я могу стракчер оф аррейс сделать, могу аррей оф стракчерз, могу в хэш таблицу ебануть, могу массив бакетов и методы с вычислением хэшей(ой, что это...), это ваще не имеет никакого отношения что я всем эти колдовством реализовываю. Это всё чисто внутренняя техническая реализация нужного мне апи, а не архитектура. Архитектура - это конечное апи которое используется.
Ецс и ооп описывают требования конечному апи(какие в нем идеи должны лежать), а не то что там внутри что щаставляет его работать.
Если я в конечном коде пишу системы и ентити какие то и итерируюсь по типам ентитей - знач эт ецс.
> В c++ это можно сделать бесплатно продолжая пользоваться мощью ооп
Как, нормально понаследовался, отполиморыизмился, ощутил всю мощь ооп?
Давай засинкаем определния, ооп будем называть ооп, с наследованием, полиморфизмом.
Если у тебя иная организауия конечного геймплейного кода, которач не подращумвеает наследование и полиморфизм, то будем смотреть что там и как.
> И нет конечно массив может быть массивом объектов, не обязательно указателей. (только есть подозрение что в твоем коде указателей будет еще больше)
Если это массив "объектов" то в чем отличие структурных изменений от моего гига ецс фреймворка с 2 массивами?)
> например если у тебя системаА делает y += 5 и системаБ делает y -= gravity, то в ооп компилятор бы увидел что это относится к одному объекту и соптимизировал в y = y + 5 - gravity
Как компилятор может это увидеть в какой-то ситуации, в которой не увилит в системах?
Ну то есть смари, у тебя нечто делает у+= 5, нечто делает у-= гравити.
Эти инструкции в одном методе лежат? Или в разных? Как осуществляется туда заход, если в разных?
> У тебя какая то хуерга которая хуже и ецс, и оопа.
Ецс - это арзитектура в которой есть ентити, компоненты и системы. В системах можно итерировать по разным наборам компонентов. Тут всё это есть.
> Без технической составляющей нет смысла обсуждать перформанс, поскольку именно оттуда он и берется.
Блять, да тут не в конкретной технической составляющей дело.
У нас весь затык в удалении и добавлении каких то игровых сущностей.
Ты на отрез отказываешься говорить как бы сделал это без ецс, хотя я тебя в каждом посте прошу это сделать.
Потому что в этом и кроется весь ответ.
Проблема работы с изменяемыми данными актуальна для чего угодно и там используются одни и те же решения, потому что она не характерна какой-то архитектуре, она характерна тому в каком виде хранятся твои данные.
Массив структур у тебя, структура массивов, линкед лист, хэш таблица, дерево, массив с кэширующим дерьмом, разбитый на чанки мир поверх любого из вариантов, любые - это всё работа с данными на низком уровне. Ты можешь любую ебалу наколдовать для своей архитектуры. Хоть ецс, хоть ооп, хоть вообще какая-то хуйня неведомая.
Ты не поверишь, есть даже ецс фреймворки, которые юзают референсы и хуй забивают на локальность данных. Цена - скорость итерации и кэш миссы, зато это развязывает им руки в гибкости и скорости структурных изменений, потому что когда у тебя реф а не индекс в линейной области памяти никакие структурные изменения тебе уже не устроят говняк.
> То что ты описывашь называется просто Structure of Arrays
Это не архитектурное решение. Есть же грань между архитектурой и технической реализацйией?
Я могу стракчер оф аррейс сделать, могу аррей оф стракчерз, могу в хэш таблицу ебануть, могу массив бакетов и методы с вычислением хэшей(ой, что это...), это ваще не имеет никакого отношения что я всем эти колдовством реализовываю. Это всё чисто внутренняя техническая реализация нужного мне апи, а не архитектура. Архитектура - это конечное апи которое используется.
Ецс и ооп описывают требования конечному апи(какие в нем идеи должны лежать), а не то что там внутри что щаставляет его работать.
Если я в конечном коде пишу системы и ентити какие то и итерируюсь по типам ентитей - знач эт ецс.
> В c++ это можно сделать бесплатно продолжая пользоваться мощью ооп
Как, нормально понаследовался, отполиморыизмился, ощутил всю мощь ооп?
Давай засинкаем определния, ооп будем называть ооп, с наследованием, полиморфизмом.
Если у тебя иная организауия конечного геймплейного кода, которач не подращумвеает наследование и полиморфизм, то будем смотреть что там и как.
> И нет конечно массив может быть массивом объектов, не обязательно указателей. (только есть подозрение что в твоем коде указателей будет еще больше)
Если это массив "объектов" то в чем отличие структурных изменений от моего гига ецс фреймворка с 2 массивами?)
> например если у тебя системаА делает y += 5 и системаБ делает y -= gravity, то в ооп компилятор бы увидел что это относится к одному объекту и соптимизировал в y = y + 5 - gravity
Как компилятор может это увидеть в какой-то ситуации, в которой не увилит в системах?
Ну то есть смари, у тебя нечто делает у+= 5, нечто делает у-= гравити.
Эти инструкции в одном методе лежат? Или в разных? Как осуществляется туда заход, если в разных?
>Так давай, я жду с самого начала этой хуйни пример. Как ты хранишь какие то объекты, как их создаешь, как удаляешь?
да вот так и храню - враги, пули, всякие объекты
итерируюсь по ним, вызываю там апдейт. удаляю старое, добавляю новое
> да вот так и храню - враги, пули, всякие объекты
> удаляю старое, добавляю новое
А почему тогда мне так запретил? Вот, буквально ты говорил
> мы не дропаем кэши, мы удаляем из массива. я тебя услышал и понял
Ну и да, камон, я также в ецс делать могу.
>>9217
> entityData1[] entities1 = new entityData1[100];
> итерируюсь по ним, вызываю там апдейт
Так и я так делаю!
Наверное ключевой вопрос - почему у меня ецс, а у тебя не ецс - а все дело в апи.
Нехитрыми манипуляциями, можно попилить код на компоненты и системы и сделать возможность выборки по типам компонентов, а под капотом будет тоже самое что и у тебя, просто апи доработано для соответствия ецс.
И еще раз повторим, что ецс это архитектурный паттерн.
вот и я не понимаю, зачем ты в екс делаешь то что делается без екс, и делаешь это так, что это противоречит философии и архитектуре екс.
в екс парадигме всё делается атомарными системами типа ЭнемиПукСистем, ЭнемиСренькСистем, где происходит выборка по разным группам компонентов. эти выборки нужно закэшировать, чтобы избежать повторяющихся итераций. это в норме приводит к куче массивов которые ссылаются на одно и то же - иначе екс тупо будет еле пердеть, итерируясь по миллионам сущностей сотни раз за кадр. то есть у тебя не два массива как ты написал, думая, что это так работает, а тысячи. в динамичной игре это приведет к постоянным дропам этих кэшей и замедлению производительности.
> где происходит выборка по разным группам компонентов. эти выборки нужно закэшировать
НЕЕЕЕТ Не нужно!
> приводит к куче массивов которые ссылаются на одно и то же - иначе екс тупо будет еле пердеть, итерируясь по миллионам сущностей сотни раз за кадр. то есть у тебя не два массива как ты написал, думая, что это так работает, а тысячи.
Не не не не
Смари, смари, это гениально и просто. Ты не понял прикола.
У нас есть ентити с position, bullet, graphics - типа пульки летающие
Есть ентити с position, health, enemy, graphics - типа враги бегающие
Есть ентити с position, health, player, graphics - типа игрок
Теперь представь, мы сделали так:
Когда мы создаем пулю с этими 3 компонентами - под неё автоматически создасться массив если его нет, и в конец вставится пуля.
Когда создали врага - под врагов автоматически создаться массив ив конец положится враг.
Аналогично с игроками.
То есть чем больше вариантов наборов компонентов - тем больше массив.
Создадим какой то player bullet position graphics - что ж, под это создасться 4 массив.
Тут думаю вопросов нет.
А тепепь у нас все таки ецс, мы хотим сделать цикл по всем ентитям у которвх есть позиция и сделать гравитауию.
В клиентском коде мы берем и пишем:
foreach(var position in RefRW<Position>())
{
position.RefRW.y -= 10;
}
И вот эта вот запись обозначает то, что мы делаем цикл по всем нашим 3 массивам.
Теперь хотим пули подвинуть вперед
Берем и:
foreach(var (position, bullet) in RefRW<Position>, RefRW<Bullet>())
{
position.RefRW += bullet.speed;
}
И оно пройдется только по 1 массиву с пулями.
Важные моментв:
1. Нам ничего не нужно апдейтить, кешировать каждый кадр, у нас есть эти 3 массива - каждый содержит уникальные данные. Всё, больше ничего не нужно
То есть это эквивалент твоих
bullet[] bullets
enemy[] enemies
player[] players
2. На этапе компиляции мы знаем какие массивы нам нужны для каждой выборки. В рантайме нам ничего вычислять и определять не нужно.
Скажкм, смотрим исходники, видим - ага (буллет, позишен) будет индекс 1, (позишен) индекс 2, там где у нас цикл по позишен будет цикл по массивы[2], а там где цикл по (пощишен, буллет) будет цикл по массивы[1]. Ток офысеты там надо прибавить к адресам чтобы получить смещение для компонента.
Опять же - кодогенерацией это очень легко достижимо.
Получается, что под капотом там ровно тоже самое что и у тебя.
Всё что отличается - конечное апи - у тебя напрямую массивы и явно заведенные типы, тут такие конструкты из набора "компонентов" и возможность итерировать по выборке такиз компонентов.
По факту это уже квалифицируется как ецс, потому что есть компоненты, есть системы, есть ентити.
Ну и где проблемы с производительностью?
Ну а если мы говорим про дотс, то там ещё интереснее, там данные не просто в массивах лежат, а разбиты на чанки фиксированных размеров, и там системы выполняются в автоматическом режиме, подстраиваясь под чтение и запись других систем с заданными ограничениями порядка, в итоге получается так, что у тебя и каждая система по отдельности может работать в многопотоке, оьрабатывая сразу несколько ентитей сразу, и несколько систем сразу могут работать олнвоременно, если они друг друга не блокируют, и вот это уже сила.
> где происходит выборка по разным группам компонентов. эти выборки нужно закэшировать
НЕЕЕЕТ Не нужно!
> приводит к куче массивов которые ссылаются на одно и то же - иначе екс тупо будет еле пердеть, итерируясь по миллионам сущностей сотни раз за кадр. то есть у тебя не два массива как ты написал, думая, что это так работает, а тысячи.
Не не не не
Смари, смари, это гениально и просто. Ты не понял прикола.
У нас есть ентити с position, bullet, graphics - типа пульки летающие
Есть ентити с position, health, enemy, graphics - типа враги бегающие
Есть ентити с position, health, player, graphics - типа игрок
Теперь представь, мы сделали так:
Когда мы создаем пулю с этими 3 компонентами - под неё автоматически создасться массив если его нет, и в конец вставится пуля.
Когда создали врага - под врагов автоматически создаться массив ив конец положится враг.
Аналогично с игроками.
То есть чем больше вариантов наборов компонентов - тем больше массив.
Создадим какой то player bullet position graphics - что ж, под это создасться 4 массив.
Тут думаю вопросов нет.
А тепепь у нас все таки ецс, мы хотим сделать цикл по всем ентитям у которвх есть позиция и сделать гравитауию.
В клиентском коде мы берем и пишем:
foreach(var position in RefRW<Position>())
{
position.RefRW.y -= 10;
}
И вот эта вот запись обозначает то, что мы делаем цикл по всем нашим 3 массивам.
Теперь хотим пули подвинуть вперед
Берем и:
foreach(var (position, bullet) in RefRW<Position>, RefRW<Bullet>())
{
position.RefRW += bullet.speed;
}
И оно пройдется только по 1 массиву с пулями.
Важные моментв:
1. Нам ничего не нужно апдейтить, кешировать каждый кадр, у нас есть эти 3 массива - каждый содержит уникальные данные. Всё, больше ничего не нужно
То есть это эквивалент твоих
bullet[] bullets
enemy[] enemies
player[] players
2. На этапе компиляции мы знаем какие массивы нам нужны для каждой выборки. В рантайме нам ничего вычислять и определять не нужно.
Скажкм, смотрим исходники, видим - ага (буллет, позишен) будет индекс 1, (позишен) индекс 2, там где у нас цикл по позишен будет цикл по массивы[2], а там где цикл по (пощишен, буллет) будет цикл по массивы[1]. Ток офысеты там надо прибавить к адресам чтобы получить смещение для компонента.
Опять же - кодогенерацией это очень легко достижимо.
Получается, что под капотом там ровно тоже самое что и у тебя.
Всё что отличается - конечное апи - у тебя напрямую массивы и явно заведенные типы, тут такие конструкты из набора "компонентов" и возможность итерировать по выборке такиз компонентов.
По факту это уже квалифицируется как ецс, потому что есть компоненты, есть системы, есть ентити.
Ну и где проблемы с производительностью?
Ну а если мы говорим про дотс, то там ещё интереснее, там данные не просто в массивах лежат, а разбиты на чанки фиксированных размеров, и там системы выполняются в автоматическом режиме, подстраиваясь под чтение и запись других систем с заданными ограничениями порядка, в итоге получается так, что у тебя и каждая система по отдельности может работать в многопотоке, оьрабатывая сразу несколько ентитей сразу, и несколько систем сразу могут работать олнвоременно, если они друг друга не блокируют, и вот это уже сила.
Всратый кал, непригодный к использованию в игровых движках. Ты поли каунт видишь, или тебе это ни о чем не говорит?
Чтобы это можно было использовать, придется заново сделать лоуполи руками.
Это можно использовать максимум в качестве рефа, который можно покрутить, по которому ты потом будешь с нуля делать нормальную модель.
Будто расплавило замок.