四元数旋转+四元数和向量相乘+音频相关

eulerAngles API

rotation.eulerAngles Unity把四元数用欧拉角的形式展现在Inspector面板上(0-360),更好理解。

例:

Vector3 eulerAngles=cube.transform.rotation.eulerAngles;

Debug.Log("eulerAngles:"+eulerAngles);

四元数和向量相乘

以下小案例运用了四元数与向量相乘的知识点,使其类似与RotateAround功能,代码如下:

cs 复制代码
    public GameObject cube;
    public GameObject target;
    private float deg = 1;
    void Update()
    {
        Vector3 dir = target.transform.position - cube.transform.position;
        //求出从cube指向target的dir向量
        Quaternion q1 = Quaternion.AngleAxis(deg, Vector3.up);//沿y轴旋转deg
        Vector3 newdir = q1 * dir;//四元数与向量相乘
        Debug.DrawLine(cube.transform.position, target.transform.position, Color.blue);
        Debug.DrawRay(cube.transform.position, newdir, Color.red);
        //将cube的坐标加上newdir得到新位置,新位置为cube沿着newdir移动newdir模长距离
        Vector3 pos = newdir + cube.transform.position;
        target.transform.position = pos;//将新位置赋给target

    }

实现效果如下:

Lerp与Slerp的区别

对应代码及展示效果如下图,通过其展示图可直观看出两者的区别:

音频相关

AudioSource:播放声音的组件,音源

Mute:静音

Play On Awake:唤醒时自动播放

loop:循环;

Priority:优先级;

Volume:音量大小

Pitch:音调高低

AudioListener:监听声音,一般放在摄像机上,相当于耳朵,一个场景内只能有一个这个组件

AudioClip:Unity支持的音频格式:

.aiff:适用于较短声音片段;

.wav:适用于较短声音片段;

.mp3,OGG:适合较长的音乐片段。

Force to momo:强制将多声道音频转换成单声道音频,占用大小会缩小;勾选Normalize之后会对声音有优化。

Load In Background:在后台加载声音

Load Type: Decompress On Load:以不压缩的形式存在内存,用的时候方便,但是占用内存高;

Compress in memory:以压缩的形式存在内存

Streaming:以流的形式存在内存,使用时现解码

Preload Audio Data:预加载音频资源;如果勾选进入场景就会马上加载;如果不勾选,第一次使用音频时才会加载进来。

Compression Format:PCM:音频以最高质量进行存储

Vorbis:相对来说压缩的更小;根据质量控制Quality选择;

ADPCM:脚步声,武器碰撞的声音。

该系列专栏为网课课程笔记,仅用于学习参考。

相关推荐
雪下的新火8 小时前
Blender:法线图&黑白图
游戏·unity·游戏引擎·blender·笔记分享
HahaGiver66610 小时前
从0到1做一个“字母拼词”Unity小游戏(含源码/GIF)- 实现多单词顺序通关进度逻辑
unity·游戏引擎·游戏程序
Dr.勿忘14 小时前
Unity一分钟思路---UI任务条:宝箱位置如何准确卡在百分比位置上
ui·unity·游戏程序·屏幕适配
weixin_4242946714 小时前
Unity 实现 ScrollBar 值变化控制 Panel 位置的方法
unity·游戏引擎
在路上看风景1 天前
## 2.2 状态同步
unity
霜绛1 天前
Unity:lua热更新(一)——AB包AssetBundle、Lua语法
笔记·学习·游戏·unity·lua
霜绛1 天前
Unity:lua热更新(二)——Lua语法(续)
笔记·学习·unity·游戏引擎·lua
yi碗汤园1 天前
【一文了解】C#反射
开发语言·unity·c#
HahaGiver6661 天前
Unity Shader Graph 3D 实例 - 基础的模型贴图渲染
3d·unity·游戏程序·贴图·游戏美术
HahaGiver6661 天前
Unity Shader Graph 3D 实例 - 一个简单的3D打印效果
3d·unity·游戏引擎