The VG Resource

Full Version: Sprite Sheet Maker
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2 3 4 5 6 7 8
Ok guys, it seems we've got a situation on our hands. Now it's by no means a huge, big big thing, but it's something that is important for our sanity and for production levels in producing sprite sheets.

We need an application made, that can make sprite sheets for us. Because manually making them takes a LOT of time, and all other options currently have issues.

Most software online that makes sprite sheets you'll find make them "efficient" for programmers. Meaning, they're automated to make use of as little file size and dimensions as possible. That makes them ugly to the human eye when browsing, or for small-user use.

Do we know anybody who could work on a project such as this?
I guess your speaking about loading multiple image, and making a single image out of it? If so, thats exactly what i was speaking about in the thread http://www.vg-resource.com/thread-26993....er+toolkit
I don't know if this helps, but maybe have something like a gallery setup, where you upload individual ones like on IMGUR, and have a gallery view where they can all be seen. Then screenshot that and BAM sprite sheet. Probably unrealistic though.
I could make something along these lines. How long it would take depends on how much time I have for it though, and how complex the program is.

The easiest for me would be something like a command-line program that just takes in a .txt file with your specifications, but I can imagine that it would be a pain to use. I can probably make a GUI program that has some options and lets you see a preview or something. Do you have any sort of outline of what you'd want it to be like? E.g. what kind of options, would it be one frame per image or would some images have multiple frames, etc.
also dazz, depending on your ripping methods and all, you could use previous' gif animator in which you can export the gif back into a spritesheet, which i have used quite a bit

EDIT : you know what program could be made fast ? a TSR icon converter to change em all and get it done
(04-24-2015, 04:41 AM)Lexou Duck Wrote: [ -> ]EDIT : you know what program could be made fast ? a TSR icon converter to change em all and get it done

A number of people made a couple of these, but unfortunately it's not full-proof. Especially for anything that's cropped at the edges, you can't just use what was in the old one.

e.g. [Image: 29710.png] [Image: 53652.png]
Barubary has made a very simple java application that will let you stick images in an image with an approximation on the width, with a set volume of padding:

http://www.propl.nl/javaprogs/ImagePacker.jar

Make a .bat file, which read:
java -jar ImagePacker.jar path/to/folder/here 1000 0

path/to/folder being the path to the folder, 1000 is the width to aim for (it'll be a little less if the images wouldn't fit to the row without being chopped) and the 0 is the padding between each sprite.

It isn't the best solution in the world, but it works for some stuff for now.

There's a variety of ways in which we could make something function that would be like this, and benefit standard sheets. My idea is make it pick up folders, turn those into rows (with a maximum width then it'll produce a new row), and include the folder's name above that row. That way you can folder rows together instead of using a GUI that will likely be slightly clustered if working on a big sheet.
Finally, it produces a sheet out of all of the rows. I can give some visual examples of something similar if that'd help explain it?
I think I know what you mean, but yeah a visual example would help to make sure I'm understanding you right.
You put the separate animations into their own designated folders like so:
[Image: nVp867K.png]

Within those folders are all of the sprites from that animation.
[Image: 6dZPa0I.png]

When process the base folder, the application picks up on all of the subfolders and creates a sheet:
[Image: BUD8TVC.png]

It probably doesn't have to remove the "001 - " part of the folder name, and simply print that in there too. No reason not to, really, since it's only a reference.

Does this make more sense?
Right, I get what you mean now. Yeah that's totally doable, actually simpler than I expected. The hardest part will probably be the text, since I haven't done that sort of thing before.

I'll try start on it tomorrow. I'm thinking options should be things like max width, horizontal gap, vertical gap, background colour... any extra suggestions?
Maybe an option to just not have the text, or the bars at all. SuperFlomm is right too - grids can be very handy. Even with things that use transparency.
Made a quick thing to do that thing.

https://www.dropbox.com/s/jcor3kzlq4kyxw...class?dl=1

Example:
Code:
java SheetBuilder Finn\
Defaults to:

Also some options:
(Edit: added some new ones)
  • -maxwidth
The maximum with the sheet can have. Will auto wrap the stuff.
  • -displayname
(set to true to display folder names(it ignores any numbers and spaces at the beginning of the name))
Example for display name:
Folder name is "001 Finn"
The name will be printed as "Finn"
  • -xpad
horizontal padding
  • -ypad
vertical padding
  • -background
3 byte color represented in hexadecimal

Example of settings:
Code:
java SheetBuilder Portraits\ -maxwidth 400 -displayname true -xpad 5 -ypad 5 -background FF8080


[Image: cIBHBGg.png]

Feel free to suggest more options to add.

Edit:
And I also have a GUI app I started working on when I discovered that SPIN was messing up transparency.
I plan to work on it over the summer. Also feel free to make suggestions for it as well
When you set a width smaller than a single image, it'll crop it. So far, that's the only issue I've found!
Fixed!

I also added a few more options.
"-evenspacing"
Will adjust the width and height of each frame to be equal
"-align"
default aligns to left side. Can also enter "right" and "center"
"-backgroundfill"
will fill in transparent parts

Can make things look more neat Smile

Example:
Code:
java SheetBuilder Portraits\ -displayname true -xpad 5 -ypad 5 -background FF8080 -evenspacing true -align center
[Image: TLxigvE.png]
Pages: 1 2 3 4 5 6 7 8