- 博客(30)
- 收藏
- 关注
原创 Unity Job系统详解原理和基础应用处理大量物体位置
该脚本使用和高效管理大量剑对象的位移计算与坐标更新。通过双缓冲技术实现无锁并行计算,适用于需要高性能批量处理Transform的场景。
2025-03-08 12:37:51
773
原创 Unity:数据驱动UI设计模式
接下来,我们创建一个UI组件来处理数据变化并更新UI。最后,将所有的组件和脚本集成到你的场景中,设置好引用,确保事件绑定在脚本的`Start`方法中正确配置。首先,我们需要定义数据模型。这些模型将表示我们应用程序中的实际数据。我们可以创建一个简单的事件系统来监控数据变化,然后更新UI。// 设置数据以触发UI更新。// 绑定到数据变化事件。### 2. 事件系统和数据绑定。### 3. 数据驱动UI组件。### 1. 创建数据模型。### 4. 实现数据更新。### 5. 集成在一起。
2024-06-20 20:38:16
562
原创 Unity:状态机模式
状态机模式(State Pattern)是一种行为设计模式,它允许一个对象在其内部状态改变时改变其行为,对象看起来好像修改了它的类。状态机模式在处理对象状态变化时特别有用,尤其是在游戏开发中,如AI行为、角色状态切换等。述实现展示了如何使用状态机模式来组织游戏AI的行为,通过将复杂的行为逻辑分解成不同的状态类,并使用状态机来管理和调度这些状态,可以显著简化代码,使得系统更具扩展性和可维护性。然后,我们实现一个通用的状态机类,该类会管理当前的状态以及状态的切换。#### 2. 在敌人AI中使用状态机。
2024-06-20 20:12:38
1518
原创 Unity:工厂模式
如果业务逻辑需要引入新的敌人类型,只需新建一个具体的产品类和对应的工厂类,然后在客户端代码中调整工厂实例即可,而不需要改动现有的客户端代码。在Unity游戏开发中,工厂模式可用于创建复杂的游戏对象(如敌人、道具、角色等),以便更好地管理对象的生成和配置。下面的例子详细演示了如何在Unity中使用工厂模式。定义一个工厂接口或抽象工厂类,该类将声明一个用于创建产品对象的工厂方法。实现具体工厂类,这些类继承自工厂接口,并负责实例化具体的产品对象。接下来,定义具体的产品类,这些类继承自抽象产品类,并实现其接口。
2024-06-20 20:08:58
440
原创 Unity:命令模式 实现AI
通过将每个动作封装成一个独立的命令对象,命令模式可以使AI的行为更容易管理和扩展。通过使用命令模式,我们将AI行为分离成了独立的命令对象,使其更容易管理和扩展。通过这种方式,我们可以轻松地增加新的命令类型,并按需调整命令的执行顺序。假设我们有一个敌人的AI,它需要执行一系列预定的动作,包括巡逻(Patrol)、追击(Chase)和攻击(Attack)。首先,我们定义一个基本的命令接口,所有具体的命令类都需要实现这个接口。接下来,我们创建一个命令调度器,它负责管理和调度命令的执行顺序。#### 具体命令类。
2024-06-19 22:14:29
1470
原创 unity===物品跨场景 序列化基本结构
/ 从Vector3转换为SerializableVector3的构造函数。// 可序列化的Vector3类,用于在不同环境中保存和传输Vector3的数据。// 物品的位置信息,使用SerializableVector3来表示。// 将SerializableVector3转换为Vector3。// 可序列化的场景物品类,用于在不同环境中保存和传输场景物品的数据。// Vector3的x坐标。// Vector3的y坐标。// Vector3的z坐标。
2024-05-14 16:28:45
385
原创 QFramework Architecture:Command模块案例
【代码】QFramework Architecture:Command模块案例。
2024-05-10 15:33:30
356
1
原创 QFramework框架 Architecture:Sysrem模块案例
【代码】学习记录:QFormWork学习 Architecture。
2024-05-10 15:20:19
588
1
原创 学习日记:关于委托细节
当你将一个方法如 ReceivedEvent 传递给期望 System.Action 类型参数的函数时,C# 编译器会自动将这个方法转换为 System.Action 委托实例。在C#中,ReceivedEvent 虽然是一个普通的方法,但它可以被用作委托参数,因为它符合 System.Action 委托的签名。在第一种方式中,编译器自动将 ReceivedEvent 方法转换为 Action 委托。这是C#语言支持的一种功能,称为方法组转换,允许直接将方法作为委托参数传递,只要方法签名与委托类型匹配。
2024-05-10 00:58:18
370
2
原创 Unity 关于 PlayerPrefs
它是基于键值对(key-value pair)的形式来工作的,允许开发者存储和检索基本数据类型,如整数(int)、浮点数(float)和字符串(string)。容量限制:虽然具体限制取决于平台,但通常PlayerPrefs不应用于存储大量数据,因为它会占用用户设备的存储空间,并可能导致性能问题。PlayerPrefs.GetString(key, defaultValue):读取字符串,如果没有则返回默认值。登录凭证(简单的):有时用于存储用户名或游戏内部的认证信息,但需注意安全风险,不适用于敏感信息。
2024-05-09 10:48:48
476
1
原创 学习日记:处理校验网页
实例化对象把HTTPPasswordMgrWithDefaultRealm作为参数传入。#将创建的auth_handler作为参数传入build_opener。#利用Opener的open方法打开链接就可校验成功。
2024-02-16 18:16:46
410
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人