Blurry Images Upon Previewing
I'm sorry to enquire about such a noobie operation, but I simply cannot get past this thing…
I'm working with a pixel image that I made in GIMP. It is 28x40 with a 72.009 X,Y resolution (I can't seem to shave it to an even 72) and looks cleaner than clean in GIMP and previewer. I slap this puppy in GS (iPhone landscape running a camera at 568x320) and it looks like crap! When I adjust the camera to 284x160, it becomes clean again AND the same image at 14x20 looks great as well!
I'd be just dandy working with the image at 14x20 and camera at 284x160, but it's REALLY dainty in the editor (and you can't zoom in to work, right?) So I was hoping for the original: image and camera at double measurements.
MediaFire links to two images:
http://www.mediafire.com/view/hsa95bi0w97yj9k/GS_imagetest568x320.png
http://www.mediafire.com/view/yzlb57fqbl83rag/GS_imagetest284x160.png
Much appreciation for any advice, thanks!
Comments
I never make a no universal game, but i think that can´t be the size of the actuals iphones, you see that an iphone 6 plus, has a resolution of 2208 x 1242 , and you are creating images i think for an iphone 3g, i hope someone can help you.
i think it's the DPI, you want that to be 72 exactly
Send and Receive Data using your own Server Tutorial! | Vote for A Long Way Home on Steam Greenlight! | Ten Years Left
Ideally you should make it 72ppi, but if you can't for whatever reason then it shouldn't be an issue as you can force GameSalad to display it at the correct size by simply putting it onto the correct size actor.
You need to view the project on a Retina screen . . . your issue isn't really an issue, it's just a display thing. For you to scale your image down to half size (any Retina image displayed in GameSalad) and it to remain clean GS would need to use Nearest Neighbour interpolation, which would make your images look right, but everything else (99% of everything people import into GS) look awful . . . so it's only a display thing, test it on your device, if the actor is sitting whole pixel value it will look fine on the device . . .
. . . otherwise you could place your actor on a half pixel location (for instance x100.5, y200.5 rather than x100, y200) . . . this will make your image look just fine in GameSalad, but when you test it on your Retina Device it will be blurry again !
@Socks thanks for the bacon save again!
I checked the actor's position in the room, and sure enough, I had it placed at a partial pixel position (say that three times haha) - I bumped it up to a whole pixel and it appears clean again… regardless, I'm gonna do my darndest to fix this .009 extra ppi because is sounds just no good…
I did notice about people's images looking fuzzy/pixely in the Arcade and YouTube vids… I'm not exactly sure of how to demo this thing on my phone (iPhone 5c) yet- It seemed there was an app of some sort awhile ago, but….. Agues was talking about iPhone 6, I knew this would throw a wrench at me, but I hoped the Resolution Independence would knock that bit out?
@IrritatedViking
What size is your actor? Don't forget that with retina devices, your art needs to be 2x the size of your actor! If you have art that is 28x40 pixels and you put it on a 28x40 actor, you are rendering it as 56x80 pixels on the device, so of course it will be blurred, as you are scaling it!
The DPI of the image shouldn't matter at all, just the size in pixels and corresponding 1/2 size of the actor.
@pHghost hey! yes I made the original image 56x80 before importing it into GS! I saw a few people on YouTube who explained this, but they never said anything about placing your image within a whole pixel value (as Socks surmised, this was the cause for my problem)... so far, I think this is the case- the image looks clear again (I also placed the platform-that the character will be moving/jumping from-at a whole pixel value)
If you are feeling lazy and don't want go through all 5,000,000 platforms and position them by hand, you can get each one to jump to the nearest whole pixel when the game starts . . .
Change self.Position.X to floor(self.Position.X)
Change self.Position.Y to floor(self.Position.Y)
@Socks thanks! Though I feel fortunate just to have the problem solved, and willing to manually snap each piece if I have to- I also just now tried your rotation on/off demo- its perfect- I really appreciate it.
I know the feeling !
Rotation on/off demo ? Not sure I remember that one ?
You could just have two identical actors, one has fixed rotation, the other does not, and swap between them as needed.
Example file: https://www.mediafire.com/?ko6ycoukyc6ov6d
Click on the white actor to swap between fixed and non-fixed (effectively turing fixed rotation on and off) - use left and right arrow to move.
Oh yeah, forgot about that one.