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

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


xash3d:ru:частые_вопросы

Различия

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

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

xash3d:ru:частые_вопросы [2014/01/30 15:34] (текущий)
f00nt создано
Строка 1: Строка 1:
 +**Частые вопросы**
  
 +----
 +**Что такое Xash3D?**
 +
 +Xash3D - это игровой движок,​ совместимый с движком GoldSource от Valve LLC, на котором,​ в частности,​ основана игра Half-Life, Counter-Strike и множество других игр.
 +
 + 
 +
 +**Насколько высока совместимость?​**
 +
 +Совместимость движков составляет приблизительно 85%. Это значит,​ что подавлюящее большинство модов и игр под движок GoldSource должны корректно работать под Xash3D без каких-либо доработок,​ просто по факту установки. Исключение составляют игры, которые были спроектированы под Steam-версию GoldSource, поскольку использовали недокументированные особенности движка,​ что значительно затрудняет их адаптацию. Но я надеюсь,​ что к финальной версии это будет успешно преодолено.
 +
 + 
 +
 +**Зачем нужен Xash3D, если можно просто играть в те же игры под GoldSource?​**
 +
 +По ряду причин:​
 +
 +  * Недавние изменения,​ которые Valve внесла в движок GoldSource, по отзывам пользователей привели к несовместимости с некоторыми модами. В Xash3D же обеспечение совместимости имеет высокий приоритет. ​
 +  * В Xash3D исправлено множество ошибок оригинального GoldSource, которые там, возможно,​ никто исправлять не собирается. ​
 +  * Xash3D имеет лучшую оптимизацию и как следствие более высокий FPS, что актуально для нетбуков. ​
 +  * Движок не имеет привязки к Steam, которая зачастую создает больше проблем,​ нежели удобства. ​
 +  * Движок непрерывно развивается и у вас есть уникальная возможность попросить добавить какую-либо новую фичу, которая с большой долей вероятности появится уже в следующей версии. Понятное дело что в случае с GoldSource это невозможно. ​
 +  * Движок имеет открытый исходный код и распространяется под лицензией [[http://​ru.wikipedia.org/​wiki/​GNU_Lesser_General_Public_License|LGPL]],​ что позволяет изучить любимую игру изнутри,​ а возможно и модифицировать её для собственных нужд. ​
 + 
 +
 +**Как создавался Xash3D, если исходников GoldSource нигде нет в свободном доступе?​ Вы утащили сорцы у Valve?**
 +
 +Изначально совместимость с GoldSource не планировалась совсем. Предполагалось использовать только похожий формат моделей,​ а всё остальное было бы совершенно несовместимо. При этом движок позиционировался,​ как очередной Generic Engine многоцелевого назначения. Однако три года разработки в очередной раз показали полную несостоятельность такого подхода,​ поскольку разработка движка в отрыве от конкретной игры, занятие очень увлекательное,​ но совершенно бессмысленное. Не имея возможности протестировать движок даже на стабильность 10 -минутного геймплея (просто по причине его отстутствия) его код понемногу обрастал багами,​ выявить которые на паре-тройке тестовых карт не представлялось возможным по определению. В то же время многие пользователи,​ видя определенное сходство с движком GoldSource (главным образом из-за схожего формата моделей),​ просили меня переписать исходный код движка таким образом,​ чтобы движок оказался полностью совместимым с Half-Life и его модами. И вот, в конце апреля – начале мая 2010 года разработка движка полностью сменила направление и взяла курс на полную совместимость с GoldSource. Положение осложнялось еще и тем, что исходников GoldSource не было в свободном доступе. Поэтому воссоздавать исходники приходилось опираясь на общеизвестные факты о происхожении GoldSource, построенном на симбиозе Quake, QuakeWorld и Quake II, чьи исходники,​ как известно,​ давно открыты и находятся в свободном доступе. Частично пробел помогли восполнить Half-Life SDK с игровой частью кода, частично — исходные коды Half-Life 2 beta. Ну и наконец,​ когда этой информации оказывалось недостаточно,​ недостающие сведения добывались методом “черного ящика” при помощи оригинального GoldSource. Метод, вкратце,​ заключается в том, что в движок посылается некий набор данных,​ после чего возвращается нечто уже обработанное движком,​ и на анализированнии значений входных и выходных данных делаются предположения о логике работы. Подтверждением того, что я двигаюсь в правильном направлении,​ служили игры, которые выглядели и работали совершенно одинаково как на GoldSource, так и на Xash3D.
 +
 +**Примечание:​** сам автор движка уже с версии 0.75 начал переодически путаться,​ что же именно у него запущено в данный момент:​ GoldSource или Xash3D :-)
 +
 + 
 +
 +**Как вы приняли решение открыть исходники движка?​ Ведь первоначальные версии были закрыты**.
 +
 +В некотором смысле на принятие этого решения повлиял один из участников нашего форума,​ красочно расписывавший будущее движка в случае его открытости. Лично я отношусь к подобным заявлениям с изрядной долей скептицизма,​ но тем не менее принял решение открыть исходные коды движка,​ поскольку там действительно было много интересных решений,​ которые вполне могли бы пригодиться,​ например,​ для Quake-коммунити или для портирования Xash3D под другие платформы.
 +
 + 
 +
 +**Какая версия движка последняя,​ на данный момент?​**
 +
 +Последняя версия на данный момент — 0.95. Финальной версии движок достигнет только тогда, когда в нём будет реализован полный набор возможностей из Half-Life.
 +
 + 
 +
 +**Меня заинтересовал ваш проект,​ могу ли я сделать игру на вашем движке?​**
 +
 +Xash3D унаследовал основные черты своего родителя в плане отсутствия привязок к какой-то определённой игровой папке. Поэтому для создания совершенно отдельной игры нет никаких препятствий. Автор движка точно так же не имеет против этого никаких возражений и готов оказать вам базовую консультацию по техническому устройству движка и его основным возможностям.
 +
 + 
 +
 +**А если я захочу продать свою игру на вашем движке?​**
 +
 +Вопрос достаточно сложный. Поскольку Xash3D распространяется под лизцензией [[http://​ru.wikipedia.org/​wiki/​GNU_Lesser_General_Public_License|LGPL]],​ то лично мне никаких отчислений делать не требуется. Однако движок использует в своем составе библиотеку vgui.dll от игры Half-Life версии 1.1.0.8, которая является собственностью Valve LLC. При разработке коммерческого проекта вам придется вырезать эту часть кода из движка и игровых библиотек,​ соответственно. Впрочем такого рода вещи лучше обсуждать со штатным юристом компании.
 +
 + 
 +
 +**Меня заинтересовал ваш проект,​ как я могу ему помочь?​**
 +
 +Например,​ оформлением документации,​ созданием интернет-ресурса,​ посвященного движку,​ переводом документации на английский язык, бета-тестированием. Либо поддержать автора материально,​ заслав определенную сумму денег на электронный кошелёк за номером
 +410011011597633
 +в системе Yandex.Деньги.
 +
 +Либо в системе WebMoney на кошелёк
 +R921161786039
 +
 + 
 +
 +**Будет ли в Xash3D добавлена поддержка GCF-архивов?​**
 +
 +Очень навряд ли. Дело в том, что мне никогда не попадались любительские моды, упакованные в GCF, а сам Half-Life уже отошёл от использования формата GCF. Кроме того Steam предполагает достаточно хитрую иерархию папок и архивов,​ что приведет к путанице.
 +
 + 
 +
 +**Какие инструменты вы использовали при создании движка?​**
 +
 +Microsoft Visual Studio Enterprise Edition 6.0 + Service Pack 5 + Processor Pack. А для редактирования исходников Asm_Ed.
 +
 + 
 +
 +**Почему проект называется Xash? Что означает это слово?​**
 +
 +Когда я выбирал название для будущего движка,​ хотелось придумать короткое непереводимое слово, по аналогии с “SONY”. Из нескольких вариантов остановился на “Xash”. Правда,​ как потом оказалось,​ название перекликается с грузинскими блюдами и звездными войнами,​ но на тот момент я об этом ничего не подозревал.
 +
 +**Не могу скомпилить движок под шестой студий,​ возникает ошибка в процессе компиляции,​ почему так?**
 +
 +Вам потребуется Service Pack 5 для MSVC 6.0. Почему возникает данная ошибка мне неизвестно,​ но скорее всего это внутренний баг студии.
 +Если вы обладаете обпределенными навыками в программировании,​ вы можете попробовать немного модифицировать код для её устранения.
 +Если ваши попытки увенчаются успехом,​ я внесу исправление в оригинальные исходники.
 +
 +**Как включить отладочную консоль?​**
 +
 +Отладочная консоль включается при помощи параметра командной строки -dev (без аргументов),​ либо при помощи параметра //-dev// с числом от //1// до //5//. //-dev 1// полностью аналогичен //-dev//. От цифры зависит кол-во сообщений в консоли. Рекомендуемый уровень -dev 3. -dev 4 аналогичен халфовской комбинации параметров //-dev +developer 2//. //-dev 5// следует включать только при отправке лога при багрепорте.
 +
 +**Я добавил //-dev// в командной строки,​ а консоли всё равно нет. Чёзана???​**
 +
 +Убедитесь что в файле //​gameinfo.txt//​ нету строчки //secure 1//. Данная строчка запрещает использование консоли,​ равно как и включение dev-режима. Проставьте её значение в ноль, либо просто удалите из файла.
 +
 +**Как включить лог? Параметр //​-condebug//​ не помогает.**
 +
 +Логгирование включается параметром командной строки //-log//. При этом в корневой директории движка создается текстовый документ с именем engine.log
xash3d/ru/частые_вопросы.txt · Последние изменения: 2014/01/30 15:34 — f00nt