9.3
1.基本
- assets资源,library库,projectsetting设置(时间),temp临时文件夹
- package结尾的可以直接导入到unity中
- Plane,Quad都是单面有,另一面是透明的 windzone 风区,3Dtext文本 terrain地形(500*500)
操作基础
- 如果想让Game视角和当前视角保持一致,在gameobject中选择align with view
- center中心点,pivot原点,globle世界坐标,三个方向不变,local局部坐标,会随着变化变化
- layer层操作,可以把层进行锁定和显示的选择
- persp透视视野(近大远小),iso正交视野(原本大)
- 按住ctrl可以实现单位化的移动,或者在edit-snap setting中更改单位移动的距离
- 3D物体物体中选择V键可以选择顶点
- 直接将3D物体拖到project中做成预制品prefeb,如果对prefeb进行更改,会改变所有原物体的参数
关于预制品,他会和原场景中的物体产生关联,如果对他进行删除,那么原物体就会产生miss,这个时候在gameobject中选择break prefeb instance就会破坏原物体与预制品的关联
地形与预制体
9.4
1.关于prefeb,如果想把场景中的模型应用到所有prefeb中,选择apply
2.关于地形terrain调整
设置高度为最大高度/在windows-rendering-lighting setting中可以将每次地形发生都发生改变的光照后处理取消(auto generate),减少机器运算
- 关于地形terrain调整的设置
- 2.1升高(降低shift,但不会小于零) :刷子样子/刷子大小/剧烈程度
- 2.2只能抬高(但是可以设置最大高度)
- 2.3平滑smooth
- 2.4 添加贴图(法线可以添加细节,更有立体感,但是不是必须的)/(可以调整一张贴图覆盖的大小)
- 2.5添加树
- 2.6添加花草(密度)
- 2.7基本设置
3.关于角色(一般设置为一到两个cube大小;然后地形根据角色大小设置
4.关于刚体:Mass质量;Drag:摩擦力(与下落重力也有关)Argular Drag旋转摩擦力;use gravity使用重力;constraints冻结坐标
关于碰撞体
9.5
关于碰撞(都要有碰撞器,其中至少一个刚体)
1.碰撞检测进入:
void OnCollisionEnter(Collision collision) |
每次碰撞开始调用一次 |
void OnCollisionEnter(Collision collision) |
每次碰撞离开调用一次 |
void OnCollisionStay(Collision collision) |
碰撞过程中每帧调用一次 |
collision.collider/collision.collider.name/collision.collider.tag(可以获取与之相碰撞的物体的相关信息)
2.触发器(与碰撞器的区别:可以进入到物体内部、不会发生碰撞、碰撞体是凸体convex)
void OnTriggerEnter(Collider other) |
每次触发开始调用一次 |
void OnTriggerExit(Collider other) |
每次触发离开调用一次 |
void OnTriggerStay(Collider other) |
触发过程中每帧调用一次 |
关于碰撞体信息同上
光源系统
3.光源
- 光源,光源分为四种,分别为 平行光源directional light ;点光源point light;spotlight 锥形光源;area light区域光源,主要用在烘培上;
光源默认都是realtime实时计算处理的,耗费计算机性能,将整体烘培成lightmapping,烘焙步骤:
- 1 将场景中的光设置为baked(只有烘焙特性的)
- 2将Windows-lighting settings中的lighting model选择为baked indirect
- 生成烘焙
其中,光源有三种模式,1.baked(只用于烘焙);2.realtime(只用于实时检测计算);3.mixed(混合,两种都有,比如火堆,既需要烘焙又需要做粒子特效,会实时跳动)
光源中的shadow type可以决定它的阴影效果
粒子系统
4.粒子系统
Effects- particle system
- particle system中可以更改粒子速度(随机)、粒子大小
- shape 中可以更改整个粒子系统的外形
- Emission中可以更改粒子数量(随机)
- size over lifetime可以设置为粒子随时间大小变化
- texture sheet animation可以设置粒子动画效果(如果是44帧的就设置为44)
- renderer中可以设置动画的基本贴图,需设置一个材质,然后shader中选择particles-additive-选择贴图样式
动画效果
9.9
关于动画效果:
- 大小位置等的动画
选择需要添加动画的物体(灯光)-window-animation-create
- 选择存放路径、命名
- 编辑动画(可以选择位置、强度等等)
- sample越大变化越慢,反之变化越快
- 选择LoopTime则会发生循环,否则不会
- 关于人物动作等的动画
- 首先需要设置animator给目标
- 新建Animator controller,将动画按触发情况连接,并设置他们的触发参数(速度等等)
寻路系统
关于寻路系统NAV:
- 首先需要对路径区域进行静化处理(navigation static)
- 对目标区域进行路径烘焙(如果不设为障碍物则将该物体的navigation static取消,如果不将某物体设为寻路区域则将该物体navigation中的Object-navigation area 设为not walkable)
- 设置navigation agent(可以调整它的高度和转角速度等)
关于第三人称视角控制移动:
using System.Collections;
using System.Collections.Generic;
using