Search Unity

Can unity make something like Dont Starve?

Discussion in 'Getting Started' started by MrEncrypted, Aug 8, 2015.

  1. MrEncrypted

    MrEncrypted

    Joined:
    Jun 12, 2015
    Posts:
    8
    Hi
    I want to make a game like Don't Starve. I mean a "2D character" in a 3D world.
    But, I have no idea how to make something like that.

    Can unity make something like that?



    If someone know who to make a game like that, please let me know.

    Thanks for any help.
     
  2. Eric5h5

    Eric5h5

    Volunteer Moderator Moderator

    Joined:
    Jul 19, 2006
    Posts:
    32,401
    You can make whatever you want, but you have to program it. Unity won't do it for you.

    --Eric
     
    jhocking, JoeStrout and Kiwasi like this.
  3. MrEncrypted

    MrEncrypted

    Joined:
    Jun 12, 2015
    Posts:
    8
    Thanks for reply.

    Of course I have to program it and that exactly my work.
    I'm a programmer, but a have experience with 3D games and graphics like " BlackSmith" and PBR materials.

    But I have no idea about know to make something like Don't Starve.
    For example: The characters
    are they really "2D" or a kind of voxel graphics with a good cell shading? or sprites that changes with the rate of the player?
     
  4. hippocoder

    hippocoder

    Digital Ape

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    2D 'sprites'. Just use Unity 2D, it'll work fine. They're essentially just billboards with textures. Please post something like this in General or Getting Started. It's not an editor subject.
     
  5. MrEncrypted

    MrEncrypted

    Joined:
    Jun 12, 2015
    Posts:
    8
    I'm sorry.
     
  6. hippocoder

    hippocoder

    Digital Ape

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    It's fine I moved it. But please check out the http://unity3d.com/learn section for 2D stuff (this can also use a 3D camera/scene and they can be moved in 3D, which what you need for don't starve. You would want to use invisible 3D colliders and character controller I suspect if you want height-based gameplay).
     
    MrEncrypted likes this.
  7. MrEncrypted

    MrEncrypted

    Joined:
    Jun 12, 2015
    Posts:
    8
    Thanks for the help

    You help me a lot.

    Now, I just have to learn how to make the "sprites" change when the player rote the character.
     
  8. JoeStrout

    JoeStrout

    Joined:
    Jan 14, 2011
    Posts:
    9,859
    Go through those Unity tutorials. Do both 2D and 3D tutorials; you'll learn what you need to know. In Unity there is not much difference, and you can mix 2D and 3D together quite easily.
     
    jhocking likes this.
  9. MrEncrypted

    MrEncrypted

    Joined:
    Jun 12, 2015
    Posts:
    8
    The problem is that I don't know how to make the animations(sprites) work with a 3D character controller.
    Because. I can only make one sprite rotate with the cursor.

    Can someone give an idea about what I have to do to make character work.
     
  10. JoeStrout

    JoeStrout

    Joined:
    Jan 14, 2011
    Posts:
    9,859
    Sorry, I don't understand your question. What exactly are you trying? What happens when you do, and how does this differ from what you expected to happen? And what in the world does a "cursor" (you mean the mouse cursor?!?) have to do with it?

    If you can post a detailed question, I'm confident you can get an answer here. Vague questions, not so much.
     
  11. JoeStrout

    JoeStrout

    Joined:
    Jan 14, 2011
    Posts:
    9,859
    Incidentally, I took a moment to watch that "Don't Starve" trailer and it looks like an ordinary isometric sprite game to me.

    There's a decent thread here that describes how to manage the sorting of your sprites in such a game... basically you want to dynamically update the Order In Layer property according to the Y-position of each sprite (see the message from @TaewYn about halfway through the thread). You could also check out @blackmat's Isometric 2.5D Toolset, if that helps, though it's certainly not necessary — the script to update your sort order is pretty simple.

    Finally, you mentioned the 3D character controller. ...No. Not appropriate (or needed) for a game like this.
     
    Ryiah and MrEncrypted like this.
  12. MrEncrypted

    MrEncrypted

    Joined:
    Jun 12, 2015
    Posts:
    8
    I want to make a "isometric shooter game" with sprites, for example "Survival Shooter"(I know this is a 3D game but I'm talking about the gameplay) by Unity
    http://unity3d.com/learn/tutorials/projects/survival-shooter-project
    Also I want to make my "2D character" run in a 3D world. I don't want a "2.5D" because I want to use sprites.

    But I don't now how to make the "sprites" change when the character is running up, down, right, left and so on. (Like Don't starve`s characters) Because I only have experience with PBR textures and FPS programming.

    I already have all the sprites, audios, particle effects, animation sprites, AI... this the only thing I cant make.

    Thanks for your help! I will check it!
     
    Last edited: Aug 13, 2015
  13. JoeStrout

    JoeStrout

    Joined:
    Jan 14, 2011
    Posts:
    9,859
    I think there's some misunderstanding here. 2.5D means that you're using sprites. If you weren't using sprites, it wouldn't be 2.5D, it'd be 3D.

    If we remove the word "don't" from your statement, then it would all make perfect sense. :)

    As for how to make the sprite change based on which way it's facing: you simply assign a different sprite to the sprite renderer. There are several ways to do that... and as it happens, I just wrote an article about 2D animation methods in Unity that I think will be very helpful.
     
    jhocking and Ryiah like this.
  14. glowe

    glowe

    Joined:
    Jun 10, 2014
    Posts:
    68
    It's kind of crazy that Unity doesn't have some friendlier stuff built in for isometric games - there are many games that use these kinds of techniques. Me and a friend of mine created an asset that lets you rig and animate multi-directional sprite characters in 3D games. It might be worth taking a look at that asset.

    It's called SpriteMan 3D.

    If you want to make your own solution for 2.5D characters here's a starting point for the kinds of things you'll need:
    1. multi-directional sprite sheets
    2. you'll have to billboard your sprites - you can find lots of posts on this
    3. you'll need a script that compares a character's direction to the camera direction and sets the correct sprite from your spritesheet to the sprite renderer
    4. of course a real character has multiple directions and multiple states of action, idle, run, attack, etc - you'll need some kind of scripts that can figure out how to make those transitions work together (for example, SpriteMan 3D was made to be compatible with Unity's Animators. We made a component that manages all the sprites and directions for characters. And we rely on animators for the character state transitions; that's what you would normally do for both 2D and 3D games.)
    It took us a few months to figure out how to manage all that stuff with our asset and we learned a lot while doing it. If you're working on your own solution, it might be useful to go and take a look at the SpriteMan 3D docs - maybe it will give you a good starting point for ideas about creating your own scripts and understanding Unity tools in a way that deals specifically to making these kinds of characters.
     
    Last edited: Oct 24, 2015
    JoeStrout likes this.