Инструменты пользователя

Инструменты сайта


playground:playground

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

playground:playground [2018/01/28 16:38]
cybermax
playground:playground [2018/01/28 16:39] (текущий)
cybermax
Строка 1: Строка 1:
-====== ​XashXT ​F.A.Q. ====== +====== ​Xash3D ​F.A.Q. ====== 
-Q. Что такое ​XashXT+Q. Что такое ​Xash3D
-A. Это тулкит, значительно расширяющий ​возможности модмейкера ​для синглплеерных проектов. Аналогично тулкиту Spirit Of Half-LifeXashXT предоставляет массу интересных возможностейтаких как реалистичная физика твердых тел, зеркала,​ порталыпогодные условиядинамические источники света с тенями,​ мощный набор логических энтить и многое другое.+A. Xash3D - это игровой движок, совместимый с движком GoldSource ​от Valve LLCна котором, в частности, основана ​игра Half-LifeCounter-Strike ​и множество ​других игр.
  
-Q. Так это отдельная игра или просто мод+Q. Насколько высока эта совместимость
-A. Конструктивно XashXT ​выполнен ​в виде мода для Xash3D. К сожалению XashXT активно ​использует расширенные возможности Xash3D ​для ​всех своих нововведений, поэтому не будет правильно работать под ​обычным GoldSource. Более того - одна из целей его разработки как ​раз и была демонстрация возможностей новых интерфейсов движка Xash3D, по сути побочная реклама. Однако мод полностью оттестирован, снабжен подробной документацией, FGD и примерами, то есть не является сляпанным ​наспех, чтобы что-то продемонстировать.+A. Совместимость движков составляет ​приблизительно 90%. Это значит что подавлюящее большинство модов и игр ​под ​движок GoldSource должны корректно работать под ​Xash3D ​без каких-либо доработок, просто ​по факту установки. Исключение составляют ​игры, которые были ​спроектированы под Steam-версию GoldSource, поскольку использовали ​недокументированные особенности движка, что значительно затрудняет ​их адаптацию. Но я надеюсь, что ​к финальной версии это будет успешно преодолено.
  
-Q. Как его устанавливать? +Q. Зачем нужен Xash3D, если можно просто играть ​в те же игры под GoldSource
-A. Просто распакуйте содержимое архива XashXT_065_rev.3.7z в корневую папку с уже установленным Xash3D. Внутри мода вы найдете ​папку ​devkit ​в которой вас ждут исходники карт, подробная документация и исходные коды.+A. По ряду причин. Во первых Xash3D поддерживает ряд разрешений экрана, которых нету в GoldSource, но которые очень актуальны в наше время нетбуков с их нестандартными матрицамиВо вторых в Xash3D исправлено множество ошибок оригинального GoldSource, которые там, понятно,​ никто исправлять не собирается. В третьих Xash3D имеет лучшую оптимизацию и как следствие - более высокий FPS, что ​актуально для тех же нетбуков. В четвертых движок не имеет привязки к Steam, которая зачастую создает больше проблем,​ нежели удобства. В пятых движок ​непрерывно развивается и у вас ​есть уникальная возможность ​попросить добавить какую-либо новую фичу, ​которая с большой долей вероятности появится уже в следующей версии. Понятное ​дело что в случае с GoldSource это ​невозможно. В шестых движок имеет открытый исходный код и распространяется под лицензией LGPL, что позволяет изучить любимую игру изнутри, а возможно - и модифицировать её для собственных нужд.
  
-Q. Как с ним работать+Q. Как создавался Xash3D, если исходников GoldSource нигде нет в свободном доступе? Вы утащили сорцы у Valve
-A. Предполагается что у вас уже есть опыт в деле настройки Valve Hammer Editor ​для различных модов, например ​Opposing Force или ​Counter Strike. Настройка для ​XashXT ​выполняется аналогичным образом. Запуск мода возможен как с командной строки ​hl.exe ​-game xash так и с персонального лаунчера в комплекте. Оба способа являются равнозначными.+A. Изначально совместимость с GoldSource не планировалась совсем. Предполагалось использовать только похожий формат моделей, а всё остальное было бы совершенно несовместимо. При этом движок позиционировался,​ как очередной Generic Engine многоцелевого ​назначения. Однако ​три года разработки в очередной ​раз ​показали полную несостоятельность такого подхода, поскольку разработка движка в отрыве от конкретной игрызанятие очень увлекательное,​ но совершенно бессмысленное. Не имея возможности протестировать движок даже на стабильность 10-минутного геймплея (просто по причине 
 +его отстутствия) его код понемногу обрастал багами,​ выявить которые на паре-тройке тестовых ​карт не представлялось ​возможным по определению. В то же время многие пользователи, видя определенное сходство с движком GoldSource (главным образом из-за схожего формата моделей),​ просили меня переписать исходный код движка таким образом, чтобы движок оказался ​полностью совместимым с Half-Life и его модами. И вот, в конце апреля - начале ​мая 2010 года, разработка движка полностью сменила направление и взяла курс на полную совместимость с GoldSource. Положение осложнялось еще и тем, что исходников GoldSrc не было в свободном доступе. Поэтому воссоздание исходников происходило,​ опираясь на общеизвестные факты о происхожении GoldSource, построенном на симбиозе Quake, QuakeWorld и Quake II, чьи исходники, как известно, ​давно открыты и находятся в сводобном доступе. Частично пробел помогли восполнить Half-Life SDK с игровой частью ​кода, частично ​исходные коды Half-Life 2 beta. Ну и наконец,​ когда этой информации оказывалось недостаточно,​ недостающие сведения добывались методом "​черного ящика"​ при помощи оригинального ​GoldSource. Метод, вкратце,​ заключается в том, что в движок посылается ​некий набор данных,​ после ​чего возвращается нечто, уже обработанное движком ​и на анализированнии значений входных и выходных данных делаются ​предположения о логике работы. Подтверждением того, что я двигаюсь в правильном направлении ​служили игры, которые ​выглядели и работали ​совершенно одинаково, как ​на GoldSource так и на Xash3D. 
 +Примечание. Сам автор движка,​ уже с версии 0.75 начал переодически путаться,​ что же именно у него запущено в данный момент: GoldSource ​или Xash3D :-)
  
-Q. А если я хочу создать игру на базе XashXT? +Q. Как вы приняли решение ​открыть исходники движка? Ведь первоначальные версии были закрыты. 
-A. Связка Xash3D+XashXT без проблем позволяет это сделатьБолее полное руководство ​вы найдете в документации по XashXT.+A. В некотором смысле на принятие этого решения ​повлиял один из участников нашего форума,​ красочно расписывавший будущее движка в случае его открытостиЛично я отношусь к подобным заявлениям с изрядной долей скептецизма,​ но тем не менее принял решение открыть исходные ​коды движка, поскольку там ​действительно было много интересных решений,​ которые вполне могли бы пригодится,​ например для Quake-коммунити, или для портирования Xash3D под другие платформы.
  
-Q. Насколько XashXT совместим со стандартными энтитями ​Half-Life?+Q. Какая версия движка последняя, на данный момент? 
 +A. Последняя ​версия на данный ​момент - 0.98. Финальной версии движок достигнет только тогда, когда в нем будет реализован полный набор возможностей из Half-Life.
  
-AСовместимость стремится к 100% не только ​в плане настроек ​энтить но и в плане рендеринга. Не секрет, что многие графические моды под Half-Life кардинальным образом меняют выводимую картинку — даже ​при ​условии, что никакие из нововведений не были использованы. При разработке XashXT ​данной ​совместимости было уделено максимальное внимание. Вы можете сравнивать картинку ​кастомного рендерера XashXT ​и рендерера движка переключая ​квар gl_renderer. В плане энтитей могу сказать, что под XashXT ​без проблем проходится Half-Life. Но в теории возможны некоторые несостыковки для пользовательских карт. Впрочем о таких ​случаях пока ничего не известно.+QМеня заинтерисовал ваш проект, могу ли я сделать игру ​на вашем движке
 +A. Xash3D унаследовал основные черты ​своего родителя в плане отсутствия привязок к какой-то определенной игровой папке. Поэтому для создания совершенно ​отдельной игры ​нет никаких препятствий. Автор движка (то есть я), точно так же не имеет против этого никаких возражений ​и готов ​оказать ​вам ​базовую консультацию ​по техническому устройству движка и его основным возможностям.
  
-Q. Какая версия движка Xash3D необходима ​для правильной работы ​XashXT 0.65?+Q. А если я захочу продать свою игру на вашем ​движке? 
 +A. Вопрос достаточно сложный. Поскольку ​Xash3D ​распространяется под лизцензией LGPL, то лично мне никаких отчислений ​делать не требуется. Однако движок использует в своем составе библиотеку vgui.dll от игры Half-Life версии 1.1.0.8 которая является собственностью Valve LLC. При разработке коммерческого ​проекта вам придется вырезать эту часть кода из движка и игровых библиотек,​ соответственно. Впрочем такого рода вещи лучше обсуждать со штатным юристом компании.
  
-AРекомендуемая версия — Xash3D 0.96 build 2636 или выше. Однако мод сохраняет свою работоспособность и на более ​ранних билдах,​ вплоть до 1905, отключая некоторые возможности мода. Работа ​под билдами младше 1905 не гарантируется в принципе+QМеня ​заинтерисовал ваш проект, как я могу ему помочь
- +A. Например - оформлением документации, созданием интернет-ресурса, посвященного движку, ​переводом документации ​на английский ​язык, бета-тестированием. Либо поддержать автора материально, ​заслав определенную сумму денег ​на на электронный кошелек за номером
-Q. Мне очень понравился ​ваш проект, как я могу ​ему помочь?​ +
- +
-AМожно поддержать автора материально,​ переведя ему некоторую сумму денег на электронный кошелек за номером+
  
 410011011597633 410011011597633
  
-в системе Yandex.Деньгилибо в системе WebMoney на кошелек+в системе Yandex.Деньги
 + 
 +либо в системе WebMoney на кошелек
  
 R921161786039 R921161786039
  
-Q. Я хочу продолжить развитие тулкита от своего имени. ​Как мне лучше это сделать?​+Q. Будет ли в ксаш добавлена поддержка GCF-архивов? 
 +A. Очень наврядли. Дело в том, что мне никогда не попадались любительские моды, ​упакованные в GCF, а сам Half-Life легко ​распаковать,​ 
 +если такая необходимость возникнет. Кроме того Steam предполагает достаточно хитрую иерархию папок и архивов,​ что приведет к путанице. 
 + 
 +Q. Могу ли я использовать полноцветные текстуры совместно с вашим движком, чтобы заменить ​8-битные?​ 
 +A. Да, Xash3D поддерживает замену 8-битных текстур на полноцветные в формате TGA. Подробнее можно прочитать в этом посте. 
 + 
 +Q. Какие инструменты вы использовали при создании движка? 
 +A. Microsoft Visual Studio Enterprise Edition 6.0 + Service Pack5 + Processor Pack. А для редактирования исходников Asm_Ed. 
 + 
 +Q. Почему проект называется Xash? Что означает это ​слово
 +A. Когда я выбирал название для будущего ​движка, хотелось придумать короткое непереводимое слово, по аналогии с SONYИз нескольких вариантов остановился на Xash. Правда, ​как потом оказалось, ​название перекликается с грузинскими блюдами и звездными войнами,​ но на тот момент я об этом ничего не подозревал  
 + 
 +Q. Не могу скомпилить движок под ​шестой студий,​ возникает ошибка в процессе компиляции,​ почему так? 
 +A. Вам потребуется Service Pack 5 для MSVC 6.0. Почему возникает данная ошибка мне неизвестно,​ но скорее всего ​это ​внутренний баг ​студии. 
 +Если вы обладаете обпределенными навыками в программировании,​ вы можете попробовать немного модифицировать код для её устранения. 
 +Если ваши попытки увенчаются успехом,​ я внесу исправление в оригинальные исходники. 
 + 
 +Q. Как включить отладочную консоль? 
 +А. Отладочная консоль включается при помощи параметра командной строки -dev (без аргументов),​ либо при помощи параметра -dev с числом от 1 до 5. -dev 1 полностью аналогичен -dev. От цифры зависит кол-во сообщений в консоли. Рекомендуемый уровень -dev 3. -dev 4 аналогичен халфовской комбинации параметров -dev +developer 2. -dev 5 следует включать только при отправке лога при багрепорте. 
 + 
 +Q. Я добавил -dev в командной строки,​ а консоли всё равно нет. Чёзана???​ 
 +A. Убедитесь что в файле gameinfo.txt нету строчки "​secure"​ "​1"​. Данная строчка запрещает использование консоли,​ равно как и включение dev-режима. Проставьте её значение в ноль, либо просто удалите из файла. 
 + 
 +Q. Как включить лог? Параметр -condebug не помогает. 
 +A. Логгирование включается параметром командной строки -log. При этом в корневой директории движка создается текстовый документ с именем engine.log 
 +--------------------------------- 
 +PS. FAQ будет постепенно пополняться при появлении новых актуальных вопросов.
  
-A. Если вы всерьёз хотите осуществлять мои задумки самостоятельно,​ то лучше всего назвать такой проект XashXT:​Custom Build, чтобы не возникало путаницы. Лично я не буду иметь ничего против такого проекта,​ если его реализация будет осуществлена на должном уровне качества. 
playground/playground.1517157516.txt.gz · Последние изменения: 2018/01/28 16:38 — cybermax