Page 7 of 49
Re: Ninja Ripper
Posted: Thu Jan 24, 2013 3:50 pm
by Sammie
Fixed your Diablo and LEGOLOTR .rips.
Add special UV-parsing for Dead Island.
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
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
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.
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 !
Re: Ninja Ripper
Posted: Thu Jan 24, 2013 6:36 pm
by Sammie
Funny eyes
Added new rules for your crappy head
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
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