Saturday, June 23, 2018

Playing with PSX Textures

"Can I make something like that, but... in a different shape?" (Image: RR-Ken site)

A couple of important updates before going with the topic: first of all, Eid Mubarak to the Muslim readers, after observing a month of Ramadan! During the month, I know I've done a lot of things within that timespan including the revisions of my final paper. Beyond that, I've been doing a lot of things that I should made the blog post of but I'll see whether I can take the opportunity or not, but it should be possible. To give you a hint, I have done a couple of games and I might try either covering the game or something more interesting than that, trying to make a creation from those games for example.

Second of all, it was a Le Mans week, my dudes. Interesting to have the start of this year's 24 Hours of Le Mans coincide with the first days of the Eid week, but holy Tilda Lindstam this year's race was somewhat underwhelming due to nothing much changing throughout the race apart from some interesting moments. The Rebellions cannot rebel against the last manufacturer standings, Toyota, as the Japanese manufacturer finally claimed their win after their last year's curses, effectively making them the first Japanese manufacturer to win Le Mans since Mazda in 1991, and sweetened by the fact that Japanese drivers Kazuki Nakajima and Kamui Kobayashi took the victory, while Nakajima's car also featured Formula 1 regular Fernando Alonso on the wheel. As underwhelming as it is (especially the fact that one might be reminded of how this year's politics played out in favor of Toyota despite the fact that manufacturers being untouchable in Le Mans has always been inevitable since Audi), I'm actually glad that my eventual favorite, the #37 LMP2 entry containing all Malaysian drivers, finished Top 10 overall and sixth in class, a positive for the SEA representation there!

Third, I can't believe it's finally World Cup once more and in less than two months we're going to have our Asian Games! But man, the first week has been tough for top teams already: Argentina, even with their star player Messi, conceded against Iceland (the underdog favorite since Euro 2012), France, although winning against Australia, seemed to not give their maximum, Switzerland tying up Brazil, and Germany losing to Mexico. Things seemed to be interesting within the first set of fixtures, and even my favorite Japan has finally make it through against Colombia in their first group game! It was unexpected since last World Cup the South American team crushed Japan 4-1, this time Kagawa (taking the opportunity of penalty kick after the opposing team red-carded for handball within the area) and Osako (with the help of Honda's corner kick) made it through, although having to concede a goal thanks to Quintero's amazing drop shot during the free kick. First win for Japan and Asia indeed, but there still two matches to go as we will face Senegal next.

And now for the main post; a long time ago, this very tweet reminded me of something: I remember attempting to make a car on SketchUp (back when it was Google's product) only to apply one of those textures. The car in question was actually a basic-shaped rectangle cube with a rear spoiler behind, since I had no idea of how I could make a car in SketchUp back then. I haven't revisited this idea until recently. Well, not this recent but I did it not too long ago in Blender where I have much more resources: the application jPSXdec has the ability to extract textures from PSX games and I have just enough favorite PSX racing games whose textures can be extracted. Combined with my Blender antics in the last post, I'm able to replicate what I did years ago with a much better result although the mesh might not be as accurate as in their in-game counterparts due to the fact that extracting 3D models from PSX games is somewhat impossible, yet (if you take "invalid file header" upon extracting into account that is).

In case you missed it, I did tease an image at the end of my last post regarding my 3D modeling adventure, which was actually something out of Rally De Europe, a PSX video game by Prism Arts. Turns out that this game does have a set of extractable textures for all cars, along with its prequel Rally De Africa. The prospect of extracting all of the cars' textures got me interested, initially for research purposes but quickly became a resource of experiment of all sorts. That car in question is actually part of an side experiment that I somehow did during my working on the Cappucino.

That one attempt to create a car from scratch with ripped textures, in a hope that they can be as good as the in-game model.

This is Tylor VV660C, a playable car from the get-go in Rally De Europe that bases itself on Subaru Vivio RX-R and imagines itself a what-if for Subaru's works effort in a Kei car championship or something. The K Class cars, with five models and five more palette-swapped "Tune Up" versions, made up the grid of Kei cars in the game just like they did with Rally De Africa, this time with a more contemporary line-up in contrast to the previous game's classic approach. I somehow picked this car up for the experiment because it's simply a box-shaped car which should be simple, while my first pick was the actually the first car (Rossini's SC660G which is basically the race version of Suzuki Cappucino) but I ended up ditching it because I was unable to reproduce the right shape. The Cappucino would eventually end up as a 3D creation shortly after, presumably to have such a design whenever I do the textures once more.

Back to the textures, it seems like that they are pretty separated on parts. For instance, you have this texture for left and right side of the cars but you have individual textures for the hood, front bumper, rear bumper, and other parts. To reproduce the mapping work is a challenge, and I feel like putting them into one file for convenience doesn't seem to do justice either. It takes a good amount of time to reproduce the in-game work, especially when keeping in mind that 3D extracting is yet possible, specifically for this very game, since I've tried every tool available, even PSXPREV which didn't seem to work on my laptop somehow due to the crash. The idea of the 3D extraction is for research purposes obviously.

While things don't go as planned, it would later give a couple of ideas for future creations, including what I'll be doing next...


Gran Turismo with a Rage Racer flavor.

Packed with Rage Racer textures I've got from The Textures Resource (a nice site if you're looking for some video game texture rips btw!), I decided to the same but with a different mindset: make a car of whatever shape which can be later applied with the texture. I picked the red car from the Class 1 roster, being a texture for one of the AI cars for that class in the game, and quickly imagined it being an alternative color for Chaser LM Edition, considering I was playing the first Gran Turismo at that time, so I took that route right away.

Compared to how the same car would look in the game, being a re-skinned Gnade Esperanza if I have to put my thought at it, it actually looked good although the texture sheet lacked window textures and other stuffs. The wheels are actually from Rally De Europe as they do have nice set of wheel textures (could've gone with the one with more spokes, but this looked fine). This combination makes it look like a die cast car, but it actually went well. The original car actually is longer and has a lower height in game, while, since I go with making it look like a Chaser LM Edition, the model bears a slightly shorter length yet taller in terms of height, though it's because I was trying to adjust the side's size to fit the texture sheet without any further in-game reference (it's an AI car after all).

As unfortunate as I haven't got the time to continue creating a custom design on the existing textures already ripped, it would be enough to make my own, although currently I've spawned only two rally cars as I do all the texturing on my own, allowing myself to have my own design. As the reply to my response stated, it's always surprising to see just how few polys are really needed to sell the appearance of a low-poly model. That said, texturing really played a big part in car modeling in video games, especially in older games, taking advantage of hardware limitations. The way things were done though differ from the conventional skinning method we do today as the textures are in separate images, reserved for a car's individual part, be it for left and right sides, front bumper, windows, and so on, still produced some of the best designs that made up the finished products.

Although these have been some of the better efforts I've done, of course I could do much better with better free time since I still have to contend with my final paper first. That aside, I think I might try doing the 3D model and further texture extraction for Rage Racer since I haven't done it yet. That should give me a better number of usable textures.


1 comment:

  1. Since I am not adept in 3D modeling, "start small" is how I roll. So I am looking at old PS1 stuff to get a general feel for 3D modeling. I've gotten better over time. However, there's still a long way to go for me. PS1-type modeling (and even Sega Saturn or Nintendo 64 modeling) is these days quite good for mobile gaming. Nice post here!