自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(54)
  • 收藏
  • 关注

原创 【数据结构】双链表

与单链表相比,双链表增加了:1. tail:tail是尾节点的下标(即尾节点的位置),根据tail我们可以找到从数组的哪里开始访问2. prv:prv存储每个位置的prev指针(存储了上一个节点的下标,若为-1则代表没有前驱节点,即该节点为链表的第一个节点)

2025-08-05 23:04:54 492

原创 【数据结构】单链表

使用结构体实现这些数据结构,new节点的操作非常慢,所以我们使用数组来模拟。

2025-08-05 16:42:21 178

原创 【C#补全计划:类和对象(八)】抽象类

1. 关键字:abstract2. 特点:(1)不能被实例化,但是遵循里氏替换原则(2)可以包含抽象方法(3)继承抽象类的类必须重写其抽象方法。

2025-07-26 11:49:25 111

原创 【C#补全计划:类和对象(七)】重写虚方法

运行结果如下:2. virtual:使父类的方法变为虚方法,可以被子类重写3. override:使子类的方法重写父类的方法。

2025-07-25 21:37:13 305

原创 【C#补全计划:类和对象(六)】里氏替换原则

1. 概念:判断一个对象是否为指定类的对象2. 返回值:布尔值。对象是指定类型的对象为true,不是为false3. 使用:语法:对象 is 类名。

2025-07-24 14:12:11 561

原创 【C#补全计划:类和对象(五)】继承

1. 若类A继承类B:那么类A将会继承类B的所有成员,类A将拥有类B的所有特征和行为。2. 被继承的类:称为父类、基类、超类3. 继承的类:称为子类、派生类4. 子类可以拥有自己的特征和行为5. 特点:(1)单根性:一个子类只能有一个父类(2)传递性:子类可以间接继承父类的父类。

2025-07-23 11:53:17 377

原创 【C#补全计划:类和对象(四)】内部类与分布类

1. 概念:在一个类中再声明一个类2. 特点:使用时用包裹类点内部类3. 注意:访问修饰符作用变得很大5. 在内部类中创建内部类6. 添加访问修饰符7. 使用内部类。

2025-07-22 12:12:52 367

原创 【C#补全计划:类和对象(三)】静态

1. 创建静态成员2. 使用静态成员:类名.静态成员名。

2025-07-21 14:03:53 408

原创 【C#补全计划:类和对象(二)】索引器

1. 创建成员变量2. 创建成员属性(属性使用帕斯卡命名法,即首字母大写,后面的每个单词首字母大写)3. 创建自动属性(一般用于外部只能获取,不能修改,且没有特殊处理的属性)4. 对属性进行控制5. 使用属性运行结果如下:(但是我还是更喜欢get、set方法,哈哈)6. get、set可以添加访问修饰符。

2025-07-20 12:55:16 289

原创 【C#补全计划:类和对象(一)】基础概念与构造析构

今天的学习就到这里了。2. 手动触发垃圾回收。

2025-07-19 13:39:13 359

原创 【C#补全计划】ref和out

若定义一个整型a=1,有一个函数:changeValue(int x),他的作用是将传入的变量值修改为100。现在将a传入该函数,再输出a的值,会是多少?运行结果如下:a的值没有被修改的原因:该函数的参数是值传递,传递的只是a的副本,修改也只是修改的副本,所以最终a的值没有发生变化。因此,引入一个关键字ref或out,将参数的传递改为引用传递,传递的是指向a的地址的指针,即修改的是指向a的地址的值,最终a会发生变化。

2025-07-18 12:50:39 361

原创 【C#补全计划】枚举

C#补全计划,是一个新的系列。这个系列适合有一定C、C++、Java语言基础(了解基本程序控制语句、面向对象、数据结构等)、并在为Unity开发做基础的同学学习。在这里,我们会学习到在别的语言中没有出现而在C#中新出现的知识点。并且在后面的学习中,也会对C#进行深入学习。

2025-07-17 16:09:07 567

原创 【Unity2D 2022:UI】创建滚动视图

在Canvas画布下新建Scroll View游戏对象。

2025-02-04 00:24:44 631

原创 【Unity2D 2022:C#Script】DoTween插件的使用

DOTween 是一个快速高效完全类型安全的Unity面向对象的动画引擎,针对C#用户进行了优化,免费和开源,具有大量高级功能。

2025-02-01 23:12:26 1493 1

原创 【JavaSE基础】第十七章:反射+设计模式

1.反射(Reflection):允许在程序运行状态中,可以获取任意类中的属性和方法,并且可以操作任意对象内部的属性和方法,这种动态获取类的信息及动态操作对象的属性和方法对应的机制称为反射机制。(2) 类对象:类加载的产物,封装了一个类的所有信息(包、类名、父类、接口、属性、方法、构造方法等)(1) 类的对象(实例):基于某个类 new 出来的对象,也称为实例对象。(1) 通过类的对象,获取类对象。// 通过类对象 获取 类的对象。(2) 通过类名获取类对象。2.类对象 和 类的对象(实例)

2024-12-16 23:00:00 510 1

原创 【JavaSE基础】第十六章:IO流

java.io.FileNotFoundException: file\a.txt (系统找不到指定的文件)。int read():一次性读取一个字节,将读取的内容作为返回值进行返回,如果达到文件尾部,则返回-1。String readLine(): 一次性读取一行内容,返回值为 String ,达到文件尾部时,返回 null。参与对象序列化的对象对应的类,必须实现java.io.Serializable接口。如果对象的属性,是自定义类型的对象时,则该对象也必须是可序列化的。

2024-12-16 22:00:00 651

原创 【JavaSE基础】第十五章:多线程

1.进程:操作系统(OS)中,正在运行的一个应用程序(1) 执行原理:微观上串行,宏观上并行(2) cpu分配时间片,哪一个进程获取时间片,哪个进程执行2.线程:在一个进程中,可以同时执行多个任务,每一个任务就可以说是一个线程。线程是进程的执行单元,也称为轻量级进程。(1) 主线程:从main方法开始执行,以main方法的退出作为结束,即main函数是主线程的执行体。(2) 线程的组成部分:a. CPU:操作系统(OS)分配时间片。b. 数据:堆空间共享,栈空间独立。

2024-12-16 15:42:01 593

原创 【JavaSE基础】第十四章:异常

1.定义一个类继承异常类(1) 定义异常类继承了 Exception,则定义的为非运行时异常(2) 定义异常类继承了 RuntimeException,则定义的为运行时异常2. 提供两个构造方法(1) 无参数的构造方法(2) 带有字符串类型的参数构造方法。

2024-12-16 15:41:05 606

原创 【JavaSE基础】第十三章:集合

1.概念:一种操作便利的对象容器,存储多个对象,多数情况下可替代数组。2.位置:所有集合的接口和相关实现类都是位于 java.util 包中3.每一种集合的学习都是从以下方面学习: 集合接口的特点 集合接口中方法 集合接口对应的实现类 集合的遍历方式4.集合分类:Collection 集合List集合Set集合Map 集合。

2024-12-16 01:45:28 628

原创 【JavaSE基础】第十二章:常用API介绍

1. Object:位于Java.lang包中的类,是所有类的父类(直接父类或间接父类)(1)利用多态,Object可以存储任意类型的对象(2)通过继承关系,Object中定义的方法可以供所有类使用2. 常用的方法:(1)getclass():获取引用中实际的存储对象类型注意:实际开发时通常使用 == 判断两个引用中存储的实际对象类型是否一致(2)int hashCode():获取对象的哈希码值注意:不同的对象返回不同的哈希码值(来源:对象十六进制转换为十进制的整数结果)

2024-12-16 01:25:58 330

原创 【Unity2D 2022:Data】读取csv格式文件的数据

1. 打开Excel,创建xlsx格式文件2. 编辑卡牌数据:这里共写了两类卡牌,第一类是灵物卡,具有编号、卡名、生命、攻击四个属性;第二类是法术卡,具有编号、卡名、效果三个属性。每类卡的第一行以“#”开头,后面以卡牌类型单词开头3. 保存文件,导出为csv格式4. csv格式是将各个数据用逗号分隔,最终的效果如下所示:5. 创建一个名为Data的文件夹,将csv文件移动到此文件夹。

2024-07-27 17:26:06 940

原创 【Unity2D 2022:UI】TextMeshPro组件无法显示中文

在Unity中创建了一个预制体Card,上面挂载了一些Text Mesh Pro组件用来显示卡牌信息。

2024-07-25 10:38:29 1888

原创 【Unity2D 2022:UI】无法拖拽TextMeshPro组件

将预制体Card挂载脚本CardDisplay用来在预制体上显示属性,并创建TextMeshPro对象来接收TextMeshPro组件。在预制体Card上挂载了四个Text Mesh Pro组件,分别命名为Name、HP、ATK、Description。保存后,返回Unity中,发现可以将Name、HP、ATK、Description游戏物体拖入对应的框中了。保存后,返回Unity中,发现无法将Name、HP、ATK、Description游戏物体拖入对应的框中。

2024-07-24 23:57:38 866

原创 【Unity2D 2022:UI】制作主菜单

一、创建主菜单游戏场景1. 在Scenes文件夹中新建一个游戏场景Main Menu2. 为场景添加背景 (1)创建画布Canvas (2)在Canvas中创建新的空游戏物体Main Menu(3)在Main Menu中新建一个图像游戏物体Background,并添加背景图片 (4)在Main Menu中新建一个文本游戏物体Tatle,并修改文本二、添加按钮组件1. 新建一个空游戏物体Butt

2024-07-11 23:18:23 2464

原创 【Unity2D 2022:NPC】制作任务系统

1. 编辑NPC对话脚本:(1)创建静态布尔变量用来判断ruby是否接受到任务(2)接受任务后可以射击2. 编辑角色脚本:(1)在shoot()方法中增加判断,如果接受到任务才可以射击,否则不射击。

2024-07-10 18:04:39 719

原创 【Unity2D 2022:Audio】添加游戏音乐和音效

1. 创建空的游戏物体,名为BackgroundMusic2. 为音频播放器添加音频源(Audio Source)组件3. 将背景音乐音频赋值到AudioClip(红色)4. 设置循环播放(蓝色)

2024-07-09 19:27:09 2689

原创 【Unity2D 2022:NPC】制作NPC

1. 创建JambiNPC并同时创建Jambi站立动画(1)点击第一张图片,按住shift不松,再选中后两张图片,拖到层级面板中(2)将动画资源文件保存到Animation Clips文件夹中(3)将动画控制器文件保存到Animators文件夹中2. 将Jambi添加为预制体。

2024-07-08 23:47:33 1398

原创 【Unity2D 2022:UI】制作角色血条

1. 创建画布(Canvas)2. 在画布上添加血底图像(Image)子物体。

2024-07-07 22:59:34 3300 2

原创 【Unity2D 2022:Particle System】添加拾取粒子特效

1. 基础属性(1)修改发射粒子持续时间(Duration)为3s(2)取消勾选循环(Looping)(2)修改粒子存在时间(Start Lifetime)为0.5~1之间的随机值(3)修改粒子初始速度(Start Speed)为0.6~1.5之间的随机值(4)修改粒子初始尺寸(Start Size)为0.7~1之间的随机值(5)修改粒子初始旋转角度(Start Rotation)为0~360之间的随机值2. 发射器(Emission)

2024-07-07 12:23:53 1213

原创 【Unity2D 2022:Particle System】添加命中粒子特效

1. 基础属性(1)修改发射粒子持续时间(Duration)为1s(2)取消勾选循环(Looping)(2)修改粒子存在时间(Start Lifetime)为0.1~0.2之间的随机值(3)修改粒子初始速度(Start Speed)为0(4)修改粒子初始尺寸(Start Size)为0.7~1之间的随机值(5)修改粒子初始旋转角度(Start Rotation)为0~360之间的随机值2. 发射器(Emission)(1)设置发射粒子速度(Rate over Time)为0(即不发射粒子)

2024-07-06 22:31:05 774

原创 【JavaSE基础】第十一章:内部类

1. 理解:定义在一个类内部的类3. 内部类编译之后会生成独立的.class文件,文件命名为:外部类类名$内部类类名.class4. 分类:成员内部类、静态内部类、局部内部类、匿名内部类5. 匿名内部类(1)匿名内部类继承一个类或者实现一个接口(2)匿名内部类只能创建该类的一个对象,而且类的定义和对象的创建一起完成。

2024-06-11 13:42:16 249 1

原创 【JavaSE基础】第十章:接口

1. 接口:是一种标准,接口的实现者和使用者都必须遵循的约定2. 接口的语法:(1)关键字:interface(3)接口不能创建对象,但可以声明引用(4)接口中不能定义构造方法(5)接口中所有的属性位公开、静态、常量(默认被public static final修饰)(6)接口中的所有方法位公开、抽象方法(默认被public abstract修饰)

2024-06-04 14:31:24 803 1

原创 【Unity2D 2022:Particle System】添加烟雾粒子特效

1. 创建粒子系统游戏物体Smog Effect2. 给粒子特效添加精灵贴图(1)启用Texture Sheet Animation(纹理表动画)(2)点击加号添加一个纹理,并将两张厌恶图片导入到纹理中3. 设置两张图片随机播放(防止烟雾粒子变化)(1)将Start Frame设置为Random Between Two Constants(2)将Start Frame设置为0和1(3)选中Frame Over Time图像,将底部的Particle System Curves窗口向上拉。

2024-05-29 14:48:22 2189

原创 【JavaSE基础】第九章:三个修饰符

1. abstract可以修饰类:(1)被abstract修饰的类称为抽象类(3)特点:抽象类只能声明引用,不能创建对象(4)抽象类中可以定义属性成员方法、构造方法2. abstract可以修饰方法:(1)被abstract修饰的方法称为抽象方法(2)语法注意:访问修饰符和abstract没有先后顺序(3)特点:抽象方法只有声明部分,没有方法的实现(4)注意:抽象方法只能定义在抽象类中3. abstract可以修饰子类:(2)子类不想成为抽象类,则必须覆盖父类中所有的抽象方法。

2024-05-28 23:59:00 615

原创 【Unity2D 2022:Cinemachine】相机跟随与地图边界

1. 点击Window-Package Manager,进入包管理界面2. 点击All,找到Cinemachine工具包,点击Install。

2024-05-23 19:15:36 2317 1

原创 【JavaSE基础】第八章:面向对象三大特性

1. 目前的程序无法保证数据的安全性,容易造成业务数据的错误2. private(私有的):被private修饰的内容只能在本类中访问3. 为私有化的属性提供公开的get和set方法:(1)get方法:获取私有化属性值(2)set方法:为私有化属性赋值。

2024-05-22 00:05:42 1354

原创 【Unity2D:C#Script】实现角色射击功能

1. 创建子弹预制体2. 调整图片大小、层级。

2024-05-21 07:25:22 2001

原创 【Unity2D:C#Script】制作敌人

1. 在场景面板中添加敌人,并创建预制体2. 设置敌人的锚点在底部。

2024-05-20 12:22:18 1373 2

原创 【Unity2D:Animator】角色移动时播放对应的动画

1. 打开Window->Animation->Animator,打开动画编辑窗口2. 点击想要编辑动画的游戏对象3. 在动画编辑窗口中新建一个混合树。

2024-05-19 12:38:36 1193 1

原创 【Unity2D:Animator】为角色添加动画效果

1. 添加Animator组件:2. 在Assets-Art文件夹中新建一个名为Animations的文件夹,用来存储所有动画资源3. 在Animations文件夹中新建一个名为Player的文件夹,再创建一个名为Animators的文件夹,再在此文件夹中新建一个Animator Controller资源4. 将Ruby的Animator Controller添加到Animator组件的Controller属性中。

2024-05-18 15:29:52 1153

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除