Page 7 of 49

Re: Ninja Ripper

Posted: Thu Jan 24, 2013 3:50 pm
by Sammie
deadca7 wrote:
Sammie wrote:Download the script again.
The plugin works with almost everything I have tested today, great work man.

These are the two rips I got right now that still does not work.
http://filebeam.com/1c6541ab934bb3a37e5e5aec840c4abb

It's the doodads in Diablo 3 and LEGO The Lord Of The Rings

Edit:

Looks like Dead Island has problems too.
http://filebeam.com/5e0e842b7bdd1d30fc1b5c91c6d1afc8
Fixed your Diablo and LEGOLOTR .rips.

Add special UV-parsing for Dead Island.
Image

Also add support for manual texture-names. Replace the _0 / _1 of your texture_names with _diff, _norm, _spec if available.
If your Mesh has the name "Mesh_0123.rip", rename the textures to "Tex_0123_diff.dds" and "Tex_0123_norm.dds"

[Download new plugin v1.10]

Re: Ninja Ripper

Posted: Thu Jan 24, 2013 4:43 pm
by deadca7
Damn you work fast, thank you. I have tried 6 more games and the plugin works like a charm. Gonna try some more.

I took a look through the Diablo 3 models again, there are still some that are messed up.
http://filebeam.com/167e3c90d32784b314cc27dcd3091c5e

Re: Ninja Ripper

Posted: Thu Jan 24, 2013 5:19 pm
by Sammie
deadca7 wrote:
Damn you work fast, thank you. I have tried 6 more games and the plugin works like a charm. Gonna try some more.

I took a look through the Diablo 3 models again, there are still some that are messed up.
http://filebeam.com/167e3c90d32784b314cc27dcd3091c5e
Yeah, I see.. its a tricky calculation, but I think, now I have the correct formula. [Download again].
Check more Diablo-.rips. If something looks weird, upload again pls. But if the number-range for the calculation is getting to high I must implement a better game-detection. ;)

Re: Ninja Ripper

Posted: Thu Jan 24, 2013 5:30 pm
by RacingFreak
Brilliant work! I will test it over the weekend with no doubt :wink:

Re: Ninja Ripper

Posted: Thu Jan 24, 2013 5:37 pm
by deadca7
I went through 350 Diablo 3 models, and these three roofs were the only ones messed up.

http://filebeam.com/e94a8169cddb6373a78b05157602f53c

Re: Ninja Ripper

Posted: Thu Jan 24, 2013 5:43 pm
by Sanya
http://cgig.ru/forum/viewtopic.php?f=5& ... =550#p3424
http://cgig.ru/forum/viewtopic.php?f=5& ... 3467#p3467

2 posts about Diablo 3.

Main idea:

Diablo's UV are stored with extra offset, which can be simply restored to usual format with function:

Code: Select all

float Decode(byte b1, byte flag)
        {
            float rez = 0; //flag=128
            if (flag == 129) rez += 0.5f;
            rez += 0.5f / 255 * b1;
            return rez;
        }
Or some sort of. I'm not really familiar with all of these stuffs. :{

Re: Ninja Ripper

Posted: Thu Jan 24, 2013 5:52 pm
by Sammie
Sanya wrote: Diablo's UV are stored with extra offset, which can be simply restored to usual format with function:

Code: Select all

float Decode(byte b1, byte flag)
        {
            float rez = 0; //flag=128
            if (flag == 129) rez += 0.5f;
            rez += 0.5f / 255 * b1;
            return rez;
        }
Or some sort of. I'm not really familiar with all of these stuffs. :{
The formula doesnt fit for all models, cuz there is not only a 129 flag.. its a range between 123 and 133 (128 +/- 5).
You have to add extra 0.5 for every number above 128 and subtract 0.5 for every number below 128.
The flag-line should be: if(flag != 128) rez -= ((128-flag)*0.5f


@deadca7
fixed, download again

Re: Ninja Ripper

Posted: Thu Jan 24, 2013 6:01 pm
by Sanya
Доброго времени суток
Еще раз хочу поблагодарить создателя программы за столь крутой инструмент.
Возвращаясь к теме импорта из Dyablo3 (моя запись на 56стр, к сожалению не понял как туда сделать линк), упаковка оказалась довольно простой - 4 и 12 байты, как я и думал, являются флагом, в даннонм случае 128 - значения до 0,5f, 129 - больше 0,5f, тоесть с этим флагом они получают двойную байтовую точность - 512 - что очевидно им хватает.
готовая функция
Hello all.
I'd say thank the author of this program.
Back to Diablo 3. After several reseach I found that it's pretty simple: 4 and 12 bytes, as I thouht, are flag, in this case 128 - value to 0.5f, 129 - more than 0.5f. And as you see, with this flag they get (tex coords?) double byte accuracy - 512 - what they exactly need. Here's the ready func: (from post above).



I dunno, but this guy talking about it very reliable x) At least I tried to help :roll:

Re: Ninja Ripper

Posted: Thu Jan 24, 2013 6:06 pm
by Sammie
hehe, yes - his formula is correct (for 129 only) but incomplete for all other numbers 123-133. :wink:

Re: Ninja Ripper

Posted: Thu Jan 24, 2013 6:10 pm
by deadca7
Looks like Battlefield 3 is messed up.

http://filebeam.com/6c8cf969b7b245d69bbeb474cf1452c0

I have noticed that every Unreal Engine model has the normals flipped. Is that something that could be fixed in the script ? Have to press F4 in Noesis to enable face cull, to see the models.

Look at this Medal of Honor Warfighter head !

Image

Re: Ninja Ripper

Posted: Thu Jan 24, 2013 6:36 pm
by Sammie
Funny eyes :D

Added new rules for your crappy head
Image

Re: Ninja Ripper

Posted: Thu Jan 24, 2013 7:00 pm
by Sanya
I have noticed that every Unreal Engine model has the normals flipped. Is that something that could be fixed in the script ? Have to press F4 in Noesis to enable face cull, to see the models.

eh, what's a point to rip from UE games, when we have umodel? x)

Re: Ninja Ripper

Posted: Thu Jan 24, 2013 7:15 pm
by deadca7
I just find it easier to capture the model there and then, instead of looking through the .upk files for the model. Guess it's called lazy ;)

Edit 1:
I thought Max Payne 3 had some messed up UV, but it was the texture. Removed link. Looks like the plugin is really solid now.

Edit 2:
Looks like I was wrong about Diablo 3, did three more rips, and there are still messed up models.
http://filebeam.com/128af0847584640a8c5dc9825c9c8a6c

Re: Ninja Ripper

Posted: Thu Jan 24, 2013 7:52 pm
by Sammie
Not really.. code is fine.. but this diablo-models have another blocksize

search for "self.BlockSize == 92" and replace through "(self.BlockSize == 92 or self.BlockSize == 104 or self.BlockSize == 120)"
I really should rewrite this whole part in the next days :D Different mesh-types in one game is bad.

Re: Ninja Ripper

Posted: Thu Jan 24, 2013 8:16 pm
by Sanya
deadca7 wrote:I just find it easier to capture the model there and then, instead of looking through the .upk files for the model. Guess it's called lazy ;)

Edit 1:
I thought Max Payne 3 had some messed up UV, but it was the texture. Removed link. Looks like the plugin is really solid now.

Edit 2:
Looks like I was wrong about Diablo 3, did three more rips, and there are still messed up models.
http://filebeam.com/128af0847584640a8c5dc9825c9c8a6c
little advice:use shotcuts with comands like: -meshes -nostat (models with skeleton only). Almost of player models are in _P archives, or in common data one. So it's not that hard, instead of looking at whole level/rip/export and take alook finally :D