一、场景切换与游戏退出功能
1.必要命名空间
using UnityEngine.SceneManagement;
2.场景切换实现
语法:SceneManager.LoadScene(场景名);
(1)示例代码
if(Input.GetKeyDown(KeyCode.Space))
{
// 切换到名为"Test2"的场景
SceneManager.LoadScene("Test2");
}
(2)常见问题及解决
问题:直接切换场景可能报错
原因:目标场景未添加到场景列表
解决方法:
【1】打开 File → Build Settings
【2】将需要切换的场景拖拽到 Scenes In Build 列表中

(3)补充说明
【1】过时方法:Application.LoadLevel("Test2") 虽可用但不推荐
【2】场景加载可通过场景名称或索引(在 Build Settings 中的顺序)实现

3.游戏退出实现
语法:Application.Quit();
(1)示例代码
if(Input.GetKeyDown(KeyCode.Escape))
{
// 退出游戏
Application.Quit();
}
(2)注意事项
【1】该功能在 Unity 编辑器中无效
【2】仅在发布游戏后才能正常工作
二、鼠标控制基础
1.核心功能实现
(1)隐藏 / 显示鼠标
通过设置Cursor.visible属性控制鼠标可见性:
// 隐藏鼠标
Cursor.visible = false;
// 显示鼠标(默认状态)
Cursor.visible = true;
(2)鼠标锁定模式
Unity 提供三种鼠标锁定模式,通过Cursor.lockState设置:
// 不锁定(默认)
Cursor.lockState = CursorLockMode.None;
// 锁定到屏幕中心(同时会隐藏鼠标,按ESC可解锁)
Cursor.lockState = CursorLockMode.Locked;
// 限制在窗口范围内(不会隐藏)
Cursor.lockState = CursorLockMode.Confined;
(3)自定义鼠标光标
使用自定义图片替换默认鼠标光标:
// 声明一个Texture2D变量用于赋值图片
public Texture2D tex;
// 设置自定义光标
// 参数1:光标图片
// 参数2:点击点偏移(相对图片左上角)
// 参数3:光标模式(Auto自动适配平台)
Cursor.SetCursor(tex, Vector2.zero, CursorMode.Auto);
鼠标
2.使用说明
(1)自定义光标需在 Inspector 面板中给tex变量赋值一张 Texture2D 图片
(2)图片导入设置中建议将Texture Type设为Cursor
(2)锁定模式切换通常在游戏开始时(如进入游戏场景)设置

三、Unity 中的随机数与委托使用基础
1.随机数生成
Unity 提供了专门的 Random 类用于生成随机数,与 C# 自带的 System.Random 有所区别。
(1)Unity 随机数(Random 类)
// 生成整数:左包含,右不包含(生成 0~99 之间的随机数)
int randomNum = Random.Range(0, 100);
print(randomNum);
// 生成浮点数:左右都包含(生成 1.1~99.9 之间的随机数)
float randomNumF = Random.Range(1.1f, 99.9f);
(2)C# 随机数(System.Random 类)
// 创建随机数实例
System.Random r = new System.Random();
// 生成 0~99 之间的随机数
r.Next(0, 100);
2.委托的使用
委托是一种引用类型,用于存储方法的引用。
(1) C# 自带委托
Action 委托:无返回值
// 无参数
System.Action ac = () =>
{
print("123");
};
// 带参数
System.Action<int, float> ac2 = (i, f) =>
{
// 方法体
};
Func 委托:有返回值
// 无参数,返回 int
System.Func<int> fun1 = () =>
{
return 1;
};
// 带参数,返回 string
System.Func<int, string> fun2 = (i) =>
{
return "123";
};
(2)Unity 自带委托(UnityAction)
// 无参数
UnityAction uac = () =>
{
// 方法体
};
// 带参数
UnityAction<string> uac1 = (s) =>
{
// 方法体
};
四、Unity入门—模型资源导入
1.模型由什么构成
(1)骨(骨骼)——非必须,有动作的模型才需要
(2)肉(网格面片)——必须,决定了模型的轮廓
(3)皮(贴图)——必须,决定了模型的颜色效果
2.Unity支持的模型格式
官方推荐使用FBX格式( .fbx)的模型文件,其它格式虽然支持,但是不推荐
比如:.dae .3ds .dxf .ob
3.如何指导美术同学导出模型
Unity官方文档在 Unity 外部创建资源 - Unity 手册

4.学习阶段在哪里获取模型资源
(1)AssetStore(推荐)
(2)淘宝(推荐)
(3)一些第三方的资源下载网站(不推荐)
获取的资源一般两种形式
(1)Unity资源包(更方便我们使用)
(2)原生的模型贴图资源(需要我们自己进行一些设置)
35万+

被折叠的 条评论
为什么被折叠?



