【unity游戏开发介绍之UGUI篇】UGUI概述和发展历史

注意:考虑到UGUI的内容比较多,我将UGUI的内容分开,并全部整合放在【unity游戏开发介绍之UGUI篇】专栏里,感兴趣的小伙伴可以前往逐一查看学习。

前言

1、UI系统的重要性

UI是游戏中最重要的组成部分之一,无论是2D还是3D游戏,绝大多数游戏功能都与UI相关,UI开发是游戏开发中的核心技能,贯穿整个开发周期。良好的UI系统设计对游戏体验至关重要。
在这里插入图片描述
Unity的UI系统提供了多种解决方案,主要包括IMGUI(GUI)、NGUI、UGUI(Unity UI)、FGUI以及最新推出的UIToolkit。目前,UGUI(Unity UI) 仍然是游戏开发中最主流、应用最广泛的UI方案,因其与Unity引擎深度集成、功能完善且学习曲线平缓。

本专栏将重点探究UGUI的核心功能与实践技巧,帮助开发者快速掌握游戏UI的开发流程。若对其他UI系统感兴趣,可参考官方文档或社区资源进一步学习。

其他UI系统也各有特点:

  • GUI 适合编辑器扩展和快速原型开发。

  • NGUI 作为早期第三方插件曾广泛使用,现已逐渐被UGUI取代。

  • FGUI 更适合需要复杂动画和跨平台UI的团队。

  • UIToolkit 是Unity新一代UI工具,更适合编辑器工具和运行时UI的混合开发场景。

2、UGUI概述

2.1 基本定义

  • 官方名称:Unity UI
  • Unity引擎内置的UI系统
  • 基于GameObject的UI解决方案
  • 专为游戏内UI设计,不能用于编辑器扩展开发
  • 是目前Unity 商业游戏开发中使用最广泛的UI系统开发解决方案

2.2 UGUI发展历史

  1. Unity4.6之前:

    • 官方仅提供基础的GUI系统用于游戏UI的开发
    • 民间大佬开发的第三方插件NGUI因为更为高级和方便,成为主流解决方案,但是需要付费购买。
  2. Unity4.6版本:

    • Unity官方招募NGUI作者加入团队
    • 协助Unity开发出UGUI系统
  3. Unity5时代:

    • 由于UGUI刚推出后功能不够完善,所以经历了较长的过渡期。
    • 到Unity5时代UGUI功能逐渐完善,开始全面普及成为行业标准

3、学习UGUI的必要性

  • 至今哪怕是现在新推出的unity6,UGUI仍是Unity游戏开发中最流行的UI解决方案
  • 被绝大多数商业游戏公司采用
  • Unity官方持续维护更新
  • 掌握UGUI是Unity开发者必备的核心技能

4、UGUI核心优势

  1. 完全集成于Unity编辑器中
  2. 基于Canvas的渲染系统
  3. 支持多分辨率自适应
  4. 提供丰富的内置UI组件
  5. 强大的事件系统
  6. 与Unity其他系统无缝集成

一、如何在unity中使用UGUI

直接在Hierarchy窗口中右键,选择UI。UI中所有内容都是UGU相关控件
在这里插入图片描述
我们随便创建一个UGU控件,比如我这里添加一个Image(图像)
在这里插入图片描述
会发现unity自动为我们添加了两个对象——Canvas画布和EventSystem事件系统对象,且UGU控件作为Canvas画布对象的子集。我们也可以先主动创建Canvas画布和EventSystem事件系统对象,再在Canvas下创建UI控件。
在这里插入图片描述

二、2D视图和矩形工具

切换场景为2D视图,多使用矩形工具,可以很方便我们进行UI的编辑开发。
在这里插入图片描述

二、UGUI的源码

UGUI的源码我们是可以查看的,随着自己的能力提升,以后可以深入去了解一下它的一些逻辑实现。

1、方法一 安装目录查看

Unity安装目录下\Editor\Data\Resources\PackageManager\BuiltlnPackages\com.unity.ugui比如我们就在D:\UnityHub\Unity\Editor\6000.0.42f1\Editor\Data\Resources\PackageManager\BuiltInPackages\com.unity.ugui
在这里插入图片描述

2、方法二 直接在unity的项目工程中查看

这里的unity UI其实就是
在这里插入图片描述
我们可以右键在资源管理器中显示查看
在这里插入图片描述
在这里插入图片描述


专栏推荐

地址
【零基础入门unity游戏开发——C#篇】
【零基础入门unity游戏开发——unity通用篇】
【零基础入门unity游戏开发——unity3D篇】
【零基础入门unity游戏开发——unity2D篇】
【制作100个Unity游戏】
【推荐100个unity插件】
【实现100个unity特效】
【unity框架/工具集开发】
【unity框架/工具集开发】
【unity游戏开发介绍之InputSystem篇】
【unity游戏开发介绍之动画篇】
【unity游戏开发介绍之UGUI篇】

完结

好了,我是向宇,博客地址:https://xiangyu.blog.csdn.net,如果学习过程中遇到任何问题,也欢迎你评论私信找我。

赠人玫瑰,手有余香!如果文章内容对你有所帮助,请不要吝啬你的点赞评论和关注,你的每一次支持都是我不断创作的最大动力。当然如果你发现了文章中存在错误或者有更好的解决方法,也欢迎评论私信告诉我哦!
在这里插入图片描述