Using Vector Graphics for games

Started by
2 comments, last by Ravyne 9 years ago

I'm planning on making a 2d game and I want resolution scaling to look good. Such that if someone was using a 4k monitor the game would still look sharp. I don't just want to make the graphics output in those large formats. 4k images are large in size and not needed for people that have smaller desktops screens.

From the few tests I have done saving my a few different svg files as png files. Depending on the program and detail of the image the file size ranges from 1.5-2.0 times the file size for same image size.

Does it make sense to build a game that has SVG images and then allows the user to select a resolution then converts the images to the proper sizes for the resolution and saves them as png files. I'm thinking this could save a lot of HD/memory space on the lower end systems running my game.

I want animation in my game and SVG animations do vector calculations. I would think this would make the minimum hardware requirements higher for the game.

I just want to know if I'm understanding everything correctly.

Links:

(dis)advantage: http://www.gamedev.net/topic/557028-questions-concerning-vector-graphics/

Advertisement

Image editing service is a suitable process to enhance quality of photographs. It converts raster images into vector images.

However, if you are not aware with illustrator process then better to avail the service of image editing company. During research, i found a quality image editing services which is available at :

http://image2vectorgraphicsindia.com

If you haven't already, I would take a look at the source to both Cairo and Inkscape. This is a non-simple problem to say the least. The complexity of the renderer is quite high to take all usage cases into account. This doesn't even touch the fact that vector graphics, while being of "infinite" resolution, typically lack visual detail. To get the visual detail that is typically associated with raster images, the resulting SVG file would be massive and take a very long time to render.

I applaud you for taking the matter of high resolution displays seriously, but I think you are going about this all wrong. The VRAM on modern day graphics cards is more than enough to accommodate high resolution raster textures. Since you are making a 2D game, there will be even less textures required. I seriously doubt that you'll run into trouble.

One thing you might want to consider is a texture atlas.


Does it make sense to build a game that has SVG images and then allows the user to select a resolution then converts the images to the proper sizes for the resolution and saves them as png files. I'm thinking this could save a lot of HD/memory space on the lower end systems running my game.

Rather than doing this all client-side and at runtime, another approach would be to do it at install time -- possibly with each level of detail occupying a compressed archive on a server somewhere. You can have the installer check the resolution and only download the necessary assets. You'll want to allow the user to get another package later (say, if they upgrade their display), and you'll probably also want to allow them to download multiple LOD packages (a user might use low-res textures on his laptop on the go, but want the high-res textures when he's docked to a larger, high-res display at home.)

For physical distribution (e.g. on a DVD) you can put all the LODs on disk but only install the ones the user wants.

This whole system can be extended to support other variations, as in localization, where language glyphs might be translated in the textures, or assets have different design cues based on different cultural norms.

throw table_exception("(? ???)? ? ???");

This topic is closed to new replies.

Advertisement