Page 1 of 7

Real Racing 3 (Android)

Posted: Thu Apr 04, 2013 8:04 pm
by TomWin
What about Real Racing 3 models, here is Porsche 918 RSR:
http://www.4shared.com/archive/ySNhcXQC ... 18rsr.html

Re: Real Racing 3 (Android)

Posted: Wed Jun 12, 2013 7:47 am
by huckleberrypie
TomWin wrote:What about Real Racing 3 models, here is Porsche 918 RSR:
Sorry for the bump, but I'd like to have the models ripped, too. The format appears to be M3G, but idk as to how we can open it for editing.

EDIT: Header appears to be standard, but it can't be opened by any known M3G viewers out there.

Re: Real Racing 3 (Android)

Posted: Sun Oct 27, 2013 8:33 pm
by TomWin
and now Real Racing 3 has many new cool models like Porsche 964 Speedster, Lexus IS '14 and much more

Re: Real Racing 3 (Android)

Posted: Wed Jan 22, 2014 3:15 pm
by barti
Sorry for bumping an old thread, but I have recently started work on a MAXScript for this model format. I'm currently able to import vertex and face data for all vehicles. Pictured below is the lod_a model of the 2013 Hyundai WRC (as it is called in the game).
Image Image
Unfortunately, the UV data is a bit more tricky. According to the format, there are three 2-byte vertices per UV. I tried reading them as half floats, but the result looks like this:
Image

This is my MAXScript code (sorry it's so messy, I plan to clean it up once I fix the UVs):
Obsolete script. Click here for the newest version.

Re: Real Racing 3 (Android)

Posted: Wed Jan 22, 2014 4:21 pm
by shakotay2
if you uploaded a model sample I could have a look at.

(But don't use such annoying fxxxing hoster like 4shared, please,
which requires you to share your email address.)

Re: Real Racing 3 (Android)

Posted: Wed Jan 22, 2014 5:39 pm
by barti

Re: Real Racing 3 (Android)

Posted: Wed Jan 22, 2014 9:42 pm
by shakotay2
thx! :)
well, I had a look at 2013_mclaren_mp412c_e.m3g,
offset 0x6AC1 where 1358 uvw sets are assumed to be found.
The resulting word values look better but don't show a proper uv map either.
I thought of a problem with the w value but the data block ends at 0x8A94
so it's size is 1358x6 (decimal).

You posted "According to the format, there are three 2-byte vertices per UV"
- could you give a link to the format specifications?

as half floats (undivided)
0.000477 0.000031 0.000049
0.000477 0.000031 0.000049
0.000477 0.000031 0.000049
0.000052 0.000471 0.000038
0.000052 0.000469 -109312.000000
0.000045 0.000476 -105856.000000
0.000045 0.000480 0.000037
0.000031 0.000483 -102784.000000
0.000031 0.000487 0.000037
0.000055 0.000459 -94208.000000
0.000051 0.000463 -93504.000000
0.000044 0.000468 -86848.000000
0.000031 0.000470 -80640.000000
-101184.000000 0.000468 -86400.000000
-86144.000000 0.000463 -93504.000000
-79168.000000 0.000459 -94208.000000
-84032.000000 0.000469 -109312.000000
-98752.000000 0.000476 -106176.000000
-100416.000000 0.000480 0.000037
-107264.000000 0.000476 0.000046
0.000031 0.000480 0.000046
0.000042 0.000476 0.000046
0.000049 0.000469 0.000046
0.000052 0.000467 0.000045

as words (divided by 16384.0)
vt 0.247131 0.000549 0.037720
vt 0.247131 0.000549 0.037720
vt 0.247131 0.000549 0.037720
vt 0.044800 0.245544 0.014526
vt 0.044861 0.245056 3.979248
vt 0.030579 0.246948 3.975952
vt 0.029236 0.247925 0.013794
vt 0.000305 0.248535 3.973022
vt 0.000000 0.249634 0.013123
vt 0.049500 0.242493 3.964844
vt 0.042847 0.243652 3.964172
vt 0.028015 0.244812 3.957825
vt 0.000427 0.245300 3.951904
vt 3.971497 0.244690 3.957397
vt 3.957153 0.243652 3.964172
vt 3.950500 0.242493 3.964844
vt 3.955139 0.245056 3.979248
vt 3.969177 0.246948 3.976257
vt 3.970764 0.247925 0.013794
vt 3.977295 0.246826 0.032654
vt 0.000000 0.247864 0.032532
vt 0.022705 0.246826 0.032654
vt 0.038452 0.245117 0.030823
vt 0.043396 0.244446 0.029358

(divided by 65536.0 would give values <1.0)

Re: Real Racing 3 (Android)

Posted: Wed Jan 22, 2014 10:08 pm
by barti
Thanks for looking into it! :)

Here is a link to the format specifications:
https://jcp.org/aboutJava/communityproc ... index.html

EDIT: I've decided to check if the second vertex array (two 2-byte vertices) is definitely not the UV array... Turns out I was wrong! I couldn't read them as half floats, but using your method (reading words and dividing by 16384.0) I now have UV maps! Thank you very much for pointing me in the right direction :)

Image

Re: Real Racing 3 (Android)

Posted: Thu Jan 23, 2014 1:00 am
by shakotay2
that's fine! :)
(Looks to me as if dividing by 2048.0 (and applying an offset of -31.0 to tv)
would be the better choice.)

Thank you, too, for the link to the very informative document! (283 pages to read :D )

Re: Real Racing 3 (Android)

Posted: Thu Feb 06, 2014 1:42 pm
by huckleberrypie
Are there any possible dummies and/or other metadata that we can use for putting custom RR3 models back into the game? And dude, you did quite a 'swell job with extracting them models. I'm pretty much convinced that Firemonkeys used a non-standard variant of the M3G/JSR-184 format, and from what it seems it turns out to be correct.

Re: Real Racing 3 (Android)

Posted: Sat Feb 08, 2014 9:27 pm
by barti
Certainly, for example the .points file in each vehicle's directory contains dummies (lights, door hinges etc)
Image

Also I've tried to make some improvements to the script recently. I used the code for importing normals from Chipicao's scripts and material assignment is now automatic. Unfortunately textures still have to be applied manually, because the texture names are generic (for exaple Vehicle Exterior_badges instead of 2013_koenigsegg_agera_badges.etc.dds). There are .bin files in the root vehicles which might contain those filenames but they use some kind of encryption.
Image

Here's my script in its current state, along with a QuickBMS script for decompressing dds.z files, converting .dds files to .tga (and .pkm files if they're ETC1-compressed) and an edited version of etcunpack which converts .pkm directly to .tga.

Obsolete script. Click here for the newest version.

Re: Real Racing 3 (Android)

Posted: Sun Feb 09, 2014 3:31 am
by Chipicao
barti wrote:I used the code for importing normals from Chipicao's scripts
I see you're using code from some of my older scripts. Might I suggest you use the newer code from Assetto Corsa and Disney's Infinity, which it's a bit faster.

Code: Select all

      for j = 1 to Face_array.count do setFaceSmoothGroup msh j 1
      select msh
      addmodifier msh (Edit_Normals ()) ui:off
      msh.Edit_Normals.MakeExplicit selection:#{1..Norm_array.count} --faster than a loop
      EN_convertVS = msh.Edit_Normals.ConvertVertexSelection --assign basic commands to variables to speed-up processing
      EN_setNormal = msh.Edit_Normals.SetNormal
      normID = #{} --define this outside the loop
      --apply normals
      for k = 1 to Vert_array.count do
      (
         free normID --freeing an array is faster than declaring it empty
         EN_convertVS #{k} &normID
         for id in normID do EN_setNormal id Norm_array[v] --get the normal id directly instead of converting bitarray to array
      )
      collapseStack msh

Re: Real Racing 3 (Android)

Posted: Sun Feb 09, 2014 3:44 am
by TomWin
great script, it loads models correct and UV also I think
But I cant get all textures, I tried to convert dds.z textures of 1993_porsche_911_carrera2_speedster and the only ones that I got are 1993_porsche_911_carrera2_speedster_badges.etc, 1993_porsche_911_carrera2_speedster_lights.etc and 1993_porsche_911_carrera2_speedster_wheel_blur.etc and redblur :S
etcpack.exe doesnt work at all for me

Re: Real Racing 3 (Android)

Posted: Sun Feb 09, 2014 12:19 pm
by barti
Chipicao wrote:I see you're using code from some of my older scripts. Might I suggest you use the newer code from Assetto Corsa and Disney's Infinity, which it's a bit faster.
Thanks for pointing that out, I'll include it in a later release. I've tried it now and it does seem to be a bit faster.
TomWin wrote:But I cant get all textures, I tried to convert dds.z textures of 1993_porsche_911_carrera2_speedster and the only ones that I got are 1993_porsche_911_carrera2_speedster_badges.etc, 1993_porsche_911_carrera2_speedster_lights.etc and 1993_porsche_911_carrera2_speedster_wheel_blur.etc and redblur :S
Could you upload / PM me one of the non-working textures?
TomWin wrote:etcpack.exe doesnt work at all for me
It's a command-line application. You have to open a command line in its folder and use it like this

Code: Select all

etcpack <input_path> <output_path>.tga
Make sure the input file has the .pkm extension.

But from what I can see you only got the non-compressed textures so that tool wouldn't be very useful for you right now.

Re: Real Racing 3 (Android)

Posted: Sun Feb 09, 2014 2:27 pm
by TomWin
ok here they are: http://www.sendspace.com/file/q3dzhl

no idea how to convert them.