Page 1 of 9 123 ... LastLast
Results 1 to 10 of 89
  1. #1
    EmuTalk Member CCTEX's Avatar
    Join Date
    Apr 2015
    Location
    United States
    Posts
    111
    Mentioned
    13 Post(s)

    N64 Possible new way to texture Mario Kart Characters with zip

    I've used some of the awesome textures packs on here for a while, and was inspired to take a stab at it for myself when I noticed the MK 64 characters had yet to be textured. I've never worked on anything like this before, so forgive me if any of this information is not completely accurate. As I quickly realized, there are a ton of textures dumped for the characters, with a high level of redundancy. Here is the process I developed yesterday, and it seems to be viable and fairly efficient:

    1. Dump textures selectively during a time trial race while jumping onto hills to roll, spinning out by running into a tree, turning left and right all the way, braking, being picked up by Lakitu out of bounds, and winning the race.

    2. Delete all textures in dump directory that do not contain the player or kart. (fairly quick with large thumbnails in Windows Explorer)

    3. I then wrote a quick c++ program to process the remaining contents of the directory, which at this point still contains a lot of redundancy. Here is what the program does in case you wanted to do it manually:
    -Deletes all but one png of groups that share the first 8 hex digits in the filenames, ie. the '00EA5375' in 'MARIOKART64#00EA5375#2#1#5862F1A9_ciByR GBA.png'.
    -Once those duplicates are removed, the remaining filenames are truncated at the 3rd # sign, and '_all' is appended to the end of the filename before '.png', ie 'MARIOKART64#00EA5375#2#1_ALL.png'
    -NOTE: This was pure intuition from analyzing the filenames of the amazing mario 64 texture pack, I don't know if it's proper.



    4. The textures in the directory can now be batch upscaled or one could manually create new textures, as we are now dealing with a vastly smaller amount of files. (I quickly used the S-Spline Max upscaling algorithm as a proof of concept.)

    5. Load the textures into your emulator (I use Project 64 2.2 w/ Glide), and voila, it seems to work.

    Below is a comparison shot and a zip of upscaled yoshi proof of concept... try it out!

    Enjoy, and let me know if this is something you'd like to work on with me/something you'd like me to continue pursuing.

    Cheers!
    File downloads.
    Mariokart64 Characters 1.0

    Attached Thumbnails Attached Thumbnails Click image for larger version. 

Name:	cctex-comparison.jpg 
Views:	873 
Size:	58.6 KB 
ID:	39458  
    Attached Files Attached Files
    Last edited by NES_player4LIFE; May 28th, 2015 at 03:17.

  2. #2
    Texture Pack Invader NES_player4LIFE's Avatar
    Join Date
    Nov 2005
    Location
    Earth
    Posts
    2,172
    Mentioned
    20 Post(s)
    This sounds great!
    I was not able to load the test so I'll have to post with only the information available.

    #2 Well editing unretextured files place your unused files into a folder named "unused dev junk" and place this folder into the load directory.
    Doing this will eliminate some redundancy as Glide64 will not dump files that are loaded.

    On note #3 the files that share the address are of the same position but supply movement.

    I can give you access to my Mario'sKart!!! organized files if you would like.
    I also have threads kicking around here somewhere that you can reference.
    Last edited by NES_player4LIFE; April 11th, 2015 at 21:05.
    -NES
    We are in the process of archiving all qualifying texture packs!
    Contact me via PM to have your N64 texture pack hosted on Emulation64.com!
    Having a hard time loading Large packs? Be sure to patch your emulator.
    Can't load .DAT or .HTC archives? Look no further then this shiny Tutorial, Android users may use this Tutorial.

      Spoiler:

  3. #3
    EmuTalk Member CCTEX's Avatar
    Join Date
    Apr 2015
    Location
    United States
    Posts
    111
    Mentioned
    13 Post(s)
    Quote Originally Posted by NES_player4LIFE View Post
    This sounds great!
    I was not able to load the test so I'll have to post with only the information available.
    You mean the dat wouldn't load? I can post the raw textures in another .7z if you like, let me know!

    Quote Originally Posted by NES_player4LIFE View Post
    #2 Well editing unretextured files place your unused files into a folder named "unused dev junk" and place this folder into the load directory.
    Doing this will eliminate some redundancy as Glide64 will not dump files that are loaded.
    That is a great idea, don't know why I didn't think of that!

    Quote Originally Posted by NES_player4LIFE View Post
    On note #3 the files that share the address are of the same position but supply movement.
    Not sure what you mean here. After I run the program, I end up with a couple hundred textures only, and it works flawlesly in-game...

    Thanks for posting your sorted Mario files, I'll look at it and see if it can further speed up this frankenstein process or not!

  4. #4
    Texture Pack Invader NES_player4LIFE's Avatar
    Join Date
    Nov 2005
    Location
    Earth
    Posts
    2,172
    Mentioned
    20 Post(s)
    Are you using the stock version of Glide64 or Glide64 finale?


    A devs gotta do what a devs gotta do.

    If you delete three of the four files associated with a position I can't see how they would be edited to provide the desired outcome.
    I would like a peek at your work if you could upload the files in question.
    -NES
    We are in the process of archiving all qualifying texture packs!
    Contact me via PM to have your N64 texture pack hosted on Emulation64.com!
    Having a hard time loading Large packs? Be sure to patch your emulator.
    Can't load .DAT or .HTC archives? Look no further then this shiny Tutorial, Android users may use this Tutorial.

      Spoiler:

  5. #5
    EmuTalk Member CCTEX's Avatar
    Join Date
    Apr 2015
    Location
    United States
    Posts
    111
    Mentioned
    13 Post(s)
    Quote Originally Posted by NES_player4LIFE View Post
    Are you using the stock version of Glide64 or Glide64 finale?
    Glide64 for PJ64 2.0.0.5 (Project64 2.2)

    Quote Originally Posted by NES_player4LIFE View Post
    If you delete three of the four files associated with a position
    I can't see how they would be edited to provide the desired outcome.
    Like I said before, I know nothing about re-texturing specifically as I've never done it. But my theory on why this works is that there is unnecessary specificity after the first 8 hex digits. By only keeping one of a set that share the same 8 hex digits and truncating the other hex digits, Glide64 uses that singular file for all cases where it would be required... but I could be wrong!

    Quote Originally Posted by NES_player4LIFE View Post
    I would like a peek at your work if you could upload the files in question.
    I ran my c++ program on your Mario directory you sent me, and then did the quick batch upscaling, screenshot is below.

    Should I PM you the raw textures or just post it here? I'm not sure why the dat isn't loading... did you try PJ64 2.2?

    If there's interest, I could post the program I made as well, perhaps it could prove useful for other games too?
    Attached Images Attached Images  

  6. #6
    Texture Pack Invader NES_player4LIFE's Avatar
    Join Date
    Nov 2005
    Location
    Earth
    Posts
    2,172
    Mentioned
    20 Post(s)
    WOW!!!
    That's freaking awesome!
    Your tool may eliminate the need to retexture. Upscaling could be the new deal!
    Please do upload your tool. Is it completely your code or open source from someone else?

    If you wish you may post the modified files HERE
    Lets keep this thread dedicated to your tool. Or you could make a new thread for the release.

    I must have my plugin configured wrong.
    Please explain where your .dat is located. Is it GFX/cache?
    Last edited by NES_player4LIFE; April 12th, 2015 at 00:15.
    -NES
    We are in the process of archiving all qualifying texture packs!
    Contact me via PM to have your N64 texture pack hosted on Emulation64.com!
    Having a hard time loading Large packs? Be sure to patch your emulator.
    Can't load .DAT or .HTC archives? Look no further then this shiny Tutorial, Android users may use this Tutorial.

      Spoiler:

  7. #7
    Texture Pack Invader NES_player4LIFE's Avatar
    Join Date
    Nov 2005
    Location
    Earth
    Posts
    2,172
    Mentioned
    20 Post(s)
    I would really like to merge the release post to a new thread as it should be.
    Any objections?
    -NES
    We are in the process of archiving all qualifying texture packs!
    Contact me via PM to have your N64 texture pack hosted on Emulation64.com!
    Having a hard time loading Large packs? Be sure to patch your emulator.
    Can't load .DAT or .HTC archives? Look no further then this shiny Tutorial, Android users may use this Tutorial.

      Spoiler:

  8. #8
    EmuTalk Member CCTEX's Avatar
    Join Date
    Apr 2015
    Location
    United States
    Posts
    111
    Mentioned
    13 Post(s)
    No problem here. Did the directory change do the trick for ya?

  9. #9
    Texture Pack Invader NES_player4LIFE's Avatar
    Join Date
    Nov 2005
    Location
    Earth
    Posts
    2,172
    Mentioned
    20 Post(s)
    I haven't had a chance to play around it was dinner time; pizza night, I'll get back to you. Right now I'm making a more fitting home for CCTEX Texture Parse v1.0b.
    Here is your Release Thread.


    Snipped from post for a more professional release thread.
      Spoiler:
    Quote Originally Posted by NES_player4LIFE View Post
    I must have my plugin configured wrong.
    Please explain where your .dat is located. Is it GFX/cache?
    It is in %appdir%/Textures/Cache

    Quote Originally Posted by NES_player4LIFE View Post
    WOW!!!
    That's freaking awesome!
    Your tool may eliminate the need to retexture. Upscaling could be the new deal!
    Please do upload your tool. Is it completely your code or open source from someone else?
    Awesome, hopefully I'm not mistaken and I'm actually onto something here ! The code is completely mine. It is attached below as well as some screenshots.
    Last edited by NES_player4LIFE; April 12th, 2015 at 02:51.
    -NES
    We are in the process of archiving all qualifying texture packs!
    Contact me via PM to have your N64 texture pack hosted on Emulation64.com!
    Having a hard time loading Large packs? Be sure to patch your emulator.
    Can't load .DAT or .HTC archives? Look no further then this shiny Tutorial, Android users may use this Tutorial.

      Spoiler:

  10. #10
    EmuTalk Member
    Join Date
    Dec 2002
    Posts
    296
    Mentioned
    7 Post(s)
    Quote Originally Posted by CCTEX View Post
    But my theory on why this works is that there is unnecessary specificity after the first 8 hex digits. By only keeping one of a set that share the same 8 hex digits and truncating the other hex digits, Glide64 uses that singular file for all cases where it would be required... but I could be wrong!
    These first 8 hex digits are the CRC of the texture data. The second CRC is of the texture palette. If the texture changes the palette in memory, the dump function of the plugin mistakenly detects it as an undumped texture and redumps it with the now differing palette CRC. For such textures the filename should be identical besides the 2nd CRC code.

Page 1 of 9 123 ... LastLast

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •