A quick pixel art technique survey.
Printed From: Pixel Joint
Category: The Lounge
Forum Name: Resources and Support
Forum Discription: Help your fellow pixel artists out with links to good tutorials, other forums, software, fonts, etc. Bugs and support issues should go here as well.
URL: https://pixeljoint.com/forum/forum_posts.asp?TID=10006
Printed Date: 09 September 2025 at 11:55pm
Topic: A quick pixel art technique survey.
Posted By: 1ucas
Subject: A quick pixel art technique survey.
Date Posted: 16 March 2010 at 7:09pm
Hey guys.
This may sound like a bizarre request, but it would help me greatly in my little experiment. :)
Could you guys create 2x and/or 3x scaled versions of this image, without adding any new color?
Please, try to preserve the perceptual curvatures and line thickness as much as you can.
I want to study everyone's techniques used for this kind of thing.
I'm working on a pixel art scaling algorithm, and I just need a few goal posts.
All the http://en.wikipedia.org/wiki/Pixel_art_scaling_algorithms - existing ones are quite naive, I'm trying something different.
I already have a rough draft of one, but it still has its quirks.
Well, thanks in advance!
------------- http://toxicdump.org/labs/frameviewer/viewer.php - Online Animated GIF Frame Viewer
|
Replies:
Posted By: jalonso
Date Posted: 16 March 2010 at 7:44pm
Interesting request. Sounds sooooooo easy, but is probably tougher than it looks. I'll post mine tomorrow,
------------- http://www.pixeljoint.com/forum/forum_posts.asp?TID=9378&FID=6&PR=3 - PJs FAQ <•> http://www.pixeljoint.com/forum/forum_topics.asp?FID=6 - Sticky Reads
|
Posted By: 1ucas
Date Posted: 16 March 2010 at 8:21pm
It is tougher than it looks, and it is even tougher for a computer to do it automatically.
That's why I'm trying to study just how we do it, so I can extract some useful information for the algorithm.
For example, you can't just duplicate the curves in size and add new pixels. You have to remove a few so the curvature looks right again, and the removal is uneven
depending on which side of the curve you're dealing with.
Here's an example:
(green pixels were added, red ones were removed)
Deciding which pixels to add and remove has been challenging, and getting a few examples would help me find the ideal technique.
------------- http://toxicdump.org/labs/frameviewer/viewer.php - Online Animated GIF Frame Viewer
|
Posted By: greenraven
Date Posted: 16 March 2010 at 9:35pm
Actually since you said you wanted to do 2x or 3x that's exactly what I'd do. One pixel would be 2x2 or 3x3. Or maybe I misunderstood something? :\
-------------
"pwnage comes with patience, practice and planning." ~ Jalonso
|
Posted By: 1ucas
Date Posted: 16 March 2010 at 9:42pm
I'm talking about adding and removing extra pixels after you do that, so the image looks larger but still smooth.
For example:
You start small, double the image, and fill in extra pixels between the doubled ones so the line looks sharp again.
It's a form of interpolation, but a more pixel art specific one.
------------- http://toxicdump.org/labs/frameviewer/viewer.php - Online Animated GIF Frame Viewer
|
Posted By: greenraven
Date Posted: 17 March 2010 at 7:28am
Oh, well that kinda changes everything. I though you just wanted literally 2x or 3x. Nevermind. XD
-------------
"pwnage comes with patience, practice and planning." ~ Jalonso
|
Posted By: onek
Date Posted: 18 March 2010 at 9:48am
more challenging than i thought at first, indeed.... heres my try on a 2x scaled version
(green - added/ red - removed)
tried to keep curvatures and thickness as good as i could.... the curves could be done better but i tried to keep a certain regularity in my process....
i somewhat feeled there was pattern to what i did, but im not rly able to explain it :(
|
Posted By: 1ucas
Date Posted: 18 March 2010 at 1:07pm
Originally posted by onek
more challenging than i thought at first, indeed.... heres my try on a 2x scaled version
Awesome! That's exactly what I needed! Thanks for highlighting the pixels too. :)
Originally posted by onek
i somewhat feeled there was pattern to what i did, but im not rly able to explain it :(
Yeah, I know what you mean. This survey is my attempt at figuring out just how we do it, and put that into an algorithm.
Thank you a lot, onek!
------------- http://toxicdump.org/labs/frameviewer/viewer.php - Online Animated GIF Frame Viewer
|
Posted By: onek
Date Posted: 18 March 2010 at 1:57pm
ur welcome... im glad helping u ...i hope ull be successful with that algorithm.... though, i think it might be very difficult especially when it comes to multicolor stuff, like where is to be decided which colors gotta be kept and which removed etc.....
anyway i hope it will work out , since i also dont like that 2xsal/ hqnx etc. stuff very much...
|
Posted By: AngelOTG
Date Posted: 19 March 2010 at 4:23am
I see a pattern in Onek's edit. Notice how all the pixels removed (the red) have the exact same amount of pixels added (the green) above them, with one additional added.
So if he has taken away two pixels below, he adds three pixels above that. If he takes away one, he adds two to the flip side.
The only ones that do not conform to this pattern are the 45 degree angles.
|
Posted By: Hatch
Date Posted: 19 March 2010 at 11:02am
Have you examined some of the existing http://en.wikipedia.org/wiki/Pixel_art_scaling_algorithms - pixel art scaling algorithms ?
-------------
|
Posted By: 1ucas
Date Posted: 19 March 2010 at 11:55am
Originally posted by Hatch
Have you examined some of the existing http://en.wikipedia.org/wiki/Pixel_art_scaling_algorithms - pixel art scaling algorithms ?
If you had read the original post, you'd have noticed I already mentioned these (even with the same link) and how they are too naive.
The current algorithms all work with a local matrix, so they don't preserve curves too well and shapes look generally blotchy.
I'm trying to create a smarter one, that takes curvature and visual color weight into account, perhaps even automatic palette reuse.
It's more of an interesting side project than a necessity, but I'm sure such an algorithm would prove itself useful. Either way, it should be fun to attempt something new.
------------- http://toxicdump.org/labs/frameviewer/viewer.php - Online Animated GIF Frame Viewer
|
Posted By: Hatch
Date Posted: 19 March 2010 at 2:00pm
Oops! My bad. I quickly scanned this while at work and replied without reading fully. Apologies!
Anyhow, I wasn't suggesting that you should use them and not bother
writing your own, but that they might be useful starting points for
writing a new algorithm. I agree that they're fairly unsatisfying for a
lot of things.
But you already knew about them, obviously, so my post was
spectacularly pointless. I shall make amends by attempting to scale
your image as requested.
EDIT: And here it is.

I found that when trying to precisely preserve line weight, I was off by half a pixel, which is why mine seems to sort of jump around.
-------------
|
Posted By: Manupix
Date Posted: 21 March 2010 at 6:30am
Interesting experiment. Thanks to Hatch's post, I discovered scaling algorithms. I too hadn't read your first post carefully.
Here's mine:

First try was by using photoshop resizing (tried all options other than nearest neighbor) then 'cleaning' by using levels, or other suitable settings. Much worse than I'd have thought.
Then handiwork. I also find that I tend to grow outward to preserve curve smoothness; I was surprised that you can't just add pixels to an iso 1/2 line (tried 3 options for the diamond); and had to move a few 1/1 lines by 1 px to preserve pointy angles.
|
|