基础知识:
Unity的五个窗口:
1、Project工程窗口:显示Assets文件夹下的所有文件/文件夹
2、Hierarchy层级视图:列出当前场景所包含的成员(游戏物体GameObject)
3、Inspector检视(属性)视图/面板:显示所选中的GameObject的属性
4、Scene场景视图:设计窗口
5、Game游戏视图:游戏运行预览窗口
Project窗口下一般的几个文件夹:Materials,Scenes,Scripts,Prefabs
Unity的五个窗口:
1、Project工程窗口:显示Assets文件夹下的所有文件/文件夹
2、Hierarchy层级视图:列出当前场景所包含的成员(游戏物体GameObject)
3、Inspector检视(属性)视图/面板:显示所选中的GameObject的属性
4、Scene场景视图:设计窗口
5、Game游戏视图:游戏运行预览窗口
Project窗口下一般的几个文件夹:Materials,Scenes,Scripts,Prefabs
Unity操作:
1、Project窗口下右键->Show in Explorer 打开工程存储的文件夹
在工程存储文件夹下:Assets(资源)下存储游戏相关的资源,如音乐、模型等且该文件夹内所有的文件都会在Project窗口下显示
2、Hierarchy窗口下右键可以创建一些基本游戏物体
3、双击Hierarchy窗口内的游戏物体可聚焦到该物体
4、可以在Hierarchy窗口下将一个游戏物体放置在另一个下,此时子物体所显示的坐标是相对于父物体的局部坐标,父物体所显示的坐标为世界坐标
5、Edit->Preference->External Tools->External Script Editor 更改脚本编辑器
6、Help->Scripting Reference 打开Unity API档案
7、File->Build Settings 发布游戏(architecture选项x86表示32位系统,x86_64表示64位系统)
组件(Component):
材质(Material):修改模型外观
刚体(Rigidbody):模拟物理效果,如重力(Gravity)、速度(Velocity)等
脚本(Script):控制游戏物体的行为
变换(Transform):记录游戏物体的移动信息
预制(Prefab):多个相同物体的设置,将Hierarchy内的物体拖至Project窗口即可形成,当改动其中数据时所有由 预制生成的物体将跟随改变
碰撞器(Collider):检测和处理碰撞的基本组件,将其下的 is Trigger勾选则变为一个触发器
标签(Tag):区别游戏物体的类别
材质(Material):修改模型外观
刚体(Rigidbody):模拟物理效果,如重力(Gravity)、速度(Velocity)等
脚本(Script):控制游戏物体的行为
变换(Transform):记录游戏物体的移动信息
预制(Prefab):多个相同物体的设置,将Hierarchy内的物体拖至Project窗口即可形成,当改动其中数据时所有由 预制生成的物体将跟随改变
碰撞器(Collider):检测和处理碰撞的基本组件,将其下的 is Trigger勾选则变为一个触发器
标签(Tag):区别游戏物体的类别
方法调用:
print(); 可以把一个字符串输出到控制台
Rigidbody <rdName>; 声明一个刚体对象
Transform <componentName>; 声明一个Transform对象
<rdName> = GetComponent<Rigidbody>(); 得到刚体组件并复制给之前声明的刚体对象
<rdName>.AddForce(new Vector3(x,y,z)); 给该刚体施加一个力(2D游戏中为Vector2())
float <valueName> = Input.GetAxis("Horizontal"/"Vertical"); 得到水平方向(A(返回-1)、D(返回1))/垂 直方向(W(返回1)、S(返回-1))的输入
transform.position 得到游戏物体的位置,返回一个三维向量
void OnCollisionEnter(Collision collision){//检测物体碰撞的“开始”
//collision.collider => 所碰撞到的游戏物体的collider组件
//string name = collision.collider.name => 获取所碰撞到的游戏物体的名字
//string tag = collision.collider.tag => 获取所碰撞到的游戏物体的标签
}
print(); 可以把一个字符串输出到控制台
Rigidbody <rdName>; 声明一个刚体对象
Transform <componentName>; 声明一个Transform对象
<rdName> = GetComponent<Rigidbody>(); 得到刚体组件并复制给之前声明的刚体对象
<rdName>.AddForce(new Vector3(x,y,z)); 给该刚体施加一个力(2D游戏中为Vector2())
float <valueName> = Input.GetAxis("Horizontal"/"Vertical"); 得到水平方向(A(返回-1)、D(返回1))/垂 直方向(W(返回1)、S(返回-1))的输入
transform.position 得到游戏物体的位置,返回一个三维向量
void OnCollisionEnter(Collision collision){//检测物体碰撞的“开始”
//collision.collider => 所碰撞到的游戏物体的collider组件
//string name = collision.collider.name => 获取所碰撞到的游戏物体的名字
//string tag = collision.collider.tag => 获取所碰撞到的游戏物体的标签
}
//Unity中Inspector窗口下的position单位为m,rotation单位为度
//脚本中声明为public的变量将在Unity Inspector窗口中显示
//脚本中的Update方法大约一秒调用60次(默认)
单词积累:
asset 资源
view/window 窗口
hierarchy 层次,等级制度
inspector 检察员,检阅官
rigidbody 刚性体
sphere 球(体)
plane 飞机;平面;平的
perspective 透视的;望远镜;透镜
position 位置;方位
rotation 旋转
scale 规模;比例
albedo 反照率(Unity材质中表示颜色)
component 组件;成分
external 外部的;外面的
prefab 预制的
trigger 触发器
anchor 锚(Text中调整文字框在整个屏幕中的布局)
alignment 校直;调整(Text中调整文字布局)
font 字体
architecture 体系结构(系统位,如32位、64位)
asset 资源
view/window 窗口
hierarchy 层次,等级制度
inspector 检察员,检阅官
rigidbody 刚性体
sphere 球(体)
plane 飞机;平面;平的
perspective 透视的;望远镜;透镜
position 位置;方位
rotation 旋转
scale 规模;比例
albedo 反照率(Unity材质中表示颜色)
component 组件;成分
external 外部的;外面的
prefab 预制的
trigger 触发器
anchor 锚(Text中调整文字框在整个屏幕中的布局)
alignment 校直;调整(Text中调整文字布局)
font 字体
architecture 体系结构(系统位,如32位、64位)
常用快捷键:
Ctrl + C/V 复制/粘贴游戏物体
Ctrl + D 复制且粘贴选中的游戏物体
Delete 删除游戏物体
F2 重命名
Ctrl + C/V 复制/粘贴游戏物体
Ctrl + D 复制且粘贴选中的游戏物体
Delete 删除游戏物体
F2 重命名