Продолжаю душить бесполезной инфой трёх с половиной людей, заглядывающих в блоги.
Вступление
Как все знают, сцена битвы Артаса с Иллиданом из финала Фрозен Трона является одной моделью, с соответствующими анимациями и камерами. Но есть там кое-что ещё. 
Некие файлы с расширением .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. файлик с моделью приложил к посту
 
                        
                        
                    
 BLOG-MAKEBA
                                BLOG-MAKEBA
                            
 
                    
                




 
                        
                    