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.
  2. Dismiss Notice

Why wasn't UI included with the initial toolset?

Discussion in 'UGUI & TextMesh Pro' started by RJ-MacReady, Oct 17, 2014.

  1. RJ-MacReady

    RJ-MacReady

    Joined:
    Jun 14, 2013
    Posts:
    1,718
    It's the most basic element of designing a game, handling user input. It's more important than impressive graphics, etc. It just seems odd that it took years for someone with UT to realize that 99.99% of all UI is done using the same basic components, or that nearly everyone was using a 3rd party UI system or writing their own.

    Isn't the point of Unity to combine the collective efforts of the community to facilitate the process of game development?

    I'm happy it's here.

    But what was the cause of the delay?
     
  2. StarManta

    StarManta

    Joined:
    Oct 23, 2006
    Posts:
    8,738
    UI was included in the initial release. It was just a wholly inadequate system. (The classes still exist, GUITexture and GUIText. I believe they've been removed from the UI so they're basically there for legacy support at this point.)

    And then it was included again in Unity 2.0. Completely redesigned, and much more capable.... but awful to build a UI with (script only!), and it is slow to the point of being 100% unusable on mobile. This system is the GUI classes (GUILayout, GUI, etc), and while it's terrible for game UI, it's not a complete loss, as it's actually really well suited for editor UI. The entire Unity Editor interface is built on it, and I suspect always will be.

    And ever since then, having made two inadquate UI systems, the cause of the delay is the fear of creating a third inadequate UI system. A new GUI system was demo'ed years ago, during Unity 3.x, but as it neared what would be released some fundamental issues with the design were found, and it was scrapped.
     
  3. RJ-MacReady

    RJ-MacReady

    Joined:
    Jun 14, 2013
    Posts:
    1,718
    Wow, so they couldn't figure out a good way to do it. The script works well so they stuck with it, defended it and resisted the effort to engage in a costly effort to create something novel, since failure was a likely possibility.

    Seems like they've got something now though.
     
  4. Eric5h5

    Eric5h5

    Volunteer Moderator Moderator

    Joined:
    Jul 19, 2006
    Posts:
    32,398
    That's...not really true. OnGUI was always usable on mobile, especially after it was rewritten in C++. It's not that slow and never was...you did have to be careful on an iPhone 1 since every draw call was precious back then, but things in the mobile world have long since gone way beyond that. It's quite usable except that it's not possible to do layout visually in the editor. The idea is that it's an immediate mode GUI, which has advocates (too much to go into right now, but do a search for "immediate mode GUI" and see). But after getting feedback through Unity 2, it was probably clear that not everyone wanted to use an immediate mode GUI. The original visual GUI system (GUIText and GUITexture objects) was the way it was because hey, Unity 1.0. Pretty much everything was a lot more primitive back then.

    --Eric
     
  5. RJ-MacReady

    RJ-MacReady

    Joined:
    Jun 14, 2013
    Posts:
    1,718
    I did what you said and I googled it. it seems to come down to programmers versus artists preferences. programmers seem to think immediate mode gui is so brilliant, whereas somebody who wants to make it look good thinks otherwise.
     
  6. User340

    User340

    Joined:
    Feb 28, 2007
    Posts:
    3,001
    Because it was founded by humans? How could one expect them to know everything? It's easy to look back and say how things could have been better.
     
    RJ-MacReady likes this.
  7. RJ-MacReady

    RJ-MacReady

    Joined:
    Jun 14, 2013
    Posts:
    1,718
    Yeah, true. We'll probably see complaints about this new UI in a bit.
     
  8. StarManta

    StarManta

    Joined:
    Oct 23, 2006
    Posts:
    8,738
    As a programmer, I use the immediate mode GUI for precisely two things: Editor scripting, and debug outputs (and even debug output I am more and more moving to uGUI). Even for me the 4.6 uGUI is better.
     
    dakka likes this.
  9. Eric5h5

    Eric5h5

    Volunteer Moderator Moderator

    Joined:
    Jul 19, 2006
    Posts:
    32,398
    I use OnGUI for things like this, which are fairly difficult in the new GUI. Though I'm not a huge fan of immediate mode, it's appropriate for things that are heavily programmatic.

    --Eric
     
    dakka likes this.