[HN Gopher] Pixel Art Tips for Programmers
___________________________________________________________________
Pixel Art Tips for Programmers
Author : ibobev
Score : 152 points
Date : 2025-11-21 13:25 UTC (2 days ago)
(HTM) web link (jslegenddev.substack.com)
(TXT) w3m dump (jslegenddev.substack.com)
| Daub wrote:
| To these fine tips I would add: 'test on as many devices as you
| are reasonably able'. Something can look fine on your laptop but
| lousy on the platform for which you are aiming to disseminate.
| spankibalt wrote:
| > "[...] I would add: 'test on as many devices as you are
| reasonably able'."
|
| Testing on a _reasonable_ amount of _different_ screens (and
| software-based filters etc.) is excellent advice for too many
| people forget this. Of course that 's also always a money, time
| or motivation (goal) question...
| NooneAtAll3 wrote:
| > and software-based filters etc.
|
| ...and different screen brightness levels
| zwnow wrote:
| This also applies to webdev. I develop a lot with the chrome
| devtools but once stuff is in mobile it doesn't quite work out
| due to people using different browsers. The browser bar
| sometimes being on top or on the bottom hiding controls... I
| started to just center stuff in mobile ignoring like 20% of
| space in top and the bottom.
| spankibalt wrote:
| These are just incredibly basic, and oft repeated, pixel art 101
| guidelines. And, quite frankly, some of those tips are what _I_
| consider bad advice (e. g. a pixel artist _has_ to deal with
| color theory as much as a character artist or animator has to
| deal with anatomy; a good understanding of color theory is also
| necessary to nurture good taste in the first place... so the
| quicker one gets into that, the better).
|
| Also, just like in coding: Constraints don't hide your flaws (per
| se); you fuck up, people will (let you) know. And pieces in
| constrained environments can be much, _much_ harder to pull off.
|
| I had hoped for something closer to the intersection of pixel art
| and graphics programming. Well, maybe in the future.
| Daub wrote:
| > a good understanding of color theory is also necessary.
|
| Agreed. I would also speak out again the uninformed use of pre-
| configured color combinations. As someone who teaches
| art/design these are the bane of my life... students use them
| as a replacement for color theory. A designer should at least
| know how to parse a color into its hue, saturation and
| lightness components. Most everything else should follow
| naturally.
| __loam wrote:
| It's for an uninformed audience so it's not like it's supposed
| to be some deep insights
| gyomu wrote:
| I hate to be that guy but the quality of OP's showcased pixel
| art is pretty mediocre. Strikes me as someone who's still
| learning and figuring things out and not in a particularly
| solid position to teach others.
| __loam wrote:
| I'm a programmer who started doing pixel art for a personal
| project in 2022 and this is solid advice. I didn't really think
| about it too hard but I do find myself negotiating with the
| canvas to get something to look right when it's just a few pixels
| off lol
| codingdave wrote:
| > Programmers are known to not have a strong suit for art related
| disciplines
|
| Full stop. There are quite a few coders with artistic talents.
| And even if some specific individual does not have such talent,
| they are allowed to have their own taste - we do not need to
| train ourselves to mimic other people's preferences.
| zwnow wrote:
| Gotta agree, I used to draw portraits before I started
| programming a few years ago... For reference, my last ever
| portrait: https://imgur.com/a/sEQiLu4
|
| I also know plenty of programmers who are great musicians.
| Programming itself is creative work... Completely lost interest
| in art due to AI though.
| engeljohnb wrote:
| I would wager that's how it goes for most people that are
| both good artists and good programmers -- they were artists
| first, then learned to program. It takes a lot longer to
| become a reasonably good artist than it does to become a
| reasonably good programmer. I suspect that might be why the
| article opens the way it does.
| spankibalt wrote:
| > "It takes a lot longer to become a reasonably good artist
| than it does to become a reasonably good programmer."
|
| Such overgeneralizations are not helpful. People gravitate
| stronger towards certain creative disciplines, or a
| selection of them; how long it exactly takes to develop-out
| "reasonable" skills is dependent on a litany of factors,
| some of which cannot be controlled (e. g. force majeure).
| Both programming and pixel art requires unwavering
| commitment and exercise'; there is no way to "wing it" if
| you are intellectually honest and take your craft
| seriously.
| engeljohnb wrote:
| I think it is helpful for certain purposes, and I think
| you'll be hard pressed to find exceptions to the general
| rule.
|
| Art is all about repetition. Even if you've done it
| successfully many times, you still need to keep doing it
| until it's second nature.
|
| Programming is more like solving puzzles. Once you've
| solved it once, you can pull the solution out of your
| head as many times as you need, as long as you still
| remember it.
|
| With art, it doesn't matter if you remember how to do it,
| it still takes practice to get reproducible results. Of
| course it takes longer.
| spankibalt wrote:
| > "Art is all about repetition. [...] Programming is more
| like solving puzzles. Once you've solved it once, you can
| pull the solution out of your head as many times as you
| need, as long as you still remember it. With art, it
| doesn't matter if you remember how to do it, it still
| takes practice to get reproducible results. Of course it
| takes longer."
|
| First and foremost, contrary to you it seems, I see art
| as a measure of quality, not as a simple descriptor of
| manifestations of human personal, and therefore cultural,
| expression (albeit using a, naturally technically
| imprecise, colloquialism such as "pixel _art_ " to
| describe a school of aesthetics, or style). See also: The
| _Art_ of Programming. Et cetera.
|
| And furthermore, I see both disciplines as fields which
| humans engage in to solve _specific_ identified problems,
| rationally or intuitively; in both it takes practice to
| get reproducible results, in both you need to keep doing
| it until it becomes "second nature". This refers to the
| process itself, the process to hone one's craft.
| engeljohnb wrote:
| >I see art as a measure of quality.
|
| I don't understand what you mean by this. Do you mean to
| say the worth of an artwork for you is tied to how well
| it executes technque? "Art" is a word so nebulous that
| it's hard to pin down a definition, but I think the
| millions of people that prefer a punk rock song over an
| academic figure drawing study would disagree with this.
|
| >And furthermore, I see both disciplines as fields which
| humans engage in to solve specific identified problems
|
| Well, I'm both an artist and a programmer, and I can tell
| you I engage in neither to solve problems. I do both
| because the process of doing them is enjoyable. If they
| stop being fun, I'll stop doing them, and there wouldn't
| be any lingering problem in my life to go unsolved.
|
| If you say you picked up art faster than programming I'll
| believe you, because I only meant it as a general
| observation.
|
| Art is like playing Dark Souls -- maybe you beat the
| hardest boss once, but that doesn't mean you won't die
| tent more times before beating them again.
|
| Programming is like Zelda. Once you know the solutions to
| the puzzles, you're basically going through the motions.
|
| This isn't me guessing based on philosophy -- this is my
| lived experience as both an artist and a programmer.
| airstrike wrote:
| Just because they are "[generally] known" for not having
| artistic skills doesn't mean there can't be a few exceptions.
|
| Besides, they could be known for this and it could be a
| misconception! The sentence is still true.
|
| Finally, "full stop" is what you say when something isn't up
| for debate. It's like saying "Apple makes better hardware,
| period." Like the conversation ends there. It doesn't mean you
| stop reading.
| piafraus wrote:
| Have you ever heard the famous "he did not have enough
| imagination to become a mathematician" quote? There is a
| reason it is famous and it could be very much projected on
| programming. Programming requires be creative.
|
| So I don't know where did the "generally known" comes from.
| In my 20 years experience, I knew hundreds of programmers and
| probably majority of them were extremely artistic. Writing
| games as a hobby, drawing miniatures, some were writing
| books, music bands...
|
| > Finally, "full stop" is what you say when something isn't
| up for debate.
|
| Is it the only way you can say "full stop"? Can't you just
| say it to yourself in the way of "full stop, this shows ME
| this is based on wrong premise, and I don't need to waste
| time on keep reading it"
| stavros wrote:
| This debate strikes me as misguided. It's just basically
| "someone who's really good at one thing is unlikely to be
| really good at a second thing".
|
| Well yeah, there are only so many hours you can put towards
| a thing. It's not a statement about programmers or artists,
| it's just about how effort works.
| 7bit wrote:
| Why is it generally known? It's a completely anecdotal
| statement, that the author should have just avoided. General
| statements like that are hard or impossible to prove and
| insensitive to those it does do wrong.
| numpad0 wrote:
| yeah, it's just that programmers tend to have self images as
| ultimate polymaths, and such a person can't have poor taste
| in art, therefore...
| NewsaHackO wrote:
| Yes, I agree. It comes off as condescending. I guess he is
| trying to peddle pixel art assets, so gatekeeping is beneficial
| to his future sales.
| throwaway314155 wrote:
| As someone who in fact _doesn't_ have a strong suit for art
| (and is a programmer) - I don't feel this is an unfair
| statement. It says "programmers are known" which is not an
| absolute statement but more of a vibe - and it's a vibe I would
| definitely say is true on average.
|
| Does that discount your personal experience as an artist? Of
| course not! That would just be reading into the phrasing way
| too much.
| itomato wrote:
| They're your pixels for your project, not some conformation
| challenge.
| engeljohnb wrote:
| After classical art training, I thought pixel art would be fast
| and easy -- the low resolution would disguise any mistakes.
|
| Quite the opposite. The fewer pixels, the more each one has to be
| perfectly in place. Honestly should've been obvious in hindsight.
| If I have any games left in me after my current one's finished,
| I'll just use as high a resolution as I'm comfortable with.
|
| Unless the sprites are truly tiny, like 16x16 with 2 or 3 frame
| animations, I don't know if pixel art makes a good shortcut to an
| aesthetically appealing game. Then again, it might be easier than
| six years of every day practice.
| rockskon wrote:
| If you want to see someone who has truly done wonders with
| pixel art - the game Look Outside has so much incredible (and
| disturbing) pixel art.
| torginus wrote:
| More than a dozen artists I've talked to told me pixel art is
| entirely it's own discipline - they're no more comfortable
| approaching it than a layman would.
|
| The traditional workflow of creating a rough sketch on paper or
| tablet then progressively refining it just entirely doesn't
| apply.
| spankibalt wrote:
| > "The traditional workflow of creating a rough sketch on
| paper or tablet then progressively refining it just entirely
| doesn't apply."
|
| For many a pixel artist that is a typical workflow,
| especially when working _from_ reference, e. g. by retracing
| /"converting", say, an architectural period piece such as a
| street view to be used in a period- and location-accurate
| adventure game. In other words a classic line-to-pixel A/D
| conversion.
| amelius wrote:
| Makes me wonder if GenAI can get these kinds of subtleties
| right.
| Minor49er wrote:
| I've seen at least one indie game (Ta*dQuest) use Midjourney
| to create pixel art sprites for some NPCs that appear in the
| dungeon. Extra art, like portraits for those NPCs, was drawn
| by hand to complement the sprites after they were generated,
| so it all feels deliberate. I would have never guessed
| merelysounds wrote:
| Good advice. I draw pixel art for an image logic puzzle game [1]
| and these resonate, especially 2. (Negotiate) and 5.
| (Constraints).
|
| Another thing that helped me was to experiment with different
| canvas sizes and styles. I was surprised how changing these
| affects my process, speed and results. Then again, this can be
| difficult in an ongoing project.
|
| [1]: https://apps.apple.com/app/nonoverse-nonogram-
| puzzles/id6748...
| the_gipsy wrote:
| I don't think the author's two samples look good.
| mock-possum wrote:
| The samurai one looks pretty good to me. The Kirby and Mario
| ones are... well they're awfully derivative, natch.
| jasonkester wrote:
| Well timed. I've been going through this process as a non-artist
| forced to churn out some tiles for a game I'm building [1].
|
| I started off simply cribbing all the tiles from Ultima IV for
| the Apple II, then gradually adding some rudimentary new tiles as
| the need arose. Starting with a pixel "rock" and "stick",
| changing the clothes on existing characters, then eventually
| gaining a bit of confidence and launching off on more complicated
| things. Eventually coming back and redoing all the "borrowed"
| tiles, and launching off into new, more detailed, characters and
| items.
|
| "Constraints hide your flaws" got me a long way. I've relaxed
| those constraints a bit as I got better at shading, so it's easy
| to tell which tiles were drawn at what point in my "career"
|
| [1] https://valtima4.com/, the Survival Crafting RPG you would
| have played on you Apple II in the '80s. It's essentially Valheim
| crammed into Ultima IV's interface.
|
| Single player works up through the first couple bosses, but it's
| not really ready to ship into early access yet.
| Lonrer wrote:
| Constraints help because they favor harmony. If you reuse the
| same limited palette for all your sprites it's more likely all
| objects will seem like they share the same lighting. It's very
| similar to making music. You can create sounds on a full spectrum
| of of frequencies but we have constraints like tonality to limit
| our pitches to semitones and center our compositions around keys.
| Sometimes we actually want to create feelings of dissonance and
| then stepping out of these limitations while adhering to them
| otherwise helps contrasting them even more.
|
| Contrast seems to be also one of those things I see even very
| experienced pixel artists get wrong, especially in the context of
| games where visibility can be crucial. There's many games with
| beautiful spritework but actually playing them is very tiring
| because all of the sprite work uses the same range of the
| palette. You want to consider if things are in foreground or
| background, interactable or not, dangerous or friendly and then
| limit how much the range of their colors intersect. Creating
| contrast through hues is more common (, see red hostile vs blue
| friendly), but differentiation through saturation and
| value/luminosity is much more effective and readable at a glance
| while also being more accessible to color blind people by
| default.
| nickdothutton wrote:
| From great constraints comes great creativity.
___________________________________________________________________
(page generated 2025-11-23 23:01 UTC)