Unity:momo .meta 摄像头 坐标系 材质 碰撞器 刚体 物理材质 FPS 代码入口 out 节点可见性 节点查找 世界局部坐标转换 平移缩放 欧拉角 四元素 物体旋转 获取组件

momo

在这里插入图片描述


.meta文件

Unity资源文件的辅助管理工具,不修改文件内容的基础上,将文件的一些属性写入.meta文件


  • Unity是左手系坐标

  • Unity摄像头:1)正交摄像头,一般用在3D中。2)透视摄像头,一般用在2D中。

  • 3D世界的坐标系:1)世界坐标 。2)摄像机坐标。3)模型坐标。

材质

  • 模型就像骨骼,材质相当于3D物体的皮肤
  • Mesh render组件会有一个材质模型,可以通过这个来制定绘制网格用的材质。

  • 碰撞器组件可以检测到碰撞

  • 刚体能够让物体做物理计算,获得力,力矩等

  • 物理材质碰撞的时候需要的物理参数,例如弹性材料

  • FPS:franmes per second

组件的代码入口

在这里插入图片描述***

  • out:如果是被out修饰的 参数,那么在函数内可以直接修改这个变量的值。每个方法只有一个返回值,想有多个返回值的时候就需要out。

  • GameObject可见性:activeSelf,activeInHierarchy,SetActive

  • 距离上一次的刷新时间:Time.deltaTime/fixedDeltaTime

场景树节点查找

  • 全局查找:Find(“节点路径”);
  • 基于Tag的全局查找,先找到的,先返回:FindWithTag(tag名称);
  • 节点子树查找:transform.Find();
  • 查找节点下的孩子:transfrom.findChild();
  • 获取节点下的第几个孩子:transfrom.GetChild();
  • 全局查找:FindGameObjectsWithTag;

  • 编辑器里面的postion是相对坐标,可是代码里面的postion是绝对坐标

void FixedUpdate() {
        float dt = Time.fixedDeltaTime; // 物理引擎固定更新的时间间隔
    }

  • forward(正z),up(正y),right(正x);

世界坐标和局部坐标的相互转换

  • 将局部坐标转成世界坐标
	Vector3 w_pos = this.transform.TransformPoint(new Vector3(0, 0, 0));
        w_pos = this.transform.TransformVector(0, 0, 0);
        Debug.Log(w_pos);
  • 将世界坐标转成局部坐标
	Vector3 local_wpos = this.transform.InverseTransformPoint(new Vector3(0, 0, 15));
        Debug.Log(local_wpos);

  • Rotate()的第二个参数:1)Space.World: 相对于世界坐标系的变换。 2)Space.Self:相对于局部坐标系的变换。

  • 平移物体:Translate
  • 缩放物体:localScale,lossyScale(只读)

  • unity transform里面为了避免万象节锁,使用的是四元数(Quaternion)来存放一个旋转;
  • unity编辑器里面为了直观的来旋转,使用的是欧拉角来表示
  • 欧拉角:表示物体旋转,绕哪个轴旋转多少度。unity规定zxy顺序;但是会造成万向节锁(Gimbal Lock)的现象。

  • transform存放一个代表旋转的四元素rotation

  • 四元素转换成对应的欧拉角:eulerAngles;

  • 欧拉角转换成对应的四元素:Quaternion.Euler();

  • this.cube_trans.rotation = Quaternion.Euler(new Vector3(0, 45, 0));

  • Rotate(欧拉角度);

    // 欧拉旋转, 在当前的基础,再绕y周旋转45;
    this.cube_trans.Rotate(new Vector3(0, 45, 0));
    

    Rotate(欧拉角,空间);
    Rotate(方向,角度);
    Rotate是逆时针为正,与数学一致;
    RotateAround
    LookAt()视线对准对应的方位;
    localEulerAngles,相对父级旋转的欧拉角;


    Quaternion

    • Quaternion.LookRotation,根据自己的上方向,盯着前方;
    • Angle(lhs,rhs);计算两个旋转之间的夹角
    • FromToRotation(from, to);一个方向到另一个方向的旋转

    获取组件实例

    • GetCommpont<组件类型>();
    • GetCommpont<>();
    • GetCommpontInChildren<>();
    • GetCommpontInParent<>();
    • GetCommpont(string name);
    • MonoBehaviour将参数绑定到编辑器
    • gameObject获取transfrom;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值