
Unity
文章平均质量分 88
Unity
神码编程
一个想当软件工程师但却成为了程序员的裁缝。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【Unity】 HTFramework框架(六十七)UDateTime可序列化日期时间(附日期拾取器)
将上文的替换为UDateTime然后回到Inspector面板,可以看到UDateTime。原创 2025-08-06 10:03:31 · 717 阅读 · 0 评论 -
【Unity】使用 C# SerialPort 进行串口通信
在Unity中,DataReceived事件通常不会像在常规C#项目中那样正常触发,这主要是因为Unity的运行环境与普通.NET应用有所不同,特别是在事件处理机制上存在差异。2.DataReceived事件需要在一个独立的线程中监听串口数据,但在Unity中,主线程(用于游戏逻辑和渲染)和串口数据接收线程之间的同步机制存在问题。当然,到此时我们并不能高枕无忧,还有另一个在数据交换领域普遍存在的问题需要我们解决,那就是数据的。,但接收方可能会分多次接收到,比如2次才接收完,那就可能是。原创 2025-06-14 15:43:04 · 1393 阅读 · 0 评论 -
【Unity】 HTFramework框架(六十六)缺省的运行时组件检视器
在此之前,如果一个组件未定义运行时组件检视器,其在Inspector面板将是这样显示:而由于组件的数量较多(Unity自带的和我们自己添加的),很难每个组件都定义运行时组件检视器,所以非常有必要使用一个缺省的检视器来展示未定义检视器的组件。如下,定义了一个Test。原创 2025-05-29 18:55:09 · 951 阅读 · 0 评论 -
【Unity】 HTFramework框架(六十五)ScrollList滚动数据列表
首先,我们需要自定义数据类,并继承至,其作为单条数据对应的对象,比如这里的TestData/// 测试数据然后,还需要自定义元素类,并继承至,其作为单条数据对应的在UI界面显示的元素,比如这里的/// 测试元素//更新数据时回调//获取对应的数据(也即是上文的 TestData)if (Data!= null)//将 Name 显示到UI界面。原创 2025-05-16 22:28:23 · 1169 阅读 · 1 评论 -
【Unity】 HTFramework框架(六十四)SaveDataRuntime运行时保存组件参数、预制体
更新日期:2025年4月1日。原创 2025-04-01 14:18:24 · 1402 阅读 · 0 评论 -
【Unity】 HTFramework框架(六十三)SerializableDictionary可序列化字典
更新日期:2025年3月26日。原创 2025-03-26 18:05:08 · 1065 阅读 · 0 评论 -
【Unity】 HTFramework框架(六十二)Agent编辑器通用智能体(AI Agent)
更新日期:2025年3月14日。原创 2025-03-14 16:04:42 · 1555 阅读 · 0 评论 -
【Unity】 HTFramework框架(六十一)Project窗口文件夹锁定器
如果想要锁定自定义文件夹/// 确保此脚本文件在 Editor 目录中//将 Assets/MyModule 文件夹加锁确保Test脚本文件在 Editor 目录中:然后MyModule。原创 2025-03-07 15:13:57 · 508 阅读 · 0 评论 -
【Unity】 HTFramework框架(六十)Assistant助手(在Unity中接入DeepSeek等AI语言大模型)
更新日期:2025年2月14日。原创 2025-02-14 18:48:20 · 1501 阅读 · 0 评论 -
【Unity】 HTFramework框架(五十九)快速开发编辑器工具(Assembly Viewer + ILSpy)
更新日期:2025年1月23日。原创 2025-01-23 14:02:40 · 1684 阅读 · 0 评论 -
【Unity】 HTFramework框架(五十七)通过Tag、Layer批量搜索物体
更新日期:2024年12月30日。原创 2024-12-30 10:17:21 · 1459 阅读 · 0 评论 -
【Unity】 HTFramework框架(五十六)MarkdownText:支持运行时解析并显示Markdown文本
更新日期:2024年9月15日。原创 2024-09-15 10:53:58 · 2288 阅读 · 1 评论 -
【Unity】 HTFramework框架(五十五)【进阶篇】只使用资源路径、资源名称加载资源
更新日期:2024年8月2日。原创 2024-08-02 17:30:59 · 645 阅读 · 0 评论 -
【Unity】 HTFramework框架(五十四)【进阶篇】Deployment 轻量级资源部署管线
更新日期:2024年7月31日。原创 2024-07-31 17:52:43 · 1864 阅读 · 1 评论 -
【Unity】 HTFramework框架(五十三)使用 Addressables 可寻址系统
更新日期:2024年7月25日。原创 2024-07-25 22:53:54 · 1695 阅读 · 0 评论 -
【Unity】 HTFramework框架(五十二)使用 HybridCLR 热更新
定义宏,以告诉框架当前已启用HybridCLR热更新(该宏在预定义列表中,可直接点击Use进行定义框架采用了单一入口场景的策略,且框架的初始化、生命周期等会在进入入口场景时优先执行,那么我们的一些需要热更的资源或代码,很可能在还未进行热更的前提下,便已被框架加载调用。所以,定义宏后,再运行程序进入入口场景,主框架将处于静默状态,以等待进行自定义的资源更新、代码更新的完成。原创 2024-07-01 13:59:44 · 1499 阅读 · 0 评论 -
【Unity】 HTFramework框架(五十一)代码片段执行器
更新日期:2024年6月8日。原创 2024-06-08 17:45:09 · 1150 阅读 · 0 评论 -
【Unity】 HTFramework框架(五十)【进阶篇】UI界面业务代码拆解,降低强耦合的利器
/// 定义逻辑区 ///原创 2024-05-31 23:43:01 · 1203 阅读 · 0 评论 -
【Unity】 HTFramework框架(四十九)新建脚本时,自动向脚本添加命名空间
更新日期:2024年5月28日。原创 2024-05-28 13:29:05 · 591 阅读 · 0 评论 -
【Unity】实现Markdown轻量级解析库,在编辑器中解析Markdown(.md)文件
更新日期:2024年5月17日。原创 2024-05-17 17:59:19 · 1733 阅读 · 0 评论 -
【Unity】 HTFramework框架(四十八)使用Location设置Transform位置、旋转、缩放
首先,定义一个Location[ Label("位置") ] public Location Loc;"位置"原创 2024-05-14 15:06:16 · 1128 阅读 · 0 评论 -
【Unity】 使用代码分析(Roslyn Analyzers)实现自动代码审查(Code Review)
如上,一个测试分析器程序便开发完成了,如果你能熟悉语法分析,我想你应该知道,在分析器程序中,你将无所不能。原创 2024-04-29 18:27:08 · 3611 阅读 · 2 评论 -
【Unity】 HTFramework框架(四十七)编辑器日志中使用超链接的技巧
更新日期:2024年1月3日。原创 2024-01-03 18:20:33 · 1468 阅读 · 0 评论 -
【Unity】 HTFramework框架(四十六)【进阶篇】运行时调试器+指令系统
更新日期:2023年7月10日。原创 2023-07-10 14:10:05 · 869 阅读 · 0 评论 -
【Unity】 HTFramework框架(四十五)【进阶篇】指令系统-自定义指令
指令系统当前支持十几种指令关键字(也即是指令类型),实际上用他们只能进行一些简单的程序修补工作,虽然指令系统的定位便是如此,咱比不上强大的Lua(人家虚拟机、解释器自成一体),高大上的ILRuntime(随时随地C#写代码,高端优雅上档次),但咱也有优点:简单、小巧、门槛低,人家是大型解决方案,咱的定位就是小型解决方案!So!为了提升扩展性和灵活性,自定义指令应运而生,接下来,按程序界不成文的老规矩,先写一个来证明它的存在吧。此时,我们便可以编写#Debug# Debug "null" "你好世界"原创 2023-06-19 22:58:26 · 2018 阅读 · 0 评论 -
【Unity】 HTFramework框架(四十四)【进阶篇】Instruction指令系统
首先,定义一个对象,字面理解为可执行指令的代理者,他是指令系统开放出来的最简单的使用接口,将源码读取代码编译代码执行融合在了一起,使用者什么都不需要关心,写入源码直接调用执行即可。[ Label("动态指令代码") ] public InstructionAgent Agent;"动态指令代码"[ Label("动态指令代码") ] public InstructionAgent Agent;原创 2023-05-29 10:52:25 · 1492 阅读 · 0 评论 -
【Unity】 HTFramework框架(四十三)标准化命名
更新日期:2022年4月28日。Github源码:[点我获取源码]Gitee源码:[点我获取源码]索引标准化命名使用标准化命名配置一键重命名标准化命名当团队成员各自的命名习惯(或者说不是习惯,只是随心)凑在了一起,产生了下图这样的情况,作为强迫症患者的你,是否已经崩溃…事实上,对于脑力大部分都运转在编写功能上的程序员来说,对于命名这件事,确实腾不出更多的时间了,所以,UI组件、游戏物体、乃至于脚本变量的命名长时间以来没有一种固定的规则可言,但是,殊不知良好的命名习惯不仅可以带来可读性的显著.原创 2022-04-28 14:38:14 · 5277 阅读 · 0 评论 -
【Unity】 HTFramework框架(四十二)【进阶篇】使用依赖注入(控制反转模式)
更新日期:2022年1月4日。Github源码:[点我获取源码]Gitee源码:[点我获取源码]索引依赖注入使用InjectPathInjectUI作用域依赖注入控制反转模式是一种经典设计模式,关于其概念我就不再过多描述,直接进入正题,目前这里仅支持两种依赖注入方式:1.InjectPath:通过路径注入依赖;2.InjectUI:注入UI逻辑类对象;使用InjectPathInjectPath只能注入GameObject或组件,通过路径注入:public class Test :.原创 2022-01-04 14:30:33 · 2959 阅读 · 1 评论 -
【Unity】 HTFramework框架(七)StepEditor步骤编辑器(上)
索引StepEditor模块简介使用StepEditor创建Step Content Asset打开StepEditor窗口StepEditor窗口详解步骤的属性面板详解操作的属性面板详解StepEditor模块简介严格来说,StepEditor只是框架的一个内置工具,他最开始的用途是用来解决一系列冗长的线性任务,为了实现可视化和降低后期改动的复杂度!意识到了这些问题之后,才产生了写这么一个编...原创 2019-02-19 17:16:55 · 3593 阅读 · 7 评论 -
Unity实现动作游戏的技能系统(Ability System)设计原型
前言尝试写一个技能系统,希望其尽量完善。目前能想到的元素包括控制、模型、动画、音效、特效、碰撞检测、事件响应、伤害判断、Buff控制。集所有元素为一个编辑器,方便策划和美术进行操作。输入控制使用Input System作为跨平台接收输入响应,然后整合到Character脚本中,然后由Character的节点,监听对应的操作。public void AddActionStarted(string actionName,Action<InputAction.CallbackContext>原创 2021-06-07 15:53:38 · 12005 阅读 · 14 评论 -
【Unity】 HTFramework框架(四十)Debug的性能监控
更新日期:2021年4月22日。Github源码:[点我获取源码]Gitee源码:[点我获取源码]索引UI的数据驱动模式UI的数据驱动模式MVVM的基础特性是数据绑定,也可以在某种程度上称之为数据驱动,在最新版本中,框架的UI模块支持数据驱动模式,所谓的数据驱动模式也即是UGUI控件与数据的双向绑定(这里不考虑单向绑定)。...原创 2021-04-23 15:22:14 · 1523 阅读 · 0 评论 -
Unity 纹理优化及TextureProcessor工具
更新日期:2020年11月18日。Github源码:[点我获取源码]Gitee源码:[点我获取源码]索引纹理优化模块管理器使用打开模块管理器界面纹理优化作为Unity所有优化方案中最重要、最简单的优化手段,纹理优化一直被我们放在了项目优化的第一步,而对于纹理优化,主要可以分为以下两个点:纹理的压缩格式纹理的尺寸大小对于纹理的压缩格式,只要纹理资源满足条件(宽、高满足一定条件),Unity默认会使用当前平台的最佳压缩方案,除非你懂得每种压缩格式间的利弊,否则一般不用去强制设置。然后就.原创 2020-11-18 18:07:09 · 2128 阅读 · 0 评论 -
Unity Module Manager 模块管理器
更新日期:2020年11月4日。Github源码:[点我获取源码]Gitee源码:[点我获取源码]索引模块管理器使用打开模块管理器界面模块管理器界面简介下载模块(也即是Git Clone)更新模块(也即是Git Pull)新建模块打开模块用户凭证冲突解决模块管理器ModuleManager模块管理器是类似于Unity包管理器的针对项目中可选模块的一种统一管理方案,他使得管理你自己的所有扩展包更加方便,你可以将你的任何扩展包设置为原生模块(前提是该包为git存储库),原生模块会自动包含在Modu.原创 2020-11-04 13:44:35 · 5576 阅读 · 0 评论 -
【Unity】 HTFramework框架(三十九)【进阶篇】UI的数据驱动模式(MVVM)
更新日期:2020年10月24日。Github源码:[点我获取源码]索引UI的数据驱动模式使用MoveHandler移动手柄处理器UI的数据驱动模式框架的UI模块支持数据驱动模式,所谓的数据驱动模式也即是UGUI控件与数据的双向绑定(这里不考虑单向绑定),双向绑定后,在代码中任意位置修改数据的值,与其绑定的UGUI控件会自动更新显示,同时如果修改了UGUI控件的值,与其绑定的数据的值也会跟着改变。使用MoveHandler移动手柄处理器目前可以为Vector3,Vector2两种类型的序列.原创 2020-10-24 11:01:49 · 5308 阅读 · 7 评论 -
Unity UGUI无限列表(Infinite List)
更新日期:2020年10月16日。Github源码:[点我获取源码]索引InfiniteList使用创建InfiniteListScrollRectInfiniteListScrollRect参数详解重写数据类重写元素类编辑元素模板添加数据移除数据清空数据InfiniteListInfiniteList为基于UGUI的ScrollRect无限滚动列表的一种实现,很多时候当我们的ScrollRect的视图中包含的数据无限多时,而同时可见的数据往往只有几条,大量不可见数据被Mask组件排除在肉眼可见.原创 2020-10-16 17:03:21 · 9972 阅读 · 8 评论 -
【Unity】 HTFramework框架(三十八)SceneHandler场景控制柄特性
更新日期:2020年8月28日。Github源码:[点我获取源码]索引SceneHandler场景控制柄特性使用Dropdown下拉框检视器SceneHandler场景控制柄特性SceneHandler场景控制柄特性支持通过简单的在序列化字段上添加特性标记从而实现在Scene界面自定义多种实用的控制柄。使用Dropdown下拉框检视器目前可以为int,string,float三种类型的序列化字段定义下拉框检视器,下拉框检视器使得目标字段在Inspector面板只能设置为下拉框中的几种值之一.原创 2020-08-31 11:45:25 · 3235 阅读 · 2 评论 -
【Unity】 HTFramework框架(三十七)Inspector自定义序列化检视器
更新日期:2020年8月20日。Github源码:[点我获取源码]索引Inspector自定义序列化检视器使用Dropdown下拉框检视器string下拉框int下拉框float下拉框ReorderableList可排序列表检视器数组集合Enable激活状态检视器Display显示状态检视器Label标签检视器Color颜色检视器ReadOnly只读检视器Button按钮检视器Inspector自定义序列化检视器Inspector自定义序列化检视器支持通过简单的在序列化字段上添加特性标记从而实现.原创 2020-08-20 10:49:32 · 2395 阅读 · 2 评论 -
【Unity】 HTFramework框架(三十六)AssetsMaster资产管理器(做资产的主人)
更新日期:2020年8月13日。Github源码:[点我获取源码]索引AssetsMaster使用AssetsMaster打开AssetsMaster检视窗口AssetsMaster窗口简介Material材质检索Texture贴图检索Mesh网格检索MonoScript脚本检索Missing警告排序Texture警戒值AssetsMasterAssetsMaster(资产的主人)允许你在编辑模式或是运行模式非常直观的查看和管理当前打开场景中的你感兴趣的资产,目前可以管理如下四种资产:材质,贴图.原创 2020-08-13 13:55:51 · 2455 阅读 · 3 评论 -
Unity Editor 自定义属于你的DefaultHeaderGUI
DefaultHeaderGUI默认页眉GUI,是Unity编辑器中的所有对象被选中后在Inspector界面显示的页眉GUI,如下图红框区域:在这个区域加点自己的东西。finishedDefaultHeaderGUI只需要将自己的GUI方法注册到事件Editor.finishedDefaultHeaderGUI即可,在GUI方法中你可以书写任何已知的GUI控件代码,如下,新建一个类DefaultHeaderDisplay,将他放到Editor文件夹下,并在其中键入如下代码:using Uni原创 2020-06-09 16:28:57 · 10821 阅读 · 1 评论 -
【Unity】 HTFramework框架(三十五)ECS模式
更新日期:2020年6月8日。Github源码:[点我获取源码]索引ECS使用ECS新建组件(ECS中的C)新建系统(ECS中的S)新建实体(ECS中的E)1.编辑模式下静态生成:2.运行模式下动态生成:为实体挂载组件Inspector检视面板旋转实体1.编写系统逻辑2.运行输入控制旋转实体1.指令2.编写系统逻辑3.运行ECS Dirty运行时检视面板ECSECS - 实体-组件-系统,此ECS非Unity的ECS,并不一定会带来性能的提升,只是基于ECS的思想,建立在Unity现有的组件模式.原创 2020-06-08 17:09:19 · 3209 阅读 · 0 评论