雷潮教育吧 关注:7贴子:366
  • 7回复贴,共1
什么是GameObject?


1楼2017-10-11 17:01回复
    ameObject即游戏对象,游戏对象包括:
    Name : 对象名,可以重复,无限数量
    Tag : 对象的标签,在Tags&Layer面板中设置
    当物体可能是空物体时,(游戏开发中,常用空物体去保存一些位置信息,空物体没有渲染,这时给物体添加一个图标,便于寻找与查看)
    Layer : 标记对象渲染组名字,常用于射线碰撞,摄像机裁剪,最多只能有32组
    基本物体类型:
    Capsule 胶囊
    Cube 立方体
    Cylinder 圆柱体
    Plane 平面
    Quad 正方形面片
    Sphere 球形


    2楼2017-10-11 17:01
    回复
      2026-03-14 12:26:51
      广告
      不感兴趣
      开通SVIP免广告
      编写脚本我们通过C#可以实现GameObject的创建、添加、更删改查
      查找游戏对象
      1.通过名字查找
      GameObject.Find(string name);
      2.通过Tag(标签)查找对象
      Gameobject.FindGameObjectWithTag(string tag);
      通过tag标签进行查找
      GameObject.FindGameObjectsWithTag(string tag)


      4楼2017-10-11 17:03
      回复
        动态创建游戏物体(非内置)
        动态创建对象(可以设置位置与旋转)
        GameObject.Instantiate(obj original,Vector3 Position, Quaternion rotation)
        2.简单版(不可以设置位置与旋转,默认值都为0)
        GameObject.Instantiate(obj original)


        6楼2017-10-11 17:03
        回复
          什么是Transfrom?


          9楼2017-10-11 17:06
          回复
            二.什么是Transform?
            Transform即组件,每个游戏对象必须有的一个组件,因为你创建一个空物体,它也有该组件。
            场景中的每一个物体都有一个Transform。用于储存并操控物体的位置、旋转和缩放。每一个Transform可以有一个父级,允许你分层次应用位置、旋转和缩放。可以在Hierarchy面板查看层次关系。他们也支持计数器(enumerator),因此你可以使用循环遍历子物体。


            10楼2017-10-11 17:06
            回复
              Transform组件变量包括:
              Position : 在世界坐标系中,Transform的位置
              LocalPosition : 相对于父级的变换的位置
              EulerAngles : 旋转作为欧拉角度
              LocalEulerAngles : 相当于父级的变换的旋转欧拉角度
              Rotation : 在世界坐标系中物体变换的旋转角度作为Quaternion存储
              Parent : 返回物体变换的父级
              Root : 返回最高层次的
              Transform的函数成员:


              12楼2017-10-11 17:08
              回复
                世界坐标的位置
                Debug.Log("position " + transform.position);
                相对于父位置的坐标 即把父物体当作自己的中心
                Debug.Log("localPosition " + transform.localPosition);
                世界坐标欧拉⾓度
                Debug.Log("eulerAngles " + transform.eulerAngles);
                相对于⽗级的变换的旋转欧拉⾓度
                Debug.Log("localEulerAngles " + transform.localEulerAngles);
                相对于父位置的缩放
                Debug.Log("localScale " + transform.localScale);
                相对于父位置的旋转
                Debug.Log("localRotation " + transform.localRotation);
                世界坐标的旋转
                Debug.Log("rotation " + transform.rotation);
                Space坐标空间
                Values值有两种:World(世界坐标系)和Self(局部坐标系,也叫做本地坐标 自身坐标)
                Rotate(旋转) (eulerAngles : Vector3, relativeTo : Space = Space.Self)
                应用一个欧拉角的旋转角度,eulerAngles.z度围绕z轴,eulerAngles.x度围绕x轴,eulerAngles.y度围绕y轴
                如果相对于 Space.World 旋转角度被应用围绕世界的x、y、z轴。 同理,Space.Self 旋转角度被应用围绕自身(本地、局部)的x、y、z轴


                14楼2017-10-11 17:08
                回复