[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-libgdx--gdx-ai":3,"tool-libgdx--gdx-ai":61},[4,18,26,36,44,53],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":17},4358,"openclaw","openclaw\u002Fopenclaw","OpenClaw 是一款专为个人打造的本地化 AI 助手，旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚，能够直接接入你日常使用的各类通讯渠道，包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息，OpenClaw 都能即时响应，甚至支持在 macOS、iOS 和 Android 设备上进行语音交互，并提供实时的画布渲染功能供你操控。\n\n这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地，用户无需依赖云端服务即可享受快速、私密的智能辅助，真正实现了“你的数据，你做主”。其独特的技术亮点在于强大的网关架构，将控制平面与核心助手分离，确保跨平台通信的流畅性与扩展性。\n\nOpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者，以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力（支持 macOS、Linux 及 Windows WSL2），即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你",349277,3,"2026-04-06T06:32:30",[13,14,15,16],"Agent","开发框架","图像","数据工具","ready",{"id":19,"name":20,"github_repo":21,"description_zh":22,"stars":23,"difficulty_score":10,"last_commit_at":24,"category_tags":25,"status":17},3808,"stable-diffusion-webui","AUTOMATIC1111\u002Fstable-diffusion-webui","stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面，旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点，将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。\n\n无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师，还是想要深入探索模型潜力的开发者与研究人员，都能从中获益。其核心亮点在于极高的功能丰富度：不仅支持文生图、图生图、局部重绘（Inpainting）和外绘（Outpainting）等基础模式，还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外，它内置了 GFPGAN 和 CodeFormer 等人脸修复工具，支持多种神经网络放大算法，并允许用户通过插件系统无限扩展能力。即使是显存有限的设备，stable-diffusion-webui 也提供了相应的优化选项，让高质量的 AI 艺术创作变得触手可及。",162132,"2026-04-05T11:01:52",[14,15,13],{"id":27,"name":28,"github_repo":29,"description_zh":30,"stars":31,"difficulty_score":32,"last_commit_at":33,"category_tags":34,"status":17},1381,"everything-claude-code","affaan-m\u002Feverything-claude-code","everything-claude-code 是一套专为 AI 编程助手（如 Claude Code、Codex、Cursor 等）打造的高性能优化系统。它不仅仅是一组配置文件，而是一个经过长期实战打磨的完整框架，旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。\n\n通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能，everything-claude-code 能显著提升 AI 在复杂任务中的表现，帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略，使得模型响应更快、成本更低，同时有效防御潜在的攻击向量。\n\n这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库，还是需要 AI 协助进行安全审计与自动化测试，everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目，它融合了多语言支持与丰富的实战钩子（hooks），让 AI 真正成长为懂上",148568,2,"2026-04-09T23:34:24",[14,13,35],"语言模型",{"id":37,"name":38,"github_repo":39,"description_zh":40,"stars":41,"difficulty_score":32,"last_commit_at":42,"category_tags":43,"status":17},2271,"ComfyUI","Comfy-Org\u002FComfyUI","ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎，专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式，采用直观的节点式流程图界面，让用户通过连接不同的功能模块即可构建个性化的生成管线。\n\n这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景，也能自由组合模型、调整参数并实时预览效果，轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性，不仅支持 Windows、macOS 和 Linux 全平台，还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构，并率先支持 SDXL、Flux、SD3 等前沿模型。\n\n无论是希望深入探索算法潜力的研究人员和开发者，还是追求极致创作自由度的设计师与资深 AI 绘画爱好者，ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",108111,"2026-04-08T11:23:26",[14,15,13],{"id":45,"name":46,"github_repo":47,"description_zh":48,"stars":49,"difficulty_score":32,"last_commit_at":50,"category_tags":51,"status":17},6121,"gemini-cli","google-gemini\u002Fgemini-cli","gemini-cli 是一款由谷歌推出的开源 AI 命令行工具，它将强大的 Gemini 大模型能力直接集成到用户的终端环境中。对于习惯在命令行工作的开发者而言，它提供了一条从输入提示词到获取模型响应的最短路径，无需切换窗口即可享受智能辅助。\n\n这款工具主要解决了开发过程中频繁上下文切换的痛点，让用户能在熟悉的终端界面内直接完成代码理解、生成、调试以及自动化运维任务。无论是查询大型代码库、根据草图生成应用，还是执行复杂的 Git 操作，gemini-cli 都能通过自然语言指令高效处理。\n\n它特别适合广大软件工程师、DevOps 人员及技术研究人员使用。其核心亮点包括支持高达 100 万 token 的超长上下文窗口，具备出色的逻辑推理能力；内置 Google 搜索、文件操作及 Shell 命令执行等实用工具；更独特的是，它支持 MCP（模型上下文协议），允许用户灵活扩展自定义集成，连接如图像生成等外部能力。此外，个人谷歌账号即可享受免费的额度支持，且项目基于 Apache 2.0 协议完全开源，是提升终端工作效率的理想助手。",100752,"2026-04-10T01:20:03",[52,13,15,14],"插件",{"id":54,"name":55,"github_repo":56,"description_zh":57,"stars":58,"difficulty_score":32,"last_commit_at":59,"category_tags":60,"status":17},4721,"markitdown","microsoft\u002Fmarkitdown","MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具，专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片（含 OCR）、音频（含语音转录）、HTML 乃至 YouTube 链接等多种格式的解析，能够精准提取文档中的标题、列表、表格和链接等关键结构信息。\n\n在人工智能应用日益普及的今天，大语言模型（LLM）虽擅长处理文本，却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点，它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式，成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外，它还提供了 MCP（模型上下文协议）服务器，可无缝集成到 Claude Desktop 等 LLM 应用中。\n\n这款工具特别适合开发者、数据科学家及 AI 研究人员使用，尤其是那些需要构建文档检索增强生成（RAG）系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性，但其核心优势在于为机器",93400,"2026-04-06T19:52:38",[52,14],{"id":62,"github_repo":63,"name":64,"description_en":65,"description_zh":66,"ai_summary_zh":67,"readme_en":68,"readme_zh":69,"quickstart_zh":70,"use_case_zh":71,"hero_image_url":72,"owner_login":73,"owner_name":73,"owner_avatar_url":74,"owner_bio":75,"owner_company":76,"owner_location":76,"owner_email":76,"owner_twitter":76,"owner_website":77,"owner_url":78,"languages":79,"stars":88,"forks":89,"last_commit_at":90,"license":91,"difficulty_score":32,"env_os":92,"env_gpu":93,"env_ram":92,"env_deps":94,"category_tags":99,"github_topics":101,"view_count":32,"oss_zip_url":76,"oss_zip_packed_at":76,"status":17,"created_at":114,"updated_at":115,"faqs":116,"releases":152},6074,"libgdx\u002Fgdx-ai","gdx-ai","Artificial Intelligence framework for games based on libGDX or not. Features: Steering Behaviors, Formation Motion, Pathfinding, Behavior Trees and Finite State Machines","gdx-ai 是一款专为游戏开发打造的高性能人工智能框架，完全由 Java 编写。虽然它作为 libGDX 引擎的扩展项目诞生，但并不强制开发者必须使用 libGDX 进行整体开发，仅需引入其核心库即可享受优化成果。\n\n在游戏制作中，让角色拥有自然的移动轨迹、智能的寻路能力以及复杂的决策逻辑往往极具挑战。gdx-ai 正是为了解决这些痛点而生，它封装了游戏行业常用的核心 AI 技术，帮助开发者快速实现智能化的游戏行为。\n\n这款工具非常适合游戏程序员和技术策划使用。其核心功能涵盖三大领域：首先是运动控制，提供转向行为（Steering Behaviors）和编队运动，让角色移动更加流畅自然；其次是寻路系统，支持 A*算法、分层寻路及路径平滑处理，甚至允许中断正在进行的寻路任务；最后是决策机制，内置状态机和行为树，便于构建复杂的角色逻辑。\n\ngdx-ai 的独特亮点在于其对性能的极致追求。它深度利用了 libGDX 优化的集合类，专门针对移动端进行了垃圾回收（GC）优化，并直接支持原始数据类型以避免装箱拆箱带来的性能损耗。这意味着即使在资源受限的移动设备上，也能运行高效、稳定的 AI 逻辑","gdx-ai 是一款专为游戏开发打造的高性能人工智能框架，完全由 Java 编写。虽然它作为 libGDX 引擎的扩展项目诞生，但并不强制开发者必须使用 libGDX 进行整体开发，仅需引入其核心库即可享受优化成果。\n\n在游戏制作中，让角色拥有自然的移动轨迹、智能的寻路能力以及复杂的决策逻辑往往极具挑战。gdx-ai 正是为了解决这些痛点而生，它封装了游戏行业常用的核心 AI 技术，帮助开发者快速实现智能化的游戏行为。\n\n这款工具非常适合游戏程序员和技术策划使用。其核心功能涵盖三大领域：首先是运动控制，提供转向行为（Steering Behaviors）和编队运动，让角色移动更加流畅自然；其次是寻路系统，支持 A*算法、分层寻路及路径平滑处理，甚至允许中断正在进行的寻路任务；最后是决策机制，内置状态机和行为树，便于构建复杂的角色逻辑。\n\ngdx-ai 的独特亮点在于其对性能的极致追求。它深度利用了 libGDX 优化的集合类，专门针对移动端进行了垃圾回收（GC）优化，并直接支持原始数据类型以避免装箱拆箱带来的性能损耗。这意味着即使在资源受限的移动设备上，也能运行高效、稳定的 AI 逻辑。无论是独立开发者还是专业团队，都能借助 gdx-ai 轻松为游戏注入生动的智能灵魂。","![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flibgdx_gdx-ai_readme_83dfdfdeb891.png)\n\n[![Jenkins build status](https:\u002F\u002Flibgdx.badlogicgames.com\u002Fjenkins\u002FbuildStatus\u002Ficon?job=gdx-ai&.png)](https:\u002F\u002Flibgdx.badlogicgames.com\u002Fjenkins\u002Fjob\u002Fgdx-ai\u002F) (Jenkins)\n\nAn artificial intelligence framework, entirely written in Java, for game development with [libGDX](https:\u002F\u002Fgithub.com\u002Flibgdx\u002Flibgdx).\n\nThe gdxAI project is a libGDX extension living under the [libGDX umbrella](https:\u002F\u002Fgithub.com\u002Flibgdx). However it does not force you to use that specific framework if you do not wish to do so. The libGDX jar remains an essential requirement, mostly due to the use of libGDX collections which are optimized for mobile platforms by limiting garbage creation and supporting primitive types directly, so avoiding boxing and unboxing.\n\nGdxAI tries to be a high-performance framework providing some of the most common AI techniques used by game industry.\nHowever, in the present state of the art, the gdxAI framework covers only part of the entire game AI area, which is really huge. We've tried to focus on what matters most in game AI development, though. And more stuff will come soon.\n\nCurrently supported features are:\n- Movement AI\n  * Steering Behaviors\n  * Formation Motion\n- Pathfinding\n  * A*\n  * Hierarchical Pathfinding\n  * Path Smoothing\n  * Interruptible Pathfinding\n- Decision Making\n  * State Machine\n  * Behavior Trees\n- Infrastructure\n  * Message Handling\n  * Scheduling\n\n\n### Getting Started\n\n* [Use gdxAI in your project](https:\u002F\u002Fgithub.com\u002Flibgdx\u002Fgdx-ai\u002Fwiki\u002FGetting-started-with-gdxAI)\n* [Read the wiki](https:\u002F\u002Fgithub.com\u002Flibgdx\u002Fgdx-ai\u002Fwiki)\n* [Refer to the javadocs](https:\u002F\u002Fjavadoc.io\u002Fdoc\u002Fcom.badlogicgames.gdx\u002Fgdx-ai\u002Flatest\u002Findex.html)\n* [Read the examples](https:\u002F\u002Fgithub.com\u002Flibgdx\u002Fgdx-ai\u002Ftree\u002Fmaster\u002Ftests)\n* [Useful Links and Resources](https:\u002F\u002Fgithub.com\u002Flibgdx\u002Fgdx-ai\u002Fwiki\u002FUseful-Links-and-Resources)\n\n\n### News & Community\n\nCheck the [libGDX blog](https:\u002F\u002Flibgdx.com\u002Fnews\u002F) for news and updates. You can get help on our [Discord server](https:\u002F\u002Flibgdx.com\u002Fcommunity\u002Fdiscord\u002F).\n\n### Reporting Issues\n\nSomething not working quite as expected? Do you need a feature that has not been implemented yet? Check the [issue tracker](https:\u002F\u002Fgithub.com\u002Flibgdx\u002Fgdx-ai\u002Fissues) and add a new one if your problem is not already listed. Please try to provide a detailed description of your problem, including the steps to reproduce it.\n\n### Contributing\n\nAwesome! If you would like to contribute with a new feature or a bugfix, [fork this repo](https:\u002F\u002Fhelp.github.com\u002Farticles\u002Ffork-a-repo) and [submit a pull request](https:\u002F\u002Fhelp.github.com\u002Farticles\u002Fusing-pull-requests).\nAlso, before we can accept substantial code contributions, we need you to sign the [libGDX Contributor License Agreement](https:\u002F\u002Flibgdx.com\u002Fdev\u002Fcontributing\u002F#contributor-license-agreement).\n\n### License\n\nThe gdxAI project is licensed under the [Apache 2 License](https:\u002F\u002Fgithub.com\u002Flibgdx\u002Fgdx-ai\u002Fblob\u002Fmaster\u002FLICENSE), meaning you\ncan use it free of charge, without strings attached in commercial and non-commercial projects. We love to\nget (non-mandatory) credit in case you release a game or app using gdxAI!\n\n","![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flibgdx_gdx-ai_readme_83dfdfdeb891.png)\n\n[![Jenkins 构建状态](https:\u002F\u002Flibgdx.badlogicgames.com\u002Fjenkins\u002FbuildStatus\u002Ficon?job=gdx-ai&.png)](https:\u002F\u002Flibgdx.badlogicgames.com\u002Fjenkins\u002Fjob\u002Fgdx-ai\u002F) (Jenkins)\n\n一个完全用 Java 编写的用于游戏开发的人工智能框架，基于 [libGDX](https:\u002F\u002Fgithub.com\u002Flibgdx\u002Flibgdx)。\n\ngdxAI 项目是 libGDX 的一个扩展，隶属于 [libGDX 生态](https:\u002F\u002Fgithub.com\u002Flibgdx)。不过，如果你不想使用 libGDX 框架，它并不会强制你这样做。libGDX 的 JAR 包仍然是必需的，主要是因为 gdxAI 使用了 libGDX 的集合类，这些集合类针对移动平台进行了优化，通过减少垃圾回收和直接支持原始类型来避免装箱和拆箱操作。\n\ngdxAI 致力于成为一个高性能的框架，提供游戏行业中常用的几种人工智能技术。然而，在当前的技术水平下，gdxAI 只覆盖了整个游戏 AI 领域的一部分，而这一领域实际上非常庞大。我们努力聚焦于游戏 AI 开发中最关键的部分，并且未来还会不断加入更多功能。\n\n目前支持的功能包括：\n- 移动 AI\n  * 导向行为\n  * 队形运动\n- 路径规划\n  * A*\n  * 分层路径规划\n  * 路径平滑\n  * 可中断路径规划\n- 决策制定\n  * 状态机\n  * 行为树\n- 基础设施\n  * 消息处理\n  * 任务调度\n\n\n### 入门指南\n\n* [在你的项目中使用 gdxAI](https:\u002F\u002Fgithub.com\u002Flibgdx\u002Fgdx-ai\u002Fwiki\u002FGetting-started-with-gdxAI)\n* [阅读维基文档](https:\u002F\u002Fgithub.com\u002Flibgdx\u002Fgdx-ai\u002Fwiki)\n* [查阅 Javadoc 文档](https:\u002F\u002Fjavadoc.io\u002Fdoc\u002Fcom.badlogicgames.gdx\u002Fgdx-ai\u002Flatest\u002Findex.html)\n* [查看示例代码](https:\u002F\u002Fgithub.com\u002Flibgdx\u002Fgdx-ai\u002Ftree\u002Fmaster\u002Ftests)\n* [实用链接与资源](https:\u002F\u002Fgithub.com\u002Flibgdx\u002Fgdx-ai\u002Fwiki\u002FUseful-Links-and-Resources)\n\n\n### 新闻与社区\n\n请关注 [libGDX 博客](https:\u002F\u002Flibgdx.com\u002Fnews\u002F) 获取最新消息和更新。你也可以在我们的 [Discord 社区](https:\u002F\u002Flibgdx.com\u002Fcommunity\u002Fdiscord\u002F) 寻求帮助。\n\n### 报告问题\n\n遇到某些功能没有按预期工作的情况吗？或者需要尚未实现的新功能吗？请先查看 [问题追踪器](https:\u002F\u002Fgithub.com\u002Flibgdx\u002Fgdx-ai\u002Fissues)，如果问题尚未被列出，再提交一个新的问题。请尽量详细描述你的问题，并提供复现步骤。\n\n### 贡献代码\n\n太棒了！如果你想贡献新功能或修复 bug，请 [fork 这个仓库](https:\u002F\u002Fhelp.github.com\u002Farticles\u002Ffork-a-repo) 并 [提交 pull request](https:\u002F\u002Fhelp.github.com\u002Farticles\u002Fusing-pull-requests)。此外，在我们接受重要的代码贡献之前，你需要签署 [libGDX 贡献者许可协议](https:\u002F\u002Flibgdx.com\u002Fdev\u002Fcontributing\u002F#contributor-license-agreement)。\n\n### 许可证\n\ngdxAI 项目采用 [Apache 2.0 许可证](https:\u002F\u002Fgithub.com\u002Flibgdx\u002Fgdx-ai\u002Fblob\u002Fmaster\u002FLICENSE)，这意味着你可以免费使用它，无论是在商业项目还是非商业项目中，都不受任何附加条件限制。如果你使用 gdxAI 发布游戏或应用，我们也非常欢迎你给予适当的署名（非强制性）！","# gdx-ai 快速上手指南\n\ngdx-ai 是一个专为游戏开发设计的高性能人工智能框架，完全由 Java 编写。虽然它是 [libGDX](https:\u002F\u002Fgithub.com\u002Flibgdx\u002Flibgdx) 的扩展项目，但并不强制你使用 libGDX 作为唯一的游戏框架（不过仍需引入 libGDX 的核心 jar 包以利用其优化的集合类）。它提供了移动行为、寻路算法、决策树等游戏行业常用的 AI 技术。\n\n## 环境准备\n\n在开始之前，请确保你的开发环境满足以下要求：\n\n*   **操作系统**：Windows, macOS, 或 Linux\n*   **JDK 版本**：Java 8 或更高版本\n*   **构建工具**：Gradle (推荐) 或 Maven\n*   **前置依赖**：\n    *   必须引入 `libgdx` 核心库。\n    *   gdx-ai 依赖 libGDX 的集合类（如 `Array`, `Map` 等），这些类针对移动平台进行了优化，可减少垃圾回收并直接支持原始类型。\n\n## 安装步骤\n\n推荐使用 Gradle 进行依赖管理。在你的项目构建文件（`build.gradle`）中添加以下配置。\n\n### 1. 添加仓库源\n确保你的 `repositories` 块中包含 Maven Central 或 Google 的 Maven 仓库（国内开发者若访问缓慢，可配置阿里云镜像）：\n\n```groovy\nrepositories {\n    mavenCentral()\n    \u002F\u002F 国内加速推荐：阿里云镜像\n    \u002F\u002F maven { url 'https:\u002F\u002Fmaven.aliyun.com\u002Frepository\u002Fpublic' }\n}\n```\n\n### 2. 添加依赖\n在 `dependencies` 块中添加 gdx-ai。请将 `\u003Cversion>` 替换为最新版本号（可在 [Maven Central](https:\u002F\u002Fsearch.maven.org\u002Fsearch?q=g:com.badlogicgames.gdx%20AND%20a:gdx-ai) 查询，例如 `1.8.2`）：\n\n```groovy\ndependencies {\n    implementation \"com.badlogicgames.gdx:gdx-ai:\u003Cversion>\"\n    \n    \u002F\u002F 确保同时引入了 libgdx 核心包\n    implementation \"com.badlogicgames.gdx:gdx:\u003Clibgdx-version>\"\n}\n```\n\n如果你使用的是 Maven，请在 `pom.xml` 中添加：\n\n```xml\n\u003Cdependency>\n    \u003CgroupId>com.badlogicgames.gdx\u003C\u002FgroupId>\n    \u003CartifactId>gdx-ai\u003C\u002FartifactId>\n    \u003Cversion>\u003Cversion>\u003C\u002Fversion>\n\u003C\u002Fdependency>\n```\n\n## 基本使用\n\ngdx-ai 的核心功能包括转向行为（Steering Behaviors）、寻路（Pathfinding）和决策系统（状态机\u002F行为树）。以下是一个最简单的**转向行为**（Steering Behavior）使用示例，展示如何让一个角色自动朝向目标移动。\n\n### 代码示例\n\n假设你有一个实现了 `Steerable\u003CVector2>` 接口的角色类 `Boid`，以及一个目标点。\n\n```java\nimport com.badlogic.gdx.ai.steer.SteeringBehavior;\nimport com.badlogic.gdx.ai.steer.behaviors.Seek;\nimport com.badlogic.gdx.math.Vector2;\n\n\u002F\u002F 假设 boid 是你的游戏角色实例，targetPosition 是目标坐标\nBoid boid = new Boid(); \nVector2 targetPosition = new Vector2(100f, 100f);\n\n\u002F\u002F 创建 Seek (追逐) 行为\nSteeringBehavior\u003CVector2> seekBehavior = new Seek\u003C>(boid, targetPosition);\n\n\u002F\u002F 在游戏循环的 update 方法中调用\npublic void update(float deltaTime) {\n    \u002F\u002F 计算并应用转向力\n    boid.calculateSteeringForce(deltaTime, seekBehavior);\n    \n    \u002F\u002F 更新角色位置 (具体实现取决于你的 Boid 类)\n    boid.update(deltaTime);\n}\n```\n\n### 关键点说明\n1.  **Steerable 接口**：你的游戏实体需要实现 `Steerable\u003CT>` 接口，提供位置、速度、最大速度等属性。\n2.  **Behavior 创建**：通过继承 `SteeringBehavior` 的类（如 `Seek`, `Arrive`, `Wander`）创建具体的 AI 逻辑。\n3.  **计算与更新**：每一帧调用 `calculateSteeringForce` 来计算合力，然后更新实体状态。\n\n更多高级用法（如 A* 寻路、行为树构建）请参考官方 [Wiki](https:\u002F\u002Fgithub.com\u002Flibgdx\u002Fgdx-ai\u002Fwiki) 或查看项目中的 [tests](https:\u002F\u002Fgithub.com\u002Flibgdx\u002Fgdx-ai\u002Ftree\u002Fmaster\u002Ftests) 目录获取完整示例。","某独立游戏团队正在开发一款基于 libGDX 的科幻策略游戏，需要实现数百个单位在复杂地形中的智能编队移动与动态避障。\n\n### 没有 gdx-ai 时\n- 开发者需从零手写 A*寻路算法，难以处理大规模单位同时计算导致的帧率骤降问题。\n- 实现单位间的“分离、对齐、凝聚”编队行为极其困难，单位容易重叠穿模或像无头苍蝇般乱撞。\n- 缺乏统一的状态管理架构，敌人 AI 在“巡逻、追击、攻击”间切换时逻辑混乱，代码耦合度极高。\n- 每次调整移动参数都需要重新编译并手动调试大量底层数学公式，开发迭代周期漫长。\n- 移动端运行时因频繁创建临时对象引发垃圾回收（GC）卡顿，严重影响游戏流畅度。\n\n### 使用 gdx-ai 后\n- 直接调用内置的高性能寻路模块，支持分层寻路与路径平滑，轻松承载数百单位同屏运算而不掉帧。\n- 利用现成的 Steering Behaviors（转向行为），几行代码即可让单位形成自然的战斗队形并自动规避障碍物。\n- 通过行为树（Behavior Trees）和有限状态机（FSM）清晰构建决策逻辑，使敌人行为转换流畅且易于扩展。\n- 提供可视化的调试接口与丰富的预设参数，策划人员可实时调整 AI 表现，大幅缩短平衡性测试时间。\n- 依托 libGDX 优化的集合框架，从根源上避免装箱拆箱操作，彻底消除移动端因 GC 引发的卡顿现象。\n\ngdx-ai 将繁琐的底层算法封装为高效易用的组件，让开发者能专注于游戏创意而非重复造轮子。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flibgdx_gdx-ai_0b1d5dbd.png","libgdx","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Flibgdx_6edf99f4.png","",null,"https:\u002F\u002Flibgdx.com","https:\u002F\u002Fgithub.com\u002Flibgdx",[80,84],{"name":81,"color":82,"percentage":83},"Java","#b07219",99.1,{"name":85,"color":86,"percentage":87},"Ragel","#9d5200",0.9,1291,253,"2026-04-02T02:41:43","Apache-2.0","未说明","无特殊需求",{"notes":95,"python":96,"dependencies":97},"该工具完全由 Java 编写，主要用于 libGDX 游戏开发框架。虽然不强制使用 libGDX 框架的其他功能，但必须引入 libGDX jar 包，因为其使用了针对移动平台优化的 libGDX 集合库（可减少垃圾回收并直接支持原始类型）。无需 Python 环境或特定 GPU 支持。","不适用",[98],"libGDX (必需)",[14,100],"视频",[73,102,103,104,105,106,107,108,109,110,111,112,113],"pathfinding","steering-behaviors","formation-motion","behavior-trees","java","artificial-intelligence","framework","npc","state-machines","decision-making","gamedev","movement","2026-03-27T02:49:30.150509","2026-04-10T10:34:31.202445",[117,122,127,132,137,142,147],{"id":118,"question_zh":119,"answer_zh":120,"source_url":121},27522,"GWT 编译在 gdx-ai 1.7.0 版本中报错，提示找不到源代码或构造函数未定义，如何解决？","这是由于 libgdx 和 gdx-ai 版本不兼容导致的。请尝试将依赖版本更新为：\ngdxVersion = '1.9.2'\naiVersion = '1.8.0'\n\n修改后，请务必运行 Gradle 刷新依赖并重新构建项目（可以在 IDE 中执行或通过命令行运行 gradle build）。如果使用了 htmlLauncher，可能还需要进行少量调整。","https:\u002F\u002Fgithub.com\u002Flibgdx\u002Fgdx-ai\u002Fissues\u002F59",{"id":123,"question_zh":124,"answer_zh":125,"source_url":126},27523,"使用避障（CollisionAvoidance）等行为时，calculateSteering 返回 NaN 导致物体消失，该如何处理？","当距离平方（distanceSqr）为 0 时可能会产生 NaN。虽然可以将 distanceSqr 设为 Float.MIN_VALUE，但这通常无效，因为乘以零向量后加速度仍不变。\n推荐的临时解决方案是：在调用 calculateSteering 后检查 steeringOutput，如果检测到 NaN 值，则手动将其重置为零向量。\n长期修复需要库本身在处理零距离情况时直接返回 true 或避免除以零的操作。","https:\u002F\u002Fgithub.com\u002Flibgdx\u002Fgdx-ai\u002Fissues\u002F45",{"id":128,"question_zh":129,"answer_zh":130,"source_url":131},27524,"Arrive（到达）行为在速度为 0 时无法正确朝向目标，或者在结束时总是错误旋转，怎么解决？","这是一个已知问题。解决方法是参考 LookWhereYouAreGoing 行为的修复方式，为限制器（Limiter）接口添加一个阈值判断。\n具体来说，当物体接近目标且速度极低时，应停止旋转计算或直接对齐，而不是继续尝试微调角度。对于需要大角度转向（如 U-Turn）的情况，这通常需要额外的电机控制技术，而非单纯的转向行为参数调整。","https:\u002F\u002Fgithub.com\u002Flibgdx\u002Fgdx-ai\u002Fissues\u002F33",{"id":133,"question_zh":134,"answer_zh":135,"source_url":136},27525,"如何在非 LibGDX 图形项目中单独使用 gdx-ai 库？","为了减少耦合，建议将共享功能提取到新的依赖模块中。虽然库本身正在考虑拆分，但目前你可以通过查看官方 Wiki 页面 \"Initializing and Using gdxAI\" 来获取在没有完整图形库环境下初始化和使用 gdx-ai 的指南。此外，注意时间服务（TimeService）的调用方式，避免重复或歧义的 getTime() 调用。","https:\u002F\u002Fgithub.com\u002Flibgdx\u002Fgdx-ai\u002Fissues\u002F25",{"id":138,"question_zh":139,"answer_zh":140,"source_url":141},27526,"MessageDispatcher 被设计为单例模式限制了其在多模块（如 UI 和 AI 分离）中的使用，有解决办法吗？","维护者已确认单例模式在此场景下是反模式。解决方案是将单例能力移至 MessageManager，从而使 MessageDispatcher 拥有公共构造函数。这样你就可以为应用程序的不同部分（例如一个用于 UI，另一个用于 AI）创建独立的 MessageDispatcher 实例，以便分别管理消息常量和配置不同的时间粒度。","https:\u002F\u002Fgithub.com\u002Flibgdx\u002Fgdx-ai\u002Fissues\u002F20",{"id":143,"question_zh":144,"answer_zh":145,"source_url":146},27527,"ReachOrientation 行为在高加速度下会出现振荡，如何优化旋转停止的逻辑？","当前的停止旋转决策方法在高加速度下会导致振荡。建议使用控制方程（control equation）来替代现有逻辑，这样可以显著减少振荡并在几次小幅摆动后迅速停止。\n虽然库尚未默认集成此功能，但用户可以自行实现基于控制方程或 PID 的解决方案。如果需要预测功能，可以创建一个独立的目标适配器（target adapter）来处理预测，而不是直接硬编码到 ReachOrientation 中，因为并非所有场景都需要预测。","https:\u002F\u002Fgithub.com\u002Flibgdx\u002Fgdx-ai\u002Fissues\u002F16",{"id":148,"question_zh":149,"answer_zh":150,"source_url":151},27528,"如何在自定义节点类型（如只能走在墙壁或地板上的单位）上实现可选择的路径查找？","库支持通过自定义逻辑实现这一功能。你可以在路径查找前过滤节点类型，或者实现特定的节点连接规则。例如，在 TiledNodes 测试中，可以通过修改代码让单位仅能在 TILE_FLOOR、TILE_WALL 或两者上移动。这通常不需要库的核心改动，用户可以在自己的代码层轻松实现节点类型的选择逻辑。","https:\u002F\u002Fgithub.com\u002Flibgdx\u002Fgdx-ai\u002Fissues\u002F29",[]]