- 博客(134)
- 资源 (19)
- 收藏
- 关注
原创 Harness是什么?
摘要: “Harness”一词在科技领域代表两个不同概念:AIAgent Harness(工程架构)和Harness(DevOps平台)。前者是为AI模型(如GPT-4)提供标准化框架的“操作系统”,确保其可靠完成复杂任务,包含指令、工具、环境、状态和反馈五大子系统,被Anthropic、OpenAI等公司广泛应用。后者是Jyoti Bansal创立的软件交付平台,通过AI自动化CI/CD流程,提升开发效率,估值达55亿美元。两者同名但领域不同,分别解决AI“失控”和开发“低效”问题。
2026-08-07 07:10:42
28
原创 在Unity中制作边缘不规则的UI面板,并确保其在放大缩小时保持清晰?
文章摘要:本文介绍了四种实现UI不规则边缘的主流方案。首选SDF技术结合Shader实现,支持矢量图形无限缩放;九宫格拉伸适合固定边缘花纹的轻量实现;AlphaMask能处理半透明过渡;程序化生成则无需图片资源。建议根据项目需求选择,高质量UI推荐SDF方案,简单边框可用九宫格。最佳实践包括启用PixelPerfect和正确设置CanvasScaler。(135字)
2026-08-05 20:31:57
277
原创 脚本命名方法
文件命名方案对比:蛇形命名(data_cleaner.py)适合Python/Linux,符合PEP8规范;烤肉串命名(deploy-to-prod.sh)适合Shell/前端工具链,CLI输入便捷;小驼峰(dataCleaner.js)适配JS/TS但需注意Windows大小写问题;大驼峰(DataCleaner.cs)适用于C#/PowerShell的面向对象场景。建议根据语言生态选择,优先动词开头+操作对象(如clean_temp_files.sh),避免缩写并保持唯一性。组合范例:sync_logs
2026-08-03 19:00:51
197
原创 C#那个接口程序,可不可以用于程序块之间的链接?起到像电线插销的作用。
C#接口的核心作用是定义标准化连接规范,如同电源插座与插头的匹配关系。通过接口(如IPowerPlug)定义统一方法(SupplyPower),不同实现类(Lamp/Fan)只需遵循该规范即可被调用方(PowerOutlet)使用。这种设计带来三大优势:解耦(调用方仅依赖抽象接口)、可替换(运行时自由切换实现)、易测试(支持Mock模拟)。典型应用场景包括日志系统(ILogger)、支付网关(IPaymentGateway)等模块化开发,实现"即插即用"的组件化架构。接口本质是程序模块间
2026-08-02 14:24:58
204
原创 ESC界面用一个独立的画布更好?
在Unity中,为ESC界面创建独立Canvas是推荐做法,主要基于性能和架构优势:1)性能优化-动态UI变化仅触发局部网格重建,避免全局UI重计算;2)架构清晰-通过SortingOrder轻松管理层级。相比单一Canvas,独立方案虽增加少量DrawCall,但显著降低CPU负载。实现时可选择子Canvas(保持布局关联)或顶层Canvas(完全独立),建议配合CanvasGroup控制交互阻断。该设计尤其适合UI元素复杂的项目,是兼顾性能与可维护性的最佳实践。
2026-07-31 12:08:51
208
原创 Unity2021.3.13 SpriteEditor引起的一个隐秘的BUG!
摘要:使用SpriteEditor拆分图片后,子物体名称固定不变。若对主物体重命名,子物体名称不会自动更新,需手动逐个修改。当子物体数量过多时,建议重新导入图片并拆分以节省时间。这一过程体现了Unity中SpriteEditor对命名管理的局限性,批量操作时效率较低的问题。
2026-07-26 15:52:35
187
原创 象棋程序的“思考”过程
象棋程序通过暴力计算和智能评估进行决策,其核心流程包括:将棋局数据化存储;根据规则生成所有合法走法;通过评估函数(子力、位置、机动性等维度)量化局面优劣;构建博弈树进行极小极大搜索,辅以Alpha-Beta剪枝优化计算效率。高级优化技术还包括开局/残局库、迭代加深、神经网络评估(NNUE)等,使程序能在有限时间内找到最优解。整个过程依赖系统性计算而非人类直觉,体现了人工智能在规则明确领域的强大算力优势。
2026-07-26 15:33:14
803
原创 程序软件日志分类与功能
日志在软件开发和运维中按用途和严重程度分类,主要包含以下核心类型: 调试追踪日志(DEBUG/TRACE):开发阶段定位代码问题; 系统运行日志(INFO):监控应用启动、模块加载等健康状态; 异常日志(WARN/ERROR/FATAL):预警潜在风险或记录致命错误; 安全审计日志(INFO/SECURITY):追踪敏感操作以符合合规要求; 访问日志(INFO/ACCESS):分析流量与接口性能; 性能日志(INFO/METRICS):监控资源使用情况; 业务流水日志(INFO/BUSINESS):支持数据
2026-07-26 15:21:35
242
原创 HybridCLR无法生成DLL文件的一个坑!
该文章摘要指出,问题的原因可能是HotUpdate.asmdef配置文件排除了目标平台(WindowsStandalone64)。建议检查并移除该平台的排除设置("excludePlatforms"中移除"WindowsStandalone64"),以确保编译包含目标平台。配置文件中"allowUnsafeCode"设为false,且未启用引用覆盖。
2026-07-25 10:18:08
36
原创 Function Graph Overview 的详细使用指南。
本文介绍了Visual Studio 2022中FunctionGraphOverview工具的使用方法,主要包含以下内容: 打开工具窗口:通过View→Other Windows→FunctionGraphOverview打开控制流图显示区 查看控制流图:打开代码文件并将光标置于函数内,窗口会自动生成该函数的控制流图 图表交互:可点击节点跳转代码、查看执行路径,图表会随代码修改实时更新 个性化设置:支持调整颜色主题(内置/自定义)、switch语句渲染模式等 该工具支持C/C++/C#/Python/JS
2026-07-24 14:59:36
154
原创 自制一个Agent
摘要:自制Agent工具软件门槛降低,可根据技术背景选择三种开发路径:无代码/低代码平台(非技术人员)、开源框架(编程基础者)或从零构建(进阶开发者)。核心模块包括LLM大脑、任务工具及规划记忆系统。需注意成本控制、数据安全和能力边界。建议初学者从明确需求开始,选择适合路径,参考教程资源,先构建极简版本再迭代优化。随着技术普及,自主开发Agent正变得越来越可行。
2026-07-24 12:43:44
404
原创 代码可视化:Code-Flow-IO 和 Control-Flow Graph Visualizer的对比
本文对比分析了两种代码流程图工具: Code-Flow-IO:面向批量处理的命令行工具,支持为整个C#解决方案生成静态流程图文件(SVG/PNG),适合项目文档化和离线分析,但依赖外部环境且无交互性。 Control-Flow Graph Visualizer:VS2022扩展工具,实时可视化当前方法的控制流图,支持多语言和交互操作(如节点跳转),适合开发调试,但无法导出或批量处理。 选择建议:需批量生成文档选前者;需实时理解复杂逻辑选后者。两者定位互补,分别服务于文档化与开发场景。
2026-07-24 11:22:02
588
原创 Unity的测试Edit Mode和Play Mode,有什么区别?
EditMode和PlayMode测试具有不可替代的互补性:EditMode专注于逻辑验证(毫秒级执行数百测试用例),确保算法正确性;PlayMode验证运行时行为(需加载场景),检测交互流程。前者覆盖代码层级的准确性,后者验证系统集成的功能性,二者形成测试金字塔的基座与中层。典型案例中,背包系统的数据计算由EditMode保障,而UI交互和存档功能必须通过PlayMode验证。理想的测试策略是保持8:2的数量配比,EditMode作为基础测试主体,PlayMode聚焦关键集成场景,共同构成完整的质量保障体
2026-07-16 14:46:22
360
原创 缩小图片不清晰?在 Sprite 纹理上启用 Mipmap!
MipMaps选项详解 MipMaps通过预生成多级纹理优化渲染性能,关键选项包括: BorderasMipLevel:减少低分辨率纹理接缝,适合地形拼接。 MipMapFiltering:提供Box(快速平均)或Kaiser(保留细节)两种滤波方式。 MipMapsPreserveCoverage:保持Alpha通道覆盖率,避免半透明边缘失真。 FadeoutMipMaps:远景淡出至指定颜色(如灰色),减少闪烁。 FadeRange:控制淡出范围(0-1)。 适用场景: 需勾选:3D模型贴图、地形等随距
2026-07-15 13:33:36
227
原创 Sublime Text 显示注释是乱码?
文章摘要:解决SublimeText打开文件出现乱码的问题,通常是由于文件实际编码(如GBK/GB2312)与编辑器默认UTF-8编码不一致导致。推荐三种解决方案:1. 手动切换编码(File→Reopen with Encoding→选择GBK/GB2312),显示正常后建议转存为UTF-8格式;2. 安装ConvertToUTF8插件实现自动识别编码;3. 修改编辑器设置(添加fallback_encoding配置)。处理时切勿在乱码状态下直接保存,以免数据损坏。建议优先使用方法一,无效时再尝试其他方案
2026-07-09 13:26:16
415
原创 PaddleOCR和Tesseract识别中英文对比
PaddleOCR和Tesseract在OCR识别效果和速度上各有优势。PaddleOCR在中文识别(准确率95%以上)、手写体识别(89.5%)和复杂排版处理(准确率提升12%)上表现突出;而Tesseract在英文识别(94.3%准确率)和CPU环境下的处理速度(0.5秒/张)更具优势。建议根据需求选择:中文识别或GPU加速选PaddleOCR,英文识别或轻量级应用选Tesseract。实际效果受图像质量等因素影响,建议实测验证。
2026-06-29 09:59:11
241
原创 程序不知道写在了什么位置???
在Unity开发中快速定位代码的方法:1. 通过全局搜索关键词或日志反查定位文件;2. 使用IDE结构面板或断点调试找到具体方法;3. 利用Unity的"Find References"或帧调试器分析功能驱动源;4. 通过调用堆栈和条件断点追踪代码执行路径。建议保持命名规范、合理注释和使用#region组织代码,将功能入口集中化以便维护。这些技巧能显著提升代码查找效率。
2026-06-07 16:39:05
278
原创 Unity 的Button Animator
Unity中Button组件支持动画效果设置。在Button组件的Transition选项中选择Animation模式后,会出现AutoGenerateAnimation按钮,点击可生成动画控制器和动画片段。注意编辑动画时需要先选中对应的Button对象才能进行修改操作。这一功能为UI按钮添加了动态交互效果。
2026-04-12 19:06:13
132
原创 播放器声音左边声音大、右边声音小?
调整左右声道平衡的两种方法:1.通过"平衡"按钮调整(推荐):右键任务栏扬声器图标→声音设置→更多声音设置→选择播放设备→属性→级别→平衡→调整左右声道滑块至相同数值;2.快速调整法:右键扬声器→声音设置→输出设备→音量平衡→调整左右滑块。若问题仍存在,需检查"单声道音频"是否关闭或排查硬件故障。
2026-03-07 14:47:02
1163
原创 Unity 调用Steamworks API 的 SteamUserStats.RequestCurrentStats()报错
Steamworks.NET已移除RequestCurrentStats方法,因为Steam客户端现在会在游戏启动前自动同步统计数据和成就。解决方法包括:1)直接删除该方法调用;2)改用UserStatsReceived_t回调来确认数据加载完成。开发者应更新到最新版Steamworks.NET并遵循当前文档,避免使用废弃方法。
2026-02-25 11:18:41
542
1
原创 Unity 使用Steamworks.NET
Steamworks.NET最新版(2025.163.0)Unity插件安装指南:通过GitHub地址(https://github.com/rlabrecque/Steamworks.NET.git)在Unity的PackageManager中添加,支持Steam平台游戏集成成就等功能。安装只需3步:打开PackageManager→选择"Add package from git URL"→粘贴Git地址即可完成。该插件允许开发者使用Steamworks命名空间实现Steam平台功能集
2026-02-24 16:58:27
176
原创 NVIDIA DXCache 文件夹内容可以删除不?
NVIDIA的DXCache文件夹可安全删除,用于存储DirectX应用程序的预编译着色器数据。删除后不会损坏系统,但首次运行游戏时加载会变慢(需重新生成缓存),后续运行恢复正常。删除方法:通过NVIDIA控制面板关闭着色器缓存后,手动删除相关缓存文件夹(位于Local和ProgramData目录),最后重新启用缓存功能。建议在磁盘空间不足或游戏异常时清理,否则保留缓存可获得更好的游戏体验。该操作是用暂时性加载速度换取磁盘空间的安全维护手段。
2026-01-22 17:26:48
48591
原创 Unity项目的Artifacts文件夹过大怎么解决?
Unity项目的Artifacts文件夹存储构建缓存和中间文件,过大的主要原因是长期积累的LibraryCache、多平台构建缓存、着色器变体库等。清理建议:1)使用Unity内置的LibraryArtifactsCacheManager工具安全清理;2)删除冗余平台构建缓存;3)必要时手动删除整个文件夹(首次重开会变慢)。为预防膨胀,可定期清理或迁移缓存位置。38GB的占用虽不正常但在长期多平台开发中可能出现,清理后可显著释放空间。
2026-01-22 17:24:28
740
原创 从个人开发者变更为个体户后,你仍然很可能符合Unity免费版(Personal)和Visual Studio社区版的免费使用权限。
摘要:个人开发者变更为个体户后,只要年营收不超过20万美元,仍可免费使用Unity Personal版;Visual Studio社区版允许个体户用于商业开发,除非达到企业组织规模(员工>250人或年收入>100万美元)。建议定期核对收入记录并关注官方政策更新,若业务规模扩大需提前了解付费版本。关键区别在于Unity侧重财务门槛,VS侧重组织规模。
2026-01-13 12:54:54
638
原创 在Unity中,摄像机移动时出现“残影”或“闪烁”是常见问题,主要原因和处理方法。
摘要:本文总结了Unity中画面闪烁/抖动的常见原因及解决方法。主要排查点包括:1)检查抗锯齿设置是否开启;2)确保摄像机跟随脚本放在LateUpdate()中;3)调整纹理过滤模式并启用MipMap;4)处理Z-fighting问题;5)优化阴影设置;6)解决2D精灵的像素抖动问题。还提供了进阶诊断建议,如创建极简场景测试、调整摄像机裁剪平面等。最后建议用户提供Unity版本、渲染管线类型等详细信息以便更精准分析。
2026-01-10 19:47:33
571
原创 Unity LocalPosition 和 Position 的区别?还有其他的Position 没?
Unity中Transform组件的Position和LocalPosition属性分别表示物体在世界坐标系和父物体局部坐标系中的位置。Position用于全局定位,LocalPosition用于相对定位,当父物体移动时LocalPosition会随之变化。UI系统则使用特殊的anchoredPosition属性。开发中应根据需求选择:全局操作使用Position,层级结构使用LocalPosition,UI元素使用anchoredPosition。二者可通过TransformPoint和InverseTr
2025-12-23 17:53:54
1219
原创 Unity 实现 ScrollBar 值变化控制 Panel 位置的方法
本文介绍了在Unity中通过ScrollBar控制Panel位置的四种实现方法: 直接控制位置(推荐):使用Scrollbar监听事件,通过Mathf.Lerp计算Panel的目标位置,支持水平和垂直滚动; 使用ScrollRect:更简单的方法,直接利用Unity自带的ScrollRect组件,反转垂直滚动值; 平滑滚动效果:在方法1基础上增加Mathf.SmoothDamp实现平滑过渡效果; 双向滚动控制:支持同时控制水平和垂直滚动,可更新滚动条值并设置位置限制范围。 所有方法都包含事件监听器的正确初始
2025-11-15 18:30:59
430
原创 让UI完全按屏幕比例变化的方法
摘要:本文介绍了4种在Unity中实现UI按屏幕比例自适应的方法:1)使用AspectRatioFitter组件直接为Canvas或UI元素添加比例约束;2)通过动态调整CanvasScaler的匹配值;3)使用完全比例适配脚本确保所有UI元素精确缩放;4)为特定UI区域创建比例容器。每种方法适用于不同场景,如方法一适合简单比例需求,方法三提供最完整控制。文中还提供了测试不同比例的代码示例,帮助开发者验证UI在各种屏幕尺寸下的表现效果。
2025-11-12 17:14:24
477
原创 Unity Tilemap小方块(瓦片)颜色的更改
《Unity中Tilemap颜色修改指南》摘要:本文介绍了两种Tilemap颜色修改方法:1)整体调整:通过Tilemap组件的Color属性统一修改所有瓦片色调;2)单个调整:使用TintBrush工具或脚本控制特定瓦片颜色。文章提供了C#代码示例,并提示注意材质着色器兼容性、瓦片TileFlags设置及性能优化,推荐大面积色调修改使用整体调整方式更高效。关键词:Unity、Tilemap、颜色修改、2D游戏开发、TintBrush。
2025-11-10 17:48:33
653
原创 VP8 是什么?
VP8是由Google开发的开源视频编解码器,主要用于视频压缩和解压缩。作为H.264的免费替代品,它通过去除冗余信息实现高效压缩,广泛应用于WebRTC实时通信和网页视频播放。VP8与后续版本VP9、AV1构成开源编解码器的进化路线。相关概念包括WebM容器格式(通常封装VP8/VP9视频)、WebRTC技术标准(强制支持VP8)以及关键帧、码率等视频参数。与专利编解码器H.264相比,VP8在保持相近性能的同时提供了免授权费的解决方案,推动了视频技术的发展。
2025-11-09 18:34:58
959
原创 在 Unity 游戏开发中,为视频选择 VP8 还是 H.264
Unity视频编码选择指南:VP8和H.264各有优势,VP8适合跨平台(尤其Web/Linux),开源且支持透明通道;H.264硬件加速广泛,更适合移动端性能和续航。建议根据目标平台选择,可借助Unity的转码功能实现多平台适配,也可考虑更新但支持有限的VP9/AV1编解码器。新设备可尝试更高压缩效率的编码方案。
2025-11-09 18:27:05
950
原创 在Unity中通过调整一些设置来提升运行和编译速度
Unity项目优化可通过禁用域重载和启用增量编译提升效率,但需注意潜在问题。禁用域重载会保留静态状态,需手动重置静态字段/事件;增量编译可能影响编译准确性,复杂项目需切换全量编译排查问题。建议循序渐进启用,规范代码管理静态状态,在发布前切换全量编译确保稳定。这些设置以额外维护成本换取性能提升,适合熟悉其特性的开发者采用。
2025-11-03 16:37:32
1080
原创 Unity OnDisable() 和 OnDestroy() 的区别与功能
Unity中OnDisable()和OnDestroy()是常用的生命周期方法,主要区别在于:OnDisable()在对象变为非激活状态时调用,用于临时清理(停止协程、取消事件订阅等),可能被多次调用;OnDestroy()仅在对象永久销毁时调用一次,用于最终清理(释放资源、清除静态引用等)。最佳实践包括:在OnEnable/OnDisable成对处理事件订阅,在OnDestroy中确保彻底释放资源,并特别注意静态引用的清理以避免内存泄漏。应根据对象状态选择合适的方法进行资源管理。
2025-11-02 12:43:01
555
原创 Unity 错误UserSettings\Layouts\CurrentMaximizeLayout.dwlt
Unity编辑器出现"无法提取GUID"错误通常是由布局文件(CurrentMaximizeLayout.dwlt)损坏导致。解决方法:关闭Unity,删除UserSettings/Layouts/目录下的损坏文件,重启后Unity会自动生成新布局。其他解决方案包括重置工厂布局设置或更新Unity版本。预防措施包括避免手动编辑布局文件、正确关闭程序以及确保版本控制系统正确处理这些文件。如问题持续,建议检查Unity日志获取更详细的错误信息。
2025-11-01 14:35:12
354
原创 Unity 将地图分割为可自定义的矩形区域来管理物体的插件
Unity提供了多种地图矩形分割方案对比:官方Grid组件适合2D瓦片地图制作;Physics.RebuildBroadphaseRegions用于优化大型世界物理碰撞;TerrainGridSystem专攻战略游戏地形管理;GridsPro适合复杂网格逻辑的战棋游戏;Plane-Mesh-Splitter则用于优化大型地形渲染性能。选择方案应基于核心需求:物理优化用官方API,游戏逻辑管理选专业插件(如GridsPro),2D关卡制作直接用Tilemap系统。不同场景需要针对性采用性能优化或逻辑管理方案。
2025-10-29 18:41:40
405
1
原创 手动调用 GC.Collect()会造成“单帧卡顿“下面是更好的建议
手动调用GC.Collect()通常会导致游戏单帧卡顿,因为它会强制进行阻塞式垃圾回收。更好的解决方法是减少垃圾产生和优化回收过程:1)使用对象池避免频繁创建销毁对象;2)避免在Update等方法中产生堆内存分配,如字符串拼接、装箱等;3)在加载场景等时机主动触发GC;4)启用增量式GC将回收分摊到多帧;5)使用Profiler监控GCAlloc定位问题。通过主动管理和减少垃圾产生,可以避免GC引起的性能问题。
2025-10-29 15:25:05
790
原创 Unity 资源导出的问题,依赖关系过多。
文章摘要:该错误主要由Unity资源依赖关系过于复杂导致,而非包大小或资源数量问题。当资源引用过多包管理器中的依赖项时,会形成复杂的依赖图,超过Unity设置的100个包分析上限。根本原因是交叉依赖和深层依赖链导致依赖分析超限。解决方案包括:使用简化导出选项、分批导出策略(按资源类型分组)、将高依赖资源单独导出,以及通过导出简单资源验证问题原因。关键是要减少单次导出的依赖复杂度。
2025-10-24 14:32:17
637
原创 自己发现DEEP SEEK现在生成程序的现状 2025-10-9
DEEPSEEK生成代码的正确率逐步提高,但仍存在与预期功能不符的情况,特别是在代码优化时可能出现不等价转换,导致程序异常且排查耗时。建议在使用时明确要求功能一致性,并对生成代码及时测试和标注,确保可靠性。
2025-10-09 14:03:12
225
原创 Unity 代码性能优化之HashSet.Contains() vs List.Contains()
重构后的代码性能大幅提升主要归功于三个关键优化:1)将List.Contains(O(n))替换为HashSet.Contains(O(1)),使查找操作从50万次降到1千次;2)采用泛型方法避免重复类型转换和装箱拆箱;3)减少中间集合创建,优化内存访问模式。整体复杂度从O(n×m)降至O(n+m),在数据量大时可实现百倍性能提升,同时改善了CPU缓存命中率和内存分配效率。
2025-10-03 14:49:19
966
原创 Unity Profiler中的LogStringToConsole
LogStringToConsole是Unity引擎内部处理日志输出的核心方法,反映调用Debug.Log等API时的CPU开销。它本质是Unity处理日志的固有成本,会在Profiler中显示为引擎自身的性能消耗。若发现该方法占用过高CPU时间,通常意味着存在过度日志输出问题。优化建议包括:清理开发阶段调试日志、避免高频循环中打印日志,或通过自定义日志系统集中管理输出。该指标有助于开发者识别并优化日志相关的性能瓶颈。
2025-10-03 13:04:37
364
田间统计分析VisualBasic6.0程序(未测试版).pdf
2020-07-06
VB6 DX7显示移动的边缘透明图片
2020-04-22
VB6 API BitBlt显示边缘透明图
2018-11-29
田间统计整合版.zip
2021-07-08
一元一次方程.zip
2020-04-17
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅