* * * Форумы на Наша-Life THREAD * * * -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- THREAD : [hl2] Проблема с компиляцией Started at 31-01-2009 17:56 by Cheese-Cake Visit at https://bbs.cs-source.ru/showthread.php?threadid=49042 -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 1] Author : Cheese-Cake Date : 31-01-2009 17:56 Title : [hl2] Проблема с компиляцией Вникаю в prop-моделлирование. Очередными граблями стала проблема с компиляцией. Вроде как QC-скрипт не может установить путь к текстурам. Как следствие - эмосетка. Строчка кода [CODE]$cdmaterials models/my_props [/CODE] Компилил батником. Лог начинается с: [CODE]Не удается найти указанный файл. qdir: "c:\sourcesdk_content\hl2\modelsrc\tube001a\" gamedir: "C:\SourceSDK\hl2\" g_path: "tube001a" Working on "tube001a.qc"[/CODE] Непонятно какой он файл найти не может -__- Но далее происходит успешная компиляция модели. Сам батник>>> [CODE]@echo off set path_file=tube001a cls copy %meshes_path%\%path_file%*.smd %modelsrc%\%path_file%\%path_file%*.smd %StudioMdl% %modelsrc%\%path_file%\%path_file%.qc set path_file= pause[/CODE] Попробовал скомпилить кэннонфоддеровским Studio Compiler'ом. При старте компила появляется форма - [см. аттач]. Как и в случае с батником, сама модель нормально компилится. Если текстуру положить в папку materials/models, модель её всё равно не находит. Решение проблемы не нашел ни методом тыка, ни в гугле. Да и может быть, я понятия не имею где именно проблема)) И ещё три вопроса к просвещенным: 1. Папка с текстурами указанная в QC должна содержать в себе текстуры до компиляции, или это не имеет значения? 2. Насколько я понял, накладываемая на референс текстура в максе должна иметь имя будущей VMF-текстуры. Это правило распространяется на физбокс? И вообще, правдиво ли это правило? 3. Имеет ли значение регистр в путях, прописанных в QC-скрипте? -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 2] Author : realspaik Date : 31-01-2009 18:45 Попробуй в кавычках писать путь $cdmaterials "models/my_props" 1. не имеет значения 2.накладываемая в максе текстура должна иметь имя будущего VMT материала. На физбокс можно кидать любую текстуру, главное чтоб она была. 3. вроде не имеет. -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 3] Author : Cheese-Cake Date : 31-01-2009 20:27 Ковычки не помогли. [QUOTE]1. не имеет значения 2.накладываемая в максе текстура должна иметь имя будущего VMT материала. На физбокс можно кидать любую текстуру, главное чтоб она была. 3. вроде не имеет.[/QUOTE] Спасибо : ) Поковырялся. В Studio Compiler'е настроил путь к текстуре, ошибка исчезла. Исправил баг с батником. Теперь всё работает, но проблема осталась. Чекаю vmt... Если пишу в своем vmt путь к "чужой" модели, то текстура нормально отображается. Пишу путь к своей - эмосетка. Медитирую над вариантом, что я неправильно наложил её в Максе. Хоть и имя текстуры идентично. Открыл Макс, наложил текстуру прямо из папки, где она должна находится. Экспорт -> Компил -> Fail -__- Мозг потихоньку закипает. Завтра попробую сделать с нуля и скомпилить какой-нибудь черный кубик с новой текстурой... -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 4] Author : ROCK Date : 31-01-2009 22:49 Подожди, модель после компила ищет в указанной папке (папках) материал (вмт) по имени наложенной на модель в максе текстуре. После этого материал уже указывает текстуру, нормал и тому подобное... Текстуры эти кстати могут быть и в другой папке... Путь к текстуре указывается без расширения от папки материалс (ее писать не надо). Те если текстура в папке материалс/моделс/блабла/моятекстура.втф в вмт надо писать "моделс/блабла/моятекстура" кавычки еще не забудь) -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 5] Author : Cheese-Cake Date : 01-02-2009 09:27 В общем, сделал тестовый box. QC копировал из азбуки. Для prop_physics. ROCK, возможно, ты мне помог. Отключил загружающий память софт, скомпилил. Подождал. Текстурку модель нашла. Хотя звучит всё это забавно : D В Model Viewer'e модель нормально отображается. Но при попытке выбрать её во встроенном в хаммер вьювере, он падает. Без каких-либо сообщений об ошибке. Пошел другим путем. Написал в параметрах энтить (prop_physics, prop_static, prop_dynamic) путь к модели вручную. В хаммере модель нормально отобразилась. Карта скомпилировалась. Из трех энтить в игре появился только prop_physics. (< Видимо, это логично) При старте карты в консоль пишется error: [CODE]KeyValues Error: RecursiveLoadFromBuffer: got EOF instead of keyname in file models/my_props /box001a.mdl mdlkeyvalue, (*prop_data*), [/CODE] И далее эта же ошибка пишется при каждом захвате box'a грави-пушкой. Тем не менее, внешне всё стабильно работает, physbox в порядке, декали от выстрелов на материале остаются. Нагуглил следующее: [QUOTE]EOF = end of file Ошибка значения ключа: RecursiveLoadFromBuffer[/QUOTE] Сам QC: [CODE]$modelname props_tutor\box001a.mdl $cdmaterials models/props_tutor $surfaceprop "plastic" $keyvalues { "prop_data" "plastic" } $scale 1.0 $model "body" "box001a_reference" $sequence idle "box001a_reference.smd" loop fps 15 $collisionmodel "box001a_physbox.smd" { $mass 300.00 $inertia 1.00 $damping 0.00 $rotdamping 0.00 $concave } [/CODE] Такие дела. Есть какие-нибудь решения? ps: Скинте, кому не жалко, типичный QC для модели, которую можно использовать как static и physics. [size=1][i]Cheese-Cake добавил [date]1233482684[/date]:[/i][/size] Забыл написать... Если скомпилить как static всё нормально работает. Никаких ошибок. -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 6] Author : manJak Date : 02-02-2009 12:05 $keyvalues { prop_data { base Plastic.Medium } } :) Plastic.Medium и пр. - в scripts\surfaceproperties.txt (вроде правильно написал). -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- [Post 7] Author : Cheese-Cake Date : 02-02-2009 19:10 [QUOTE]$keyvalues { prop_data { base Plastic.Medium } } [/QUOTE] Скомпилил с этой строчкой. Хаммер теперь не падает. Стало легче, спасибо : )) ...Но ошибка в консоли не исчезла. Кое-как нашел информацию на счет версий двигла. В общем, моя платформа никогда не обновлялась и в этом вся проблема. Всех благодарю за содействие. -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- The messages has been download from Форумы на Наша-Life at https://bbs.cs-source.ru at 23.10.2024 10:06:26