当前位置: 首页 > news >正文

Unity 向量计算、欧拉角与四元数转换、输出文本、告警、错误、修改时间、定时器、路径、

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class c2 : MonoBehaviour
{
    // 定时器
    float t1 = 0;

    void Start()
    {
        // 向量
        Vector3 v1 = new Vector3(0, 0, 2);
        Vector3 v2 = new Vector3(0, 0, 3);

        // 计算两个向量的夹角
        Debug.Log(Vector3.Angle(v1, v2));
        // 计算向量的模
        Debug.Log(v2.magnitude);
        // 两点之间的距离 (计算v1、v2 两个点之间的距离) 
        Debug.Log(Vector3.Distance(v1, v2));
        // 计算过程时,参数1 + (参数2 - 参数1)* 参数3
        // 插值 (0,0,0)  (0,0,1)   (0.1f) = 过程:0+ ((1-0)*0.1)  = (0,0,0.1)
        // 插值 (0,0,2)  (0,0,2)   (0.2f) = 过程:2+((2-2)*0.2) = (0,0,0.2)
        // 插值 (0,0,2)  (0,0,2)   (0.2f) = 过程:2+((2-2)*0.2) = (0,0,0.2)
        // 插值 (3,6,1)  (9,5,2)   (0.1f) =
        // 过程:3+ ((9-3)*0.1) = 3.6
        // 过程:6+ ((5-6)*0.1) = 5.9
        // 过程:1+ ((2-1)*0.1) = 1.1
        // 结果:(3.6,5.9,1.1)
        Debug.Log(Vector3.Lerp(new Vector3(3,6,1), new Vector3(9,5,2),0.1f));


        // 欧拉角 x y z
        // 四元数 x y z w

        // 欧拉角
        Vector3 rotate = new Vector3(60, 50, 0);
        // 四元数
        Quaternion quaternion = Quaternion.identity;
        // 欧拉角 转 四元数
        quaternion = Quaternion.Euler(rotate);
        Debug.Log("欧拉角 转 四元数");
        Debug.Log(quaternion);
        // 四元数 转 欧拉角
        Debug.Log("四元数 转 欧拉角");
        Debug.Log(quaternion.eulerAngles);
        // 这是一个朝向敌人的向量
        Vector3 dir = Vector3.left;
        // 获得一个朝向这个向量的旋转
        quaternion = Quaternion.LookRotation(dir);


        // 输出文本
        Debug.Log("输出文本");
        // 输出警告
        Debug.LogWarning("输出警告");
        // 输出错误
        // Debug.LogError("输出错误");

        // 时间相关
        // 游戏开始到现在所用时间
        // Debug.Log(Time.time);

        // 在编辑中-》项目设置-》时间:(时间尺度、固定时间步进)
        // 时间尺度:时间缩放数值
        Debug.Log(Time.timeScale);
        // 修改 时间尺度 (增加重量组件可以看效果)
        // Time.timeScale = 0.1f;

        // 固定时间步进:固定时间间隔
        Debug.Log(Time.fixedDeltaTime);

        // 路径相关
        // 找到 Assets 路径下的 某文件 (可读 某些不可写)若PC端可读可写
        Debug.Log(Application.dataPath + "/test.txt");
        // 持久化路径 可读可写  默认C盘
        Debug.Log(Application.persistentDataPath);
        // 在Asset文件下的 StreamingAssrts 文件夹内的文件 不会被加密(适合放配置文件)
        // 找到 在Asset文件下的 StreamingAssrts路径
        Debug.Log(Application.streamingAssetsPath);
        // 在Asset文件下的 Resources 文件夹内的文件 加载比较方便
        // 找到 临时文件 路径
        Debug.Log(Application.temporaryCachePath);

        // 判断是否 后台运行
        Debug.Log(Application.runInBackground);
        // 打开一个网址
        // Application.OpenURL("http://baidu.com");
        // 退出 (好像有问题,后面再尝试一下)
        // Application.Quit();
    }

    // Update is called once per frame
    void Update()
    {
        // 帧之间的间隔时间(跟硬件相关)
        // Debug.Log(Time.deltaTime);

        // 计时器
        t1 += Time.deltaTime;

        if (t1 >= 5)
        {
            Debug.Log("5秒到了");
            t1 = 0;
        }
    }
}

在这里插入图片描述

在这里插入图片描述

相关文章:

  • SQL server创建数据库
  • leetcode--接雨水(双指针法,动态规划,单调栈)
  • 【AI Agent系列】【MetaGPT多智能体学习】3. 开发一个简单的多智能体系统,兼看MetaGPT多智能体运行机制
  • python66-Python的循环之常用工具函数
  • pyspark(一) DataFrame结合jupyter入门
  • Redis内存淘汰策略详解
  • Java面试题总结6
  • 【GPTs分享】每日GPTs分享之Image Generator Tool
  • 加密和签名的区别及应用场景
  • 详解字符串函数<string.h>(上)
  • 详解IP安全:IPSec协议簇 | AH协议 | ESP协议 | IKE协议
  • 回溯 Leetcode 47 全排列II
  • 鸿蒙ArkTs开发WebView问题总结
  • ChatGPT学习第三周
  • SpringBoot 自定义映射规则resultMap association一对一
  • Nacos配置
  • 动态规划--(算法竞赛、蓝桥杯)--二维费用背包
  • 如何学习自然语言处理之语言模型
  • 【投稿优惠|快速见刊】2024年图像,机器学习和人工智能国际会议(ICIMLAI 2024)
  • element-ui附件上传及在线查看详细总结,后续赋源码
  • 人民日报:广东全力推动外贸稳量提质
  • 持续更新丨伊朗官员:港口爆炸事件已致5人死亡
  • 财政部部长蓝佛安:中国将采取更加积极有为的宏观政策
  • 王旭任甘肃省副省长
  • 机票搜索热度飙升,透过数据看五一假期旅游热度
  • 北京顺义潮白河大桥主跨坍塌原因公布,已成立事故调查组