reverseenengineering:soft_ninjaripper:game_engine

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
reverseenengineering:soft_ninjaripper:game_engine [2025/07/16 23:10] Lexreverseenengineering:soft_ninjaripper:game_engine [2025/07/16 23:14] (текущий) – [2. Пакетная конвертация .dds → .png (ImageMagick):] Lex
Строка 174: Строка 174:
 ---- ----
  
 +===== Инструменты и плагины для извлечения ассетов =====
  
 +==== Основные утилиты ====
 +^ Утилита / Плагин      ^ Назначение                            ^ Сайт / Заметки                                ^
 +| **NinjaRipper**       | Захват мешей, текстур, шейдеров       | https://ninjaripper.com/                      |
 +| **NinjaRipper Viewer**| Просмотр и экспорт `.rip` в `.obj`    | Входит в дистрибутив NR                       |
 +| **Noesis**            | Просмотр и конвертация `.rip`, `.dds` | https://richwhitehouse.com                   |
 +| **XnConvert**         | Пакетная конвертация `.dds` в `.png`  | https://www.xnview.com/en/xnconvert/         |
 +| **GIMP + DDS Plugin** | Редактирование `.dds` текстур         | https://github.com/GPUOpen-Tools/Compressonator / https://code.google.com/archive/p/gimp-dds/ |
 +| **ImageMagick**       | CLI-конвертация `.dds → png`          | https://imagemagick.org                       |
 +| **AssetStudio**       | Извлечение ассетов из Unity-игр       | https://github.com/Perfare/AssetStudio       |
 +| **UModel (UE Viewer)**| Экспорт моделей/анимаций из UE игр    | https://www.gildor.org/en/projects/umodel    |
 +| **Crowbar**           | Извлечение/компиляция моделей Source  | https://github.com/ZeqMacaw/Crowbar          |
 +| **RipImport Addon**   | Импорт `.rip` файлов в Blender        | https://github.com/Dummiesman/RipImport      |
 +| **TexTools (Blender)**| Работа с UV и текстурами              | https://github.com/SavMartin/TexTools-Blender|
 +
 +----
 +
 +===== Blender: рекомендуемые аддоны =====
 +
 +==== Для импорта и обработки ====
 +  * **RipImport** — прямой импорт `.rip` файлов с мешами и UV
 +  * **TexTools** — набор инструментов для работы с UV, AO, Normal Map
 +  * **Material Combiner** — автоматизация объединения материалов
 +  * **Auto-Rig Pro / Rigify** — для восстановления анимаций и rig’ов
 +  * **Send to Unreal / Unity FBX exporter** — удобный экспорт из Blender
 +
 +==== Установка: ====
 +  * Скачайте `.zip` → Blender → Edit → Preferences → Add-ons → Install
 +  * Активируйте через чекбокс
 +  * Настройте горячие клавиши и панель инструментов
 +
 +----
 +
 +===== Автоматизация извлечения ассетов =====
 +
 +==== Цель: ====
 +Автоматизировать извлечение `.rip` + конвертацию `.dds → png` + импорт в Blender.
 +
 +==== 1. Автоматическое переименование и организация файлов ====
 +```bash
 +@echo off
 +REM Сортировка ассетов по типу
 +mkdir models
 +mkdir textures
 +
 +move *.rip models\
 +move *.obj models\
 +move *.mtl models\
 +move *.dds textures\
 +
 +==== 2. Пакетная конвертация .dds → .png (ImageMagick): ====
 +
 +<code>
 +
 +bash
 +
 +magick mogrify -format png -path ./textures_png ./textures/*.dds
 +
 +python
 +
 +import bpy
 +import os
 +
 +MODEL_DIR = "C:/models"
 +TEXTURE_DIR = "C:/textures_png"
 +
 +for file in os.listdir(MODEL_DIR):
 +    if file.endswith(".obj"):
 +        bpy.ops.import_scene.obj(filepath=os.path.join(MODEL_DIR, file))
 +
 +for mat in bpy.data.materials:
 +    mat.use_nodes = True
 +    bsdf = mat.node_tree.nodes.get("Principled BSDF")
 +    tex_path = os.path.join(TEXTURE_DIR, mat.name + ".png")
 +    if os.path.exists(tex_path):
 +        tex_image = mat.node_tree.nodes.new("ShaderNodeTexImage")
 +        tex_image.image = bpy.data.images.load(tex_path)
 +        mat.node_tree.links.new(bsdf.inputs['Base Color'], tex_image.outputs['Color'])
 +
 +</code>
 +
 +==== 4. Пакетный экспорт .fbx из Blender: ====
 +
 +<code>bpy.ops.export_scene.fbx(filepath="C:/output/combined.fbx", apply_scale_options='FBX_SCALE_ALL')</code>
 +
 +==== 5. Альтернатива: Noesis скрипт для автоматического экспорта: ====
 +  * Можно использовать .bat с вызовом Noesis в silent-режиме с параметрами конвертации.
 +<code>
 +cmd
 +
 +noesis.exe -export -outdir "converted" model.rip
 +
 +</code>
 +
 +===== Пакетная структура проекта =====
 +
 +<code>
 +project_assets/
 +├── models/
 +│   ├── model_01.rip
 +│   ├── model_01.obj
 +│   └── model_01.mtl
 +├── textures/
 +│   ├── tex_01.dds
 +│   └── tex_01.png
 +├── textures_png/
 +├── blender_scripts/
 +│   └── auto_import.py
 +├── exports/
 +│   └── final_model.fbx
 +
 +</code>
  • reverseenengineering/soft_ninjaripper/game_engine.1752682204.txt.gz
  • Последнее изменение: 2025/07/16 23:10
  • Lex