- 博客(19)
- 收藏
- 关注
原创 事件、委托与回调
事件是一种用于在对象之间进行通信的方法,它允许一个对象通知其他对象某个事件发生。事件通常包含一个方法,当事件发生时,该方法会被调用。事件可以有一个或多个订阅者,订阅者可以在事件发生时执行相应的操作。:委托是一种表示方法指针的类型,它可以将方法作为参数传递给其他方法。委托可以看作是一种特殊的函数指针,它可以用来封装方法,以便在需要时调用。:回调是一种在特定事件发生时由另一个对象调用的方法。回调函数通常作为参数传递给事件处理程序,当事件发生时,回调函数会被自动调用。方法作为事件的处理方法。
2024-01-12 11:45:35 627 1
原创 C#反射的理解
C#反射(Reflection)是.NET Framework中提供的一种机制,它允许程序在运行时获取关于程序及其元素(如类、接口、枚举、属性、方法、参数等)的类型信息,并能动态创建实例,调用方法和访问字段。C#反射是一种在运行时检查和操作程序集、类型、成员等的技术。通过反射,可以在运行时获取类的信息,如属性、方法、事件等,并动态地调用它们。:通过反射,我们可以获取到类型的信息,包括类名、方法名、属性名、参数类型等。示例1是一个简单的C#反射示例,该示例展示了如何使用反射获取类的信息和方法。
2023-12-20 21:47:28 330
原创 使用ScriptableAsset加载数据
注意:ScriptableAsset不能在编辑器以外进行修改,可以在游戏运行前在Unity中部署数据,运行后的游戏不能使用ScriptableAsset来保存修改后的数据!我们经常用Json、CSV等文件为数据做初始化,我们也可以使用Unity中自带的ScriptableAsset类实现这一流程。在Unity中就可以右键Create这个资产数据啦!
2023-12-11 19:29:26 375 1
原创 游戏时间轴
时间数据类、单例类、时间操作类型枚举、时间处理键枚举(时间对象管理的数据结构选用字典)委托(Action带不带参数取决于具体操作)时间轴用于实现游戏中时间延迟、循环的操作。延迟时间的次数(int)延迟时间(float)时间操作类型(枚举)开始时间(long)3、时间操作类型枚举、时间处理键枚举。创建空物体,挂载到空物体上。
2023-12-04 10:51:48 592
原创 带描边雷达图的另一种思路
Pink游戏对象脚本中的关联脚本为Green脚本,通过调用Green脚本中封装好的方法(本案例中为ChangeValue方法)给Green脚本中的集合传值,因为当Pink的Scale缩放改变时,Green的Scale缩放也要进行相同的改变方能实现描边效果。每个游戏对象身上的RectTransform组件中的Scale缩放不同,实现层级效果。颜色单词对应上面雷达图底图颜色和相应游戏对象身上的脚本名称。Green中的Board字段为描边用线的线宽。脚本中的Num字段为多边形的边数。
2023-10-26 16:19:41 69
原创 SkinnedMeshRenderer 和 MeshRenderer 区别
MeshRenderer 用于渲染静态的、不带有骨骼动画的模型,而 SkinnedMeshRenderer 用于渲染带有骨骼动画的模型并支持模型的网格变形。SkinnedMeshRenderer:SkinnedMeshRenderer 适用于带有骨骼动画的模型,通常用于角色模型和其他需要变形的模型。SkinnedMeshRenderer:SkinnedMeshRenderer 可以通过关联的骨骼进行网格的变形,使模型实现各种形状的变化,例如角色的动画。
2023-10-25 09:36:53 658 1
原创 2D轮转图实现蒙皮、骨骼换装
首先是2D轮转图与蒙皮脚本的关联,下面代码中的changeAvator.Change()方法。首先你要会2D轮转图。
2023-10-24 20:28:31 209
原创 GetComponentsInChildren与GetComponentInChildren区别
获取对应组件,按层级返回最先包含的对应组件(获取对应组件,返回对应组件的数组(范围:从自己开始直到子子孙孙。范围:从自己开始直到子子孙孙。激活、失活无关,失活的。激活、失活无关,失活的。
2023-10-24 15:00:50 615
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人