Author Topic: Artwork Suggestions  (Read 968 times)

Offline SharkD

  • Hero Member
  • *****
  • Posts: 1011
    • View Profile
    • Isometricland
Artwork Suggestions
« on: July 23, 2006, 07:40:06 PM »
Here are some suggestions for creating artwork:

1) use full, 32-bit RGBA palette.
2) all sprites fit into a 64 by 128 pixel areas.
3) all sprites use PNG format.

Offline Kornel Kisielewicz

  • Administrator
  • Jr. Member
  • *****
  • Posts: 58
    • View Profile
    • http://chaosforge.org/
Artwork Suggestions
« Reply #1 on: July 24, 2006, 12:21:20 AM »
I think that more depends on Josephs requests. 32 bit png's are handeled quite slow by SDL AFAIR.
At your service,
Kornel Kisielewicz
ChaosForge

Offline Tung Nguyen

  • Jr. Member
  • **
  • Posts: 96
    • View Profile
    • http://tunginobi.spheredev.org/
Artwork Suggestions
« Reply #2 on: July 24, 2006, 12:40:42 AM »
Truthfully, it doesn't matter what the colour depth of the PNGs are: they're all flattened to 8-bit before palette swapping is applied.

Offline Joseph Hewitt

  • Administrator
  • Hero Member
  • *****
  • Posts: 2552
    • View Profile
    • http://www.gearheadrpg.com
Artwork Suggestions
« Reply #3 on: July 24, 2006, 01:16:17 AM »
1) The sprites can be 32-bit but as Tung noted, they'll get flattened during conversion. In order to preserve the color info I'd need a completely new color swapping algorithm.

2) This could be done in GH1; in GH2 all sprites should eventually be rendered at a higher resolution, possibly 128x128.

3) Thought I already did that... nope, I didn't. Crud. I'll get right on it.

Offline SharkD

  • Hero Member
  • *****
  • Posts: 1011
    • View Profile
    • Isometricland
Artwork Suggestions
« Reply #4 on: July 24, 2006, 05:20:45 PM »
All sprites are currently grouped into contact sheets consisting of multiple images. I was wondering what the arguments in favor of this method are?

The reason I ask is that most of the time I've spent working with sprites has been spent on this assembly process. Using individual images instead of contact sheets would cut a whole lot of time off the development process. If the matter is one of performance, then we should definately keep the current method. However, if it's merely one of organization or tradition, then I might suggest switching over to using individual images, instead.

Offline SharkD

  • Hero Member
  • *****
  • Posts: 1011
    • View Profile
    • Isometricland
Artwork Suggestions
« Reply #5 on: July 24, 2006, 05:26:03 PM »
I haven't noticed much of performance drop when using 32bpp instead of 24bpp images--though Joseph has already explained why it doesn't make a difference. I have, however, noticed a significant performance gain when using compressed PNG images instead of uncompressed BMP images.

It would be great if someone could start working on an algortihm that does colorswapping while preserving the alpha channel. If someone could point me towards a description of the maths involved, I could take a look at it myself. (A description not involving the Pascal language would be ideal. Thanks.)

Offline SharkD

  • Hero Member
  • *****
  • Posts: 1011
    • View Profile
    • Isometricland
Artwork Suggestions
« Reply #6 on: July 24, 2006, 05:43:54 PM »
One more suggestion that I've stated previously: I think that color-swapping should be done using the red, green and blue colors instead of red, green and yellow. This makes it easier to tweak images, as most software already include operations for switching the red, green and blue channels.

Offline Tung Nguyen

  • Jr. Member
  • **
  • Posts: 96
    • View Profile
    • http://tunginobi.spheredev.org/
Artwork Suggestions
« Reply #7 on: July 24, 2006, 05:59:28 PM »
Colour swapping is really more of an SDL thing than a Pascal thing.

I go into some detail in these mailing list posts:

The colour swapping deal
The cooexistence of alpha AND colour swapping

Enjoy!

Offline SharkD

  • Hero Member
  • *****
  • Posts: 1011
    • View Profile
    • Isometricland
Artwork Suggestions
« Reply #8 on: July 25, 2006, 12:49:00 AM »
Ok, thanks!

Offline Joseph Hewitt

  • Administrator
  • Hero Member
  • *****
  • Posts: 2552
    • View Profile
    • http://www.gearheadrpg.com
Artwork Suggestions
« Reply #9 on: July 25, 2006, 03:07:58 AM »
Quoting: SharkD
All sprites are currently grouped into contact sheets consisting of multiple images. I was wondering what the arguments in favor of this method are?


Two main reasons: It saves the image/ directory from unnessecary clutter, and it is more efficient to load/recolor a complete set of images at once than it would be to do for a series of images.

Quoting: SharkD
The reason I ask is that most of the time I've spent working with sprites has been spent on this assembly process.


What program do you use for bitmap editing? If it's really that much trouble, I could whip up a simple command line program that would take a series of individual images and combine them into a composite sheet fairly easily.

Offline SharkD

  • Hero Member
  • *****
  • Posts: 1011
    • View Profile
    • Isometricland
Artwork Suggestions
« Reply #10 on: July 29, 2006, 05:49:45 PM »
Quoting: Joseph Hewitt
What program do you use for bitmap editing? If it's really that much trouble, I could whip up a simple command line program that would take a series of individual images and combine them into a composite sheet fairly easily.

I use paint Shop Pro 4.

If this program could also do two additional things, that would be great.

1) crop the input images at specifiable coordinates and with specifiable dimensions before joining them into contact sheets
2) preserve the alpha channel

I found one program, called ImageAssemble, that almost does all this. Unfortunately, it doesn't preserve the alpha channel.

Offline SharkD

  • Hero Member
  • *****
  • Posts: 1011
    • View Profile
    • Isometricland
Artwork Suggestions
« Reply #11 on: July 30, 2006, 09:46:05 PM »
I just found that ImageMagick does what I require. Woot!

Offline Joseph Hewitt

  • Administrator
  • Hero Member
  • *****
  • Posts: 2552
    • View Profile
    • http://www.gearheadrpg.com
Artwork Suggestions
« Reply #12 on: July 31, 2006, 04:17:43 PM »
Once again, I am saved by procrastination. That's something they don't teach in programming class.

Offline SharkD

  • Hero Member
  • *****
  • Posts: 1011
    • View Profile
    • Isometricland
Artwork Suggestions
« Reply #13 on: August 01, 2006, 06:34:22 AM »
Hehehe. I spent over a year looking for software that handled the alpha channel correctly. Now, I've finally found one.