预设体和变体
生成预设体
这里先生成了一个对象cube和它的子对象sphere,将cube直接拖拽至项目中assests下。
此时会assests下会直接生成一个预设体,同时层级中蓝色的对象就是该预设体所对应的对象。
变体
我们多生成几个预设体对象后,给其中一个预设体加上一个子物体使其与其他预设体不同
将这个不同的预设体对象也拖入assests文件下,可以看到选择预设体变体,点击后就会生成预设体变体。
总结
预设体在游戏开发中相当于一个类,对类进行操作可以生成许多属性相同的对象,而变体是对于同一预设体的不同状态,类似于java中的多态,变体继承于预设体,但又有跟预设体不同的地方。对于项目要求要改变大量相同的对象(敌人)属性时可以采用预设体的方法,若同时项目要求修改大量敌人首领(与敌人仅仅有部分不同的对象)时可以生成预设体变体,从而大大减少工总量。
Vector3的使用
Unity3D中用向量形式表示了对象的方向,旋转,缩放,坐标,同时也规定了一些方法来对向量进行计算,此篇简要列举几个常用的Vector3的方法。
向量基本运算
关于向量的一些常见计算
旋转(欧拉角,四元数)
浅试了下欧拉角和四元数之间的转换也了解了两者之间的关系,但在应用Quaternion.LookRotation()方法时感觉有些奇怪,q的欧拉角为(10,20,30),但经过Quaternion.LookRotation()方法使其转向坐标系原点后的欧拉角确实(270,0,0),感觉结果应该是(190,200,210)才对,还没有搞清楚Quaternion.LookRotation()的用法,等后续了解清楚了还会再记录。