![]() |
Показать все 23 сообщений этой темы на одной странице |
HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Xash3D (https://hlfx.ru/forum/forumdisplay.php?forumid=14)
-- XashNT, определяем судьбу (https://hlfx.ru/forum/showthread.php?threadid=4209)
XashNT, определяем судьбу
В прошлый раз, когда я затрагивал данную тему, я в основном затрагивал аспект юзабилити и разрешение определённых вопросов с точки зрения пользователей. Пользователи не то чтобы не отреагировали, скорее не поняли в чём предмет разговора. С тех пор кое-что изменилось. Во первых я провёл ряд различных экспериментов по внедрению новых систем, во вторых - вышел Джекхаммер, к которому можно писать всякие плагины .
Но для начала хотелось бы напомнить вам всю историю развития движка, её переломные моменты, чтобы вы могли лучше оценить текущий переломный момент и сделать правильный выбор.
Небольшой экскурс в историю
Xash как концепция был задуман 13 декабря 2004 года.
Первое упоминание. На тот момент это был мод.
Версия 0.1f была экспериментами над системой оружия, а так же добавление новых пушек, типа редемира и огнемёта. Т.е. ничего особенного.
Версия 0.2f была немного поинтереснее - более продвинутая система оружия, несколько новых энтить (таких как env_counter) и мониторы. Монитор правда работали отвратительно, не учитывали виз. Посмотрели и забыли. Зато там была знаменитая демо-карта от Митоха
Версия 0.3f была первой, с которой к проекту начали проявлять интерес - там появились зеркала (благодаря Ксероксу), мониторы и 3д небо. Так же был расширен movewith.
Версии 0.35f, 0.39f и 0.4f не привносили ничего нового, зато исправляли огромное кол-во ошибок и багов. К версии 0.4 так же появились порталы (весьма глючные, надосказать), и тов. Scrama запилил карту Qstyle, специально для ксаша (вы её можете видеть почти в каждой сборке XashXT). Интерес к проекту рос, однако в то же время росло и недовольство тем фактом, что я переписывал все энтити, объединяя их в более простые, понятные и логичные. Главным образом потому что стало непривычно, а переучиваться никто не хотел. Тогда я не понимал их претензий, что вполне закономерно приводило к длинным срачам безо всякой пользы для обеих сторон. Правда я со своей стороны предпринял одну попытку вернуть обратно старые энтити, создав еще один билд.
Это билд версии 0.45f (которого не существует в природе) и который Фиэктра подло выкрал у Скрамы пользуясь его добростью к новому году.
На тот момент мне стало понятно, что проект зашёл в тупик - кол-во глюков превышало все мыслимые пределы, ничего не работало, ничего не было понятно. По доброй человеческой традции спихивать собственные грехи на кого угодно, виновником был объявлен "глючный голдсорс" и я приступил к разработке "совершенно нового™" движка, на базе второй кваки, как вы помните. Это был 2007 год. К слову сказать, я никогда более не менял эту платформу. Переписывал, перекраивал - да. Но это всегда был один и тот же движок.
Вот анонс того памятного старта.
С момента разработки движок преодолел массу итераций, но далеко не все промежуточные шаги были видны нашим пользователям.
Вот версия 0.48
Из нее вовсю торчат ушы Quake2, но есть и изменения. Например расширенная виртуальная машинка первой кваки на клиенте, сервере и в меню. Так же было добавлено несколько фишек в рендерер.
Следующая версия - 0.56 (прошёл год)
В этой версии почти все форматы были своими. Кстати интересный факт - карты в данной версии на самом деле были WAD-ами. Т.е. карту можно было открыть в WAD-редакторе и посмотреть названия лумпов
Плюс такой реализации был в том, что поименованные лумпы помогали расширять форматы, сохраняя совместимость. Это моё изобретение.
Так же был произведен отказ от виртуальной машины в пользу классических халфовских библиотек.
В конце того же года была выложена версия с поддержкой Q3 карт.
Интерес к проекту повысился, но, что удивительно - народ скучал по мягкому освещению первой халфы и физике с фиксированными хуллами.
Но я еще не был готов к такому повороту.
В феврале 2010 была выпущена последняя несовместимая версия с тестом мультиплеера. Технически это была всё та же 0.68, но с багфиксами и замечательной песней "Пам-пам-пам-парарам" в меню.
А вот и первый переломный момент, который зависел от наших форумчан.
Что из этого получилось, думаю объяснять никому не нужно. Дальнейшие версии движка для истории не имеют такого интереса, чтобы упоминать их здесь - был взят курс на полную совместимость, интерес к проекту резко подрос, и я думаю те события все и так помнят.
Поэтому перейдём сразу ко второму переломному моменту:
http://www.hlfx.ru/forum/showthread...=&threadid=2306
http://www.hlfx.ru/forum/showthread...=&threadid=2614
http://www.hlfx.ru/forum/showthread...=&threadid=2790
http://www.hlfx.ru/forum/showthread...=&threadid=3076
http://www.hlfx.ru/forum/showthread...=&threadid=3053
Ссылок много, обсуждение было достаточно долгим, в конечном итоге сформировалось мнение, что лучше всего вернуться к тому, с чего начинали - к ксаш-моду версии 0.4, но уже под ксаш-движок (ну, раз уж никакие ограничения теперь не страшны). И вот с этого момента начались удивительные дела. Под связку Xash3D+XashXT люди стали делать моды. Да не один и не два, а как минимум 6 команд. Один раз увидев ксаш-мод, люди тут же всё бросали и переходили на него.
И это в свою очередь дало мне пищу для новых размышлений и корректировке концепции. На тот момент мне было совершенно ясно что нужно народу (плезиозавры) и что народу не нужно (ихтиозавры).
Оставались спорные моменты с совмещением халфовской системы рендермодов и шейдерной системы ку3, а так же отсутствие вменяемого редактора карт. Эксперименты были проведены мною в этом месяце и дали вполне приличный результат. Редактор карт, который в потенциале сможет поддерживать полноцветные текстуры (а возможно что и уже), у нас теперь тоже есть. Всё что я хотел оттестировать - оттестировано.
Вопросов почти не осталось, точнее остался только один вопрос:
Что нам делать с совместимостью?
Под совместимостью понимается работа движка с халфовскими библиотеками. Разумеется текущий ксаш ломать я не буду, давно уже существует параллельная ветка под названием XashNT и разработка будет просто продолжена под нее. А работа над Xash3D, соответственно остановлена (хотя она и так уже год не ведется, так небольшие багфиксы). Потеря совместимости нужна по одной причине - реализовать всё с учётом текущих потребностей, минимизировав потребление памяти и увеличив скорость работы. Ну и конечно же это будет полный стенд-алон, с халфой не связанный. В принципе можно изъебнуться (да, другого слова тут не подберешь) и продолжить наворачивать ксаш-мод и далее, но некоторых вещей реализовать не удастся в принципе. Например тот же рагдолл. Я и так почти исчерпал лимит хитростей по добавлению новых фишек при сохранении совместимости. Собственно, я создаю этот опрос, потому что определился с целевой аудиторией, для которой будет продолжена разработка движка. Это наши мододелы. Как я говорил, их уже достаточно немало, а разработка стенд-алона в виде XashNT может привлечь в их ряды еще и новых участников.
Теперь постараюсь ответить на вопросы по портированию ваших модов на новый движок и форматы моделей\карт\спрайтов:
1. портабельности будет уделено самое больше внимание, в идеале переезд будет столь же безболезненным как с халфы на ксаш в своё время. Ну в дальнейшем возможно сменится формат BSP на более расширенный.
2. модели спрайты текстуры уровни - останется полная поддержка халфовских, как и в Xash3D, не будет только VGUI и поддержки библиотек голдсорса. Вместо них базовыми библиотеками станут дллки XashXT (тоже модифицированные).
3. рендерер и физика будут перенесены в движок для общего увеличения быстродействия.
4. проект по прежнему останется бесплатным и опенсорсным.
Как вы понимаете, это не свершившийся факт, а всего лишь один из вариантов развития. Второй я упоминал - домучать XashXT вместе с интерфейсами движка до полного ужаса, но зато сохранить совместимость.
Ну что ж. Голосуем.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Где ремейк ГИПНОТИКА? Ты обещал ))
__________________
How interesting, just look at that!
© Scientist
Вариант "совместимость не нужна" лидирует. А XaeroX тебе говорил (кажется), но ты ему не верил (наверно)!
Мне кажется, результат опроса весьма показателен.
__________________
Вся сила лысого кощея,
Сокрыта в башне из костей
Воздвигнутой, под небесами
На месте похорон людей
Если геометрия будет преимущественно брашевой - потеря совместимости означает потерю аудитории, тк bsp в качестве технологии для дейсвительно больших и открытых уровней не приемлима (да и устарела, тащемта) а делать большие ландшафты брашами - это содомия в чистом виде. Если же геометрия будет не только брашевой, но и дисплейсментной (как в сурсе) - это уже плюс, однако вопрос целесообразности, и риска потери аудитории остаётся открытым. Если же новый ксаш будет поддерживать и брашевую геометрию, и какую-нибудь открытую (а следовательно и две модели освещения: лайтмаповая для коридоров, и динамическая для открытых пространств) - то тогда отказ вполне обоснован, тк целевая аудитория расширяется с коридорщиков до ландшафтных задротов, позволяя комбинировать типы локаций, например, чейнджлевелом. В виду этого, прежде чем ткнуть, мне бы хотелось узнать, каким образом будет реализована поддержка открытых пространств. Это принципиально важный вопрос, тк ни у одного движка без поддержки ландшафтов нет будущего: слишком много конкурентов. Преимущество ксаша при таком раскладе - хл-совместимость, благодаря которой с ним могут работать хл-фанаты, а их численность всё ещё огромна. Единственное, что может их удержать - это новый редактор ксера в сочетании с вышеуказанными ландшафтами, а так же тулзы для работы с ними. В противном случае при отказе от совместимости, и не предоставления новых ништяков, фанаты допилят текущие проекты, и просто уйдут (по крайней мере та часть, которая захочет двигаться дальше).
Я не согласен с большей частью варианта 1. Но совместимость нужна.
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
Поскольку несовместимый двиг уже есть (волатила), и народ вовсю её вожделеет - думаю, имеет смысл придерживаться классической концепции. Для тех, кто таки неспособен освоить что-то новое.
__________________
Зачем развивать клон голдсорса без годного мультиплеера (предиктинга нема, увы)? Сингловые моды халфы прекрасно шпарят под него, без дальнейшего развития. Можно заморозить разработку Xash3D на данном этапе, вырезать мультиплеер и время от времени править баги, мешающие работе модов. А главные силы направить на новый движок, благо есть стабильная основа, и не будет ограничений голдсорса. Проблема в том, что на новом движке нужна будет игра. А игру кто-то должен будет сделать.
А линукс?! Будет версия под линь наконец-то?
Ас сложно будет портануть допустим с XashXT на XashNT?
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Интересно, это какие проекты делаются? А паранойя два тоже будет портирована на новый двиг или сразу на новом будет идти?
Игры на ксаше? Интересно.
На геймдев.ру темы будут?
__________________
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
__________________
Минутка полезного:
Бесплатный UT-подобный Half-Life mod.
Бесплатный редактор для 32-битных текстур. Без дотнета.
Бесплатный IDE для любых компиляторов и ЯП.
Бесплатная Windows-подобная ОС.
Проверка грамматики русского языка.
Чат по hl[fx]: [email protected]
__________________
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
А ещё лучше красно-чёрные деревья, но это зависит от количества элементов. Для 8-10 линейный может оказаться быстрее сортировки или вычисления хэша.
__________________
Дядя Миша ещё лучше внедрить миварное пространство представления данных, где поиск не нужен в принципе, но у вас этого нет....
Добавлено 28-12-2013 в 00:46:
Кстати, я не понял сути опроса:
Не надо нам XashNT, домучивай ксаш-мод, пофиг на всё, главное совместимость
Совместимость не нужна, изложенная концепция XashNT меня вполне устраивает
Мой ответ:
Совместимость нужна, изложенная концепция XashNT меня вполне устраивает.
Я так понял, что XashNT - для совместимости с хл и пилится, не?
__________________
Минутка полезного:
Бесплатный UT-подобный Half-Life mod.
Бесплатный редактор для 32-битных текстур. Без дотнета.
Бесплатный IDE для любых компиляторов и ЯП.
Бесплатная Windows-подобная ОС.
Проверка грамматики русского языка.
Чат по hl[fx]: [email protected]
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Временная зона GMT. Текущее время 20:35. | Показать все 23 сообщений этой темы на одной странице |
На основе vBulletin версии 2.3.0
Авторское право © Jelsoft Enterprises Limited 2000 - 2002.
Дизайн и программирование: Crystice Softworks © 2005 - 2024