美文网首页
了解Unity的Inspector中的组件属性

了解Unity的Inspector中的组件属性

作者: 这双鞋好贵 | 来源:发表于2015-03-24 21:51 被阅读2684次

    了解Unity的Inspector中的组件属性

    游戏对象通常含有许多组件来保证它做出正确的表现。比如,选择Main Camera并注意Inspector面板。其中的一个组件就是Camera。如果他没有这个组件,他就会丧失作为摄像头的功能。它仍然会作为一个游戏对象存在在你的场景中,但是它不再有摄像头的功能了。

    变量成为了组件的属性

    任何游戏对象内的组件只不过是用来定义一个类的代码,无论你或者Unity是否亲手写了代码。我们只不过没有去修改这些Unity内置代码的权限。这意味着我们在Inspector中看到的属性只不过是一些变量而已。他们仍然存放着一些数据并等待着方法的调用。

    Unity略微地改变着代码文件和变量的名称

    当我们将我们的代码文件添加到游戏对象中时,我们的代码在Inspector中看起来就是一个组件。Unity只对他们做了一些细小的改动。你也许注意到了当我们向Main Camera内添加LearningScript的时候,Unity会将它以Learning Script的命名放在Inspector面板里。Unity会在文件名称的中间加一个空格来分开两个单词,同样,在变量名中也会出现同样的现象。注意变量number1他会被显示为Number 1,并且number2也同样会被显示为Number 2。Unity同样会将首字母大写,以此来改变Inspector中的可读性。

    在Inspector面板中修改属性的值

    你会在以下两种情境中修改属性的值

    • Play模式下
    • 在开发模式下

    当你在Play模式下的时候,你的修改会立即被执行,这对你调试和想要看到结果的时候是非常有利的。

    当你在Play模式下,你将会立即看到更改的效果。这对你调试和想要看到结果的时候是非常有利的。但是你需要记下来你的所有修改,应为当你停止Play模式的时候,你的修改并不会被保存下来

    当你在开发模式下,你对属性所做的修改都会被Unity保存下来。这意味着如果你退出Unity并再次启动它,这些修改仍然会被保留下来。当然,直至你点击Play之前,你并不会看到你修改的结果。

    你在Inspector面板中对属性值所做的修改并不会切实影响你的代码。改变你代码文件的唯一途径就是去开发工具里面直接编辑代码。你在Inspector面板中对值做的任何改变你也需要在代码中实现它们。

    如果你想要去除你在Inspector面板中所做的修改,你可以将他们重置回你在代码中设定的值。点击你代码组件最右侧的齿轮图标,并选择弹出菜单中的Reset选项。

    将变量列在Inspector面板中

    我确定你现在纠结于变量声明语句开头的public是什么意思:

    public int number1 = 2;

    这意味着这个变量将是可见并且容易得到的。他将会以属性的形式显示在Inspector面板中,所以你可以操作这个变量中存放的值。这也意味着它可以通过点句法来使其他代码可以方便的调用它。你将会在第六章中学到关于点句法的更多知识。

    动手时间

    并不是所有的变量都要是public的。如果变量并不需要在Inspector面板中显示或者并不希望被其他代码调用,他也不会去让场景中的Inspector被杂乱的属性所充斥。在LearningScript中,做以下几步:

    1. 将第六行改为:

      private int number1 = 2;

    2. 将第七行改为:

      int number2 = 9;

    3. 保存文件

    4. 在Unity中选择Main Camera

    发生了什么?

    你将会注意到,Inspector面板中的属性,Number 1Number 2都不见了

    • 第六行:private int number1 = 2;
      前面的单词明确地生命变量是private,所以他不再会作为属性出现在Inspector面板中,现在他是一个私有的变量并存储数据。
    • 第七行:int number2 = 9;
      这个变量也变得不可见了,但是你并没有明确地生命他是private

    如果你变量是否是publicprivate感到疑惑,那么,变量是private的。

    明确声明变量究竟是public还是private是一个好习惯。

    所以现在当你点击Play时,代码就像之前定义的一样运行了。只不过你现在没法再在Inspector面板中操作它们了。

    相关文章

      网友评论

          本文标题:了解Unity的Inspector中的组件属性

          本文链接:https://www.haomeiwen.com/subject/kapgxttx.html