Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.

Unity tutorials that cover core concepts - UI,Main Menu,Loading Screen,ESC Menu & Scene Loading?

Discussion in 'Getting Started' started by sr3d, Oct 29, 2015.

  1. sr3d

    sr3d

    Joined:
    Oct 19, 2015
    Posts:
    78
    Please tell me there is a Unity tutorial that goes step by step in creating a Basic UI (keyword BASIC):

    * Main Menu (Start Game, Exit Game)
    - Start Game (Load Scene)
    - Exit Game

    * ESC Menu
    - Return to Main Menu
    - Exit Game

    * Loading Screen (Bare minimum)

    Please tell me for the love of all things good, that I don't have to reinvent the wheel for the third time. I already had to make my own cloud system (BASIC CLOUDS) and a basic RTS camera.

    Please tell me there is a tutorial that just covers these CORE concepts, keyword CORE.

    https://unity3d.com/learn/tutorials/topics/user-interface-ui - awww come on.
     
    Last edited: Oct 29, 2015
  2. sr3d

    sr3d

    Joined:
    Oct 19, 2015
    Posts:
    78
    I'm going to document everything I'm doing so no one has to waste their time like I'm doing right now.

    HOW TO ADD A START MENU when your game first starts.
    features
    - start game button
    - quit game button
    - the start game button will load your game scene

    1. add GameObject Canvas (add two buttons)
    2. select Canvas, add new script_startmenu
    3. modify script with new function called LoadLevel
    4. Select button, click + to add new onClick() event
    5. configure new onClick() event like in the screenshot
    6. click File --> Build Settings --> and drag both your scenes Scenes in Build tab.

    uistart.jpg

    7. now when user clicks "Start Game" button it will LoadLevel(int Value) (Scene One)
    8. configure the exit game button, look at screenshot, it's easy.

    Question: Why does my loaded scene have it's lighting messed up?

    Solution:

    1. In both of your scenes turn off auto Build under Window --> Lighting --> LightMaps then click build manually, leave the auto build checkbox off. (NOTE: as you add more static objects to your scene, just manually click build again).

    2. Ensure the lightmap snapshot field has the lightmap snapshot in it. Do this for both of your scenes and save. Now both your scenes have their lightmap snapshots set.

    3. Now when you load a scene from a button, the lighting will work properly.

    Note: In final build you won't run into this lighting problem and can leave the auto build lightmap checkbox on.
     
    Last edited: Oct 29, 2015
    SAOTA likes this.
  3. sr3d

    sr3d

    Joined:
    Oct 19, 2015
    Posts:
    78
    Loading Screen.

    Oh god what a nightmare this is going to be. I can't believe it's not built into Unity.

    THIS IS STUPID. How could a framework for designing games not have basic loading screen functionality.
     
  4. SteveJ

    SteveJ

    Joined:
    Mar 26, 2010
    Posts:
    3,066
    Hilarious :)
     
    Ryiah likes this.
  5. sr3d

    sr3d

    Joined:
    Oct 19, 2015
    Posts:
    78
    Indeed, fortunately I found a solution, but I need a way to test it.

    Currently Unity is trying to handle importing a 2 million vertex sphere. *Waiting*
     
    Last edited: Oct 29, 2015
  6. tedthebug

    tedthebug

    Joined:
    May 6, 2015
    Posts:
    2,570
    I just build a scene with gui buttons etc & set it as the first scene to run when the game is loaded. The Gui buttons then lead to other scenes & pass across whatever extra info is needed from any user input in the relevant screen/s. That way I can make them as simple or as complex as I want.
     
    Ryiah likes this.
  7. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    18,366
    Are you certain you don't have the wrong game engine? There are engines out there meant to hold your hand. Unity simply is not one of those engines and most of us actually prefer it that way. Unity may simply not be the engine for you.
     
    Last edited: Oct 29, 2015
    Schneider21 likes this.
  8. sr3d

    sr3d

    Joined:
    Oct 19, 2015
    Posts:
    78
    I'll give a more thorough update here shortly, but the following video at the selected time is extremely important:

    FAST FORWARD TO TIME 20:26
    How to leave your Canvas GameObject intact when loading a new scene


    When a new scene loads, it removes all your gameObjects for the current scene. Being able to keep your menu or loading screen intact would save a lot of time. Unity let's you do that.

    What other engines would you recommend that have the basics of a game ready to go?

    - basic menu system
    - basic loading screen
    - basic rts camera

    If you think about it, I'm almost to the point where I can actually start making a game in Unity. I just had to waste my time with rudimentary things that I was expecting to be ready and done.
     
    Last edited: Oct 29, 2015
  9. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    18,366
    http://www.rtscreator.net

    Creating those aspects that you claim to be rudimentary and expect is actually a normal part of making a game.
     
  10. sr3d

    sr3d

    Joined:
    Oct 19, 2015
    Posts:
    78
    LOL you just insulted me to the highest degree, but don't worry I'm not mad, I'm LMAO.

    Using RTSCreator is like saying, "i hate money".

    I actually want to make money from the game I create.
     
  11. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    18,366
    Yet that's exactly what you have been asking for. An engine that provides everything for you out of the box.
     
  12. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    18,366
    You'll be happy to learn then that RTS Creator can create and publish standalone games in much the same way as Unity.
     
  13. sr3d

    sr3d

    Joined:
    Oct 19, 2015
    Posts:
    78
    I'd be using Unreal engine if it didn't require C++.
     
  14. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    18,366
    Why? Unreal doesn't hand you everything any more than Unity does. :p

    Good thing it doesn't actually require C++. Every release of Unreal has been improving Blueprint more and more.
     
  15. sr3d

    sr3d

    Joined:
    Oct 19, 2015
    Posts:
    78
    Do you see my point? if I'm going to waste time reinventing the wheel, I might as well use a better engine. The only thing holding me back from Unreal is the C++ requirement.

    Why program an RTS camera for Unity when you can program an RTS camera for Unreal and get the benefits of the unreal engine? If I'm going to DOWNGRADE to Unity, it should at least have some extra features to justify using it.

    At this point, I'm wondering if I should just crash course C++ for a few months and move to the unreal engine.

    In the unreal engine I would have to:

    - make a menu system
    - make a camera system
    - learn C++
    before making the actual game.

    In Unity I have to:

    - make a menu system
    - make a camera system
    before making the actual game.
     
  16. sr3d

    sr3d

    Joined:
    Oct 19, 2015
    Posts:
    78
    Wait, UE4 doesn't require C++ anymore?
     
  17. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    18,366
  18. sr3d

    sr3d

    Joined:
    Oct 19, 2015
    Posts:
    78
    I think you just convinced me to switch to Unreal Engine.

    UPDATE:

    Okay, I'm done with Unity. If I'm going to waste time making menus and cameras, I might as well just use Unreal Engine. I thought Unity had all this stuff ready to go, but it doesn't. I might as well just bite the bullet and use the big boy application.

    GOODBYE UNITY.

    For anyone who read this, I've spent a week on Unity making an rts camera. As of today I spent five hours learning how to program a basic menu system. if I'm going to do that, then I might as well spend the exact same time doing it on a better engine.
     
    Last edited: Oct 29, 2015
  19. Adam-Buckner

    Adam-Buckner

    Joined:
    Jun 27, 2007
    Posts:
    5,664
    Phew!

    Thanks @Ryiah

    It'll be great once he gets into BluePrints and realizes the spaghetti logic of a node-based editor.

    But, for n00b users, I think there needs to be a point where they just need to try out a few tools to realize that tools can help you make something, but tools don't make things by themselves. You even need a certain amount of skill to make a model airplane using and airfix model kit:


    Try building that from scratch!

    There is the lego option:


    Now, all trolling aside, and my apologies to @sr3d (and I hope my point is made, even if it's barbed), but - there are many levels in which you can build a game. @Ryiah 's suggestion of RTSCreator is not invalid at all. This will allow you to create a fun game fast.
    On the other hand, if you want a top-notch game that is unique in as many of its aspects as possible, say:
    Endless Legend, which is a Unity game, you will want to create these components - RTS Cameras, Load Menus, etc., to your own specifications.


    I have visited Amplitude Studios, and while they are not a Giant Game Corp like Ubisoft, they did have a reasonable office with talented people working hard at solving creative issues.

    Tools are for making things. Lots of different tools do lots of different things. Many different companies create tools to do the same thing differently. It all depends upon things like your skill set, your talent, your time, your resources...



    We have lots of tutorials, and we spend lots of time supporting people who want help and who want to learn.

    We also have a very active and helpful community. It's amazing to see how many people have tried to reach out and hold @sr3d's hand. Thank folks!

    We also have a lot of community resources. Here is one on making an RTS game from scratch:
    http://forum.unity3d.com/threads/cr...o-finish-tutorial-series.355732/#post-2357992

    No one wants to waste their time on someone who is unappreciative and unwilling to learn. I appreciate that @sr3d was willing to post the steps he took to solve his problems, but this attitude was not pleasant to endure.

    I trust he will enjoy his time with Epic, and I hope he will treat their community a little better.

    If he ever comes back, we will welcome him and help him, as long as he has a better attitude.
     
    Schneider21 and Ryiah like this.
  20. Schneider21

    Schneider21

    Joined:
    Feb 6, 2014
    Posts:
    3,509
    I hate to be a negative voice, and I do my best to help people that are just getting their feet wet. Which is why I spend most of my time on the Getting Started board.

    But I'm getting awful tired of all these posts about how terrible Unity is because it doesn't provide a basic feature. And then in the same day, @sr3d, you're posting tutorials and code on how to do that simple thing that has been wasting so much of your time. If it took you less than a day to build it yourself, how much work could it be?!

    Game development isn't easy no matter what tools you're using. Unity/Unreal/Generic-Engine-and-or-IDE make it easier, but anyone that expects to not have to do 99% of the work themselves isn't in the right mindset to succeed anyway.

    What good is Unity, you ask? You don't have to speak to the graphics card to get it to render to the screen. You don't have to manage your resource pipeline yourself, build interpreters and compilers, process raw input data, write separate code for each SDK for the platforms you want to build for...

    People spend their time creating tutorials and code samples to teach you how to pursue your dream, and you complain about having to learn, or that Unity Technologies isn't the one providing the tutorial officially. I can't fathom how anyone with this attitude has any chance of completing an interesting game, much less a profitable one.

    If you don't like the toolset that Unity provides, that's fine. See ya. UT won't miss your patronage (as a non-paying user), and the community would be better off without your attitude. Best of luck in finding your engine that does everything for you and makes you lots of money.

    But if you want to learn, grow, and become a game developer... change your attitude. Look at every "missing feature" as an opportunity to learn how to do something. If the editor doesn't do something you want it to, learn how to extend it and offer that extension as an asset in the Asset Store for others to use. Realize that the more you have to do to make your game, the more of your voice and soul will be in it. And stop complaining about a fantastic tool that is being provided to you free of charge, which, by the way, you will not find in any other industry.

    Do that, and you may find yourself becoming a valuable member of a great community.
     
    Ryiah likes this.