Как вытащить модели из игры на unreal engine 4


| 4,937 | уникальных посетителей |
| 47 | добавили в избранное |






Лучше производить все действия с выключенным стимом!
Для этого нужно после распаковки ресурсов, их скопировать в отдельную произвольную папку, чтобы можно было с ними удобно работать, а затем удалить саму папку с игрой вручную.
Вот эту . \Steam\SteamApps\common\Dead by Daylight <—
После удаления игры вручную, запустите проверку целостности кэша игры, и игра скачается заново.
Ваш прогресс и настройки игры это не заденет, тк это хранится в скрытой папке.
Примерно вот тут — C:\Users\ваша_учетная_ запись\AppData\Local\DeadByDaylight
И самое главное: Ребята, НЕ ПЫТАТЕСЬ ЧТО-ТО МЕНЯТЬ В ФАЙЛАХ ИГРЫ, за это ЗАБАНЯТ. те запаковывать ресурсы заново, заменив звуки к примеру.
http://steamcommunity.com/sharedfiles/filedetails/?id=787611115
Скачиваем архив с программами для распаковки файла DeadByDaylight-WindowsNoEditor.pak, который находится в папке . \Steam\SteamApps\common\Dead by Daylight\DeadByDaylight\Content\Paks
Программы для распаковки и просмотра ресурсов игры(моделей, текстур):
Скачать — https://ya di.sk/d/J1E1_n-Pxeqf7
PS.. чтобы скачать, скопируйте ссылку на яндекс диск в адресную строку вашего браузера и уберите пробел между yadi
Далее запускаем unpacker, указываем путь к *.pak файлу, жмем распаковать. После распаковки в корневом каталоге появятся ресурсы игры, их я рекомендую перенести в отдельную папку, а затем удалить папку дбд и скачать его заново. Ну вдруг распакованные ресурсы не понравятся какому-нибудь античиту.
После запускаем программу umodel.exe, через которую можно просматривать модельки и текстуры, она также позволяет делать скриншоты.
После обновления Dead by Daylight до версии 1.4.0, umodel.exe перестал автоматически определять версию движка и начал выдавать ошибку при просмотре моделей, для решения этой проблемы необходимо вручную указывать версию.
Для этого скачиваем последнюю версию umodel с сайта разработчика — http://www.gildor.org/projects/umodel
Запускаем его, ставим галочку — "Override game detection", в первом столбце выбираем — "Unreal engine 4", во втором столбце выбираем — "Unreal engine 4.13", после этого можно просмотривать модели и текстуры.
http://steamcommunity.com/sharedfiles/filedetails/?id=795511627
Для выкорчевывания аудиофайлов нам протребуется сначало распаковать ресурсы игры, а затем перекодировать их в читаемый формат *.ogg.
PS.. формат ogg уже можно прослушивать практически любым проигрывателем и при желании переконвертировать в формат mp3.
PS.. чтобы скачать, скопируйте ссылку на яндекс диск в адресную строку вашего браузера и уберите пробел между yadi
Итак, запускаем unpacker, указываем путь к *.pak файлу, жмем распаковать. После распаковки в корневом каталоге появятся ресурсы игры, их я рекомендую перенести в отдельную папку, а затем удалить папку дбд и скачать его заново. Ну вдруг распакованные ресурсы не понравятся какому-нибудь античиту.
В распакованных файлах ищем папку WwiseAudio, это и есть нужные нам звуки. Заходим в папку пока не натолкнемся на файлы с расширениями *.wem и *.bnk.
Файл wem уже можно спокойно декодировать, это звук.
Файл bnk это своеобразный архив, который содержит в себе звуки формата wem.
Файлы bnk имеют названия, как например Generator, что как бы намекает на звуки генератора.
Файлы раскодировщика необходимо закинуть в папку с файлами wem и bnk, далее перетаскиваем файл bnk на bnkextr.exe и получаем кучу файлов wem с названиями примерно 0001.wem, 0002.wem и тд. Хочу заметить, что разные bnk архивы содержат wem с одними и теми же названиями, поэтому если распаковывать все файлы разом, то они будут заменять друг друга. Рекомендую в папку с раскодировщиком кидать по одному bnk.
После того как мы получим wem файлы, их нужно декодировать, для этого запустите скрипт unpack.bat, после этого следуйте инструкциям на экране командной строки. Как только процесс декодирования завершится вы увидите кучу файлов ogg, которые можно спокойно прослушивать.
Не нужные файлы wem можно удалить, запустив скрипт delwen.bat, запускаете и все файлы wem из каталога будут удалены.
Для удобства, я уже декодировал все звуки и конвентировал в формат mp3:
Скачать набор звуков mp3 от 07.11.2016 — https://ya di.sk/d/CgPgIv7nyEDQR
PS.. чтобы скачать, скопируйте ссылку на яндекс диск в адресную строку вашего браузера и уберите пробел между yadi
- Оценить руководство
- Добавить в избранное
- Поделиться с друзьями
Моя Группа ВК. [vk.com]
Группа вконтакте, где я публикую различные интересности выдернутые из ресурсов игры, например удалось посмотреть на модельку Майкла и Лори еще до того, как они появились в игре. Если вам это интересно, то пожалуйста присоединяйтесь.
Моя Группа Steam.
Создана для того же что и группа ВК. Может стим для кого-то просто удобнее.
Мой YouTube канал.
Мой канал на ютубе, где я размещаю видео гайды и не только.
Экспорт моделей из Unreal Engine в 3Ds Max
Ниже подробная инструкция в 8 шагов + видеоурок на примере моделей из игры Killing Floor.
Для начала работы, помимо собственно 3Ds Max и Unreal Editor, нам понадобятся скрипт ActorX Importer for 3ds Max и распаковщик unreal архивов umodel отсюда.
1. Распаковываем Unreal архив с мешами персонажа. Для Killing Floor это файл KF_Soldier_Trip.ukx в папке Animations. Копируем его в папку с umodel.exe, там же создаем bat файл, в котором пишем
Сохраняем, запускаем, получаем требуемые меши в подпапке KF_Soldier_Trip \SkeletalMesh
2. Распаковываем текстуры для модели. Аналогично предыдущему шагу, берем например KF_Soldier4_Trip_T.utx из Textures, пишем его имя в batник и запускаем. Получаем текстуры в KF_Soldier4_Trip_T \Texture.
Теперь все готово для импорта модели в 3Ds Max.
3. Распаковываем ActorX Importer for 3ds Max. Открываем 3Ds Max и запускаем скрипт ActorXImporter.ms из распакованного архива.

4. В появившемся окошке нажимаем кнопку Import PSK и выбираем нужную мешь, полученную на шаге 1, например, санту DrunkSanta.psk.

5. Накладываем текстуру. В Material Editor щелкаем на спойлере Maps и нажимаем кнопку None напротив Diffuse Color.

6. В Map Browser в Scene Materials выбираем новый материал, дважды нажимаем OK.

7. Возвращаемся в Editor и в Bitmap Parameters загружаем в Bitmap необходимый файл, полученный на шаге 2. В нашем случае Santa_D.tga. Получаем модель с текстурой.

8. Вот и все. Мы успешно экспортировали мешь, скелет и текстуру.

Видеоурок от Grif’а:
Поделиться:
Опубликовано 12 апр 2011 в 14:14. Рубрика: Уроки. Вы можете следить за ответами к этой записи через RSS 2.0. Вы можете оставить отзыв или трекбек со своего сайта.
67 комментариев на «Экспорт моделей из Unreal Engine в 3Ds Max»
На каком шаге возникли проблемы?
С начало с путями не получалось, но я настроил теперь вот что:
Какую модель вы пытаетесь экспортировать? Если нестандартную, то дайте ссылку откуда скачали
DrunkSanta.psk из kf, если чё пиратка …
То есть проблема на шаге 4? Странно. А какая версия 3Ds Max?
Недавно установил 2011, проблема осталось, вот что мне пишет:
if bn.parentname == thebone.name then return bn
Даже не знаю, почему не работает скрипт. Я просто положил его в папку 3dsm max\Scripts и он ни разу не выдал ни одной ошибки
Ура пошло, проблема была в скрипте , ну возьмём к примеру crossbow, как мне анимацию посмотреть и т.д.
Не заню как с оружием, а посмотреть анимацию персонажей можно следующим образом: после экспорта моделей снова открываем окно скрипта и жмем Import PSA. Psa-файл у нас был получен на шаге 1 и находиться в соседней папке с моделью. Загрузится список доступных анимаций. Выбираете нужную и нажимаете Load Track в окне скрипта. Анимация загрузится и начнет проигрываться
Спасибо, помогло, но вот в чём проблема, я с 3ds max ни ни, но модель оружия есть и кости тоже, но там у оружия скин рук другие и анимация в каждом своём файле лежит, как мне руки, например из арбалета вытащить и пихнуть в свою модель, так что бы она совместилось с моими костями ? Ну … как-то так.
С оружием ничем помочь не смогу, я пока занимался только моделями игроков. Скоро выйдет руководство по полной замене модели игрока
А как импортировать карту из игор на основе Unreal Tournament 2004 в всеми любимый 3ДМакес или ДжиМакес(в частности интересуют карты таких игор как UT2004, Killing Floor, и моддинговые карты для UT2004).
(Собственно можно извлечь все «обьект-меши» и текстуры из карты, но как потом это все импортнуть в программу 3Д редактор, чтоб все модели стали по координатам карты, вместе с текстурами? Т.е. необходим полноценный рип всей карты).
Возможно я ошибаюсь, но поступать с картами так же как и моделями нельзя. Для этого в каждой игре есть редактор карт. В 3Ds Max карты для игр не делают точно.
У меня вот проблема с первым шагом:
Скачал umodel, распаковал в папку StaticMesh, копировал KF_Soldier_Trip, вставил туда, создал bat файл, запустил и ничего не произошло
umodel лучше распаковать в отдельную папку «umodel» и в нее же кидать всякие KF_Soldier_Trip и в ней же создавать bat файл. Так же попробуйте убрать ключ -all. Напишите
umodel –export KF_Soldier_Trip.ukx
на 1 шаге возникает ошибка при распаковке :»Found 1 game files (3 skipped)
warning: package nextport was not found
error: unable to find/load package nexport «
Внимательно проверьте содержимое bat файла или напишите его суда. В описании у вас то nextport, то nextport. По моему вы написали nexport вместо -export
umodel –export KF_Soldier_Trip.ukx
pause
проблема в символе «-» перед export сотрите и напишите его заново
Тогда не знаю. У меня ваша проблема решилась заменой «–» на «-»
Я оказался слегка криворукий но заработало.
а можно с помощью umodel запаковать текстуры обратно>?
Нет, это делается с помощью KF Editor в Texture Browser. Выбрать в меню File/Import
При попытке импорта ,а именно при сохранении выдает ошибку : «сouldn’t save package-maybe file is read only? «
Сохранения пакета текстур? Нужно сохранять пакет под другим именем
я меняю имя пакета
Можно посмотреть, какой программой заблокирован файл с помощью утилиты Unlocker http://ru.wikipedia.org/wiki/Unlocker
НЕ получается, импортировать модель . в макс. просто пишет что мол нельзя открыть .до этого шага все гладко. модель брал вот от сюда. http://rasieltournament.ru/load/ut2004_personazhi/male/ik_soldiers_pack/69-1-0-1095
Действительно, эти модели не получается импортировать. Если у вас 3Ds Max 2009, то можете попробовать использовать для импорта этот плагин http://wickedhq.com/index.php?option=com_remository&Itemid=53&func=fileinfo&id=188
В общем выяснилось что сам плагин не при чем, проблема в umodel. Вопрос про некорректное извлечение psk можно задать разработчику тут http://www.gildor.org/smf/index.php/board,2.0.html
народ помогите хоть кто нибудь как мне импортировать вагон и дрезину из игры метро 2033 в Killing Floor в отличном качестве срочно нужна помощь я просто хочу уже карту для игры закончить а с 3D MAX’ом я вообще не дружу кто отлично разбираеться киньте скайп или аську
P.S если что извините если не в ту тему пишу
ActorX Importer for 3ds Max как запустить этот скрипт?
В главном меню выбрать MAXScript/Run Script…
а где material editor? находится кнопка
В северо-восточном направлении. И в меню Rendering/Material Editor
Здравствуйте!
Можно ли таким способом извлечь модели, текстуры и анимацию из игры Borderlands?
А то я пыталась и у меня не вышло. на первом и втором же шаге споткнулась, поскольку после запуска бат-файла ничего не произошло. Замена «–» на «-» ничего не дала.
Насчет анимаций не уверен, а модели с текстурами воможно 100%. C upk файлами слудет обращаться точно так же как с ukx/utx
Почему же ничего не происходит после запуска бат-файла?
Проблема в моей криворукости или в самом юмоделе?
кто ж тут угадает
есть ли у кого-то возможность попробовать вытащить модели из Borderlands? чтобы точно быть уверенной, что я делаю что-то не так.
Возникла проблема на 3 шаге. Медведь помоги. Когда я запускаю ActorXImporter.ms он открывается тупо блокнотом внутри куча текста
Этот файл надо открывать этот файл серез меню 3ds max MAXScript/Run script
у мя проблема со скриптом нажимаю макс -скрипт потом ран – скрипт ну етого скрипта нету как на видео тока папки
все четко все по сценарию проги все скачал етот фарменедж папки вкинул импорт все в папку распаковал \ вкл 3в макс потоммакс скрп \ ран скрпт и нету его тока папки такого значкак как на видео нет читал коменти пишет проблема со скриптом де его взять етот скрипт
Медвед, здорова, это монах, может помнишь) с Бара.
В общем у меня проблема на первом этапе. Текстуры распаковались на ура, а вот с моделями возникла проблема. Вместо папки появляется файлик notify.log, а в нем вот что написано:
******** clone.ukx ********
ERROR: assertion failed: index >= 0 && index < DataCount
operator[]:1008/1008 <- USkeletalMesh::BuildIndicesForLod <- ConvertLod <- USkeletalMesh::ConvertMesh <- USkeletalMesh::Serialize <- LoadObject:SkeletalMesh’clone.TrandoshanMerc’, pos=9367A2, ver=158/1, game=2008 <- UObject::EndLoad <- UnPackage::CreateExport:clone.ukx:354 <- LoadWholePackage <- Main
Заранее спасибо))
Это проблема распаковщика. Можешь задать вопрос на его форуме http://www.gildor.org/smf/. Так же стоит уточнить игру из который взята модель. Такие ситуации были раньше и решить проблему мне не удалось
Спасибо людям написавшим данный мануал! Все деиствительно работает! Теперь в моей игре новые рейдбоссы: Баюм Антарас Закен и п.д. Да да на L2 тоже работает! Только не как не получается с чарами эту штуку провернуть слишком уж много Mesh’эй.
How do you open Umodel… mine just opens and closes whenever I click on it…
It’s a console application without gui so you need use it with command line
Oh, or I guess with a bat file? What’s the command line then?
1. Unpack Unreal archive with characters meshes. In Killing Floor It is KF_Soldier_Trip.ukx file in Animations directory. Copy it to folder with umodel.exe then make bat file with next code
umodel –export –all KF_Soldier_Trip.ukxSave run and it gets required meshes in KF_Soldier_Trip \SkeletalMesh folder.
Did you read this article? In the beginning it describes how to use umodel with bat file
I did yea…. now that you say it, I see it now.. lol, but I thought you had to do it with CMD for some reason…
So I made a bat file and put in the umodel –export –all KF_Soldier_Trip.ukx thingy…. and then nothing happens?
Nvm made it work
Alright, so I made Umodel work… just 2 questions
1. There is suppose to be a map when the…. file thing… is done right? All mine does is pop up the priest guy… and that’s it
2. Where do I put the Actorx files for 3ds Max?
1. that map? I can’t understand
2. put to max folder/scripts
The skeletal mesh, but nvm I made it work also ^^
Thank you dude
вопроса 2 начну с одного. открыл psk модель скриптом actor и изменил . как запаковать обратно? попорядку есле можн пожалуста.и с полигонами проблема как их уменьшить на скрине который я видел показано но той функции неразглядел ProOptimizer ,, версия макса 2009
psk запаковал. как меши скелета и анимаций запаковать обратно в тот формат. какая прога?
Добрый день. Возникла проблема с анимацией. Распаковала все нужные файлы из lineage 2. Загрузила в 3ds Max, наложила текстуры и подгрузила анимацию. Все как бы работает, за одним исключением – голова персонаж при анимации смещена в сторону, хотя вроде бы связана с общим скелетом (в анимации задействована)
либо мешь неправильно привязана к кости, либо кость неправильно анимирована
отзовитесь, если у кого есть опыт в надевании текстур на модели borderlands 2-3. срочно нужна ваша помощь.
UE Viewer
Unreal Engine resource Viewer (UE Viewer), также известный под названиями Umodel и Unreal Model Viewer, является программой для просмотра и экспорта ресурсов из различных игр созданных на базе Unreal Engine.
Возможности
- Загрузка package из более чем 300 игр, основанных на всех версиях Unreal engine
- Визуализация скелетных моделей (SkeletalMesh) с анимацией
- Визуализация внутренней информации о скелетных моделях, такой как привязка вершин к костям и иерархия скелета
- Визуализация вершинных моделей (VertexMesh)
- Визуализация статических моделек (StaticMesh)
- Просмотр поддерживаемых программой типов материалов и их внутренней структуры
- Экспорт skeletal, vertex и static mesh, а также анимаций, в форматах, доступных для импорта данных в программы 3d-моделирования и в Unreal engine
- Экспорт текстур в формате tga или dds
- Экспорт звуков, ScaleForm и FaceFX
Системные требования
- ОС Windows или Linux
- CPU с поддержкой SSE2
- SDL 2.0 (для Windows-версии включено в архив)
- Видеокарта с поддержкой OpenGL 1.1 (рекомендуется OpenGL 2.0)
Ограничения
- Визуализируются не все типы материалов (только простые). Если модель использует неподдерживаемый здесь материал, то вместо последнего используется текстура по умолчанию.
- Аддитивные анимации не поддерживаются.
- Linux-версия программы пока не имеет GUI — пользователь должен использовать командную строку для запуска UE Viewer.
Скачать
Если вам нравится UE Viewer вы можете помочь мне поддерживать этот проект в активном состоянии с помощью donation. Даже небольшие суммы помогают мне улучшать UE Viewer, проводить больше времени над этим проектом, а также это позволяет мне платить за веб-сайт.
| Версия для Win32 | Размер 2.42 Мб |
Обновлено 7 июль, 2023 — 15:12 |
Скачано 1226725 раз |
| Версия для Linux | Размер 539.22 кб |
Обновлено 7 январь, 2022 — 09:59 |
Скачано 34076 раз |
Исходный код
Исходный код UE Viewer доступен на GitHub под пока неопределённой лицензией.
Инсталляция
а) Распакуйте архив в каталог с игрой (например в C:\Games\UT3). В этом случае для просмотра модели из пакета CookedPC/. /CH_AnimHuman вам надо использовать командную строку «umodel.exe CH_AnimHuman»
б) Создайте в любом месте каталог и распакуйте архив в него. В этом случае для запуска придётся указывать путь к файлам игры. Например, «umodel.exe -path=C:/Games/UT3 CH_AnimHuman»
Командная строка
ВНИМАНИЕ! Для начинающих пользователей будет полезно посмотреть обучающие видео и FAQ доступные на этом сайте. Ссылка размещена в начале данной страницы.
Формат командной строки:
Основные опции:
| опции viewer-а | |
| -meshes | при просмотре выводить на экран только модели |
| опции экспортёра | |
| -export | запустить umodel в режиме экспортёра |
| -out=path | задать каталог для экспорта |
| -dds | экспортировать DXT-текстуры в формате DDS |
| -uncook | UE3: umodel будет пытаться определить имя пакета, в котором экспортируемый ресурс находился до cooking-а, и поместит файл в соответствующий каталог |
| -groups | при экспорте файл будет помещён не в папку с типом ресурса (SkeletalMesh, Texture2D и т.п.) а в папку, которая была задана дизайнером при создании пакета |
| -sounds | разрешить экспорт звуков |
| -3rdparty | разрешить экспорт ресурсов ScaleForm и FaceFX |
| общие опции | |
| -path=path | задать путь до папки с игрой; если путь содержит пробелы, то его необходимо заключить в кавычки |
| -noanim/-nomesh/-nostat/-notex | отключить загрузку анимации/SkeletalMesh/StaticMesh/текстур (может быть необходимо из соображений совместимости с конкретной игрой) |
| -game=game | указать umodel что открываемый файл принадлежит игре game; необходимо когда umodel сам не может определить игру; список доступных game можно посмотреть с ключиком -taglist |
| -pkg=package | загрузить дополнительный пакет (можно указывать любое количество ключей -pkg=. ) |
| -ios/-ps3 | указывает, что игра была собрана для платформы iOS или PS3 |
Для получения полного списка доступных опций запустите umodel без агрументов.
Все опции могут быть указаны в любом порядке. Имя пакета — полное или короткое имя файла. При использовании короткого имени обычно надо дополнительно указывать опцию -path=. Некоторые детали станут более понятны после просмотра примеров командных строки ниже.
Примеры использования:
umodel -path=c:/games/ut2004 HumanMaleA
просмотреть все объекты в пакете HumanMaleA
umodel -path=c:/games/ut2004 -meshes HumanMaleA
просмотреть все модели в пакете HumanMaleA
umodel -path=c:/games/ut2004 HumanMaleA MercMaleD
просмотреть модель MercMaleD из пакета HumanMaleA
umodel -path=c:/games/ut2004 -export HumanMaleA MercMaleD
экспортировать модель (SkeletalMesh) MercMaleD из пакета HumanMaleA
umodel -path=c:/games/ut2004 -export HumanMaleA MercMaleD
экспортировать модель (SkeletalMesh) MercMaleD из пакета HumanMaleA , а также все используемые ей ресурсы (анимация, текстуры и т.д.)
umodel -path=c:/games/ut2004 -export HumanMaleA BipedMaleA
экспортировать анимации (MeshAnimation) BipedMaleA из пакета HumanMaleA
umodel -path=c:/games/ut2004 -export HumanMaleA
экспортировать все поддерживаемые объекты из пакета HumanMaleA
umodel -path=c:/games/ut2004 -export *.ukx
экспортировать всё из всех файлов ukx
umodel -path=c:/games/ut2004 -list HumanMaleA
просмотреть содержимое пакета HumanMaleA (имена объектов и имена их классов)
umodel -list c:/games/unreal/music/QueenSong.umx
просмотр (список) содержимого пакета QueenSong.umx из Unreal1. Здесь пакет задан полным именем файла. При этом, если пакет ссылается на ресурсы из других пакетов, всё же желательно прописать ключ -path=. , иначе ресурсы могут быть не найдены
Пользовательский интерфейс
Программа управляется в основном с клавиатуры. Получить подсказку по назначению клавиш можно нажав кнопку <H>. Основные клавиши:
| ESC | выход из программы |
| H | вывод подсказки по клавишам |
| PgUp, PgDown | переключение между загруженными объектами |
| [, ] | переключение между анимациями |
| <, > | перемотка времени в текущей анимации |
| Пробел, X | воспроизведение анимации (одиночное и зацикленное) |
| Ctrl+A | переключение между доступными наборами анимаций (необходимо для просмотра анимаций из UE3) |
| Ctrl+T | «Запомнить» (tag) модель для отображения составных моделей (несколько mesh на одном скелете) |
| F | сфокусировать камеру на отображаемом объекте |
| Ctrl+X | экспортировать отображаемый на экране объект |
| Ctrl+S/Alt+S | сделать снимок экрана (screenshot); при использовании Alt+S изображение будет иметь прозрачный фон |
| Ctrl+Q | скрыть с экрана тексты и отображение осей системы координат |
С помощью мыши можно вращать камеру (левая кнопка мыши), приближать/удалять (правая кнопка) либо перемещать вдоль плоскости экрана (pan, средняя кнопка мыши).
Для наглядной демонстрации возможностей программы рекомендуется просмотреть обучающие видео.
Пожалуйста, не копируйте текст отсюда на свои сайты-форумы! Лучше укажите ссылку на эту страничку. То же самое касается и ссылок для скачивания.
Saved searches
Use saved searches to filter your results more quickly
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session.
Viewer and exporter for Unreal Engine 1-4 assets (UE Viewer).
MetaVerseGames/UModel
Name already in use
- Local
- Codespaces
Use Git or checkout with SVN using the web URL.
Work fast with our official CLI. Learn more about the CLI.
Sign In Required
Please sign in to use Codespaces.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching Xcode
If nothing happens, download Xcode and try again.
Launching Visual Studio Code
Your codespace will open once ready.
There was a problem preparing your codespace, please try again.
Latest commit
Git stats
Files
Failed to load latest commit information.
README.md
UE Viewer is a viewer for visual resources of games made with Unreal engine. Currently all engine versions (from 1 to 4) are supported.
The project was originally named the «Unreal model viewer», however the name was changed in 2011 to meet the request from Epic Games. Please note that «official» project’s name is «UE Viewer», and a short unofficial name of the project is «umodel» (it was left from the older name «Unreal MODEL viewer»).
There’s a place where you may discuss the source code: gildor.org forums.
Getting the source code
The source code is available at GitHub. You may either checkout it with use of any Git client, or download it as a Zip file.
Building the source code
We are using own build system to compile UE Viewer. You may find a Perl script in Tools/genmake. This script generates makefiles from some human-friendly project format. After that you may build generated makefile using ‘nmake’ for Visual Studio or ‘make’ for gcc. Build process is controlled with build.sh script.
To list all options, run build.sh —help . Current options are:
- —64 compile for Windows 64bit
- —debug make a debug version of executable
- —vc <version> specify which Visual Studio version should be used for compilation, default is latest compiler installed on your system
Please note that build.sh is not just a shortcut for calling make -f <makefile> , it performs more actions. It does:
- Generating a makefile for current platform.
- Making UModelTool/Version.h file which contains current build number based on number of Git commits.
- Preprocessing shaders (with executing Unreal/Shaders/make.pl ).
- It has the possibility to compile just a single cpp file from the project (used with Visual Studio Code Ctrl+F7 key).
UE Viewer is compiled using Visual Studio. Required VisualStudio 2013 or newer. Older Visual Studio compilers are not suitable because viewer’s code using some C++11 stuff.
Currently build is performed with Visual C++ 2019.
Build system utilizes GNU Tools for building, in particular — Bash and Perl. I’ve packaged Windows versions of these tools which was a part of MinGW/MSYS project. You can get everything what you need for a build here. This page contains BuildTools. You should download it and extract into some directory (press the green button «Clone or download», then «Download ZIP»). Let’s say you extracted them to C:\BuildTools. After that, add C:\BuildTools\bin to the system’s PATH environment variable. As an alternative it is possible to create a batch file which will temporarily modify PATH and then execute build script. Here’s an example of such file:
To launch a build process without a batch, simply execute
Despite we’re providing only 32-but builds of UE Viewer, it is possible to compile it for 64-bit platform. To do that, you should change a variable in build.sh: PLATFORM should be changed from vc-win32 to vc-win64 . Also 64-bit build could be initiated with launching build.sh —64.
Linux system has the most of dependencies by default. You’ll need to install the following development packages if they’re not available on your system: SDL2, zlib, libpng. Of course, you’ll also need gcc for compiling the project. To build UE Viewer, simply execute the following command from terminal
When compiling for Linux, project will use system’s zlib and libpng libraries. If you want to bundle (statically link) them into umodel executable, you may find and comment the following line in common.project
In this case, Linux build will be performed in the same way as Windows build, with compiling and bundling mentioned libraries.
Visual Studio Code
UE Viewer contains project files needed for opening and running it from Visual Studio Code. Just open viewer’s folder in VSCode, and you’ll get everything. Project already has a build task and launch actions set up. Of course you’ll need a C/C++ extension installed.
VSCode project comes with additional build command which could be bound to a key. Just use
and then Ctrl+F7 key will compile a file currently opened in editor. Of course, it won’t work for headers and other non-cpp files.
By default, Visual Studio Code project performs Debug build. If you want something else, change .vscode/tasks.json file, and remove —debug option from build.sh command.
C runtime library for MSVC
UE Viewer is dynamically linked with CRT library, so it requires CRT DLL files to be installed onto your system. It is possible to statically link with you compiler’s CRT by changing a line in common.project (with cost of growing executable file size):
UE Viewer uses custom CRT library for being able to link against MSVCRT.DLL. MSVCRT.DLL is chosen because it allows to reduce size of UE Viewer distribution without needs to install compiler runtime libraries onto a Windows system — MSVCRT.DLL present on any Windows installation. You may disable MSVCRT.DLL linking by commenting out the line
Previously there were some problems with using msvcrt.dll with Visual Studio compiler 2015 and newer. However all issues has been solved. For those who interested in details, I’ve prepared an article.
If you want to use MSVCRT.DLL, you should extract MSVCRT.zip archive available here to the directory LIBS one level above of UModel directory. So, the directory structure should look like this
Also you may change MSVCRT library path by changing WDKCRT variable in common.project.
Debugging in Visual Studio
UE Viewer was released without a Visual Studio solution. By the way it is still possible to debug it within an IDE. You can build a Debug version of viewer by uncommenting #define MAX_DEBUG 1 in UmodelTool/Build.h and rebuilding the project. After that you’ll get executable with optimizations disabled, and with some extra features. For example, if umodel.exe crashes, and it is started with -debug option, standard Windows window appears with prompt to close program or debug it. You may choose «Debug with Visual Studio» there.
Also you may use —debug parameter for build.sh script. This will generate separate set of object files and link into debug version of the executable (with the same executable file’s name). You may quickly switch between «debug» and «release» builds without having to fully recompile the program.
If you want to debug umodel.exe in Visual Studio without having a crash, you may load it either from IDE ( File | Open | Project/Solution , then select umodel.exe), or you may type
It is recommended to use Visual Studio 2013 IDE or newer because it has more advanced debugging features than previous studio versions. You may copy Tools/umodel.natvis file to C:\Users\Your_user_folder\My Documents\Visual Studio 20NN\Visualizers, and after that you’ll be able to view TArray and FString structures during debug session.
Visual Studio Code
As was mentioned earlier, UE Viewer source code comes with Visual Studio Code project. You may easily edit, launch and debug viewer with it. For debugging, there are 2 configurations: «No arguments» runs UE Viewer with default startup UI, and for command line use you may launch 2nd «Volatile» configuration, which reads command line string from file docs/cmdline.cfg — please refer to Response files documentation for details on its format.
Below is the list of major folders which exists in this repository or which are generated during build process.
The code is not covered with any existing license yet, however I’m thinking about adding BSD 3-clause license. I just probably need help from some people who knows about that more than I (and I don’t like the idea of adding license boilerplate into all source code files).