Pixel Art: Difference between revisions

From The Muse
copied in color system
 
Ripcurl (talk | contribs)
 
(4 intermediate revisions by one other user not shown)
Line 1: Line 1:
== Portrait Slices ==
* Portraits are made by lining up a bunch of portraits in order, kind of like a complicated sandwich. These are called slices.
* Slices are just PNGs arranged in the right folder (corresponding to the Slice Type).
* Some slice types can accommodate front and back, but at minimum they need a base
** eg: in the <code>hair/</code> folder, we can put <code>bowlcut.png</code>. We could also put <code>bowlcut_front.png</code> and/or <code>bowlcut_back.png</code>
** but in the above example, we still need <code>bowlcut.png</code>, even if it's a blank image
* all slices are 128 x 128px. You aren't guaranteed to see the top or the sides of this, depending on where the portrait is being displayed
* slices are displayed in the following order (subject to change)
clothing_outer_back
accessory_jewelry_bac
clothing_inner_back
accessory_scarves_back
accessory_hair_back
hair_back
body
body_extra
clothing_inner
clothing_outer
head
ears
eyes_back
eyes
eyebrows
nose_back
mouth_bac
face_extra
mouth
mustache
eyes_front
nose
accessory_jewelry
accessory_other
beard
mouth_front
accessory_scarves
hair
accessory_hair
accessory_glasses
hair_front
accessory_hair_front
accessory_other_front
accessory_jewelry_front
accessory_scarves_front
== RGB Color System ==
== RGB Color System ==
* The other main thing that define our portrait maker is that we dynamically recolor the image in a specific way. The important part to know is that you need to make your slices with very specific colors
The other main thing that define our portrait maker is that we dynamically recolor the image in a specific way. The important part to know is that you need to make your slices with very specific colors:


* Magenta (#FF00FF) is used as a "mask", covering up parts of other slices, sometimes
* Magenta (#FF00FF) is used as a "mask", covering up lower layers for slice types set up to do so (e.g. hats cover up hair at all pixels marked with magenta on the hat slice)


* Red, Green, and Blue are our "primary", "seconday", and "tertiary" colors. The easiest way to know which color is being used is to copy another slice in the same category.
* Red, Green, and Blue are our "primary", "seconday", and "tertiary" colors. The easiest way to know which color is being used is to copy another slice in the same category.


* Specific colors map to specific indexes in our 7-color "color ramps", that the user selects in-game
* Specific colors map to specific indexes in our 7-color "color ramps", that the user selects in-game. To be recolored, the pixel needs to be an '''exact''' match to one of these values.


  Index Reds    Greens  Blues
  Index Reds    Greens  Blues
Line 17: Line 63:
     7  #330000  #003300  #000033
     7  #330000  #003300  #000033


* NOTE: it's extremely important you use ''exactly'' the color above. At this point #222200 doesn't map to anything (though it may in the future "blend" the two colors together). And #210000 also doesn't map to anything
* NOTE: Artistically, we're using index 3 as the "base color" for that entire ramp (not index 4).


* NOTE: Index 3 is important, because that's the "base color" for that entire ramp (not index 4). Not all of the slices currently respect this, but they will. eventually
=== Resources ===
* Photoshop color palette: [[File:Photoshop_recoloring_pallete.act]]
* Aseprite template files: [[File:Size 1 + half.ase]], [[File:Size 2.ase]], [[File:Size 3.ase]]

Latest revision as of 20:45, 1 September 2026

Portrait Slices

  • Portraits are made by lining up a bunch of portraits in order, kind of like a complicated sandwich. These are called slices.
  • Slices are just PNGs arranged in the right folder (corresponding to the Slice Type).
  • Some slice types can accommodate front and back, but at minimum they need a base
    • eg: in the hair/ folder, we can put bowlcut.png. We could also put bowlcut_front.png and/or bowlcut_back.png
    • but in the above example, we still need bowlcut.png, even if it's a blank image
  • all slices are 128 x 128px. You aren't guaranteed to see the top or the sides of this, depending on where the portrait is being displayed
  • slices are displayed in the following order (subject to change)
clothing_outer_back
accessory_jewelry_bac
clothing_inner_back
accessory_scarves_back
accessory_hair_back
hair_back
body
body_extra
clothing_inner
clothing_outer
head
ears
eyes_back
eyes
eyebrows
nose_back
mouth_bac
face_extra
mouth
mustache
eyes_front
nose
accessory_jewelry
accessory_other
beard
mouth_front
accessory_scarves
hair
accessory_hair
accessory_glasses
hair_front
accessory_hair_front
accessory_other_front
accessory_jewelry_front
accessory_scarves_front

RGB Color System

The other main thing that define our portrait maker is that we dynamically recolor the image in a specific way. The important part to know is that you need to make your slices with very specific colors:

  • Magenta (#FF00FF) is used as a "mask", covering up lower layers for slice types set up to do so (e.g. hats cover up hair at all pixels marked with magenta on the hat slice)
  • Red, Green, and Blue are our "primary", "seconday", and "tertiary" colors. The easiest way to know which color is being used is to copy another slice in the same category.
  • Specific colors map to specific indexes in our 7-color "color ramps", that the user selects in-game. To be recolored, the pixel needs to be an exact match to one of these values.
Index Reds     Greens   Blues
   1  #ff0000  #00ff00  #0000ff
   2  #dd0000  #00dd00  #0000dd
  *3  #bb0000  #00bb00  #0000bb
   4  #990000  #009900  #000099
   5  #770000  #007700  #000077
   6  #550000  #005500  #000055
   7  #330000  #003300  #000033
  • NOTE: Artistically, we're using index 3 as the "base color" for that entire ramp (not index 4).

Resources