HLFX.Ru Forum
профиль •  правила •  регистрация •  календарь •  народ •  FAQ •  поиск •  новое •  сутки •  главная •  выход  
HLFX.Ru Forum HLFX.Ru Forum > Разработка игр > Наши проекты > F.A.Q. по XashNT
  Предыдущая тема   Следующая тема
Автор
Тема Новая тема    Ответить
 Дядя Миша
who said meow?

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 28372
Нанёс повреждений: 387 ед.

Рейтинг



F.A.Q. по XashNT

В связи с тем, что по XashNT есть довольно много информации, часть которой уже успела устареть и вступает в противоречие с более свежей, у народа может вполне сформироваться неправильное представление о том, что же это за движок такой, каковы его возможности, что там планируется и что уже реализовано. Частично информация есть на csm.dev (уже очень старая), частично в в этой теме. Наконец что-то есть на Boosty. Сформировать из этого целостную картину непросто.
Поэтому я решил все потенциально возникающие вопросы оформить в виде F.A.Q., который традиционно будет обновляться по мере появления новых вопросов. Поехали:

Q. Что такое XashNT?
A. Движок, который должен найти свою нишу для довольно большой (по моим прикидкам) аудитории, которую так или иначе не устраивают уже существующие решения. Напомню, что в настоящее время выбор весьма невелик - либо Unreal либо Unity. CryEngine похоже окончательно списали со счетов и там всё довольно грустно. Если вас по каким-то причинам не устраивают уже существующие решения, рекомендую присмотреться к XashNT, возможно это будет именно то, что вы так долго искали, но не смогли найти.

Q. В чём его основные отличия от уже существующих движков?
A. На мой взгляд, главное отличие в отсутствии навязываемой модели разработки, обусловленной внутренней архитектурой самого движка.
Как вы знаете, старые движки, базирующиеся еще на архитектуре от Кармака (idTech) позволяли делать уровни, только используя браши или вставляя модели с ограниченным функционалом. Новые движки, напротив, либо совсем не умеют работать с брашами, либо их поддержка реализована на уровне "чтобы были". XashNT это в первую очередь попытка абстрагироваться от типа примитивов, которыми оперирует левел-дизайнер. Вы можете смешивать браши, модели и кривые Безье в абсолютно любых пропорциях на ваших уровнях, вы можете делать уровни, состоящие целиком из моделей, вы можете делать уровни, состоящие целиком из брашей и это всегда даст корректный результат и высокую производительность. Между брашами, моделями и патчами, нет никакого различия в физическом взаимодействии, наложении лайтмапы, наложении декалей, равно как и в способах рендеринга. Есть и другие важные отличия, как в идеологии, так и в реализации. О них чуть ниже.

Q. Какие будут возможности в графическом плане, не будет ли там устаревший рендерер?
A. XashNT не предполагает наличие встроенного рендерера. Я много размышлял над этим и пришёл к выводу, что существующих техник слишком много и для разных игр могут потребоваться в корне отличающиеся друг от друга режимы рендеринга, поэтому намертво зашивать этот механизм в ядро нет никакого смысла. Вместо собственной модели рендерера XashNT имеет прозрачный транспорт до видеодрайвера, оснащенный мощной скриптовой системой, позволяющей создавать архитектуру рендерера прямо в текстовом файле. А вторая подсистема позволяет разработать свой уникальный язык описания материалов или сэмулировать уже существующий. Таким образом в одной игре вы можете иметь отложенное освещение с каскадными тенями, PBR, SSLR, LPV и кучей других современных техник, а в другой - NPR и стилизацию под мультфильмы. Или наоборот - максимальное упрощение конвейера для повышения производительности под мобильные устройства.
Ядро при этом остаётся неизменным и вы фактически напрямую контролируете видеодрайвер. Это даёт абсолютную свободу в плане построения графики.

Q. Какие будут возможности в плане физической симуляции?
A. Здесь у меня нет каких-то особенных планов, т.к. все мои исследования говорят о том, что большинству важнее красивая картинка, нежели корректная физическая симуляции. Гораздо важнее не допускать, чтобы персонажи и игрок не застревали "в текстурах". Соответственно, надёжности просчёта столкновений будет уделено первоочередное внимание. Конечно будет типовой набор физических объектов - катающиеся бочки, верёвки, машинки, возможно занавески, физика тряпичных кукол (ragdoll). Так же будет доступна портальная физика, когда все объекты будут корректно проходить сквозь порталы (как в игре Portal). Разумеется кинематические тела (двери, поезда) тоже будут в наличии. На мой взгляд этого вполне достаточно.

Q. В чём можно будет создавать игры под XashNT?
A. По совокупности исследований было принято решение о написании собственного редактора (разработка начнётся с сентября 2021-го года), однако есть возможность использования Blender и JackHammer, хотя это и не совсем удобные решения, поскольку для JackHammer отсутствует соответствующий плагин (его появление - вопрос времени), а на Blender не слишком удобно работать с брашевыми объектами. На данный момент этот вопрос остаётся открытым и вы можете вносить свои предложения. Но мне в любом случае не хотелось бы жестко привязывать пользователей к одному-единственному редактору, на мой взгляд это неправильный подход.

Q. К каким движкам по духу будет ближе всего XashNT?
A. Здесь нельзя назвать какой-то конкретный движок, приведу список:
Quake, Quake II, Quake 3, Doom 3, Half-Life, Half-Life 2, Call Of Duty, STALKER, возможно GTA. В силу высокой гибкости скриптовой системы, движок можно адаптировать под стиль и специфику вышеперичисленных движков, практически неотличимо от оригинала ну или с минимальными отличиями.
Частично проверить справедливость моего утверждения, вы сможете, ставь участником бета-тестирования и скачав приватную бету (подробности ниже). Конечно в бете реализован не весь потенциал от заявленного, но выводы сделать уже можно. В идеале XashNT можно будет настроить на эмуляцию большинства известных движков, по крайней мере в плане графической части. И это тоже одна из поставленных мною задач.

Q. Как будут обстоять дела с мультиплеером?
A. Этот вопрос пока еще детально не прорабатывался, но есть всего две мультиплеерные модели. Первая - классический клиент-сервер, с ограниченным числом игроков на нём (обычно не более 32-64), и вторая с неограниченным кол-вом игроков и более непредсказуемой синхронизацией. Лично мне больше нравится первая модель, но для гигантских миров с тысячами игроков, конечно предпочтительнее вторая.
Возможно я сделаю механизм, позволяющий реализовать обе модели по выбору пользователя.

Q. Какие форматы моделей\уровней использует новый движок и с чем они совместимы?
A. XashNT использует собственные форматы уровней и моделей, не совместимые ни с чем. Однако сами форматы устроены таким образом, что для них возможно написание конверторов практически из любой другой игры (хотя это конечно и не нужно для разработки собственной).
В качестве входных форматов для описания уровней используется формат .map (quake1, quake2, quake3, doom3, half-life). В качестве входных форматов для статичных моделей используется текстовый формат описания (smd, ase, obj). Для анимированных моделей используется формат .smd. С появлением собственного редактора, есть вероятность, что вышеперечисленные форматы перейдут в разряд испортируемых, а в движке появятся собственные исходные форматы, но этот момент пока еще не определён окончательно.

Q. Как будет устроен игровой код XashNT?
A. Я склоняюсь к устройству мощной скриптовой машины с С++ подобным языком, однако это не окончательное решение, к тому же сама машина может быть выполнена в качестве надстройки над пользовательской игровой библиотекой. К визуальному программированию отношусь отрицательно, у него низкий порог вхождения, но оно весьма сложно в отладке при возрастании сложности кода.

Q. На какие типы и жанры игры будет ориентирован XashNT?
A. Приоритетное направление, конечно же игры от первого и третьего лица. Так же движок довольно легко будет сконфигурировать для двухмерного отображения, изометрической проекции. Каких-либо шагов в направлении многопользовательских серверных игр с тысячями игроков я пока что не предпринимал, однако абстрактность архитектуры и форматов, позволяет довольно безболезненно это проделать в дальнейшем, если возникнут соответствующие запросы.

Q. На какие платформы будет доступен движок?
A. У меня в планах Windows и Android, как наиболее распространённые.
Пользователи Linux на данный момент могут использовать Wine без каких-либо проблем и без заметного падения производительности.

Q. Есть ли хотя бы одна игра, которая уже разрабатывается на XashNT?
A. Да, такая игра есть, это M.I.R. (Meanwhile In Russia). Первоначально игра была сделана на связке Xash3D+XashXT, теперь мы с её автором осуществляем миграцию на XashNT. Так же вполне возможно переиздание обоих частей Paranoia на новом движке.

Q. По какой схеме будет распространяться движок?
A. Скорее всего по общепринятой в настоящее время. Сам движок и его использование будут бесплатными, отчисления автору, только с дохода от продажи игр, сделанных на нём. Так же в планах создание магазина с различными дополнениями и ассетами. Есть конечно и другие мысли, но на данном этапе разработки об этом пока еще рано говорить.

Q. Будут ли доступны исходники движка?
A. Исходники не будут доступны до окончания разработки XashNT. Вполне вероятно, что я воспользуюсь моделью поведения Джона Кармака, когда исходники будут закрыты в течение всего времени жизнненого цикла движка, а затем опубликованы под лицензией GPL. Впрочем, это касается только ядра. Исходники пользовательской части будут доступны всем изначально. В первую очередь мои соображения продиктованы защитой от безответственных форкеров исходного кода, которые плодят энтропию.

Q. Меня заинтерисовал ваш проект, как я могу ознакомиться с бетой\принять посильное участие в разработке?
A. На данный момент открыта платная подписка на участие в бета-тестировании XashNT. Подписка разовая, единожды оплативший получает доступ ко всем последующим билдам и может влиять на дальнейший ход разработки, внося свои предложения.
Для оформления подписки вам надо сделать следующее:
1. Зарегистироваться на нашем форуме hlfx.ru/forum
2. Отправить 1000 (одну тысячу) рублей на карту сбербанка

2202 2009 8473 3293

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

продолжение следует

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Сообщить модератору | | IP: Записан
Сообщение: 203290

Старое сообщение 15-08-2021 11:11
-
 Дядя Миша
who said meow?

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 28372
Нанёс повреждений: 387 ед.

Рейтинг



Важный технический момент!
Некоторые поступления приходят без комментариев, то ли человек забыл, то ли сбербанк зарезал описание. На всякий случай пишите мне в приват, чтобы не возникало недоразумений.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Сообщить модератору | | IP: Записан
Сообщение: 203305

Старое сообщение 17-08-2021 10:12
-
Тема: (Опционально)
Ваш ответ:



Переводчик транслита


[проверить длину сообщения]
Опции: Автоматическое формирование ссылок: автоматически добавлять [url] и [/url] вокруг интернет адресов.
Уведомление по E-Mail: отправить вам уведомление, если кто-то ответил в тему (только для зарегистрированных пользователей).
Отключить смайлики в сообщении: не преобразовывать текстовые смайлики в картинки.
Показать подпись: добавить вашу подпись в конец сообщения (только зарегистрированные пользователи могут иметь подписи).

Временная зона GMT. Текущее время 21:13. Новая тема    Ответить
  Предыдущая тема   Следующая тема
HLFX.Ru Forum HLFX.Ru Forum > Разработка игр > Наши проекты > F.A.Q. по XashNT
Версия для печати | Отправить тему по E-Mail | Подписаться на эту тему

Быстрый переход:
Оцените эту тему:

Правила Форума:
Вы not можете создавать новые темы
Вы not можете отвечать в темы
Вы not можете прикреплять вложения
Вы not можете редактировать ваши сообщения
HTML Код ВЫКЛ
vB Код ВКЛ
Смайлики ВКЛ
[IMG] Код ВКЛ
 

< Обратная связь - HLFX.ru >

На основе vBulletin
Авторское право © 2000 - 2002, Jelsoft Enterprises Limited.
Дизайн и программирование: Crystice Softworks © 2005 - 2021