ctrl+s保存场景
Folder 文件夹
ctrl+s保存场景
Folder 文件夹
Inspector 属性面板,检视面板
Project 工程面板
Hierarchy 层级面板
Scene 场景面板
Game 游戏面板(最后呈现游戏的样子)
Unity Project Workspace
1.assets 游戏相关的资源
2.library 库,脚本或者文件
3.projectSettings 工程设定设置
4.Temp 临时文件
Debug.Log
GameObject游戏物体
GameObject.Instantiate()游戏物体实例化
Instantiate参数(物体名,位置)
transform.position当前脚本所在物体的位置
transform.rotation当前脚本所在物体的旋转
Input.GeiMouseButtonDown()获取鼠标按键
参数 0左键 1右键 2中建
给子弹施加初速度
给小球Prefab添加刚体组件,通过刚体组件赋值初速度;然后将实例化的小球赋值给另一个GameObject。
GameObject b = GameObject.Instantiate(bullet,transform.position,transform.rotation);
Rigidbody rgd = b.GetComponent<Rigidbody>();
rgd.velocity = transform.forward*speed//z = 1,x = 0 , y = 0方向。
代码中的变量与Inspect中组件的变量数值不同时,以Inspect中的值为准。
创建墙和子弹的Prefab
为整理过多的同类GameObject,可创建一个空物体Create Empty来管理。
Library:库文件夹:存放缓存数据,以及unity自带的一些脚本。
ProjectSettings:工程设置,存放工程的设定。
inspector 属性面板(检视面板)
projet 工程面板
Hierarchy 层级面板
Scene 场景面板
game 游戏面板
persp 透视视图
Iso 正交视图,等比例显示
Pivet 中心点(自身),可以任意设置
Center 视觉中心点
Global 世界坐标
Local 局部坐标
Sence--GameObject游戏物体---Componet组件
Transform 保存物体位置,旋转,大小
collder 碰撞控制器
Rigidbody 有重力
Prefeb - 预制体
velocity 速度
快捷键Q,W,E,R
Alt+鼠标右键围绕目标物体视角旋转。
双击/F均可聚焦物体。
鼠标中键,视野平移
透视视图:近大远小
scene-GameObject 游戏物体
组件
transform 位置 旋转 缩放
render :控制显示
游戏物体由组件生成
collder:碰撞控制器
console控制
按住Ctrl
Gameobject-游戏物体-游戏组件(Componment)有各种类别构成。有各种类别
Gizmos,中可以缩小camera.
Global:世界坐标
Local:局部坐标。
Pivot:游戏内物体坐标点(美工制定)
ctenter:
Alt+鼠标右键围绕目标物体视角旋转。
双击/F均可聚焦物体。
鼠标中键,视野平移
透视视图:近大远小。
Hierarchy 当前场景下有哪些元素。
Inspector 属性面板/检视面板
Project 工程面板
Hierarchy 层级面板
Scene 场景面板
Game 游戏面板
Assets:资源文件夹(声音,图片,脚本等。)
Library:库文件夹:存放缓存数据,以及unity自带的一些脚本。
ProjectSettings:工程设置,存放工程的设定。
Temp
16.给子弹加初始速度
前面实现点击鼠标左键能出现实例化小球,但小球还不能发射,此时要给小球一个初始速度,让他发射
1.通过刚体实现:Project里--Sphere(小球)--右边的Add Component里输入刚体(Rigidbody)
通过在刚体里加速度让小球发射
2.代码实现:
(1)public float speed = ; //定义一个速度,
(2)在update里的代码
GameObject b = GameObject.Instantiate(bullet,transform.position,transform.rotation);
Rigidbody rgd = b.GetComponent<Rigidbody>() // 得到游戏物体身上物件的刚体组件
rgd. velocity=transform.forward *speed //设置速度的方向为摄像机的前方向 方向乘以速度
发射子弹
1. 创建字段(还是在原来那个摄像机基础上)
public GameObiect bullet;
在inspector--shoot(script)里会出现一个bullet的列表
2. 给bullet赋值:Prefabs里的Sphere直接拖过来给bullet列表项的框框里,然后在代码里就可以通过双击bullet来访问Prefabs里的Sphere了
3. 实例化bullet(当按下鼠标左键的时候):
放在update里(用if判断)
if(Input.GetMouseButtonDown(0)) //0
{
GameObject.Instantiate(bullet,transform.position,transform.rotation); //camera的位置、camera旋转 (此时小球和相机实例化成为一个了)
}
GameObject.Instantiate 实例化