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:脚步声,武器碰撞的声音。
该系列专栏为网课课程笔记,仅用于学习参考。