2d Top-Down Terrain

Hello there, I have started creating a 2d game in unity that I would like to be Top-Down (I guess you could compare it to zelda in a way, even though I’ve never played zelda). My question is, how should I go about creating the terrain in the game (not just the grass, but also for placing buildings, structures, and items)? I would like to find a free way to do this, if possible please. I have attached two pictures that I would like to use an example to show what I would like to achieve.

1375973--69583--$1.jpg1375973--69584--$2.jpg

Use an ORTHOGRAPHIC view top down of a plane in which you use “tiles” considered blocks.

Or are you considering a more 3D top down shooter version (May actually be easier)?

It depends on how you want to go about it. If you want to use tiles, like Zelda, then you’ll need to deal with placing a lot of tiles in exactly the right spots. Personally, I’d use Orthello if I had to do with for free.

If you want something more like the first one, you could use Unity’s built-in terrain for the ground stuff, and then place planes with textures on top of it, with appropriate 3D colliders, to create the landscape.

My recommendation is to place a terrain in the scene and then a few cubes on top of it and play with that until you get a handle on things. Then start worrying about the 2D stuff.

Is this what you guys are referring to?
http://forum.unity3d.com/threads/95827-Orthello-2D-Framework-100-FREE

Also, I was hoping there would be some asset or something that would allow me to “paint” grass/dirt/other objects onto a plane. Like, I would be able to select an object, or grass, or a building, and I would be able to paint it onto the scene. I would like to avoid needing to create a full-blown map texture, and would like to create it as I go, if that makes any sense. (I also dont want it to be as difficult as needing to perfectly place every tile to make them line up).

Thanks for your responses by the way!

Maybe I can help.

I do something similar (though, more like Mode 7) in my current project The Hero’s Journey.

One thing I found that helps a lot on the Asset Store is the ‘Tidy Tile Pack #1’ (sadly, there is no #2, because they make some awesome tiles.) I just arrange these on my maps, as children of other game objects so that I can perform mesh batching. The pack costs $25, but once you’ve bought it you can reuse it in other projects…something to keep in mind.

As for the camera, I would think rotating it ‘downward’ along the X axis (Probably something like [45,0,0] as the rotation) and placed above and in front of the player would be the way to go. You will need a script to keep the camera there in relation to the player, though…

There are, but they aren’t free. That’s a lot more work to create the framework, so they charge for it. Personally, I use 2DToolkit. Again, not free.

My two cents:
Go and play Zelda!!!
It’s one of the greatest games ever made and I’m sure it can influence your next project by some way.

Orthello view?
Is this what you meant?

Or do you mean this Othello?

http://2.bp.blogspot.com/-7PtWg78EYWA/UQ7xJrk5_2I/AAAAAAAAOqo/7j3X42RZgk8/s640/Othello+TV.jpg

:smile: :smile: :smile:

About the top-down terrain - I agree with others, it is just a large 2D textured plane and you use a ORTHOGRAPHIC camera pointing at it.

http://docs.unity3d.com/Documentation//Components/class-Camera.html

You can go about it two ways to create this - either

  1. Do it all in Photoshop - draw all the buildings, trees, props…etc and then import the texture into Unity and use them as “tiles” and snap them together or
  2. Do it in 3D program and render out the top down terrain view (including props) and then import the texture into Unity and use them as “tiles” and snap them together.

Goddamn my brain at 2 am… Before I edited that it was isometric -.-
Well, my lesson is learnt, nothing good happens after 2am :stuck_out_tongue:

To accomplish something similar to the first picture, the quickest way would be the terrain editor. Just set it up as a plane, place the camera looking down on it and draw on it (you can import some premade textures and stuff).

http://docs.unity3d.com/Documentation/Manual/Terrains.html

Wouldn’t this be just end up being more work though? I mean, I have truly no idea.

If I would do a Zelda like game (not a bad idea!) then… I would create a grid of tiles with editor code and then assign the tiles some UV coordinates and other properties. Would give flexibility and possibility to randomize most of the elements. Could do multiple visual layers per tile.

My game is currently in orthographic view, so now I just need to draw on the terrain, if I am understanding correctly. I will try this out as soon as I get the chance (lots of homework recently, haven’t been able to work on unity). Thank all of you very much for taking your time to respond to my original post! :slight_smile:

The tiles that your character is standing on, let’s call them dirt blocks. When you originally put the dirt blocks into your game, did you have to manually put in the X, Y, and Z values to make them line up perfectly on the same axis (height wise, for example), or did you do it some other way (maybe they snap automatically to the y axis?)?
Also, I just wanted to say that I think your game looks beautiful! :smile:

I think there was free addon on asset store that could help you. I’ll edit when I’ll have name of it.

Unity’s own unit, vertex and other snapping tools are pretty handly too.

Here it is. It is called PATileTerrain and is under Editor Extensions>Terrain in asset store. It is completely free and I plan using it for my next project.

Render any 3d scene you can build down to 2d just like these guys did. Looks freaking amazeballs with the normal map.

The first tile I absolutely positioned; you can hold down the CTRL key in Windows and move the blocks to perform vertex-snapping. This also works for groups of copied dirt blocks.

And, thanks for the compliment! I appreciate it.