model ripping

Technical discussion for those interested in Supermodel development and Model 3 reverse engineering. Prospective contributors welcome.
Forum rules
Keep it classy!

  • No ROM requests or links.
  • Do not ask to be a play tester.
  • Do not ask about release dates.
  • No drama!

Re: model ripping

Postby Bart » Sat Jul 08, 2023 3:37 pm

Goople wrote:I just noticed when dumping occurs. Some textures are left out, like the pteranodon textures in the first area don't get their textures dumped. Does the dump texture option select a certain group of textures for dumping and leave some behind?
Image


All of them get dumped. They must be in there somewhere, you just might not be recognizing them. Note that the texture sheet can be interpreted in a large number of different ways and all variants are dumped.
User avatar
Bart
Site Admin
 
Posts: 3086
Joined: Thu Sep 01, 2011 2:13 pm
Location: Reno, Nevada

Re: model ripping

Postby Goople » Sat Jul 08, 2023 3:49 pm

Bart wrote:
Goople wrote:I just noticed when dumping occurs. Some textures are left out, like the pteranodon textures in the first area don't get their textures dumped. Does the dump texture option select a certain group of textures for dumping and leave some behind?
Image


All of them get dumped. They must be in there somewhere, you just might not be recognizing them. Note that the texture sheet can be interpreted in a large number of different ways and all variants are dumped.

Theres certain textures the emulator ignores and dumps. Heres the texture sheet to show that the pteranodon wasnt included
Image
Goople
 
Posts: 8
Joined: Sat Jun 03, 2023 8:43 am

Re: model ripping

Postby Bart » Sat Jul 08, 2023 8:30 pm

That is indeed the entire texture sheet. There are no other textures (although you should have several different files, so some of the mis-colored textures will appear correct when interpreted in those other formats). Did you dump the texture sheet when the Pteranodon was actually on-screen?

EDIT: Note that these may not be all the textures that the game has. But they are all the textures loaded into texture RAM at the time the dump was made. Model 3 stores textures in VROM and program ROMs but they have to be transferred to Real3D texture RAM, so only a subset of a game's texture assets are in play at any given time. Usually, textures are loaded in between scene changes, although Step 2.x games in particular will occasionally stream in textures during run-time every now and then.
User avatar
Bart
Site Admin
 
Posts: 3086
Joined: Thu Sep 01, 2011 2:13 pm
Location: Reno, Nevada

Re: model ripping

Postby Goople » Sun Jul 09, 2023 6:45 am

Bart wrote:That is indeed the entire texture sheet. There are no other textures (although you should have several different files, so some of the mis-colored textures will appear correct when interpreted in those other formats). Did you dump the texture sheet when the Pteranodon was actually on-screen?


I did dump the texture sheet when the Pteranodon was on screen in the background. I think the texture ram gives the dump feature most textures but leaves out certain ones. Like the claw textures for the raptors. I noticed that when looking at videos of the games attract mode.
Goople
 
Posts: 8
Joined: Sat Jun 03, 2023 8:43 am

Re: model ripping

Postby Goople » Sun Jul 09, 2023 9:36 am

I just realized the texture for the male raptors limbs aren't included, only the hand,body and head remain.
Goople
 
Posts: 8
Joined: Sat Jun 03, 2023 8:43 am

Re: model ripping

Postby Bart » Mon Jul 10, 2023 12:23 am

Then the textures are there. Hunt through all the files to look at the different encodings. It's also possible that the UV mapping is particularly clever on those models and is reusing textures that appear visually to be unrelated. All the textures are dumped. Texture RAM is one giant 2048x2048 pixel texture, basically, and the code simply writes it out as multiple images, one for each encoding type. It's not possible to "miss" a texture -- it's just one big bitmap.
User avatar
Bart
Site Admin
 
Posts: 3086
Joined: Thu Sep 01, 2011 2:13 pm
Location: Reno, Nevada

Re: model ripping

Postby Goople » Mon Jul 10, 2023 9:21 am

Bart wrote:Then the textures are there. Hunt through all the files to look at the different encodings. It's also possible that the UV mapping is particularly clever on those models and is reusing textures that appear visually to be unrelated. All the textures are dumped. Texture RAM is one giant 2048x2048 pixel texture, basically, and the code simply writes it out as multiple images, one for each encoding type. It's not possible to "miss" a texture -- it's just one big bitmap.

I'm looking at game footage and I can tell the male raptor is using the torso texture for the limbs. The texture for its head is different from the female since the eye and mouth placement are different which makes the males UV different from the female and leader raptor. I'm still confused on the Pteranodon's and the background flying reptiles texture not being placed on the texture sheet. Maybe they're hardcoded into the game. Which doesn't make sense, like I'm looking at game footage and the smaller flying animals have multiple retextures like blueish green and orange reskins? I think they're stored in a different texture ram that is separate from the one the dump texture feature uses. Please correct me if I'm wrong on this.
Goople
 
Posts: 8
Joined: Sat Jun 03, 2023 8:43 am

Re: model ripping

Postby Bart » Mon Jul 10, 2023 11:40 am

Goople wrote:
Bart wrote:Then the textures are there. Hunt through all the files to look at the different encodings. It's also possible that the UV mapping is particularly clever on those models and is reusing textures that appear visually to be unrelated. All the textures are dumped. Texture RAM is one giant 2048x2048 pixel texture, basically, and the code simply writes it out as multiple images, one for each encoding type. It's not possible to "miss" a texture -- it's just one big bitmap.

I'm looking at game footage and I can tell the male raptor is using the torso texture for the limbs. The texture for its head is different from the female since the eye and mouth placement are different which makes the males UV different from the female and leader raptor. I'm still confused on the Pteranodon's and the background flying reptiles texture not being placed on the texture sheet. Maybe they're hardcoded into the game. Which doesn't make sense, like I'm looking at game footage and the smaller flying animals have multiple retextures like blueish green and orange reskins? I think they're stored in a different texture ram that is separate from the one the dump texture feature uses. Please correct me if I'm wrong on this.


Like I said, there are a large number of files that are dumps and you need to go through all of them. It is not possible for textures to be "hard-coded", everything is read from texture RAM. The fact that the flying animals are tinted differently probably indicates that they are using one of the grayscale formats and applying a color multiplier in the polygon header. Therefore, I would expect the textures to be one of the grayscale formats (L8, L4, L4A4/A4L4). This is a good example of why ripping models automatically is so difficult. 3D object formats don't map directly to the Model 3 mesh format. Model 3 has a lot of per-polygon state to modulate colors and other parameters, even if *most* models will be well-behaved.
User avatar
Bart
Site Admin
 
Posts: 3086
Joined: Thu Sep 01, 2011 2:13 pm
Location: Reno, Nevada

Previous

Return to The Dark Room

Who is online

Users browsing this forum: No registered users and 0 guests