• Unity脚本的基础语法(5)-向量


    3D游戏开发中经常需要用到向量的运算,Unity中提供了完整的向量及向量操纵方法,分别为表示二维向量的Vector2类、表示三维向量的Vector3类与表示四维向量的Vector4类。这3种向量用法基本相同。

    Vector一般与postion相互联动
    或者作为一些API的变量

    Vector3类可以在实例化时进行赋值

    public class Vector : MonoBehaviour {
    
        public Vector3 position1 = new Vector3();
        public Vector3 position2 = new Vector3(1, 2, 2);
    
        void Start()
        {
            position1.x = 1;
            position1.y = 2;
            position1.z = 2;
        }
        void Update()
        {
            transform.position = position1;
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    Vector3类中常量对应的值

    常量
    Vector3.zeroVector(0,0,0)
    Vector3.forwardVector(0,0,1)
    Vector3.rightVector(1,0,0)
    Vector3.downVector(0,-1,0)
    Vector3.oneVector(1,1,1)
    Vector3.upVector(0,1,0)
    Vector3.backVector(0,0,-1)
    Vector3.leftVector(-1,0,0)

    这些向量常量可以方便使用,不必一直实例化

    Vector3类中有很多对向量进行操纵的方法
    Vector3类中属性与方法的作用

    属性/方法作用
    magnitudea向量的长度
    normalized向量归一化后的结果
    sqrMagnitude向量的平方长度
    Lerp两个向量之间的线性插值
    Slerp在两个向量之间进行球形插值
    OrthoNormalize使向量规范化并且彼此相互垂直
    MoveTowards从当前的位置移向目标
    RotateTowards从当前的向量移向目标
    SmoothDamp随着时间的推移,逐渐改变一个向量朝向预期的目标
    Scale两个矢量组件对应相乘
    Cross两个向量的交叉乘积
    Reflect沿着法线反射向量
    Dot两个向量的点乘积
    Project投影一个向量到另一个向量
    Angle返回两个 向量的夹角
    Distance返回两点之间的距离
    Min返回两个向量中长度较小的向量
    Max返回两个向量中长度较大的向量
    operator+两个向量相加
    operator+两个向量相减
    operator*两个向量相乘
    operator/两个向量相除
    operator==两个向量是否相等
  • 相关阅读:
    AI人工智能老师大模型讲师叶梓 OneLLM:开创性的多模态大型语言模型技术
    入门力扣自学笔记139 C++ (题目编号998)
    图像相似度对比方法
    类型转换方法
    【11】二进制编码:“手持两把锟斤拷,口中疾呼烫烫烫”?
    v-if与v-show造成部分元素丢失的问题——v-if复用元素问题
    《谷歌眼镜》新书作者:眼镜需要成为AR的载体吗?
    java面试(八)
    一本通2070;数字对调
    LCR 056.两数之和 IV
  • 原文地址:https://blog.csdn.net/ht_game/article/details/125478392