2025Unity 游戏项目开发必备知识点(1)

一、场景切换与游戏退出功能

1.必要命名空间

2.场景切换实现

(1)示例代码

(2)常见问题及解决

(3)补充说明

3.游戏退出实现

(1)示例代码

(2)注意事项

二、鼠标控制基础

1.核心功能实现

(1)隐藏 / 显示鼠标

(2)鼠标锁定模式

(3)自定义鼠标光标

2.使用说明

三、Unity 中的随机数与委托使用基础

1.随机数生成

(1)Unity 随机数(Random 类)

(2)C# 随机数(System.Random 类)

2.委托的使用

(1) C# 自带委托

(2)Unity 自带委托(UnityAction)

四、Unity入门—模型资源导入

1.模型由什么构成

2.Unity支持的模型格式

3.如何指导美术同学导出模型

4.学习阶段在哪里获取模型资源


一、场景切换与游戏退出功能

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)原生的模型贴图资源(需要我们自己进行一些设置)

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值