Категория:FAQ — различия между версиями
Материал из S.T.A.L.K.E.R. Inside Wiki
(/* 14)Взял с карты, импортированой в зд макс - любой обьект. Выравниваю пайвот по обьекту(center to object). Далее помещаю обьект в центр координат,) |
OlegatoR (обсуждение | вклад) м (Откат правок 5.228.4.26 (обсуждение) к версии RedPython) |
||
(не показана 91 промежуточная версия 8 участников) | |||
Строка 1: | Строка 1: | ||
− | == | + | ==SDK 0.4== |
− | |||
− | |||
− | |||
− | + | '''Вопрос:''' При компиляции уровня получаю ошибку связанную с функцией: b_BuildTexture::Vflip: | |
− | + | <ini> | |
− | + | FATAL ERROR | |
− | + | ||
− | + | ||
− | < | + | |
[error]Expression : assertion failed | [error]Expression : assertion failed | ||
Строка 16: | Строка 10: | ||
[error]File : d:\xray-svn\xrlc\build.h | [error]File : d:\xray-svn\xrlc\build.h | ||
[error]Line : 30 | [error]Line : 30 | ||
− | [error]Description : pSurface | + | [error]Description : pSurface |
− | + | </ini> | |
− | + | ||
− | + | '''Ответ:''' Весь смысл заключается в том, что в СДК оставили много лишнего, т.е. для текстур оставили сгенерированные thumbail-ы, а самих текстур нет. И вроде бы всё просто - нужно просто их добавить, но редактор понимает только *.tga файлы.<br /> | |
+ | Нам поможет утилита [http://stalkerin.gameru.net/modules.php?name=Downloads&d_op=viewtheoned&lid=106 dds2tga], которая может пакетно преобразовывать dds файлы в tga. | ||
− | + | Выявляем(смотрим выше в логе компилятора над надписью "FATAL ERROR") все текстуры, на которые ругается редактор, копируем их из распакованных архивов игры в папку утилиты dds2tga (рекомендуется сразу положить екзешник dds2tga в папку ''import''), запускаем CONV_ALL.BAT, в этой же папке появятся файлы *.tga. Копируем их в папку import/(или rawdata/textures/нужная_папка) пакета SDK. Запускаем Level Editor и даём команду images\ check new textures. | |
− | + | ||
− | < | + | ---- |
+ | ---- | ||
+ | '''Вопрос:''' Совместил SDK с игрой, но вылетает с ошибкой: | ||
+ | <ini> | ||
FATAL ERROR | FATAL ERROR | ||
Expression : hXRSE_FACTORY | Expression : hXRSE_FACTORY | ||
Строка 32: | Строка 29: | ||
Line : 38 | Line : 38 | ||
Description : Can't load library: | Description : Can't load library: | ||
− | Arguments : xrSE_Factory.dll</ | + | Arguments : xrSE_Factory.dll |
− | + | </ini> | |
− | + | '''Ответ:''' Вы просто забыли удалить либо переместить все '''.db'''-файлы в другую папку. | |
− | |||
− | + | ---- | |
− | + | ---- | |
+ | '''Вопрос:''' SDK не работает под WinVista/Win7, что делать? | ||
+ | |||
+ | '''Ответ:''' Пропатчить экзешники SDK [[Запускаем_X-Ray_SDK_под_Windows_7_и_Vista|указанным здесь способом]]. | ||
+ | |||
+ | |||
+ | ---- | ||
+ | ---- | ||
+ | '''Вопрос:''' Как запустить SP-карту консольно, то есть через батник? | ||
− | + | '''Ответ:''' Это делается следующим образом: | |
+ | <ini> | ||
+ | @start bin\XR_3DA.exe -start server(%1/single/alife/new) client(localhost) | ||
+ | </ini> | ||
− | |||
− | |||
− | |||
где %1 название общего '''gamedata\spawns\*.spawn''' (например, в финалке нужно подставить - '''all'''). | где %1 название общего '''gamedata\spawns\*.spawn''' (например, в финалке нужно подставить - '''all'''). | ||
− | + | '''Вопрос:''' А как запустить таким же образом мультиплеерную? | |
− | < | + | |
− | где %2 - ваш никнэйм в игре | + | '''Ответ:''' |
+ | <ini> | ||
+ | @start bin\XR_3DA.exe -ltx user_net.ltx -start server(%1/deathmatch) client(localhost/name=%2) | ||
+ | </ini> | ||
+ | |||
+ | где %2 - ваш никнэйм в игре. | ||
Некоторые другие параметры командной строки можно найти [[Расширенные настройки(ч. 3)|тут]]. В скобках можно указывать и другие режимы игры: '''teamdeathmatch''' и '''artefacthunt'''. | Некоторые другие параметры командной строки можно найти [[Расширенные настройки(ч. 3)|тут]]. В скобках можно указывать и другие режимы игры: '''teamdeathmatch''' и '''artefacthunt'''. | ||
− | |||
− | |||
− | |||
− | |||
− | + | ---- | |
− | + | ---- | |
+ | '''Вопрос:''' Как создать LOD-текстуры? или "Поставил дерево, камень из библиотеки объектов GSC... не компилит": | ||
− | + | <ini> | |
− | + | Invalid scene! | |
+ | </ini> | ||
− | + | '''Ответ:''' Читаем [[Создание LOD-текстур|эту]] статью. | |
− | < | + | |
− | Читаем [http://www.stalkerin.gameru.net/wiki/index.php/Создаём_HOM%2C_порталы_и_сектора | + | |
+ | ---- | ||
+ | ---- | ||
+ | '''Вопрос:''' Поставил объект, а на карте после компиляции его нет, что делать? :(( | ||
+ | |||
+ | '''Ответ:''' Такое бывает, если неправильно заданы свойства объекта. Идем в '''Objects->Library Editor''', находим наш объект, например автобусная остановка в '''objects'''(не входит в набор сдк), жмем properties и внизу окна есть выбор между '''surfaces''' и '''Main options''', выбираем последнее, теперь меняем '''Object Type''' с '''Dynamic''' на '''Static'''. Вот теперь объект должен нормально отображаться, такой баг частенько случается с модельками на сайте [http://lproject.3dn.ru/ lproject (ныне недоступен)], так что имейте в виду, когда ставите модели оттуда, что нужно иногда исправлять их исходные параметры. | ||
+ | |||
+ | |||
+ | ---- | ||
+ | ---- | ||
+ | '''Вопрос:''' После построения (build) уровня в лог пишется предупреждение: | ||
+ | |||
+ | <ini> | ||
+ | !Level doesn't contain HOM objects! | ||
+ | </ini> | ||
+ | |||
+ | '''Ответ:''' Читаем [http://www.stalkerin.gameru.net/wiki/index.php/Создаём_HOM%2C_порталы_и_сектора эту] статью. Но к сведению: HOM-объекты для сборки и нормальной работы уровня необязательны, т.е. уровни скомпилируются и движок переваривит их и без отсекателей, так что ставьте на свое усмотрение. Если у вас пишет '''Invalid Scene!''', то это никак не связано с тем, что вы не поставили сектора и порталы ('''HOM'''), а проблема в чем-то другом.<br /> | ||
+ | Но! Если на карте уже есть HOM, то вам явно стоит разобраться с секторами (актуально для картодёров). | ||
+ | |||
+ | |||
+ | ---- | ||
+ | ---- | ||
+ | '''Вопрос:''' Компилятор бессловесно вылетает в середине компиляции! В логе ошибок нет, а последнее, что он просчитывал, приблизительно такого вида: | ||
− | + | <ini> | |
− | < | + | * New phase started: Build UV mapping... |
| | model 'trees\new_trees\trees_sosna_1_02' - REF_lighted. | | | model 'trees\new_trees\trees_sosna_1_02' - REF_lighted. | ||
| Processing... | | Processing... | ||
Строка 87: | Строка 116: | ||
| | ::compact:: 15 verts removed | | | ::compact:: 15 verts removed | ||
| | ::compact:: 38 verts removed | | | ::compact:: 38 verts removed | ||
− | </ | + | </ini> |
− | + | ||
− | + | '''Ответ:''' У вас проблемы с объектами, либо каких-то из них попросту нет, либо они криво созданы в 3dsmax, либо настроены '''неправильно''', либо они где-то очень неудачно пересекаются с другими объектами. | |
− | < | + | |
+ | |||
+ | ---- | ||
+ | ---- | ||
+ | '''Вопрос:''' Карта не компилируется. Компилятор слетает с ошибкой: | ||
+ | |||
+ | <ini> | ||
Expression : fatal error | Expression : fatal error | ||
Function : CBuild::PreOptimize | Function : CBuild::PreOptimize | ||
Строка 98: | Строка 132: | ||
Description : <no expression> | Description : <no expression> | ||
Arguments : * FATAL: 145 invalid faces. Compilation aborted | Arguments : * FATAL: 145 invalid faces. Compilation aborted | ||
− | </ | + | </ini> |
− | + | ||
+ | '''Ответ:''' Геометрия карты содержит вырожденные треугольники (invalid face'ы). | ||
+ | |||
В моделях НЕ должно быть: | В моделях НЕ должно быть: | ||
+ | * очень длинных тонких треугольников; | ||
+ | * потяжек текстур; | ||
+ | * несвязанных рёбрами вершин. | ||
− | + | '''Вопрос:''' Как это исправить? | |
− | - | + | '''Ответ:''' Импортируем список ошибок, полученный при декомпиляции карты converter'ом, в LE ('''Compile-->Import Error List'''), затем подгружаем куски геометрии с подсвеченными полигонами в 3d-редактор и вручную приводим к соответствию вышеуказанным требованиям.<br /> |
+ | Или же на свой страх и риск используем компиляторы с обходом данной ошибки - [http://stalkerin.gameru.net/modules.php?name=Downloads&d_op=viewtheoned&lid=391 для SoC] и [http://stalkerin.gameru.net/modules.php?name=Downloads&d_op=viewtheoned&lid=434 для CS/CoP]. | ||
− | |||
− | + | ---- | |
− | < | + | ---- |
+ | '''Вопрос:''' Как запустить '''Shader Editor''', или "А вот это выскочило, когда я попытался запустить .exe-файл": | ||
+ | |||
+ | <ini> | ||
Expression : F | Expression : F | ||
Function : I:xray-svn-trunkxrCoreELocatorAPI.cpp | Function : I:xray-svn-trunkxrCoreELocatorAPI.cpp | ||
Строка 116: | Строка 158: | ||
Description : Can't open file: | Description : Can't open file: | ||
Arguments : fs.ltx | Arguments : fs.ltx | ||
− | </ | + | </ini> |
− | + | ||
− | + | ||
− | + | ||
− | + | '''Ответ:''' Создать в папке ...'''LevelEditor''' .bat-файл, в котором написать: | |
− | + | ||
− | + | <ini> | |
+ | @start bins\ShaderEditor.exe | ||
+ | </ini> | ||
− | + | Если у вас подобная ошибка с другими '''.bat''' фаилами, возможно, вам нужно установить '''[http://connect.creativelabs.com/developer/Wiki/OpenAL%20Installer%20for%20Windows.aspx OpenAL 1.1]'''. | |
− | |||
− | + | ---- | |
− | Как? Хм... Вот что для этого надо:<br> | + | ---- |
+ | '''Вопрос:''' Где в SDK запрятан редактор ANM-файлов? | ||
+ | |||
+ | '''Ответ:''' | ||
+ | '''1).''' Создаем новый объект.<br /> | ||
+ | '''2).''' Задаем ему тип '''dynamic'''.<br /> | ||
+ | '''3).''' Добавляем на карту и отмечаем флаг '''motionable'''.<br /> | ||
+ | '''4).''' Заходим в его свойства и видим редактор '''anm'''. | ||
+ | |||
+ | Подробнее о создании камер см. [[Создание_камеры_(катсцены)|эту]] статью. | ||
+ | |||
+ | |||
+ | ---- | ||
+ | ---- | ||
+ | '''Вопрос:''' Как именно надо делать модель в 3ds Max, чтоб в сталкере она работала? | ||
+ | |||
+ | '''Ответ (устарело):''' Как? Хм... Вот что для этого надо:<br> | ||
- Ящик пива.<br> | - Ящик пива.<br> | ||
- Стакан хорошей травы.<br> | - Стакан хорошей травы.<br> | ||
Строка 138: | Строка 193: | ||
- Крепкие нервы.<br> | - Крепкие нервы.<br> | ||
Условия:<br> | Условия:<br> | ||
− | - ВСЕ Элементы модели должны быть затекстурены иначе при экспорте будет ошибка: "'''Bad Submaterial. Export Failed'''"<br> | + | - ВСЕ Элементы модели должны быть затекстурены, иначе при экспорте будет ошибка: "'''Bad Submaterial. Export Failed'''"<br> |
- '''НИКАКИХ''' групп сглаживания. Иначе в СДК будет ошибка: "'''Invalid Smooth group! MAX Type'''" И крэш компилятора.<br> | - '''НИКАКИХ''' групп сглаживания. Иначе в СДК будет ошибка: "'''Invalid Smooth group! MAX Type'''" И крэш компилятора.<br> | ||
− | - '''НИКАКИХ''' | + | - '''НИКАКИХ''' операций типа "'''Boolean'''", "'''ProBoolean'''", "'''Connect'''" и т. п... Чревато ошибкой "'''Invalid Faces'''".<br> |
- '''НИКАКИХ''' "потяжек" текстур. Это ещё одна разновидность "'''Invalid Faces'''"<br> | - '''НИКАКИХ''' "потяжек" текстур. Это ещё одна разновидность "'''Invalid Faces'''"<br> | ||
- Экспортятся только меши, поли, и примитивы. Никаких групп и ассемблов!<br> | - Экспортятся только меши, поли, и примитивы. Никаких групп и ассемблов!<br> | ||
Строка 146: | Строка 201: | ||
- Чем меньше полигонов в модели - тем лучше. | - Чем меньше полигонов в модели - тем лучше. | ||
− | |||
− | < | + | ---- |
+ | ---- | ||
+ | '''Вопрос:''' При экспорте OGF появляется такое сообщение: | ||
+ | |||
+ | <ini> | ||
+ | ..Export skeleton geometry (Compute bone bounding volume...) | ||
Bone 'root' has invalid shape. | Bone 'root' has invalid shape. | ||
Bone 'connectbone01' has invalid shape. | Bone 'connectbone01' has invalid shape. | ||
Bone 'connectbone02' has invalid shape. | Bone 'connectbone02' has invalid shape. | ||
− | Export failed.</ | + | Export failed. |
+ | </ini> | ||
− | Когда будете в | + | '''Ответ:''' Когда будете в SDK выбирать кости и делать Generate Shape, выбирате только те кости, к которым есть привязка, данном случае - выбираем все кости, кроме тех, на которые ругается AE, то есть root, connectbone01, connectbone02 соответственно. |
− | + | ||
− | + | ||
− | После того, как поставите объект куда надо - идём туда, где "включали пайвот" и нажимаем '''Reset Pivot''' - непосредственно перед экспортом. И экспортируйте на здоровье. Если объектов - много - выделяем их все, и также "сбрасываем" '''Pivot'''. | + | |
− | ИЛИ | + | ---- |
+ | ---- | ||
+ | '''Вопрос:''' Взял с карты, импортированой в 3ds Max - любой обьект. Выравниваю пайвот по обьекту (center to object). Далее помещаю обьект в центр координат, экспортирую. А в LE, при спавне этого обьекта - он оказывается хз где, а не по пайвоту. Подскажите как правильно выровнять надо. | ||
+ | |||
+ | '''Ответ:''' После того, как поставите объект куда надо - идём туда, где "включали пайвот" и нажимаем '''Reset Pivot''' - непосредственно перед экспортом. И экспортируйте на здоровье. Если объектов - много - выделяем их все, и также "сбрасываем" '''Pivot'''.<br> | ||
+ | ИЛИ<br> | ||
Центрировать пайвот по обьекту, поставить в центр и в утилитах нажать '''Reset xForm'''. | Центрировать пайвот по обьекту, поставить в центр и в утилитах нажать '''Reset xForm'''. | ||
+ | |||
+ | Для Maya перед экспортом геометрии сцены необходимо обнулить текущие трансформации (''Modify -> Freeze Transformations'', ''Modify -> Reset Transformations'') и удалить историю конструирования. | ||
+ | |||
+ | |||
---- | ---- | ||
+ | ---- | ||
+ | '''Вопрос:''' Ошибка после запуска игры с новыми левелами: | ||
+ | |||
+ | <ini> | ||
+ | FATAL ERROR | ||
+ | |||
+ | [error]Expression : ai().game_graph().header().levels().end() != I | ||
+ | [error]Function : CALifeGraphRegistry::setup_current_level | ||
+ | [error]File : E:\stalker\patch_1_0004\xr_3da\xrGame\alife_graph_registry.cpp | ||
+ | [error]Line : 91 | ||
+ | [error]Description : Graph point level ID not found! | ||
+ | |||
+ | stack trace: | ||
+ | </ini> | ||
+ | |||
+ | '''Ответ:''' Вы забыли добавить в геймдату файл '''game.graph'''.<br /> | ||
+ | ''В версии за 10.09.08 аивраппера бардака, если соединять новые левелы, '''level_changer''''ы(переходы между уровнями) нормально не работали, в текущей версии исправлено.'' | ||
+ | |||
+ | |||
+ | ---- | ||
+ | ---- | ||
+ | '''Вопрос:''' У меня выбивает ошибку "Scene must be empty before editing library" при входе в '''Objects->Library Editor''', подскажите что делать? | ||
+ | |||
+ | '''Ответ:''' Воспользоваться переводчиком с английского: "Сцена должна быть пуста перед редактированием библиотеки". Выполните в главном меню '''File -> Clear'''. | ||
+ | |||
+ | == SDK 0.5/0.6/0.7 == | ||
+ | |||
+ | '''Вопрос:''' Не работает '''xrAI''' для ЧН из патча 0.6 для SDK. | ||
+ | |||
+ | '''Ответ:''' Вам нужно распаковать скрипты установленной у вас версии игры в папку SDK, в качестве примера [http://stalkerin.gameru.net/downloads/scripts_7.rar скрипты патча 1.5.7]. | ||
+ | |||
+ | |||
+ | ---- | ||
+ | ---- | ||
+ | '''Вопрос:''' В СДК 0.4, 0.5 (0.6) при расстановке объектов они появляются прямо перед камерой в воздухе, и их приходится постоянно спускать на землю. | ||
+ | |||
+ | '''Ответ:''' Нажмите на верхней панели LE кнопку '''Object Snap Toggle'''. | ||
+ | |||
+ | |||
+ | ---- | ||
+ | ---- | ||
+ | '''Вопрос:''' При запуске SDK выдает ошибку '''0xc0150002'''. Что делать? | ||
+ | |||
+ | [[Файл:XrLC error0xc0150002.png]] | ||
+ | |||
+ | '''Ответ:''' Обновить [http://www.microsoft.com/downloads/details.aspx?displaylang=ru&FamilyID=10cc340b-f857-4a14-83f5-25634c3bf043 .NET Framework]. | ||
+ | |||
+ | |||
+ | ---- | ||
+ | ---- | ||
+ | '''Вопрос:''' Вылетает '''Shader Editor''' с '''invalid floating operation(point)'''. | ||
+ | |||
+ | '''Ответ:''' Скорей всего у вас не установлен '''[http://connect.creativelabs.com/developer/Wiki/OpenAL%20Installer%20for%20Windows.aspx OpenAL 1.1]''' | ||
+ | |||
+ | |||
+ | ---- | ||
+ | ---- | ||
+ | '''Вопрос:''' Во время работы выводится ошибка ''invalid float operation'', в логе появляется запись следующего вида: | ||
+ | |||
+ | <ini>FATAL ERROR | ||
+ | |||
+ | [error]Expression : b | ||
+ | [error]Function : X:\stalker_addon\sources\engine\xrCore\Xr_ini.cpp | ||
+ | [error]File : X:\stalker_addon\sources\engine\xrCore\Xr_ini.cpp | ||
+ | [error]Line : 670 | ||
+ | [error]Description : name[...] already exist in section[...\x-raysdk(3-cs)\editors\maps\z_test.level] | ||
+ | |||
+ | stack trace:</ini> | ||
+ | |||
+ | Далее подобная же ошибка происходит при попытке установки на карту любого объекта. Что делать? | ||
+ | |||
+ | '''Ответ:''' Как правило, эта ошибка вызывается файлом '''rt_object_props.ltx'''. Закройте SDK и удалите его, а лучше припишите ''del rt_object_props.ltx'' первой строкой в bath-файл, запускающий LE. | ||
+ | [[Image:Sdk_faq1.jpg|left|thumb|Расположение файла rt_object_props.ltx]] | ||
+ | <br style="clear:both;"> | ||
+ | |||
+ | |||
+ | ---- | ||
+ | ---- | ||
+ | '''Вопрос:''' При попытке использования некоторых объектов стандартной библиотеки (например, из набора ''statics\dead_body\'') выдается ошибка о недостающей текстуре. | ||
+ | |||
+ | '''Ответ:''' Не включенные в SDK текстуры можно найти в распакованных архивах игры. Скопируйте нужные в ''editor\gamedata\textures\''. | ||
+ | |||
+ | |||
+ | ---- | ||
+ | ---- | ||
+ | '''Вопрос:''' Является ли 150000 полигонов максимумом для карты? | ||
+ | |||
+ | '''Ответ:''' Определённо нет, но увлекаться хай-поли геометрией всё же не стоит. | ||
+ | |||
+ | |||
+ | ---- | ||
+ | ---- | ||
+ | '''Вопрос:''' Какой 3d-редактор является "родным" для Сталкера? | ||
+ | |||
+ | '''Ответ:''' Однозначно - Maya. | ||
+ | |||
+ | |||
+ | ---- | ||
+ | ---- | ||
+ | '''Вопрос:''' На статике нет детальной текстуры, а в SDK есть! Что делать? | ||
+ | |||
+ | '''Ответ:''' Чтобы были видны детальные текстуры на драфте, нужно компилировать с параметром '''Jitter samples 4-medium'''. | ||
+ | |||
+ | '''Вопрос:''' А как прописать детальную текстуру? | ||
+ | |||
+ | '''Ответ:''' | ||
+ | |||
+ | *'''Images-->Check New Textures-->OK'''. | ||
+ | *Выбираем нужную текстуру и настраиваем: | ||
+ | :*'''Type''' - terrain | ||
+ | :*'''Details''' - Use As Diffuse | ||
+ | :*'''Texture''' - Выбираем нужную из папки detail | ||
+ | :*'''Scale''' - Масштабирование текстуры, например мп атп = 24.5, затон 110 | ||
+ | :*'''ОK'''. | ||
+ | |||
+ | |||
+ | ---- | ||
+ | ---- | ||
+ | '''Вопрос:''' После компиляции на максимальных поверхности становятся "гранеными" - компилятор игнорирует заданные в 3d-редакторе группы сглаживания. Что делать? | ||
+ | |||
+ | '''Ответ:''' Начиная с "Чистого неба", GSC поменяли алгоритмы сглаживания в движке. Используйте ключ '''-nosmg''' в случае декомпилированной конвертером геометрии '''или''' экспортируйте самостоятельно созданные в Maya объекты с помощью [http://stalkerin.gameru.net/modules.php?name=Downloads&d_op=viewtheoned&lid=436 '''официального''' Maya-экспортера '''для ЧН''']. Во втором случае автоматически исключается и проблема со сглаживанием в AE (но повторюсь, только для самостоятельно созданной и экспортированной оф. экспортером геометрии). | ||
+ | |||
+ | |||
+ | ---- | ||
+ | ---- | ||
+ | '''Вопрос:''' LE тормозит при отображении спаун-элементов, в частности, персонажей-людей. Как быть? | ||
+ | |||
+ | '''Ответ:''' По умолчанию всем устанавливаемым на карту NPC назначается одна и та же модель (visual), её необходимо сменить самостоятельно. После этого "тормоза" должны исчезнуть (не проверено, подлежит рассмотрению). | ||
+ | |||
+ | |||
+ | ---- | ||
+ | ---- | ||
+ | '''Вопрос:''' Каков размер ячейки (ноды) сетки навигации ИИ? | ||
+ | |||
+ | '''Ответ:''' 0.7x0.7м. | ||
+ | |||
+ | |||
+ | ==Скрипты== | ||
+ | |||
+ | '''Вопрос:''' Как сделать, чтобы игра не вылетала при введении вырезанных монстров? | ||
+ | |||
+ | '''Ответ:''' Многие часто сталкиваются с тем, что при попытке добавления монстров не попавшими в финальную версию игра может вылетать. Попробую рассказать, как это дело можно исправить. [[Новые монстры|Читаем...]] | ||
+ | |||
+ | |||
+ | ==Некоторые ограничения движка X-Ray== | ||
+ | |||
+ | * Максимальное количество костей в скелетной модели - 64. | ||
+ | * Максимальное количество '''видов''' LOD-объектов на локации - 64 (склейка 2048x2048px). | ||
+ | |||
+ | |||
+ | ---- | ||
+ | ---- | ||
+ | --dev&Loxotron сентябрь 2008 (MSD) | ||
--Loxotron&Haron 7:12 19 июля 2008 (MSD) | --Loxotron&Haron 7:12 19 июля 2008 (MSD) | ||
Строка 168: | Строка 388: | ||
--Loxotron 7:12 8 января 2008 (MSD) | --Loxotron 7:12 8 января 2008 (MSD) | ||
+ | |||
+ | --Srv, FL!NT, RedPython январь 2011 (UTC) |
Текущая версия на 21:47, 26 декабря 2016
SDK 0.4
Вопрос: При компиляции уровня получаю ошибку связанную с функцией: b_BuildTexture::Vflip:
FATAL ERROR [error]Expression : assertion failed [error]Function : b_BuildTexture::Vflip [error]File : d:\xray-svn\xrlc\build.h [error]Line : 30 [error]Description : pSurface
Ответ: Весь смысл заключается в том, что в СДК оставили много лишнего, т.е. для текстур оставили сгенерированные thumbail-ы, а самих текстур нет. И вроде бы всё просто - нужно просто их добавить, но редактор понимает только *.tga файлы.
Нам поможет утилита dds2tga, которая может пакетно преобразовывать dds файлы в tga.
Выявляем(смотрим выше в логе компилятора над надписью "FATAL ERROR") все текстуры, на которые ругается редактор, копируем их из распакованных архивов игры в папку утилиты dds2tga (рекомендуется сразу положить екзешник dds2tga в папку import), запускаем CONV_ALL.BAT, в этой же папке появятся файлы *.tga. Копируем их в папку import/(или rawdata/textures/нужная_папка) пакета SDK. Запускаем Level Editor и даём команду images\ check new textures.
Вопрос: Совместил SDK с игрой, но вылетает с ошибкой:
FATAL ERROR
Expression : hXRSE_FACTORY
Function : I:\xray-svn-trunk\editors\LevelEditor\Edit\ESceneSpawnTools.cpp
File : I:\xray-svn-trunk\editors\LevelEditor\Edit\ESceneSpawnTools.cpp
Line : 38
Description : Can't load library:
Arguments : xrSE_Factory.dll
Ответ: Вы просто забыли удалить либо переместить все .db-файлы в другую папку.
Вопрос: SDK не работает под WinVista/Win7, что делать?
Ответ: Пропатчить экзешники SDK указанным здесь способом.
Вопрос: Как запустить SP-карту консольно, то есть через батник?
Ответ: Это делается следующим образом:
@start bin\XR_3DA.exe -start server(%1/single/alife/new) client(localhost)
где %1 название общего gamedata\spawns\*.spawn (например, в финалке нужно подставить - all).
Вопрос: А как запустить таким же образом мультиплеерную?
Ответ:
@start bin\XR_3DA.exe -ltx user_net.ltx -start server(%1/deathmatch) client(localhost/name=%2)
где %2 - ваш никнэйм в игре.
Некоторые другие параметры командной строки можно найти тут. В скобках можно указывать и другие режимы игры: teamdeathmatch и artefacthunt.
Вопрос: Как создать LOD-текстуры? или "Поставил дерево, камень из библиотеки объектов GSC... не компилит":
Invalid scene!
Ответ: Читаем эту статью.
Вопрос: Поставил объект, а на карте после компиляции его нет, что делать? :((
Ответ: Такое бывает, если неправильно заданы свойства объекта. Идем в Objects->Library Editor, находим наш объект, например автобусная остановка в objects(не входит в набор сдк), жмем properties и внизу окна есть выбор между surfaces и Main options, выбираем последнее, теперь меняем Object Type с Dynamic на Static. Вот теперь объект должен нормально отображаться, такой баг частенько случается с модельками на сайте lproject (ныне недоступен), так что имейте в виду, когда ставите модели оттуда, что нужно иногда исправлять их исходные параметры.
Вопрос: После построения (build) уровня в лог пишется предупреждение:
!Level doesn't contain HOM objects!
Ответ: Читаем эту статью. Но к сведению: HOM-объекты для сборки и нормальной работы уровня необязательны, т.е. уровни скомпилируются и движок переваривит их и без отсекателей, так что ставьте на свое усмотрение. Если у вас пишет Invalid Scene!, то это никак не связано с тем, что вы не поставили сектора и порталы (HOM), а проблема в чем-то другом.
Но! Если на карте уже есть HOM, то вам явно стоит разобраться с секторами (актуально для картодёров).
Вопрос: Компилятор бессловесно вылетает в середине компиляции! В логе ошибок нет, а последнее, что он просчитывал, приблизительно такого вида:
* New phase started: Build UV mapping... | | model 'trees\new_trees\trees_sosna_1_02' - REF_lighted. | Processing... | | model 'trees\new_trees\trees_spil_01' - 2 subdivisions | | model 'props\objects\musor\trash_kamaz_fura' - REF_lighted. | | model 'props\objects\musor\trash_lada_lod' - 2 subdivisions | | model 'props\objects\musor\trash_lada_lod' - REF_lighted. | | ::compact:: 248 verts removed | | ::compact:: 377 verts removed | | ::compact:: 70 verts removed | | ::compact:: 67 verts removed | | ::compact:: 72 verts removed | | ::compact:: 108 verts removed | | ::compact:: 102 verts removed | | ::compact:: 15 verts removed | | ::compact:: 38 verts removed
Ответ: У вас проблемы с объектами, либо каких-то из них попросту нет, либо они криво созданы в 3dsmax, либо настроены неправильно, либо они где-то очень неудачно пересекаются с другими объектами.
Вопрос: Карта не компилируется. Компилятор слетает с ошибкой:
Expression : fatal error Function : CBuild::PreOptimize File : D:\xray-svn\xrLC\xrPreOptimize.cpp Line : 132 Description : <no expression> Arguments : * FATAL: 145 invalid faces. Compilation aborted
Ответ: Геометрия карты содержит вырожденные треугольники (invalid face'ы).
В моделях НЕ должно быть:
- очень длинных тонких треугольников;
- потяжек текстур;
- несвязанных рёбрами вершин.
Вопрос: Как это исправить?
Ответ: Импортируем список ошибок, полученный при декомпиляции карты converter'ом, в LE (Compile-->Import Error List), затем подгружаем куски геометрии с подсвеченными полигонами в 3d-редактор и вручную приводим к соответствию вышеуказанным требованиям.
Или же на свой страх и риск используем компиляторы с обходом данной ошибки - для SoC и для CS/CoP.
Вопрос: Как запустить Shader Editor, или "А вот это выскочило, когда я попытался запустить .exe-файл":
Expression : F
Function : I:xray-svn-trunkxrCoreELocatorAPI.cpp
File : I:xray-svn-trunkxrCoreELocatorAPI.cpp
Line : 63
Description : Can't open file:
Arguments : fs.ltx
Ответ: Создать в папке ...LevelEditor .bat-файл, в котором написать:
@start bins\ShaderEditor.exe
Если у вас подобная ошибка с другими .bat фаилами, возможно, вам нужно установить OpenAL 1.1.
Вопрос: Где в SDK запрятан редактор ANM-файлов?
Ответ:
1). Создаем новый объект.
2). Задаем ему тип dynamic.
3). Добавляем на карту и отмечаем флаг motionable.
4). Заходим в его свойства и видим редактор anm.
Подробнее о создании камер см. эту статью.
Вопрос: Как именно надо делать модель в 3ds Max, чтоб в сталкере она работала?
Ответ (устарело): Как? Хм... Вот что для этого надо:
- Ящик пива.
- Стакан хорошей травы.
- 3Ds Max 7,8. (+ SP3 Recommended)
- Сутки свободного времени (как минимум)
- Крепкие нервы.
Условия:
- ВСЕ Элементы модели должны быть затекстурены, иначе при экспорте будет ошибка: "Bad Submaterial. Export Failed"
- НИКАКИХ групп сглаживания. Иначе в СДК будет ошибка: "Invalid Smooth group! MAX Type" И крэш компилятора.
- НИКАКИХ операций типа "Boolean", "ProBoolean", "Connect" и т. п... Чревато ошибкой "Invalid Faces".
- НИКАКИХ "потяжек" текстур. Это ещё одна разновидность "Invalid Faces"
- Экспортятся только меши, поли, и примитивы. Никаких групп и ассемблов!
- X-Ray Materials в максе использовать КРАЙНЕ нежелательно. Плагин глючный, и часто "роняет" макс. Материал "Standart" вполне подойдёт. А шейдеры и прочий хлам - настраивать в Actor Editor.
- Чем меньше полигонов в модели - тем лучше.
Вопрос: При экспорте OGF появляется такое сообщение:
..Export skeleton geometry (Compute bone bounding volume...) Bone 'root' has invalid shape. Bone 'connectbone01' has invalid shape. Bone 'connectbone02' has invalid shape. Export failed.
Ответ: Когда будете в SDK выбирать кости и делать Generate Shape, выбирате только те кости, к которым есть привязка, данном случае - выбираем все кости, кроме тех, на которые ругается AE, то есть root, connectbone01, connectbone02 соответственно.
Вопрос: Взял с карты, импортированой в 3ds Max - любой обьект. Выравниваю пайвот по обьекту (center to object). Далее помещаю обьект в центр координат, экспортирую. А в LE, при спавне этого обьекта - он оказывается хз где, а не по пайвоту. Подскажите как правильно выровнять надо.
Ответ: После того, как поставите объект куда надо - идём туда, где "включали пайвот" и нажимаем Reset Pivot - непосредственно перед экспортом. И экспортируйте на здоровье. Если объектов - много - выделяем их все, и также "сбрасываем" Pivot.
ИЛИ
Центрировать пайвот по обьекту, поставить в центр и в утилитах нажать Reset xForm.
Для Maya перед экспортом геометрии сцены необходимо обнулить текущие трансформации (Modify -> Freeze Transformations, Modify -> Reset Transformations) и удалить историю конструирования.
Вопрос: Ошибка после запуска игры с новыми левелами:
FATAL ERROR [error]Expression : ai().game_graph().header().levels().end() != I [error]Function : CALifeGraphRegistry::setup_current_level [error]File : E:\stalker\patch_1_0004\xr_3da\xrGame\alife_graph_registry.cpp [error]Line : 91 [error]Description : Graph point level ID not found! stack trace:
Ответ: Вы забыли добавить в геймдату файл game.graph.
В версии за 10.09.08 аивраппера бардака, если соединять новые левелы, level_changer'ы(переходы между уровнями) нормально не работали, в текущей версии исправлено.
Вопрос: У меня выбивает ошибку "Scene must be empty before editing library" при входе в Objects->Library Editor, подскажите что делать?
Ответ: Воспользоваться переводчиком с английского: "Сцена должна быть пуста перед редактированием библиотеки". Выполните в главном меню File -> Clear.
SDK 0.5/0.6/0.7
Вопрос: Не работает xrAI для ЧН из патча 0.6 для SDK.
Ответ: Вам нужно распаковать скрипты установленной у вас версии игры в папку SDK, в качестве примера скрипты патча 1.5.7.
Вопрос: В СДК 0.4, 0.5 (0.6) при расстановке объектов они появляются прямо перед камерой в воздухе, и их приходится постоянно спускать на землю.
Ответ: Нажмите на верхней панели LE кнопку Object Snap Toggle.
Вопрос: При запуске SDK выдает ошибку 0xc0150002. Что делать?
Ответ: Обновить .NET Framework.
Вопрос: Вылетает Shader Editor с invalid floating operation(point).
Ответ: Скорей всего у вас не установлен OpenAL 1.1
Вопрос: Во время работы выводится ошибка invalid float operation, в логе появляется запись следующего вида:
FATAL ERROR [error]Expression : b [error]Function : X:\stalker_addon\sources\engine\xrCore\Xr_ini.cpp [error]File : X:\stalker_addon\sources\engine\xrCore\Xr_ini.cpp [error]Line : 670 [error]Description : name[...] already exist in section[...\x-raysdk(3-cs)\editors\maps\z_test.level] stack trace:
Далее подобная же ошибка происходит при попытке установки на карту любого объекта. Что делать?
Ответ: Как правило, эта ошибка вызывается файлом rt_object_props.ltx. Закройте SDK и удалите его, а лучше припишите del rt_object_props.ltx первой строкой в bath-файл, запускающий LE.
Вопрос: При попытке использования некоторых объектов стандартной библиотеки (например, из набора statics\dead_body\) выдается ошибка о недостающей текстуре.
Ответ: Не включенные в SDK текстуры можно найти в распакованных архивах игры. Скопируйте нужные в editor\gamedata\textures\.
Вопрос: Является ли 150000 полигонов максимумом для карты?
Ответ: Определённо нет, но увлекаться хай-поли геометрией всё же не стоит.
Вопрос: Какой 3d-редактор является "родным" для Сталкера?
Ответ: Однозначно - Maya.
Вопрос: На статике нет детальной текстуры, а в SDK есть! Что делать?
Ответ: Чтобы были видны детальные текстуры на драфте, нужно компилировать с параметром Jitter samples 4-medium.
Вопрос: А как прописать детальную текстуру?
Ответ:
- Images-->Check New Textures-->OK.
- Выбираем нужную текстуру и настраиваем:
- Type - terrain
- Details - Use As Diffuse
- Texture - Выбираем нужную из папки detail
- Scale - Масштабирование текстуры, например мп атп = 24.5, затон 110
- ОK.
Вопрос: После компиляции на максимальных поверхности становятся "гранеными" - компилятор игнорирует заданные в 3d-редакторе группы сглаживания. Что делать?
Ответ: Начиная с "Чистого неба", GSC поменяли алгоритмы сглаживания в движке. Используйте ключ -nosmg в случае декомпилированной конвертером геометрии или экспортируйте самостоятельно созданные в Maya объекты с помощью официального Maya-экспортера для ЧН. Во втором случае автоматически исключается и проблема со сглаживанием в AE (но повторюсь, только для самостоятельно созданной и экспортированной оф. экспортером геометрии).
Вопрос: LE тормозит при отображении спаун-элементов, в частности, персонажей-людей. Как быть?
Ответ: По умолчанию всем устанавливаемым на карту NPC назначается одна и та же модель (visual), её необходимо сменить самостоятельно. После этого "тормоза" должны исчезнуть (не проверено, подлежит рассмотрению).
Вопрос: Каков размер ячейки (ноды) сетки навигации ИИ?
Ответ: 0.7x0.7м.
Скрипты
Вопрос: Как сделать, чтобы игра не вылетала при введении вырезанных монстров?
Ответ: Многие часто сталкиваются с тем, что при попытке добавления монстров не попавшими в финальную версию игра может вылетать. Попробую рассказать, как это дело можно исправить. Читаем...
Некоторые ограничения движка X-Ray
- Максимальное количество костей в скелетной модели - 64.
- Максимальное количество видов LOD-объектов на локации - 64 (склейка 2048x2048px).
--dev&Loxotron сентябрь 2008 (MSD)
--Loxotron&Haron 7:12 19 июля 2008 (MSD)
--Neo][ 9:13, 27 января 2008 (MSD)
--Loxotron 7:12 8 января 2008 (MSD)
--Srv, FL!NT, RedPython январь 2011 (UTC)
Страницы в категории «FAQ»
{{#ifeq:2|1|Эта категория содержит только следующую страницу.|Эта категория содержит следующие 2 страниц из 2.}}