置顶文章

7k 6 分钟

NodeCanvas 是一款很棒的插件,包含了行为树、对话树、状态机等数据结构,提供可视化的图形服务,依此我们可以扩展一种 FlowTree 的流式图。 # 思考 # FlowTree FlowTree 是我想要实现的一种数据结构,即流程树结构;在流程树中的所有节点会根据检查条件选择适合的分支依次执行。这其实和官方提供的 DialogTree 对话树的逻辑是差不多的;但是在对话树基本节点是对话节点。 为了能够执行一些列操作,而这一些操作可能包含对话也可能只是纯粹的 Action,故而需要一种新的流程树形式。 从上图中可以看出,我们可以不再依赖于对话节点,我们可以...
3.3k 3 分钟

不知不觉,一年的时间就这么过去了😢. 回顾这一年的种种,大致可以将其划分为上半年和下半年两大部分。 # 上半年 上半年 大概都是找工作的事情 上半年的时候,基本还在考编制。印象最深的莫过于获得了烟草公司的笔试机会,在对计算机专业知识一通复习后,我自我感觉良好,没想到行测考的太差与面试失之交臂。自这一场考试深深的提醒了我对于行测等知识的学习能力很差,要想通过行测申论来考取一个工作机会是困难的。而我能为之依靠的除了自身的专业知识之外也没有什么其他的东西了,看着越来越卷的编制大环境,我放弃了省考的机会开始找工作之旅。 # 论失业 1...
795 1 分钟

一句话即可概括: 我在人间凑数的日子 —— 2023 # 思考 更多的生活属于平静(摆烂),我只记得公司年会上 老板说着什么经济形式不好,竞争对手死了一半,合作伙伴也死了不少;说罢便提到今年 年终奖缓发的消息。 2023 了,又过去了一年,每每这种时候看看自己的 qq 资料卡看到自己年龄又增长一岁,感觉有些恍惚。仔细琢磨,就会感觉头开始疼了,仿佛这是什么不可思考的禁忌法则,无形之中有什么因果规则之力。 “有一间住所、一台电脑、水电网、有吃的,好像我可以在这种地方住一辈子”,有时我不禁这么想。 #...
493 1 分钟

# 写在开始 此文用于简单介绍 FastyTools 工具集,详细使用情况后面有空我再写。😃 FastyTools 是我个人一直在使用的一套 Unity 工具链,包含了一些 Unity 常用的功能封装和基础轮子,可以大大提升开发效率,我个人用起来很爽。 # BaseSystem BaseSystem 是工具集的基础。 包括以下内容: EventCenter 事件中心 MonoController 全局 Mono ObjectPool 对象池 ResLoad 资源加载 Singleton 单例 # GamePlay 包括以下内容: Bag 背包系统 Csv 处理 Csv...

文章列表

601 1 分钟

我们可以创建一个参数化的类构造函数以在 C# 中实现相同的目标。我们可以将先前的类对象传递给新类对象的构造函数,并从中复制所有值。以下代码示例向我们展示了如何使用 C# 中的参数化构造函数方法创建类对象的单独副本。 using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace copy_an_object{ class MyClass { public String test;...
4.6k 4 分钟

版本号 创建 / 更新时间 操作 V1.0 2023-07-13 09:10:43 创建 V1.1 2023-07-19 09:33:17 添加着色器变体说明 YooAssets 是一个资源管理工具,基于 ab 包实现。 通过 YooAssets 可以方便的对资源进行管理、分析、更新。 # 快速食用 打开管理界面 Edit/Project Settings/Package Manager // 输入以下内容(中国版)Name: package.openupm.cnURL: https://package.openupm.cnScope(s):...
1.9k 2 分钟

EnhancedScroller 是一个加强版本的滚动区域组件,可以改善滚动条的性能并实现例如无限滚动的效果。 # 简单示例 创建一个滑动区域: 滑动区域需要 3 个部分:滑动区域、滚动条、Mask 可以使用Rect Mask 2D 替代Mask获得更好效果 列表内容都需要继承 EnhancedScrollerCellView PersonItempublic class PersonItem: EnhancedScrollerCellView{ private TextMeshProUGUI _text; private PersonModel _model;...
198 1 分钟

# 📑写在前面 Address 是 Unity 推出的 Ab 包的新封装,可以更方便的实现 Ab 包的资源加载,为做区分这里将 Address 打出的包称之为 aa 包。 # 需求环境 在什么情况下我们需要使用 Address 呢? 当我们需要使用 Ab 包时,可以使用 Address 替代传统 Ab 包。 当我们需要将资源进行分组时,例如美术场景和程序分离。 当我们需要进行热更新时。 当我们希望在外部更新程序或资源时。 … # 1. 构建本地静态包 先来
805 1 分钟

# 写在前面 在游戏存储中我们可以使用多种方法,json、二进制、xml、csv、excel、或者是文本、自定义格式等等。使用这些的时候我们基本都需要将文件整个读入内存中,那有没有一种办法可以不用将所有数据载入内存呢? 答案就是 ———— 使用数据库。 数据库的种类很多,大都都服务于网络服务,在单机游戏中使用数据库的话,可以选择 sqllite。 # SqlLite sqllite 是一种轻量的文件型数据库,整个数据库只有一个 .db文件 而且其使用范围非常广,支持的平台多,是我们在使用 Unity 开发单机游戏时的好选择。 # 快速食用 要使用...
395 1 分钟

通知系统 在各种各样的游戏、应用中都有。 相信大家都看过 win10 的通知消息,在游戏中,我们获得 xx 道具、达成 xx 成就、或是做了 xx 事情需要通知给玩家,这些都可以看作是通知。 # 通知系统的特点 通知系统具备以下特点: 时效性:每一个通知就像一条讯息,存在 存活时间 ,死亡后就应该从屏幕空间消失。 排列性:按照先来先服务原则,很有可能上一条讯息还处于存活时间,就来了很多条新讯息,此时新讯息不应该抢占当前讯息的存活时间,而是在等待讯息死亡后再按照排列进行数据显示。 置顶性:通知系统应该具备较高的 显示优先级...
1.6k 1 分钟

# 写在前面 接触过 web 前端的人,应该都知道网页 以 Html+Css+Js 的形式构成,这种高度灵活的方式一直延续至今。当然后续推出了如 Vue 、 Rective 等前端框架和 Thymeleaf 、 Asp 等模板引擎。。。扯远了… 总之,我们可以借鉴 Web 的做法,使用类似的结构去编写 Unity Ui,如 Unity 的新 UI 系统 UIElement(UiToolkit )也是这么做的。此文并不想介绍 UIElement,因为通过作者实际使用体验来说,UIElement 还有很多路要走,可能在制作编辑器领域可以打破原先 Gui 的桎梏,然而在运行时下的...
845 1 分钟

一个简单树class Item{ public string Name { get; set; } public List<Item> Items { get; set; } = new List<Item>();}基础数据var aa = new List<Item>();var a = new Item() { Name = "A" };var b = new...
2k 2 分钟

# 坐标转换 已知云端坐标点 A(10,10),需要转换到本地坐标轴下的位置 B? # 可能的问题 坐标平移 坐标旋转 # 参考 Unity 不同空间坐标转换中的矩阵应用_心之凌儿的博客 - CSDN 博客_unity 空间变换 # Unity 中内置转换 using UnityEngine; /// <summary>/// 坐标转换工具类/// </summary>public static class CTUtils{ /// <summary> /// 世界坐标转屏幕坐标 ///...