Ninja Ripper

Вопросы касающиеся рипа игр при помощи Ninja Ripper, открытии .rip файлов в различных программах и исправлении рипнутых текстур
Сообщение
Автор
streetracer23
Прохожий
Прохожий
Сообщения: 6
Зарегистрирован: 06 дек 2012, 14:39
Благодарил (а): 0
Поблагодарили: 0

Re: Ninja Ripper

#551 Сообщение streetracer23 »

немного разобрался . Но вопросы остались . Можно в лс по подробнее про рип из рана ?

Wlastas
Прохожий
Прохожий
Сообщения: 3
Зарегистрирован: 11 дек 2012, 05:17
Благодарил (а): 0
Поблагодарили: 0

Re: Ninja Ripper

#552 Сообщение Wlastas »

Доброго времени суток
Случайно наткнулся на Вашу програму и был приятно удивлен её мега возможностям.

Моментально и полностью бзглючно удалось вытащить корректные модельки из witcher2 чего не удавалось сделать с помошью 3D Ripper DX
Обрадовавшись, принялся за Diablo3.
И тут также всё получилось, за исключением текстурных координат.
При использовании скрипта к 3dsMax, идущего с текущей версией Ninja Ripper на всех моделях полностью отсутсвует UV маппинг
Я покопался в логе (идет ниже) и выяснил, что в Output vertex format текстурные координаты передаются в крайне странном формате
Развернуть
Semantic: TEXCOORD
SemIndex: 0
Offset : 60
Size : 16
Types Dump: UINT UINT UINT UINT
-естесвенно текущий скрипт ничего не знает об упаковке данных и в итоге мы имеем нулевые uv для всех вершин.

так как вторая 16 байтовая последовательность с семантикой TEXCOORD всегда забита нулями(см лог), я пришел к выводу что два float значения uv хитрым образом упакованы в 16 байт из первого TEXCOORD.

я исследовал содержимое первого TEXCOORD и выяснил, что все они имеют вид
xx,0,0,0, 128/129,0,0,0, xx,0,0,0, 128/129,0,0,0 где 0 и 8 байт содержат различные значения, а 4 и 12 всегда 128 или 129 , что сильно похоже на флаг четности нечетности - хотя по идее uv всегда положительные


Я попробовал напряму конвертировать 0 байт==> u & 8==> v (просто разделив его значение на 256) - в итогде получилось неплохо - (см картинку), но маппинг всё-же неверный (несоотвесвует текстуре + глюки в некоторых местах) - очевидно изза неиспользования 4 и 12 байта.
Изображение
Собсвенно вопрос - как тут упакованы текстурные координаты.
лог файла
Развернуть
IDirect3DDevice9_DrawIndexedPrimitive( 0x0C567720, 4, 3, 0, 150, 3, 192 )
Input primitive topology: eTriangleList
Stream=0
Offset=0
Type =D3DDECLTYPE_FLOAT3
Method=D3DDECLMETHOD_DEFAULT
Usage =D3DDECLUSAGE_POSITION
UsIndx=0

Stream=0
Offset=12
Type =D3DDECLTYPE_UBYTE4
Method=D3DDECLMETHOD_DEFAULT
Usage =D3DDECLUSAGE_NORMAL
UsIndx=0

Stream=0
Offset=16
Type =D3DDECLTYPE_D3DCOLOR
Method=D3DDECLMETHOD_DEFAULT
Usage =D3DDECLUSAGE_COLOR
UsIndx=0

Stream=0
Offset=20
Type =D3DDECLTYPE_D3DCOLOR
Method=D3DDECLMETHOD_DEFAULT
Usage =D3DDECLUSAGE_COLOR
UsIndx=1

Stream=0
Offset=24
Type =D3DDECLTYPE_UBYTE4
Method=D3DDECLMETHOD_DEFAULT
Usage =D3DDECLUSAGE_TEXCOORD
UsIndx=0

Stream=0
Offset=28
Type =D3DDECLTYPE_UBYTE4
Method=D3DDECLMETHOD_DEFAULT
Usage =D3DDECLUSAGE_TEXCOORD
UsIndx=1

---Input Vertex Declaration Dump---
Stream : 0
Semantic: POSITION
SemIndex: 0
Offset : 0
Size : 12
Type : eR32G32B32_FLOAT


Stream : 0
Semantic: NORMAL
SemIndex: 0
Offset : 12
Size : 4
Type : eR8G8B8A8_UINT


Stream : 0
Semantic: COLOR
SemIndex: 0
Offset : 16
Size : 4
Type : eR8G8B8A8_UINT


Stream : 0
Semantic: COLOR
SemIndex: 1
Offset : 20
Size : 4
Type : eR8G8B8A8_UINT


Stream : 0
Semantic: TEXCOORD
SemIndex: 0
Offset : 24
Size : 4
Type : eR8G8B8A8_UINT


Stream : 0
Semantic: TEXCOORD
SemIndex: 1
Offset : 28
Size : 4
Type : eR8G8B8A8_UINT


-------------------------------
---Output vertex format dump---
Semantic: POSITION
SemIndex: 0
Offset : 0
Size : 12
Types Dump: FLOAT FLOAT FLOAT

Semantic: NORMAL
SemIndex: 0
Offset : 12
Size : 16
Types Dump: UINT UINT UINT UINT

Semantic: COLOR
SemIndex: 0
Offset : 28
Size : 16
Types Dump: UINT UINT UINT UINT

Semantic: COLOR
SemIndex: 1
Offset : 44
Size : 16
Types Dump: UINT UINT UINT UINT

Semantic: TEXCOORD
SemIndex: 0
Offset : 60
Size : 16
Types Dump: UINT UINT UINT UINT

Semantic: TEXCOORD
SemIndex: 1
Offset : 76
Size : 16
Types Dump: UINT UINT UINT UINT

-------------------------------
Min/Max Index: 0 149
VertSize=92
---Stream Info For: POSITION---
Stream Number : 0
Stream OffsInBytes: 0
Stream Stride : 32

---Stream Info For: NORMAL---
Stream Number : 0
Stream OffsInBytes: 0
Stream Stride : 32

---Stream Info For: COLOR---
Stream Number : 0
Stream OffsInBytes: 0
Stream Stride : 32

---Stream Info For: COLOR---
Stream Number : 0
Stream OffsInBytes: 0
Stream Stride : 32

---Stream Info For: TEXCOORD---
Stream Number : 0
Stream OffsInBytes: 0
Stream Stride : 32

---Stream Info For: TEXCOORD---
Stream Number : 0
Stream OffsInBytes: 0
Stream Stride : 32

-----Texture desc-----
Level count: 4
Type: D3DRTYPE_TEXTURE
----------------------
Format: D3DFMT_DXT1
Type : D3DRTYPE_SURFACE
Usage : Unknown
Pool : D3DPOOL_MANAGED
MultiSampleType: D3DMULTISAMPLE_NONE
MultiSampleQuality: 0
Width : 32
Height: 32
----------------------
Mesh Texture Stage #0 Saved: S:\capchure\_Ripper\11.12.2012_05.31.02\Frames\Frame0000\Tex_0000_0.dds
-----Texture desc-----
Level count: 5
Type: D3DRTYPE_TEXTURE
----------------------
Format: D3DFMT_DXT5
Type : D3DRTYPE_SURFACE
Usage : Unknown
Pool : D3DPOOL_MANAGED
MultiSampleType: D3DMULTISAMPLE_NONE
MultiSampleQuality: 0
Width : 64
Height: 64
----------------------
Mesh Texture Stage #1 Saved: S:\capchure\_Ripper\11.12.2012_05.31.02\Frames\Frame0000\Tex_0000_1.dds
Mesh saved: S:\capchure\_Ripper\11.12.2012_05.31.02\Frames\Frame0000\Mesh_0000.rip
и сам файл
http://reproprint.ru/Frame0001.zip

black_ninja
Ветеран
Ветеран
Сообщения: 424
Зарегистрирован: 08 дек 2011, 04:17
Благодарил (а): 0
Поблагодарили: 0

Re: Ninja Ripper

#553 Сообщение black_ninja »

Wlastas
Точный ответ даст только анализ шейдера. Дамп шейдеров пока не добавлен, но и с ним там не будет не просто
(анализ дизасма и все такое)


UINT идут после конвертации из формата игры в формат риппера BYTE->DWORD
Оригинальный формат UBYTE4, т.е. 4 значения от 0 до 255


UBYTE это тип целых беззнаковых,
для текстурных координат не нормально, т.к. там "нормальные" значения от FLOAT 0 до 1.0

Короче, разработчики в 4 байта запаковали 8 (2 Float )
Какие развертки получаются у меча?


****POSITION****
-0.45 0.00 0.07
****NORMAL****
72 166 237 00
****COLOR****
255 255 255 255
****COLOR****
00 00 00 255
****TEXCOORD****
82 128 95 129
****TEXCOORD****
00 00 00 00


****POSITION****
-0.45 0.07 0.00
****NORMAL****
161 245 170 00
****COLOR****
255 255 255 255
****COLOR****
00 00 00 255
****TEXCOORD****
107 128 95 129
****TEXCOORD****
00 00 00 00


Видно что используются все 4 значения у координат

Аватара пользователя
Tosyk
Администратор
Сообщения: 1882
Зарегистрирован: 24 авг 2011, 03:11
Благодарил (а): 65 раз
Поблагодарили: 61 раз

Re: Ninja Ripper

#554 Сообщение Tosyk »

ктонибудь рипал с ps2 эмулятора? как оно вообще с новым рипером? нормально? и какие настройки
При копировании материалов сайта ссылка на этот ресурс обязательна.
When copying materials from this site link to this resource is required.

angrycat
Прохожий
Прохожий
Сообщения: 1
Зарегистрирован: 17 дек 2012, 18:56
Благодарил (а): 0
Поблагодарили: 0

Re: Ninja Ripper

#555 Сообщение angrycat »

Доброго времени суток.
Недавно узнал об этой программе. Хотел попытаться достать пару моделек из Far Cry 3, но такое чувство, что у меня полигоны инвертированные. Т.е. я смотрю на грудь модели, но вижу плечи и спину. Пытался экспортировать в obj и открыть другой версией 3ds max - тело и одежда все так же инвертированные.

Не так давно на facepunch рипнули Вааса вполне удачно.
В чем может быть проблема, не подскажете?

Аватара пользователя
Kirov
Мега-Ветеран
Мега-Ветеран
Сообщения: 1230
Зарегистрирован: 04 янв 2012, 16:29
Благодарил (а): 33 раза
Поблагодарили: 59 раз

Re: Ninja Ripper

#556 Сообщение Kirov »

Tosyk писал(а):ктонибудь рипал с ps2 эмулятора? как оно вообще с новым рипером? нормально? и какие настройки
Рипал на дефолтных настройках MGS3. Рипаются только текстуры, инвертированный по RGB.

coyyot
Прохожий
Прохожий
Сообщения: 5
Зарегистрирован: 18 дек 2012, 02:24
Благодарил (а): 0
Поблагодарили: 0

Re: Ninja Ripper

#557 Сообщение coyyot »

Привет. Спасибо за столь уникальную программу, которая рипает с Т-ПОЗОЙ, это очень круто! А теперь о наболевшем:

FAR CRY 3. Рипнул руки, подгрузил в максе, перепробовал все значения uv, то есть от 1-2 до 49-50, от 2-1 до 50-49, от 3-1 до 50-48, размещение текстуры не поправилось. Что делать? Возможно ли что uv не настроить вообще или все же я что-то не так делаю? Тутор читал очень внимательно, переборку тоже, как видите, делал по рекомендациям с тутора. Если кто захочет помочь могу скинуть руки с текстурами, чтобы пощюпать, если захочется. Спасибо!.

Sanya_rnd
Прохожий
Прохожий
Сообщения: 38
Зарегистрирован: 29 окт 2012, 18:22
Благодарил (а): 0
Поблагодарили: 0

Re: Ninja Ripper

#558 Сообщение Sanya_rnd »

coyyot писал(а):Привет. Спасибо за столь уникальную программу, которая рипает с Т-ПОЗОЙ, это очень круто! А теперь о наболевшем:

FAR CRY 3. Рипнул руки, подгрузил в максе, перепробовал все значения uv, то есть от 1-2 до 49-50, от 2-1 до 50-49, от 3-1 до 50-48, размещение текстуры не поправилось. Что делать? Возможно ли что uv не настроить вообще или все же я что-то не так делаю? Тутор читал очень внимательно, переборку тоже, как видите, делал по рекомендациям с тутора. Если кто захочет помочь могу скинуть руки с текстурами, чтобы пощюпать, если захочется. Спасибо!.
http://cgig.ru/forum/viewtopic.php?f=5& ... =510#p3333

coyyot
Прохожий
Прохожий
Сообщения: 5
Зарегистрирован: 18 дек 2012, 02:24
Благодарил (а): 0
Поблагодарили: 0

Re: Ninja Ripper

#559 Сообщение coyyot »

Я видел пост Богдана, только по крайней мере у меня последние 3 скрина не отображаются, rghost говорит что они удалены. То есть я ничего для себя не извлек из этого мини-тутора, может быть уся развязка как раз и находится в последних трех скринах.

Аватара пользователя
Tosyk
Администратор
Сообщения: 1882
Зарегистрирован: 24 авг 2011, 03:11
Благодарил (а): 65 раз
Поблагодарили: 61 раз

Re: Ninja Ripper

#560 Сообщение Tosyk »

coyyot писал(а):Я видел пост Богдана, только по крайней мере у меня последние 3 скрина не отображаются, rghost говорит что они удалены. То есть я ничего для себя не извлек из этого мини-тутора, может быть уся развязка как раз и находится в последних трех скринах.
на этом скрине суть
Изображение
При копировании материалов сайта ссылка на этот ресурс обязательна.
When copying materials from this site link to this resource is required.

Закрыто

Вернуться в «Ninja Ripper»