Давеча Фиектро выдвинул гипотезу, что в движке обязательно должен присутствовать некий "минимальный джентльменский набор" энтитей. Пока очевидно, что под ним понимается func_rotating и всякое такое. Давайте совместно составим полный список того, без чего, по вашему мнению, движок не имеет права на существование.
Зубрам Юнити кодинга, которые готовы всё писать самостоятельно или покупать плагины, просьба проходить молча и не задерживать очередь.
Я буду по ходу обновлять этот пост.
Итак, джентльменский набор:
GioHAUS0n
А для чего он нужен, если а) для оптимизации отныне детальные браши, б) решётки и стёкла делаются обычными брашами, т.к. прозрачность на них прекрасно работает?
Хотелось бы пояснений для каждой предлагаемой энтити. Если польза func_rotating очевидна - без неё двиг не будет юзать Фиектра - то с остальными не так всё просто.
Неправильная постановка вопроса, ящитаю. Минимальный джентльменский набор это некая абстракция. Не может его быть в принципе. И сейчас поясню почему:
Хотим мы, допустим, стратегию. Какие энтити нам нужны? Ну юниты там, пятидесяти сортов, транспорт для них, постройки, ресурсы (аналог итемов), проджектайлы, гибсы, всякие пакости для эффектов и логические энтити, на которых строится геймплей.
А вот хотим мы, допустим, гонки. Какие энтити нам нужны? Сами машины (игроки), пушабли/брейкабли на трассе, пропы различные анимируемые, зрители на трибунах, обломки машин (то есть гибсы, при условии разрушаемости), пакости для эффектов и логические энтити для геймплея.
Или хотим мы шутер. Какие энтити нам нужны? Оружия, итемы, неписи (количество варьируется в зависимости от фантазии автора), всякие физические энтити (двери, поезда, пушабли, ротатинги, бочки катающиеся, платформы и т.д.), пакости для эффектов (тысячи их), и гора логических энтить (см. халфу).
Так вот, к чему это отступление. В ДВИЖКЕ не может и не должен присутствовать никакой джентльменский набор. Движок должен быть полностью отвязан от игровой логики. Иначе выйдет гавно как в ГС, где хулл игрока при приседании не изменить, потому что usehull = 1 привязан к флагу FL_DUCKING. Движок вообще ничего не должен знать об энтитях, эдиктах и прочем. При условии, что этот движок планируется использовать как основу для игр разных жанров. А если всё, что на нём выходит, является клоном исходной игры (см. халфу), то это тоже не повод что-то в него зашивать намертво. Чтобы не нужно было потом городить огороды из костылей и плеваться, что какую-то простую вещь невозможно реализовать.
А теперь немного оффтопа. Дядя Миша в своих первых ксашах (ещё под халфу) пошёл по правильному пути: упрощения и объединения энтить. В ксаше 0.45, которого не существует, очень стройная система брашевых энтить. Они все абсолютно разбиваемые. То есть не нужно крепить к невидимой двери брейкаблю, чтобы дверь была разбиваемой. И они все крепятся к друг другу, мовевитч работает нормально там, где не мешает движок. Но потом что-то у Дяди Миши ёкнуло внутри, он понял, что придётся сделать мод на ксаше, чтобы всё это показать. А так как никто этого делать не стал бы, (и сам ДМ тоже, я бы на его месте возможно три полноценных карты склепал бы тогда, но не сейчас, возраст не тот ) то ДМ решил обвешать обычную халфу частью плюшек из старых ксашей и кастом билдов спирита, чтобы ленивые мапперы без особого напряжения моска перенесли свои старые карты под его ксаш.
Ku2zoff писал: Хотим мы, допустим, стратегию. Какие энтити нам нужны? Ну юниты там, пятидесяти сортов, транспорт для них, постройки, ресурсы (аналог итемов), проджектайлы, гибсы, всякие пакости для эффектов и логические энтити, на которых строится геймплей.
То есть func_rotating в стратегии не нужен? И в гонках не нужен? Или env_model не нужен - а как модели расставлять? Ты просто не смотришь на вопрос достаточно широко.
Цитата:
Ku2zoff писал: Движок должен быть полностью отвязан от игровой логики.
Я под движком понимаю ядро+логику, а ты только ядро. Давай определимся с терминологией тогда уж.
Цитата:
Ku2zoff писал: В ксаше 0.45, которого не существует, очень стройная система брашевых энтить. Они все абсолютно разбиваемые.
То есть ты предлагаешь сделать все энтити разбиваемыми? Хм. Ты знаешь, для чего нужен флаг FL_WORLDBRUSH?
XaeroX писал: То есть func_rotating в стратегии не нужен? И в гонках не нужен? Или env_model не нужен - а как модели расставлять? Ты просто не смотришь на вопрос достаточно широко.
Цитата:
XaeroX писал: Я под движком понимаю ядро+логику, а ты только ядро. Давай определимся с терминологией тогда уж.
Я писал именно про ядро. Если ещё приплюсовать логику, то тут, я считаю, нужен именно тот набор, который понадобится для демонстрационной игры. А потом можно добавлять энтити по реквесту тех, кто будет делать свои игры на движке, и не сможет сам такие энтити накодить.
Кажется, пора мне за монстров взяться, уже двое суток ничего не делаю. Посыплются на меня обвинения в говноедстве и ничегонеумении
Ku2zoff писал: нужен именно тот набор, который понадобится для демонстрационной игры.
А если в демонстрационной игре нет ни одного крутящегося объекта, то и функ_ротатинг не делать? Но тогда Фиектро не будет юзать волатилу, это инфа 100%. Условие не достаточное, но необходимое.
Впрочем, где же сам Фиектро?
Добавлено 11-07-2015 в 20:41:
Скрытый текст:
Этот текст скрытый. Вы должны оставить хотя бы одно сообщение в теме, чтобы его увидеть.
Добавлено 11-07-2015 в 20:43:
Кстати, кто за то, чтобы сделать в волатиле шареную палитру? Есть мнение, что это очень необходимая и важная фича.
Может лучше для начала определиться с классификацией ентить для этого "минимального джентльменского набора"?
Пока я вижу "крутить и двигать браши" по типу дверей, платформ и ротатов.
Есть ещё какие варианты?
GioHAUS0n
Ты будешь просто перечислять содержимое фгд без пояснений, я правильно понял? Skaarj
Я понял это как набор энтить, нужных для создания карты как таковой. Например, двери нужны практически в любой игре, не говоря уже о шутерах. А вот, скажем, функ_танк - энтитя чисто геймплейная и нужна не всем.
Но тут нужна консультация средних экспертов. Придёт Фиектро - разъяснит свою позицию.
Skaarj писал: Может лучше для начала определиться с классификацией ентить для этого "минимального джентльменского набора"?
Пока я вижу "крутить и двигать браши" по типу дверей, платформ и ротатов.
Есть ещё какие варианты?
Move ентитии (перемещение брашей, поезда, двери, маятники, фанк ротатинг)
Point ентитии (тут понятно, всякие env_, item_, npc_ и т.д.)
Logic ентитии (логические энтитии, мультименегеры, триггеры_авто и т.п.)
Func ентитии (функции брашевых ентитей, фанк бреакбли, детайлы, ареапорталы, валл_тоглы, доктортрессизм и т.д.
Trigger ентитии (trigger_butthurt)
Vgui ентитии (для вывода различных сообщений и окошек на экран)
Ai ентититии (для создания различных скриптов с NPC)
Phys ентитии (всякие коробочки, флюидэ, тряпочки, веревки и т.д.)
Пока вроде всё, может еще что то вспомню.
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
Набор энтить для передвижения и взаимодействия с объектами на карте.
Такие как
ladder
пушабля
объекты которые может поднять игрок
конвеер
замедление, ускорение движения
триггер меняющий sv_gravity
А зачем для этого энтити?
Крась браш нужной текстурой - и получишь лестницу либо ареапортал.
А детайл вообще легко - правой кнопкой в джеке, и жмёшь "Make Detail".
Добавлено 11-07-2015 в 23:49:
Пока что из вашего списка удалось выбрать немногое, см. обновлённый первый пост.