What's new
  • Most issues reported these days stem from users not enabling their emulators to use the required amount of RAM.
    We also tend not to use the search feature but post our issues within the texture pack release page.
    Failure to load a texture pack should not be posted in the release thread unless you have already patched the emulator.

    If you don't have the resources to use Large/HD texture packs please do not attempt to do so.
    Users should have a minimum amount of System RAM not less then 4GB's.
    If you have less then 4GB's of RAM do not post about how your emulator crashes,
    RAM is dirt cheap so invest some money into your PC.

    I would like to say thanks to squall_leonhart
    for posting this Solution.

HighResEaser - retexture backgrounds in a wink

microdev

Member
Name: HighResEaser
Type: Photoshop Script
Licence: GPL 2.0
Targeted: Retexture artists
Function: Takes over the donkey-work at retexturing backgrounds, logos, skyboxes and similar things.
Supported Plugins: All
Requirements: Photoshop with scripting support (minimum Photoshop 7)

fwpvs2.jpg


Download: Latest version * Maintained by CCTEX *

Old version download: HighResEaser v1.4

Changes:
  • fixed long existing bug regarding wrong placement of transparent textures (v1.6) (by CCTEX)
  • automated texture loading and assembling - no more manual entering of texture numbers (v1.6) (by CCTEX)
  • improved texture numbering (v1.5) (by CCTEX)
  • added explicit support for skyboxes (v1.4)
  • added hints for the options (v1.4)
  • optimized autosize feature for texture marking (v1.3.5)
  • fixed bug reported by Mollymutt concerning wrong resizing if actual graphic is smaller than the texture (v1.3.5)
  • added option to select where the texture id will be placed (v1.3)
  • original textures (without ids) can be loaded instead of the marked ones (v1.3)
  • added feature to load selected textures in separate Photoshop documents (v1.3)
Installation:
  1. Place the script HighResEaser_v1.4.js in your folder Photoshop/Presets/Scripts .
    Afterwards you can select it from the File/Scripts menu .
  2. You can then even assign a keyboard shortcut for starting the script through menu Edit/Keyboard Shortcuts.
    There you browse to File>>Scripts>>HighResEaser_v1.4 and assign the key you like (e.g. F1-key).
HowTo: Basically it is supposed to do exactly what you can read on the screenshot.
  1. marks texture tiles of a background/logo with an id
  2. arranges the tiles corresponding to the id order as layers in a photoshop document
  3. splits up the highres background/logo, which has been painted into a layer over the tiles into
    the corresponding tiles and saves them under the proper name in a folder
First you start the script in Photoshop
Then you select option 1 in the menu. The following dialog will be displayed

2yv5ezs.jpg


Font size allows you to determine the size of the id that will be added to the textures.
By activating the automatic option, the script will automatically determine the font size in respect to the actual texture size (after resizing).
Maxium id size is restricted to 99px in automatic mode.
The resize factor determines how large the image will be resized. 1x (no resizing), 2x, 4x, 8x and 16x are possible.
Font color allows you to change the color of the ids. That is helpful with relatively ****geneous backgrounds (e.g. very dark or very light)
ID position allows you to select where the id will be placed onto the texture. (left or center)

When you press RUN, the script asks you for path of the folder containing the dumped textures of the background/logo.
Afterwards it asks you for a folder to which the marked textures will be exported. Then it marks the textures with ids.

Now you start your game with the marked textures. Do you see your background/skybox/logo with the ids at the textures?
Great. Now note somewhere the order of the ids (from left to right, from top to bottom)

Now go back to Photoshop and start the script again. Select option 2.

The following dialog appears:
2gw75s1.jpg


You first have to specify the Type of the image you want to assemble. You have the choice between background/logo or skybox.
In the field "Tiles per row" you enter how many textures are displayed in one row of the background etc.
Indent is an option that is only necessary for skyboxes. Here you define how many tiles the skybox is indented at the edges.

In the field "Tile order" you enter the comma-separated texture ids, you have noted before. You can add a line break
after every row but this is optional. After pressing the Run-Button, the tool asks you for the folder where the tiles are located.
You can either choose the folder with the original textures if you don't like to have an id on them or the folder with the marked
textures. But keep in mind that just the marked textures have already been resized.

Now the tiled Photoshop document is generated and a highres-layer is added. You paint your high-res background/logo/etc. onto this layer

When your creative part is completed you restart the script and select option 3.
The script asks you for a folder to export the highres-textures. After you have choosen an export folder,
your highres-layer will automatically be sliced into the different tiles. These highres tiles will be saved under the valid texture names.

You reached this line? Congratulation! You created your highres-background/logo/skybox.

Additional gadget:

You can also use the tool to mark all textures of a scene. This is not restricted to backgrounds. After you did so,
you might want to only retexture some of these (e.g. if you just want to retexture characters of the game or not
all marked textures are actually displayed within the game)

Then you might want to use the "Load selected textures" feature:

16m16wn.jpg


This feature allows you to - similar to the arrange textures part - load a list of textures. But these textures
will be opened as separate Photoshop documents instead of arranging them as layers in one document.
Resize factor allows you to automatically resize the texture after loading.
Add highres layer automatically adds a layer to each texture in which you can paint your highres image.
Please do not forget to merge layers when saving. Otherwise the texture won't be loaded by the emulator.
Under Textures to load you provide a comma separated list of the ids of the textures that should be loaded
for modification. The order is unimportant.

Bug-reports & feedback concerning usability are appreciated. Feature requests are possible.

Important: In case of a bug report or feature request, please provide samples. Otherwise it will be hard to develop a satisfying solution.
Whenever you tend to create a bug report/feature request, please test the latest release of HighResEaser first. If this still not fulfils your
needs you are more than welcome to post em here.

Special thanks goes to mode7 for providing the idea, photoshop documentation and texture examples. Without him, this tool would never exist.
I also like to thank Datadayne for playing guinea pic and helping me to make HighResEaser compatible to PS CS3
 

Attachments

  • HighResEaser_v1.4.zip
    7.7 KB · Views: 981
Last edited by a moderator:

mode7

New member
Let me be the first to thank you and congratulate you for creating this.
This will not only make my life so much easier, but that of anyone who retextures N64 games.
I thought of a simple script when I began looking for something like that, but THIS has gone beyond my wildest expectations.
This is not a script anymore but a developer tool!
Can't wait to test the arange script!
 

MasterPhW

Master of the Emulation Flame
Yeah, I thank you for this, it really will make my life easier for the skybox etc.
I already rearranged a lot textures with my tools and that make my life easier.
 

Mollymutt

Member
This look great. This will help not only in making backgrounds, but just by marking the textures, it will save the time of doing this for any area. Now, the only question is, where do you put this to get it to work?
 
OP
M

microdev

Member
This will help not only in making backgrounds, but just by marking the textures, it will save the time of doing this for any area.

If there is a need, I can add a functionality to load any number of textures,
corresponding to their ids into a own Photoshop document for each texture.
This would save the time of searching the texture name in the MetaData file,
which is automatically generated by HighResEaser.

So, is this functionality needed?
 

Mollymutt

Member
No, what I was talking about was, when you dump textures for any area you are doing, you may need to number them to see where each individual texture goes. If you could whip something up to do that, it would save a ton of time for all of us.
 

Datadayne

New member
Now you start your game with the marked textures. Do you see your background/skybox/logo with the ids at the textures?

Hmm, I dont know if im doing anything wrong, but it seems that the script is not marking the textures correctly. The numbers do not center itself, and it gets hard to make out the number.

Heres a pic
zjfjol.png


Hmm, this also seems to be a problem if you are working with small textures. The smaller the texture, the smaller your text/number will be.
example: say I have multiple textures that make up a background. The textures are each 2x9 pixels. When you run the script, the text/number will hardly be visible because of the resolution of the texture. To solve the problem, your script must first change the dimensions of the textures to a workable size (4x or 8x the normal size).

But so far this is great. Its very useful for me, and a lot of us. Thanks for all your hard work microdev=]
 
OP
M

microdev

Member
No, what I was talking about was, when you dump textures for any area you are doing, you may need to number them to see where each individual texture goes. If you could whip something up to do that, it would save a ton of time for all of us.

This functionality is already included. Select option 1 and simply select the folder with the textures you want to mark. For the script it doesn't matter if the textures are a background or any other texture.

I was just thinking that after you marked your textures (any texture) in a scene of a game, you might be interested to modify specific textures (e.g. all textures of a character). To do so, you have to identify these textures in the texture folder and load them into Photoshop for treatment.

This might be eased if you would just have to enter the ids of the - for this example - textures of the specific character and the script automatically loads the corresponding textures into Photoshop for treatment.

This behavior already exists for tiled textures. But there the textures are loaded into one Photoshop document as layers. For modifying specific textures - how I got it - you have to have each texture in a separate Photoshop document instead of loading all textures as layers into one document.

This is a functionality I could add. But I might be wrong as I'm no retexturer but just a coder.
 
OP
M

microdev

Member
Hmm, I dont know if im doing anything wrong, but it seems that the script is not marking the textures correctly. The numbers do not center itself, and it gets hard to make out the number.

Hmm, this also seems to be a problem if you are working with small textures. The smaller the texture, the smaller your text/number will be.
example: say I have multiple textures that make up a background. The textures are each 2x9 pixels. When you run the script, the text/number will hardly be visible because of the resolution of the texture. To solve the problem, your script must first change the dimensions of the textures to a workable size (4x or 8x the normal size).

But so far this is great. Its very useful for me, and a lot of us. Thanks for all your hard work microdev=]

Sorry about that. I had just one example for testing. So what do you propose?
You are right, so far the ids are not centered. I will change that tomorrow.
I might as well adjust the id size to the texture size.

But what about the tiny textures? Do you want me to resize them? Doesn't this misarrange the textures?
I think automatically resizing the textures should not be a big issue. But under which conditions and to which dimension? 2x, 4x, 8x?

Your feedback is important as the retexturers are the experts at the user side.
I can change the code regarding to your input.

EDIT: It would be great if you could provide some examples of problematic (unmarked) textures which I could use for testing. That will ease the changing a lot.
 
Last edited:

Datadayne

New member
But what about the tiny textures? Do you want me to resize them? Doesn't this misarrange the textures?
I think automatically resizing the textures should not be a big issue. But under which conditions and to which dimension? 2x, 4x, 8x?

Well, if the textures resolution is increased correctly, they will work fine. The textures must be 2x, 4x 8x 16x the normal texture size or they will not load at all.
I think that the 4x the normal texture size would be the most useful, so thats probably what you should work on.

Here is a background composed of 44 textures. I tested your script on these textures but the size of the textures unable photoshop to write the text/number.

http://rapidshare.com/files/116620437/Example_textures.rar.html

Thanks
Datadayne
 
OP
M

microdev

Member
Well, if the textures resolution is increased correctly, they will work fine. The textures must be 2x, 4x 8x 16x the normal texture size or they will not load at all.
I think that the 4x the normal texture size would be the most useful, so thats probably what you should work on.

Here is a background composed of 44 textures. I tested your script on these textures but the size of the textures unable photoshop to write the text/number.

http://rapidshare.com/files/116620437/Example_textures.rar.html

Thanks
Datadayne

Thanks for the examples. I will change the code tomorrow. Just one last question: Do you have an idea from which minimum texture size on I should resize the texture in order to retain readability of the ids?
 

Datadayne

New member
Thanks for the examples. I will change the code tomorrow. Just one last question: Do you have an idea from which minimum texture size on I should resize the texture in order to retain readability of the ids?

The minimum texture resolution you can go is 2x the normal texture size.
 
OP
M

microdev

Member
The minimum texture resolution you can go is 2x the normal texture size.

What I meant is how small a texture has to be to be resized to 4x. E.g. if a texture has the size of 512x512 it propably does not have to be resized. But a texture of the size of 9x9 surely has to be resized.

My question was: where is the threshold between resizing or not?
 

Datadayne

New member
Hmm, well, I really know. But I believe that anything under 32x32 must be resized.

Here is a document 32x32 in size with a font 5px
28gqttg.png
and its still clearly readable. Once the number gets into three digits, it cuts of (depending on font) but ive never seen an image composed of more than 50 textures, so this shouldnt be a problem.

The bottom line, anything 32 and over will be clearly readable if the font is centered and kept at a small font size.

I hope I answered your question this time. I also hope you successfully manage to complete the script.
Datadayne
 

Mollymutt

Member
All textures should be resized. You won't come across many textures at 512x512. 4x is probably a good starting point, because sometimes when you go larger, it slows down the game.

"ive never seen an image composed of more than 50 textures"

You are mistaken. Most of the skyboxes in SM64 have 54 textures, and the market from OOT has over 100 textures.
 
Last edited:

mode7

New member
I was just thinking that after you marked your textures (any texture) in a scene of a game, you might be interested to modify specific textures (e.g. all textures of a character). To do so, you have to identify these textures in the texture folder and load them into Photoshop for treatment.

This what also be a good function, since you sometimes mark a whole bunch of textures but realize that not all are used in the game.
 

Top