Hey all,
Me and my good friend the programmer are looking into developing a 2D mobile app/game in our spare time and are wondering how and if we can use vector art for it.
I know most of us are 3d artists but maybe there are some here who have experience working on similar projects and can give some advice (what platform to use, programming language etc.).
Cheers!
Replies
Good luck.
Vector formats are quite intensive to draw, for a mobile game with lots if vector images you'd wind up spending the while frame time rasterising the vectors...
that is very interesting to hear and confirms my initial worries. Do you know of a good resource to learn about rasterizing ?
I do wonder how games like "Monument Valley" + many many simple mobile games look so crisp (are they not using vectors ?).
https://www.youtube.com/watch?v=RO22-O4WGaw
I've been working on some mobile game stuff in my spare time and I did notice, that if you want to keep things light and crisp, mixing in some 3D is often the way to go. That probably might not work in a 2D engine, but in Unity, it works just fine.
As for rasterising, ask that really means is saving it out as a regular pixel image first, rather than a vector format.
So all that's going to boil down to is picking an image resolution that can retain the crisp vector look at the screen resolution you're after. Perhaps packing sprites together into a sheet, that sort of thing. Standard stuff
You can ship the game with the vector graphics -- which are much smaller in size -- and rasterise them to textures during the game startup, taking into consideration the screen density of the device that the game is running on. That is, the game code can use a graphics library that will rasterise the vector graphics into textures and keep them in memory.
If you don't mind spending US$ 125, there's the SVG Assets plugin for Unity. I don't know anything about it but from looking at alternatives it seems to offer more features, with sprite sheet building etc.
https://www.assetstore.unity3d.com/en/#!/content/19822
You're going to spend far more than that to make a game independently, but if you're still trying to save money and don't want to buy that or any other plugin, you could use some free library like Cairo on desktop platforms and use the native vector renderers on iOS and Android. The logic is the same, importing the vector graphics and drawing them on temporary textures. You'd just be programming this yourselves.
- - - - -
A totally different way is to animate, with bones, flat 2D meshes and use simple shaders for gradients, if that follows your style guide. Then you don't have to mess with vector graphics or whatever. Having your game objects as meshes should be really fast, even if you use a lot of vertices to define round shapes (or use semi-transparent textures to make round shapes, like a mask).
This is perhaps what that UbiArt engine does:
http://ubi-art.fr.ubi.com/2010/07/07/alors…-comment-creer-une-animation-dans-ubiart-framework/