Real Racing 3 (Android)

Post questions about game models here, or help out others!
TomWin
veteran
Posts: 139
Joined: Sun Apr 11, 2010 7:46 pm
Has thanked: 8 times
Been thanked: 6 times

Real Racing 3 (Android)

Post by TomWin » Thu Apr 04, 2013 8:04 pm

What about Real Racing 3 models, here is Porsche 918 RSR:
http://www.4shared.com/archive/ySNhcXQC ... 18rsr.html

huckleberrypie
mega-veteran
mega-veteran
Posts: 297
Joined: Mon Apr 26, 2010 6:51 am
Has thanked: 88 times
Been thanked: 12 times

Re: Real Racing 3 (Android)

Post by huckleberrypie » Wed Jun 12, 2013 7:47 am

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.

TomWin
veteran
Posts: 139
Joined: Sun Apr 11, 2010 7:46 pm
Has thanked: 8 times
Been thanked: 6 times

Re: Real Racing 3 (Android)

Post by TomWin » Sun Oct 27, 2013 8:33 pm

and now Real Racing 3 has many new cool models like Porsche 964 Speedster, Lexus IS '14 and much more

barti
veteran
Posts: 148
Joined: Sun Apr 01, 2012 12:44 pm
Has thanked: 51 times
Been thanked: 101 times

Re: Real Racing 3 (Android)

Post by barti » Wed Jan 22, 2014 3:15 pm

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.
Last edited by barti on Sat Sep 27, 2014 9:57 pm, edited 1 time in total.

User avatar
shakotay2
MEGAVETERAN
MEGAVETERAN
Posts: 2606
Joined: Fri Apr 20, 2012 9:24 am
Location: Nexus, searching for Jim Kirk
Has thanked: 638 times
Been thanked: 1332 times

Re: Real Racing 3 (Android)

Post by shakotay2 » Wed Jan 22, 2014 4:21 pm

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.)
Bigchillghost, Reverse Engineering a Game Model: viewtopic.php?f=29&t=17889
extracting simple models: viewtopic.php?f=29&t=10894
Make_H2O-ForzaHor3-jm9.zip
"You quoted the whole thing, what a mess."

barti
veteran
Posts: 148
Joined: Sun Apr 01, 2012 12:44 pm
Has thanked: 51 times
Been thanked: 101 times

Re: Real Racing 3 (Android)

Post by barti » Wed Jan 22, 2014 5:39 pm


User avatar
shakotay2
MEGAVETERAN
MEGAVETERAN
Posts: 2606
Joined: Fri Apr 20, 2012 9:24 am
Location: Nexus, searching for Jim Kirk
Has thanked: 638 times
Been thanked: 1332 times

Re: Real Racing 3 (Android)

Post by shakotay2 » Wed Jan 22, 2014 9:42 pm

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)
Bigchillghost, Reverse Engineering a Game Model: viewtopic.php?f=29&t=17889
extracting simple models: viewtopic.php?f=29&t=10894
Make_H2O-ForzaHor3-jm9.zip
"You quoted the whole thing, what a mess."

barti
veteran
Posts: 148
Joined: Sun Apr 01, 2012 12:44 pm
Has thanked: 51 times
Been thanked: 101 times

Re: Real Racing 3 (Android)

Post by barti » Wed Jan 22, 2014 10:08 pm

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

User avatar
shakotay2
MEGAVETERAN
MEGAVETERAN
Posts: 2606
Joined: Fri Apr 20, 2012 9:24 am
Location: Nexus, searching for Jim Kirk
Has thanked: 638 times
Been thanked: 1332 times

Re: Real Racing 3 (Android)

Post by shakotay2 » Thu Jan 23, 2014 1:00 am

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 )
Bigchillghost, Reverse Engineering a Game Model: viewtopic.php?f=29&t=17889
extracting simple models: viewtopic.php?f=29&t=10894
Make_H2O-ForzaHor3-jm9.zip
"You quoted the whole thing, what a mess."

huckleberrypie
mega-veteran
mega-veteran
Posts: 297
Joined: Mon Apr 26, 2010 6:51 am
Has thanked: 88 times
Been thanked: 12 times

Re: Real Racing 3 (Android)

Post by huckleberrypie » Thu Feb 06, 2014 1:42 pm

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.

barti
veteran
Posts: 148
Joined: Sun Apr 01, 2012 12:44 pm
Has thanked: 51 times
Been thanked: 101 times

Re: Real Racing 3 (Android)

Post by barti » Sat Feb 08, 2014 9:27 pm

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.
Last edited by barti on Sat Sep 27, 2014 9:58 pm, edited 3 times in total.

User avatar
Chipicao
ultra-veteran
ultra-veteran
Posts: 476
Joined: Thu Feb 03, 2011 11:18 am
Has thanked: 42 times
Been thanked: 300 times
Contact:

Re: Real Racing 3 (Android)

Post by Chipicao » Sun Feb 09, 2014 3:31 am

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
Please post any requests or issues with my tools in the appropriate topics.
I'm sorry if I don't reply or if I ignore PMs. My time is very limited.

TomWin
veteran
Posts: 139
Joined: Sun Apr 11, 2010 7:46 pm
Has thanked: 8 times
Been thanked: 6 times

Re: Real Racing 3 (Android)

Post by TomWin » Sun Feb 09, 2014 3:44 am

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

barti
veteran
Posts: 148
Joined: Sun Apr 01, 2012 12:44 pm
Has thanked: 51 times
Been thanked: 101 times

Re: Real Racing 3 (Android)

Post by barti » Sun Feb 09, 2014 12:19 pm

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.

TomWin
veteran
Posts: 139
Joined: Sun Apr 11, 2010 7:46 pm
Has thanked: 8 times
Been thanked: 6 times

Re: Real Racing 3 (Android)

Post by TomWin » Sun Feb 09, 2014 2:27 pm

ok here they are: http://www.sendspace.com/file/q3dzhl

no idea how to convert them.

Post Reply