Добавлен Makeba,
опубликован
Продолжаю душить бесполезной инфой трёх с половиной людей, заглядывающих в блоги.
Вступление
Как все знают, сцена битвы Артаса с Иллиданом из финала Фрозен Трона является одной моделью, с соответствующими анимациями и камерами. Но есть там кое-что ещё.
Некие файлы с расширением .mrf. И они не просто лежат мёртвым грузом в архиве, а действительно используются в модели, и не самым очевидным способом.
Вот они, сверху вниз:
Вот они, сверху вниз:
А здесь в текстовом виде
EventObject "MRFX0000" {
ObjectId 173,
EventTrack 1 {
19300,
}
}
EventObject "MRDX0000" {
ObjectId 174,
EventTrack 1 {
22300,
}
}
EventObject "MRFX0001" {
ObjectId 175,
EventTrack 1 {
28133,
}
}
EventObject "MRFX0002" {
ObjectId 176,
EventTrack 1 {
49833,
}
}
EventObject "MRFX0003" {
ObjectId 177,
EventTrack 1 {
55933,
}
}
EventObject "MRFX0004" {
ObjectId 178,
EventTrack 1 {
60633,
}
}
EventObject "MRFX0005" {
ObjectId 179,
EventTrack 1 {
72867,
}
}
EventObject "MRDX0001" {
ObjectId 180,
EventTrack 1 {
36067,
}
}
EventObject "MRDX0002" {
ObjectId 181,
EventTrack 1 {
52433,
}
}
EventObject "MRDX0003" {
ObjectId 182,
EventTrack 1 {
58333,
}
}
EventObject "MRDX0004" {
ObjectId 183,
EventTrack 1 {
62500,
}
}
EventObject "MRDX0005" {
ObjectId 184,
EventTrack 1 {
74633,
}
}
Да, это событийные объекты. Но они имеют коды, которые не указаны в официальной документации Blizzard.
Ковыряем
Я тупо скопипастил эти событийные объекты в другую модель, с изменением номеров кадров срабатывания, и... ничего не произошло. Ни в редакторе, ни в игре никакого эффекта данные событийные объекты не произвели.
UPDT. Нет, воспроизвести эффект в игре у меня получилось, прошу прощения за дезинформацию. Подробнее в комментарии.
Модель битвы воспроизводится из карты через нативку SetCinematicCameraForPlayer. Можно попробовать также. Но я сделал ещё проще и использовал возможность импорта кастомного экрана кампании.
Сделал камеру над ивентами, накидал побольше света.
Сделал камеру над ивентами, накидал побольше света.
И импортировал в кампанию...
Вот оно! Эти событийные объекты выводят (либо удаляют) в нужный кадр плащи Артаса, которые хранятся в виде mrf файлов. И эта технология работает только при выводе на экран моделей через камеру.
UPDT. Внутри обычной игры тоже работает. Подробнее в комментарии.
UPDT. Внутри обычной игры тоже работает. Подробнее в комментарии.
Если открыть файл в хекс-редакторе, то можно найти ссылку на текстуру плаща:
Да, если здесь поменять путь, то текстура поменяется. Но сама форма mrf будет испорчена. Скорее всего, это просто из-за того, что длина пути должна быть точно такой же, чтобы не испортить структуру файла в hex-формате. Но я сделаю по-человечески: возьму текстурку Textures/DungeonDoodad0.blp и импортирую её в кампанию по пути Doodads\Cinematic\ArthasIllidanFight\ArthasCloakFight.blp.
Результат:
Работает! Текстура поменялась.
UPDT. А ещё можно создать фрейм типа SPRITE с этой моделью, и посмотреть на анимации плаща.
Резюмируя
- Работает ли это в рефе?
- Что такое mrf?
Это 3D-модель с анимированными позициями вершин? Я разобрал этот формат, и даже написал скрипт-импортёр для Blender
- Можно ли из этого извлечь пользу обычному варкрафтеру?
P.S. файлик с моделью приложил к посту
`
ОЖИДАНИЕ РЕКЛАМЫ...
Чтобы оставить комментарий, пожалуйста, войдите на сайт.
Отредактирован Makeba
Никогда не слышал про MRF, но теперь если загуглить будет находится этот материал
Бтв, я всё-таки склоняюсь к тому, что это именно модели, что-то типа заранее отрендеренного результата симуляции ткани.