zoukankan      html  css  js  c++  java
  • Unity5 官方教程笔记(2D Rogue Like)07 —— GUI

    最后我们来说一说UI。其实在游戏里UI的实现方式有很多种,你既可以用系统提供的功能,也可以自己绘制一个平面之后在上面绘制你的东西。由于我们这是一个2D的游戏,并且没有打算提供过多的复杂的效果,因此为了降低难度、我们将选择使用系统提供的UI系统制作UI。

    首先要知道系统提供的UI有三种渲染模式:Screen Space – Overlay、Screen Space – Camera和World Space。这三种模式分别对应的意义是:

    1. 直接用UI覆盖屏幕的所有显示。这种方式的特点是不需要一个“相机”来拍摄UI,而是像一个程序一样直接用一个UI界面来作为屏幕的全部内容。
    2. 在相机的固定距离和方向显示一个UI平面。这相当于是在相机前面摆了一个架子,而把UI平面架在这个架子上。这种方式可以让你既能在设置最少的内容的情况下保证显示效果,同时有必要的时候你也可以在UI前面增加一些别的东西来丰富界面内容(比如一些Shader等特效)
    3. 直接在空间中架了一块黑板。这种方式可以获得最大的灵活度,比如你想要让拍摄UI的相机有一种摇摆的效果的话,用这种方式会很不错,不过对应的需要你自己去操心的东西(比如相机的角度和位置等)也会更多一些。

    在这里我们选用的是最简单的Overlay模式,这样我们只需要操心在UI上面要显示什么就行了。

     

    我们的UI基础是一个“Canvas”,如果你做过其它的带UI的程序或者网页什么的,可能会对这类系统很熟悉(在Unity中除了Canvas以外还有别的类型的UI元素,本例中未涉及到因此不再提及)。在Unity里,这个Canvas系统和其它的GameObject一样,都会出现在Hierarchy视图里。同时他也可以有自己的子元素,当然既然它是本例中UI的基础,所以在他手下的小弟自然都应该是UI元素。

     

    在我们这里一共出现了两类内容,一类是文字,这类内容只需要像一般程序一样修改它对应的text属性即可;另一类是图片,在这里我们使用的其实是一个矩形并用全黑色填充,借此来掩盖下方的内容。

     

    还有一点,就是当你添加任意UI元素的时候,都会有一个叫“EventSystem”的物体被添加进来,这个物体一般可以用来处理一些输入事件(比如鼠标点击、经过等),不过在这里我们也暂时没有用到,所以不做解释。待之后如果有必要的话,会单开文章讲解。

    到这里我们对2D Rogue Like这个官方的教程中用到的一些东西就有了初步的认识。由于笔者是在跟着教程做完了之后才写的,所以有些东西的顺序可能会有些混乱,包括需求以及有些东西的设计原因也并没有说的特别清楚。不过之后,笔者会再接再厉,争取写出更高质量的博文。

     

  • 相关阅读:
    js正则表达式中的问号使用技巧总结
    380. Insert Delete GetRandom O(1)
    34. Find First and Last Position of Element in Sorted Array
    162. Find Peak Element
    220. Contains Duplicate III
    269. Alien Dictionary
    18. 4Sum
    15. 3Sum
    224. Basic Calculator
    227. Basic Calculator II
  • 原文地址:https://www.cnblogs.com/nmsuper86/p/5623634.html
Copyright © 2011-2022 走看看