Advertisement

zooming questions ...

Started by June 30, 2007 11:43 PM
0 comments, last by LockePick 17 years, 6 months ago
in opengl if you want to make your game zoom in and out on 2d action is it better to start with a larger image as your base (and zoomed in version) for artwork and shrink it when not zoomed in ... or is it better to zoom in on a smaller image? the reason i ask is that i've seen some pixel-based 2d games that zoom, and the zoom either turns 1 pixel into 4 and the artwork is real chunky looking, or it uses some kind of filter when it zooms which makes the art blurry. both effects i dislike very much. the only reason that i can think of not to do this is it would require more disk space to store a higher res image and maybe be more resource intensive because more than likely you are going to spend more time in a zoomed in mode as opposed to a zoom aspect of the original image. i kinda like how svg's are scalable but right now hardware support for using svg intensive games is almost non existent.
You're pretty much fucked either way.

Zooming in does make things chunky, but on the other hand people are used to it from the days when all 2D games looked chunky because there just weren't enough pixels to go around. For a classic 2D game (read: most 2D games), this is acceptable, but even then it has its limits. A big 32x32 solid 'pixel' is going to look ugly no matter what. If you want a more modern, high-res look this approach will hurt a lot all of the time.

Zooming out will keep the detailed look of the images but has it's own problems. Unfiltered, everything looks sharp but pixels pop in and out of view causing constant flickering. If you have a 1 px wide or tall line, it can disappear completely. Filtering somewhat helps with that but not completely, and tends to blur everything. You can also start getting visible gaps between tiles, which is the absolute worst thing to have.

I'd looooooove to see more hardware vector support, but it seems unlikely. No one wants to 'waste time' on 2D technology. So, basically, you take whichever poison you can tolerate most keeping in mind certain types of games can deal better with different artifacts.

Classic 2D game - people don't mind seeing pixels that much, they're used to it. Some people even like it (nostalgia?).

High-res game with mainly static images - unfiltered can look good if you avoid strong, thin, 1px lines.

High-res game with constant smooth movement - blurry flickering is probably more appropriate than stretched pixels. Keeping per-pixel 'noise' in your textures to a minimum helps tremendously.

Less visually intensive game - switch to Flash (or other vector systems), like me :) Flash 8 brought about some massive speed increases over previous versions, so I can push 24fps with acceptable detail for some types of games. It is still several hundred (if not thousand) times slower than raw OpenGL, though.

Games with only a couple of specific zoom depths - You can manually make separate versions of your images so they both look good, but it's a lot of work and you'll have to either load both sets into memory or figure out ways to swap sets that don't hitch up your game.
_______________________________________Pixelante Game Studios - Fowl Language

This topic is closed to new replies.

Advertisement