<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Stream_Silver的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Stream_Silver</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Stream_Silver]]></copyright><item><title><![CDATA[【Unity2022.3.62f3环境安装整理文档记录】]]></title><link>https://blog.youkuaiyun.com/Stream_Silver/article/details/162695752</link><guid>https://blog.youkuaiyun.com/Stream_Silver/article/details/162695752</guid><author>Stream_Silver</author><pubDate>Mon, 31 Aug 2026 11:20:08 +0800</pubDate><description><![CDATA[3.在弹出界面，点击存档，点击下载存档，注意开启代理所有流量，（我使用的Proxifer）如果使用国内网络，访问的将会是团结网站(未使用代理时，部分地区网络可能自动跳转到国内“团结引擎”相关站点，导致无法找到国际版 Unity Editor)，如果仅开启系统代理，unityhub可能会重定向到国内的服务器。8.点击“修改”，找到游戏，如图所示，仅勾选“使用Unity的游戏开发”，然后点击“修改”等待完成。4.在如下所显示Unity官方页面，点击2022，找到2022.3.62f3。]]></description><category></category></item><item><title><![CDATA[【游戏音效配置需求实战：从单一参数到双维度「最低触发」】]]></title><link>https://blog.youkuaiyun.com/Stream_Silver/article/details/161595137</link><guid>https://blog.youkuaiyun.com/Stream_Silver/article/details/161595137</guid><author>Stream_Silver</author><pubDate>Mon, 01 Jun 2026 15:48:25 +0800</pubDate><description><![CDATA[在游戏开发中，音效的精准触发是提升玩家沉浸感的关键环节如何根据「赢取倍数」和「赢取积分」两个维度，从配置文件中智能匹配到最合适的音效配置？两个参数可能落在不同的配置挡位，如何取舍？浮点数精度问题可能导致边界值匹配错误需要支持多种游戏模式（BaseGame、FreeGame、Bonus）配置化设计要求不修改代码即可调整挡位标准算法升级：从单一参数匹配升级为「精确匹配 + 最低挡位触发」的双维度智能匹配规则明确：确立了「仅当两参数同时匹配时才进行最低挡位比较」的核心原则可观测性增强。]]></description><category></category></item><item><title><![CDATA[【我用 Trae 半年，总结出 6 条让 AI 稳定输出的协作经验，附codex&trae的agents.md】]]></title><link>https://blog.youkuaiyun.com/Stream_Silver/article/details/161585448</link><guid>https://blog.youkuaiyun.com/Stream_Silver/article/details/161585448</guid><author>Stream_Silver</author><pubDate>Mon, 01 Jun 2026 11:07:06 +0800</pubDate><description><![CDATA[这篇文章分享了作者使用 Trae AI 编程助手半年总结的 6 条关键协作经验： 要求 AI 输出完整修改总结（修改文件、原因、验证情况等） 复杂任务前先让 AI 阅读项目结构而非直接写代码 为 AI 设置长期行为规则而非临时指令 复杂任务必须先拆解计划再实施 研究任务要让 AI 先查证而非凭印象回答 每完成一个任务就开启新会话避免污染 作者还提供了可直接使用的两份规则模板（Trae/Codex版），强调让 AI 稳定的核心在于提供清晰上下文、行为规范和验收标准，而非依赖单一提示词。这些经验帮助作者从"被A]]></description><category></category></item><item><title><![CDATA[USB按钮系统深度解析（一）：系统概览与架构设计]]></title><link>https://blog.youkuaiyun.com/Stream_Silver/article/details/161514600</link><guid>https://blog.youkuaiyun.com/Stream_Silver/article/details/161514600</guid><author>Stream_Silver</author><pubDate>Fri, 29 May 2026 14:27:17 +0800</pubDate><description><![CDATA[USB按钮系统采用四层架构，职责清晰，便于维护和扩展核心组件：UsbButtonComponent（入口）、UsbButtonSpin（硬件抽象）、AnimationStrategy（策略接口）、AnimationStrategyManager（策略管理）策略模式实现动画逻辑的灵活扩展，运行时动态切换独立线程保证系统响应性，避免阻塞主线程完善的线程安全机制：volatile、synchronized、双重检查锁异常处理与容错设计：策略异常回退、USB操作异常处理。]]></description><category></category></item><item><title><![CDATA[【JD-GUI：Java开发者必备的反编译利器，使用教程】]]></title><link>https://blog.youkuaiyun.com/Stream_Silver/article/details/161117221</link><guid>https://blog.youkuaiyun.com/Stream_Silver/article/details/161117221</guid><author>Stream_Silver</author><pubDate>Tue, 19 May 2026 16:33:03 +0800</pubDate><description><![CDATA[JD-GUI是一款轻量级Java反编译工具，能够将.class文件还原为可读性高的Java源代码。它具有开箱即用、运行速度快、界面直观等特点，支持语法高亮、代码导航和搜索功能。使用时可直接拖拽JAR包或class文件查看源码，还能导出完整项目结构。需要注意的是，反编译结果可能不完全准确，且应遵守相关法律法规。该工具适合用于学习第三方库实现、调试和排查问题等场景。]]></description><category></category></item><item><title><![CDATA[【记一次诡异的USB设备开发，动画卡死问题排查：元凶竟是JPG文件】]]></title><link>https://blog.youkuaiyun.com/Stream_Silver/article/details/160972328</link><guid>https://blog.youkuaiyun.com/Stream_Silver/article/details/160972328</guid><author>Stream_Silver</author><pubDate>Fri, 15 May 2026 10:42:57 +0800</pubDate><description><![CDATA[本文记录了一个USB设备动画卡死问题的排查过程。问题表现为动画在30分钟内极高概率卡死，但其他USB功能正常。通过多组对照实验，排除了构建方式、代码逻辑和系统环境的影响，最终锁定问题根源为JPG资源文件本身。实验发现，用Windows画图重新保存图片后问题消失，而原始新制作的JPG文件会导致动画卡顿。这表明某些JPG文件的元数据或编码参数可能影响了USB数据传输的稳定性。该案例展示了硬件开发中资源文件格式对系统稳定性的潜在影响。]]></description><category></category></item><item><title><![CDATA[【 libusb4java实战：跨平台USB设备通信完全指南】]]></title><link>https://blog.youkuaiyun.com/Stream_Silver/article/details/160967983</link><guid>https://blog.youkuaiyun.com/Stream_Silver/article/details/160967983</guid><author>Stream_Silver</author><pubDate>Thu, 14 May 2026 17:29:14 +0800</pubDate><description><![CDATA[本文介绍了使用libusb4java实现跨平台USB设备通信的完整指南。主要内容包括： USB通信基础概念：设备与端点、VID/PID标识、接口与端点地址等核心知识 libusb4java特点：跨平台支持、完整功能覆盖、与JNA无缝集成 环境配置：Maven依赖管理，包括usb4java核心库和平台原生库 核心实现： 常量定义（端点地址、超时设置等） 设备初始化流程（libusb初始化、设备枚举、打开设备和声明接口） 数据传输实现 文章通过一个USB游戏按钮控制器项目，详细讲解了从环境搭建到实际开发的完整过]]></description><category></category></item><item><title><![CDATA[【JNA实战：Java无缝调用Windows API模拟键盘输入】]]></title><link>https://blog.youkuaiyun.com/Stream_Silver/article/details/160929030</link><guid>https://blog.youkuaiyun.com/Stream_Silver/article/details/160929030</guid><author>Stream_Silver</author><pubDate>Sat, 09 May 2026 17:41:29 +0800</pubDate><description><![CDATA[摘要： 本文介绍了使用JNA（Java Native Access）技术实现Java调用Windows API模拟键盘输入的方法。通过对比JNI与JNA的优缺点，展示了JNA在开发效率、部署简便性和维护便利性上的优势。文章详细讲解了环境准备步骤，包括Maven依赖配置和Windows API基础知识。核心实现部分提供了一个完整的Java代码示例，演示了如何通过JNA接口映射调用user32.dll中的keybd_event函数来模拟空格键操作。最后深入解析了JNA接口定义、类型映射规则和常量定义等关键技术细]]></description><category></category></item><item><title><![CDATA[【MCP (Model Context Protocol) 服务技术详解】]]></title><link>https://blog.youkuaiyun.com/Stream_Silver/article/details/156958883</link><guid>https://blog.youkuaiyun.com/Stream_Silver/article/details/156958883</guid><author>Stream_Silver</author><pubDate>Sat, 09 May 2026 13:13:32 +0800</pubDate><description><![CDATA[MCP（Model Context Protocol）是Anthropic推出的标准化协议，用于大语言模型与外部工具间的通信。它采用客户端-服务器架构，支持本地stdio和远程SSE两种传输方式。服务器端通过FastMCP框架快速构建工具服务，客户端则管理会话并实现工具发现、调用和结果整合。MCP的核心优势包括标准化接口、双向通信和灵活的部署方式，使开发者能专注于业务逻辑，无需考虑底层模型差异。协议设计遵循职责分离、异步优先等原则，适用于从本地工具集成到远程服务部署等多种场景。]]></description><category></category></item><item><title><![CDATA[【系统架构设计师学习笔记】第一章 计算机硬件 1.1 计算机硬件组成]]></title><link>https://blog.youkuaiyun.com/Stream_Silver/article/details/159080371</link><guid>https://blog.youkuaiyun.com/Stream_Silver/article/details/159080371</guid><author>Stream_Silver</author><pubDate>Sun, 15 Mar 2026 13:05:15 +0800</pubDate><description><![CDATA[本文介绍了计算机硬件的基本组成结构。根据冯·诺依曼体系，计算机由五大部件构成：运算器、控制器、存储器、输入设备和输出设备。其中运算器和控制器被集成成为中央处理单元（CPU）。存储器分为速度快、容量小的内部存储器（如RAM、ROM）和速度慢但容量大的外部存储器（如硬盘）。输入设备（如键盘、鼠标）用于数据输入，输出设备则用于显示处理结果。这些组件共同构成了完整的计算机硬件系统。]]></description><category></category></item><item><title><![CDATA[一个简单的Python自动化脚本：批量重命名图片文件（00-09 → 0-9）]]></title><link>https://blog.youkuaiyun.com/Stream_Silver/article/details/158571322</link><guid>https://blog.youkuaiyun.com/Stream_Silver/article/details/158571322</guid><author>Stream_Silver</author><pubDate>Mon, 02 Mar 2026 10:44:29 +0800</pubDate><description><![CDATA[添加前缀或后缀 new_name = f"image_ {# 添加前缀或后缀 new_name = f"image_ {# 添加前缀或后缀 new_name = f"image_ {通过这个简单的脚本，我们不仅解决了眼前的文件重命名需求，还建立了一个可复用的批量文件处理模板。自动化：用代码代替重复的手工操作安全性：备份和冲突处理机制用户体验：操作确认和详细日志希望这个脚本对你有帮助！如果你有类似的批量处理需求，欢迎在评论区讨论交流。完整代码已上传，可以直接复制使用。🚀。]]></description><category></category></item><item><title><![CDATA[Libgdx游戏开发笔记：序列帧动画与Spine骨骼动画]]></title><link>https://blog.youkuaiyun.com/Stream_Silver/article/details/158380221</link><guid>https://blog.youkuaiyun.com/Stream_Silver/article/details/158380221</guid><author>Stream_Silver</author><pubDate>Wed, 25 Feb 2026 09:34:37 +0800</pubDate><description><![CDATA[序列帧动画：用空间换效果，适合追求极致画质和特殊效果Spine骨骼动画：用计算换资源，适合现代2D游戏的高效开发需求核心取舍：在"表现力"和"效率"之间找到平衡点，根据项目具体需求做出选择。]]></description><category></category></item><item><title><![CDATA[SVN工作副本锁定问题解决：Clean up failed ，Working copy is already locked.Try enabling the “Break write locks“]]></title><link>https://blog.youkuaiyun.com/Stream_Silver/article/details/157973176</link><guid>https://blog.youkuaiyun.com/Stream_Silver/article/details/157973176</guid><author>Stream_Silver</author><pubDate>Wed, 11 Feb 2026 14:34:13 +0800</pubDate><description><![CDATA[摘要： SVN工作副本锁定问题常由异常中断操作引起，表现为无法执行cleanup或更新。本文详细分析了锁机制原理，并提供了三种解决方案：(1)推荐使用TortoiseSVN GUI启用&quot;Break write locks&quot;选项安全清理；(2)命令行清理方法；(3)终极重检出方案。重点强调了GUI方案的安全性（不影响服务器/本地修改），并给出预防建议和故障排查流程图。通过理解SVN锁机制，可快速解决此类问题，避免不必要的重新检出操作，提高版本控制效率。]]></description><category></category></item><item><title><![CDATA[Python开发：深入理解 Python 字节码缓存文件]]></title><link>https://blog.youkuaiyun.com/Stream_Silver/article/details/157870949</link><guid>https://blog.youkuaiyun.com/Stream_Silver/article/details/157870949</guid><author>Stream_Silver</author><pubDate>Sun, 08 Feb 2026 11:51:17 +0800</pubDate><description><![CDATA[阶段一：编译阶段Python 源代码（.py文件）被编译成字节码字节码是一种介于源代码和机器码之间的中间语言这种编译是自动完成的，对开发者透明阶段二：执行阶段Python 虚拟机（PVM）解释执行字节码逐行读取并运行程序逻辑源代码 (.py) → 编译 → 字节码 (.pyc) → 解释执行 → 程序输出本质.pyc文件是 Python 源代码编译后的字节码缓存作用：加速模块导入和程序启动验证：Python 自动通过时间戳验证缓存有效性更新：修改源代码后，Python 会自动重新编译。]]></description><category></category></item><item><title><![CDATA[【Agent学习笔记3：使用Python开发简单MCP服务】]]></title><link>https://blog.youkuaiyun.com/Stream_Silver/article/details/157616685</link><guid>https://blog.youkuaiyun.com/Stream_Silver/article/details/157616685</guid><author>Stream_Silver</author><pubDate>Sun, 01 Feb 2026 17:37:03 +0800</pubDate><description><![CDATA[本文介绍了如何使用Python开发MCP（Model Context Protocol）服务，实现大语言模型与外部工具的交互。主要内容包括：MCP协议概述及其标准化、安全性优势；环境准备与FastMCP框架安装；通过装饰器定义MCP工具（文件写入和天气查询示例）；服务启动配置（支持SSE和STDIO两种传输方式）；环境变量安全管理；以及扩展建议（添加新工具和参数验证）。文章提供了完整代码示例，帮助开发者快速构建安全的MCP服务。]]></description><category></category></item><item><title><![CDATA[【Agent学习笔记2：深入理解Function Calling技术：从原理到实践】]]></title><link>https://blog.youkuaiyun.com/Stream_Silver/article/details/157613011</link><guid>https://blog.youkuaiyun.com/Stream_Silver/article/details/157613011</guid><author>Stream_Silver</author><pubDate>Sun, 01 Feb 2026 11:45:03 +0800</pubDate><description><![CDATA[Function Calling技术扩展了AI模型的能力边界，使其能够调用外部函数、访问实时数据并执行特定任务。本文以阿里云DashScope API为例，详细讲解了该技术的原理、实现和应用。核心内容包括：1）系统提示词设计引导AI行为；2）JSON格式函数定义声明可用函数；3）实际函数实现执行具体操作；4）API请求构建与结果处理流程。通过天气查询和文件写入两个实例，展示了如何让AI模型具备实时信息获取和操作执行能力，使其从&quot;知识库&quot;转变为真正的&quot;智能助手&quot;。]]></description><category></category></item><item><title><![CDATA[【Agent学习笔记1：Python调用Function Calling，阿里云API函数调用与DeepSeek API对比分析】]]></title><link>https://blog.youkuaiyun.com/Stream_Silver/article/details/157612848</link><guid>https://blog.youkuaiyun.com/Stream_Silver/article/details/157612848</guid><author>Stream_Silver</author><pubDate>Sun, 01 Feb 2026 11:22:18 +0800</pubDate><description><![CDATA[本文对比分析了阿里云API和DeepSeek API的函数调用功能。两者在函数定义格式上完全一致，均采用OpenAI标准结构，包含函数名称、描述和参数定义。阿里云API通过tools参数传递函数定义，响应中包含tool_calls字段指示函数调用。实际使用时需手动执行函数并返回结果给模型。主要差异在于API端点地址不同：阿里云使用DashScope服务端点，而DeepSeek有其专用地址。整体实现逻辑相似，开发者可根据服务偏好选择。]]></description><category></category></item><item><title><![CDATA[【Node.js 安装报错解决方案：解决“A later version of Node.js is already installed”问题】]]></title><link>https://blog.youkuaiyun.com/Stream_Silver/article/details/157522341</link><guid>https://blog.youkuaiyun.com/Stream_Silver/article/details/157522341</guid><author>Stream_Silver</author><pubDate>Fri, 30 Jan 2026 00:26:40 +0800</pubDate><description><![CDATA[处理 “A later version of Node.js is already installed” 错误的关键在于彻底清理现有安装，然后重新安装所需版本。对于长期开发工作，推荐使用版本管理工具如 nvm 或 nvm-windows，这样可以避免版本冲突，轻松切换不同项目所需的环境。]]></description><category></category></item><item><title><![CDATA[【LibGDX中的setAutoScale方法】]]></title><link>https://blog.youkuaiyun.com/Stream_Silver/article/details/157137462</link><guid>https://blog.youkuaiyun.com/Stream_Silver/article/details/157137462</guid><author>Stream_Silver</author><pubDate>Mon, 19 Jan 2026 16:17:30 +0800</pubDate><description><![CDATA[类相关，用于控制字体在缩放时是否自动调整其像素大小以保持清晰度。缩放控制：除了自动缩放，还可以使用。方法调整，而多行文本的绘制则使用。方法启用或禁用自动缩放功能。方法手动设置字体的缩放比例。颜色与绘制：字体颜色可通过。]]></description><category></category></item><item><title><![CDATA[解决PyCharm配置Conda虚拟环境报错lateinit property envs has not been initialized的问题]]></title><link>https://blog.youkuaiyun.com/Stream_Silver/article/details/156995896</link><guid>https://blog.youkuaiyun.com/Stream_Silver/article/details/156995896</guid><author>Stream_Silver</author><pubDate>Fri, 16 Jan 2026 00:11:07 +0800</pubDate><description><![CDATA[摘要：本文详细解决PyCharm2025配置Conda环境时出现的lateinit property envs has not been initialized错误。通过验证Conda安装状态、检查版本兼容性、正确配置PyCharm中的Conda环境路径（推荐使用_conda.exe而非conda.bat）以及检查系统环境变量，逐步排查问题根源。特别提示从命令行验证开始排查，并提供Windows环境变量配置建议。若问题持续，建议参考JetBrains官方文档或社区论坛获取进一步帮助。（149字）]]></description><category></category></item></channel></rss>