1
\$\begingroup\$

I'm looking to develop a Tech Design Document with my programming team and we're now on the fence about a major 2D graphical engine decision.

What we would like to try to emulate is a more dynamic camera to allow dynamic and fluid zooming in order to have in game cutscenes and add some extra mood to the game.

Someone has already asked pretty well the same question we'd ask about vector vs raster so I'd like to ask a follow up question elaborating on that.

Considering that vector graphics can lead to trouble down the line. Could we potentially have a master sprite that is, using the metric of the discussion at the link, 10x bigger than the desired in game sprite and then actively scale it down. Then when we want to zoom in and out we can change the down scaling so that the output sprite gets smoothly larger and smaller as the 'camera' zooms?

Would it be possible to optimize such a system for a game that has a somewhat complex environment, 2 player controlled characters and around... a maximum of 10 enemies on screen at any given time?

\$\endgroup\$
1
  • 1
    \$\begingroup\$ So...you're asking whether it's possible to rescale bitmaps in real-time? Of course it is - GPUs do this all the time with mipmaps for the hundreds of textures on screen in a 3D game. \$\endgroup\$ Commented Sep 25, 2013 at 17:40

1 Answer 1

0
\$\begingroup\$

As Nathan Reed said, this is a standard feature of 3D engines. The texture resolution can be as high as the memory permits, and mipmapping can be used to adapt the workload to the viewing distance and reduce aliasing. Hardware acc

Nowadays lots of 2D games are actually using a 3D engine in the background, because that's the easiest path. If you want to get fancy you could probably find a 2D framework that benefits from hardware acceleration, see this answer for some suggestions.

So I guess the answer is: if you have the resources to handle the extra work, no problem.

\$\endgroup\$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .