14
\$\begingroup\$

I am currently developing a relatively simple 2D, topdown oriented adventure game for the iPhone and was wondering what would be the easiest way to create the maps for my game. I figured I would need some kind of visual editor that would give me immediate feedback and would allow me to place all objects in the world exactly where I want them. I could then load the saved representation of the world I create in the editor in my game.

So, I am looking for a simple map editor that allows me to do this. All the objects in my game are simply textured rectangles build up from two triangles. All I need to be able to do is position different rectangles/objects in the map, and give them a texture. I am using texture atlases, so it would be useful to be able to assign portions of textures to the objects. I then need to be able to extract all the objects from the saved representation of my maps, together with the name/identifier of the texture(atlas) they use, and the area of the texture atlas.

I have looked at some tile-based map editors like Tiled and Ogmo, but they don't seem to be able to do what I want. Any suggestions?

EDIT: a more concrete example: something like the GameMaker level editor, but then with added export functionality in a handy format.

\$\endgroup\$
6
  • \$\begingroup\$ Why non-tiled? What advantage does this bring? \$\endgroup\$ Commented Feb 15, 2011 at 17:33
  • \$\begingroup\$ Technically I guess it doesn't matter as long as the editor can do the things I mentioned. The tile-based editors I tried focus on other functionality than I want, however. \$\endgroup\$
    – user5468
    Commented Feb 15, 2011 at 17:37
  • 1
    \$\begingroup\$ gamedev.stackexchange.com/questions/1886/… and gamedev.stackexchange.com/questions/225/… might help? \$\endgroup\$ Commented Feb 15, 2011 at 17:55
  • \$\begingroup\$ I looked at some of those before asking this question, and they did not have the features I need. \$\endgroup\$
    – user5468
    Commented Feb 15, 2011 at 18:15
  • 1
    \$\begingroup\$ 'Why non-tiled?' - to get rid of the grid-based look, allow arbitrary rotation/scaling of objects, and seamless blending of objects into each other using feathered alpha channels. \$\endgroup\$
    – bluescrn
    Commented Feb 16, 2011 at 7:54

4 Answers 4

9
\$\begingroup\$

Try Gleed. From its site:

GLEED2D (Generic LEvel EDitor 2D) is a general purpose, non tile-based Level Editor for 2D games of any genre that allows arbitrary placement of textures and other items in 2D space. Levels are saved in XML format. Custom Properties can be added to the items in order to represent game-specific data/events/associations between items etc. Check the video tutorials under the Documentation tab to get an idea of its powerful features.

\$\endgroup\$
4
  • \$\begingroup\$ This looks like exactly the sort of thing I need. The only downside is that it's windows only, and as I need this editor for my iPhone projects I would like something that works under mac osx. I guess I could run it in a virtual machine though, but if someone knows an editor like this for mac it would be perfect. \$\endgroup\$
    – user5468
    Commented Feb 17, 2011 at 11:14
  • \$\begingroup\$ I'm sure you could run this under Parallels without a hitch. \$\endgroup\$ Commented Feb 17, 2011 at 17:18
  • 1
    \$\begingroup\$ There is an updated version of Gleed on Github: github.com/SteveDunn/Gleed2D/wiki -- the linked version on codeplex hasn't been updated since September 2010. \$\endgroup\$
    – Nate
    Commented Mar 21, 2012 at 16:44
  • \$\begingroup\$ Thanks for the update. Funny I just came across the Github project today, too. It's great to see the tool being updated. \$\endgroup\$ Commented Mar 21, 2012 at 21:05
3
\$\begingroup\$

If you haven't already read it, I'd recommend reading this, gives some ideas of how non-tile-based 2D can be done very effectively:

http://www.davidhellman.net/blog/the-art-of-braid-index/

You could also take a look at the Aquaria source code, and see if its editor is adaptable to your needs (that used a mix of tiles and arbitrary object placement)

I've been working on a non-tile-based editor myself (screenshots: http://www.bluescrn.net/projects/twodee6.png , http://www.bluescrn.net/projects/twodee4.png), but it's still very much a work-in-progress.

\$\endgroup\$
0
2
\$\begingroup\$

Offhand, I don't know of any game-agnostic editors aimed at this task. However, you could consider using any existing paint program (Photoshop, GIMP, Paint.net, Acorn, Pixelmator, et cetera) that supports layers, build each level sprite in its own layer, then simply saving each layer individually to some directory, and then writing a tool to post-process that directory to isolate the position and bounds of each image within the layer file, save out that position and bounds information, and slice up the layer and re-composite all of them back on to a texture atlas.

Fundamentally that algorithm isn't any different than what a dedicated tool would be doing, and if you can do it on a bunch of distinct image files you can do it on images in memory -- in other words, it might not be terribly complex to write your own simple tool that does this after you get the basics of the process down using a paint program.

One problem might be if your levels are huge, editing them in a paint program might not be pleasant depending on the power of your machine. But for iPhone-game style levels I suspect you'd be fine.

\$\endgroup\$
5
  • 1
    \$\begingroup\$ I guess this will become unhandy if you want to re-use the same asset multiple times in a level. E.g. a Tree. \$\endgroup\$
    – bummzack
    Commented Feb 15, 2011 at 16:51
  • \$\begingroup\$ Yea, you'd have to copy-paste a lot. Maybe some painting tools have ways of doing reference layers, I'm not sure. It's certainly a think you could implement in a custom editor. On the other hand, it does allow for extreme variation in the "tileset" of the level, which can look pretty awesome if you're willing to put the effort in. \$\endgroup\$
    – user1430
    Commented Feb 15, 2011 at 17:01
  • 1
    \$\begingroup\$ What you are suggesting sounds terribly cumbersome when creating a lot of levels. I am sure there must be lots of editors out there already? Isn't this a very common task when developing a 2d game? I just thought of a more concrete example of what I am looking for: something like the GameMaker level editor, but then with added save functionality \$\endgroup\$
    – user5468
    Commented Feb 15, 2011 at 17:07
  • \$\begingroup\$ It will be cumbersome -- you have to decide if it's more cumbersome than writing your own editor or writing an importer for somebody else's file format. There are likely plenty of editors out there that act like what you want, but they're likely tied to the format of a specific game, and/or aren't available to the public. "Game-agnostic" editors are relatively rare. \$\endgroup\$
    – user1430
    Commented Feb 15, 2011 at 17:17
  • \$\begingroup\$ I don't care writing an importer for any file format, as long as the editor does what I want. Any concrete examples? \$\endgroup\$
    – user5468
    Commented Feb 15, 2011 at 17:25
0
\$\begingroup\$

I've recently released a non tile based level editor for iPhone and Android. It has in built physics simulation for testing and can load game elements from SVG or by tracing PNG images. For your game you could just import rectangular PNGs and position them where you wanted. The level designer produces a config file and a packed sprite sheet (optional) which can be exported straight to XCode (code is supplied to read the config file). It's pretty simple but very flexible. The program's called Shape Workshop and can be downloaded here.

\$\endgroup\$