• jan@cosmigo.com

Improved sprite rotation



since there has been some progress in this field, will we get an improved sprites rotation that evens out jaggy edges ? Oh, and a numeric input would be nice :smiley:


Yes, there is progress on this topic: floating selection with rotation. I should also improve the brush rotation. Concerning jaggies I need to do some experiments. There algorithms like “rotsprite” but yet I did not try all this myself. Still working on lots of refactoring along with adding the floating selection stuff. Let’s see how all this is going.


Jan also please consider better graphic scaling especially going from a larger graphic to a smaller one. If done right this would help me expodentially.


I’ve looked briefly into the newer rotating algorithms, but from what I saw I think that the best approach would be to offer different algorithms to chose from (for both rotation and scaling). None of these offers a best solution with every image, so chances are that one has to try them all and keep the best results.

In Photoshop, for example, when it comes to scaling one usually tries out all the various algorithms available in the scale dialog, tweaks the various settings, and sees which one works best for a given image.

My impression is that currently there is no perfect rotating or scaling algorithm for pixel art — and probably there’ll never be one, because of the very nature of pixel art being based on subtle vision perception effects resulting from fine tuning adjacent pixels by hand.


@Morintari: can you give an example where it should work better? Larger to smaller should be good atm, but there are better algorithms for upscaling today but this is not what you mentioned.


Yes when working on a stereo image the image must be identical when scaled smaller. If you need a visual reference I can provide one thank you Jan any help is greatly appreciated.


Jan I think I may have a solution. We both know when you scale something you throw away information to make it smaller. what if there was a way to mark like highlight the information that you want we’ll call that boundary the information that you don’t want we’ll call that space.Now you just highlight the boundary and leave the space that can be thrown away to be smaller.Now you could just scale that but leave the selected information in tact while throwing away the space. You could call this smart scaling. I’m sure there are many applications for this not just 3-D Thanks Jan any help is greatly appreciated.


The easiest way I see that we can do this without too much of an interface is we can make the option through the layers pallete and menu. Please let me exsplain. In the layers pallete a user could hide all layers except the top 2 the top layer would be the layer that would have the “boundry” infomation the layer directly below it would be the “image layer”.the user would then go up to the layers pallete and select “smart scalling”. a dialog would come up asking the user which color or colors did he use for the boundry. On that dialog there would be a button that reads render. and voilia smart scaling with minimal interface. As usual any help is greatly appriciated.Your the best Jan thank you for all you have done in the past.