В HL1 некоторые нестандартные модели вешают игру и она вылетает без сообщений об ошибках.
Понадобилось мне заменить модель ученого на модель ученого в скафандре. Взял отличную модель из Sven Coop. Но в момент активации scripted_sequence (проигрывание анимации) игра вылетает на рабочий стол.
Решил сделать собственную модель, модифицировав стандартную модель ученого из HL. Добавил шлем скафандра и сменил текстуры. Каково было удивление, когда и эта модель тоже повисла!!
Проблема из разряда "критических". То есть, если её не решить, мода не будет.
Навскидку - либо лишняя кость которая пытается что-то потянуть не существующее, либо формат текстуры BMP какой нибудь не такой. Компилится, но движком не воспроизводится. Ты тестил просто модель без анимации? Пробежать мимо можно?
В модел вивере нормально. Когда с ученым взаимодействуешь, стреляешь там в него, и как он падает - все тоже нормально. Виснет именно когда пытаешься активировать анимацию скриптом.
Reaktor добавил 27-07-2009 в 19:32:11:
Заметил закономерность: нормально проигрываются скриптом только те анимации, которые ученый может выполнить самостоятельно в игре без скриптов, например бег, шаг, смерть... а всякие уникальные типа сидения на стуле виснут.
Может, этот факт кому-то о чем-то скажет.
кстати, сидение на стуле у меня вроде работало нормально. Я имею ввиду monster_sitting_cleansuit_scientist.
Вообще, вылеты у меня самого были, но не из-за модели ученого в костюме. Например, модель ученого с журналом из обучения PS2 версии HL проигрывается только с aiscripted.
Но моя личная модель тоже виснет. Значит между ней и cleansuit_scientist есть что-то общее.
Что я сделал:
декомпилил модель, заменил текстуры. затем открыл субмодель чувака в очках, удалил несколько ненужных групп, создал геосферу, удалил передний вертекс (чтоб сделать выемку), подогнал остальные вертексы, сделал еще 4 бокса в виде рамки перед лицом, обернул все текстурой, приварил вертексы к джоинту, скомпилил как reference, скомпилил куц. Из-за того, что я удалил передний вертекс в геосфере, шлем прозрачен изнутри. Еще у меня почему-то не отображалась текстура скафандра, я в модель вивере поставил галочку "chrome", пересохранил и она появилась, хотя ведет себя не так как надо. Вот и все что я сделал.
Reaktor, если ХЛ1 использует UV-mapping для моделей, то тебе необходимо отредактировать развертку (вот пример, тебе нужно будет сделать то же самое с моделью) так, чтобы не один из полигонов не выходил за границу текстуры. Поищи туторы на нужную тебе программу, наверняка найдешь.