高级开发指南:为Blender Launcher V2添加新Blender Fork支持的11个关键步骤
高级开发指南为Blender Launcher V2添加新Blender Fork支持的11个关键步骤【免费下载链接】Blender-Launcher-V2Standalone client for managing official builds of Blender 3D and its popular forks项目地址: https://gitcode.com/gh_mirrors/bl/Blender-Launcher-V2Blender Launcher V2 是一款可独立运行的客户端用于管理官方 Blender 3D 构建及其热门 Fork如 Bforartists、UPBGE的下载、安装与更新。本文为开发者提供完整指南按照 11 个关键步骤从零为 Blender Launcher V2 添加一个新 Blender Fork 支持覆盖爬虫、设置、界面、构建处理与解压五大层。为什么需要“Fork 支持”所谓Fork就是基于 Blender 源码二次开发的衍生版本。要在启动器中支持一个新 Fork需要打通 5 个层次层次职责核心目录1. 抓取Scraping从 Fork 官网/API 获取构建信息source/threads/scraping/2. 设置Settings提供可见性与更新行为开关source/modules/settings.py3. 界面UI创建 Library / Downloads 页面source/windows/main_window/4. 构建处理处理可执行文件名、版本号、目录结构source/modules/build_info.py5. 解压Extraction处理特殊压缩包格式与目录source/threads/extractor.py官方文档中对这一步骤有完整记录可直接对照阅读implementing_new_fork.md。第 1 步创建爬虫Scraper在source/threads/scraping/下新建fork_name.py继承基类BuildScraper重写scrape()生成器为每个构建yield一个BuildInfo对象含下载地址、版本号、commit 哈希、时间、分支名、可执行文件名。基类定义见 base.py参考现成实现bfa.pyNextcloud 源、upbge.pyGitHub Releases 源版本号解析复用 build_info.py 中的parse_blender_ver()第 2 步添加设置项Settings在 settings.py 中为新 Fork 增加三组函数Library 可见性get_show_xxx_builds()/set_show_xxx_builds()Downloads 抓取开关get_scrape_xxx_builds()/set_scrape_xxx_builds()更新按钮行为get_xxx_update_behavior()等同时把新 Fork 注册进三个字典/列表library_pages、downloads_pages现有入口可参考 settings.py#L49-L68与minimum_version_table值为下一个可用索引。第 3 步接入更新管理器修改 blender_update_manager.py 中的_branch_visibility()与_get_update_behavior()让新分支命中后返回 Fork 专属的可见性与更新行为替换 or 双版本并存。第 4 步注册到总爬虫在 scraper.py 中完成三处改动实例化你的爬虫如self.scraper_upbge_stable ...参考 scraper.py#L64-L71在scrapers()方法中按设置开关将其加入列表参考 scraper.py#L85-L99若 Windows 下需要按链接关键字过滤架构在get_download_links()的 amd64 分支中补上fork in build.link.lower()判断第 5 步登记 Library 扫描目录在 library_drawer.py 的DrawLibraryTask.folders元组中加入 Fork 的库目录名并在get_blender_builds()中增加该 Fork 可执行文件.exe/.app的识别判断否则已安装的构建无法被识别。第 6 步创建主窗口 UI 页面在source/windows/main_window/的窗口绘制逻辑中用BasePageWidget为 Library 和 Downloads 各创建一个Fork Name标签页add_tab可传folder或branch过滤条件语义见 version_matcher.py在start_scraper()中接受新的scrape_xxx参数在update_visible_lists()中根据第 2 步的设置刷新标签页可见性第 7 步扩展设置界面blender_builds_tab.py连接新 Fork 的library_changed/download_changed信号并添加“显示更新按钮”复选框与更新行为下拉框repo_group.py新增一个RepoUserView条目并加入self.repos列表第 8 步处理下载与解压在 download_widget.py 的init_extractor()中为新分支指定库目录dist library_folder / fork-branch。若 Fork 使用非标准压缩包结构嵌套目录、bin/Release等在 extractor.py 中新增一个_fix_xxx_structure()修正函数并在ExtractTask.run()末尾调用。第 9 步处理版本映射若 Fork 使用自己的版本号体系如 UPBGE 0.40 基于 Blender 4.0在 build_info.py 中编写一个版本映射函数把 Fork 版本映射到对应的 Blender 配置版本并暴露为BuildInfo的属性供 .blend 文件版本匹配使用。第 10 步注册配置文件夹路径Fork 专属的配置路径集中在 build_info.py 的FORK_CONFIG_PATHS字典中现有条目见 build_info.py#L38-L51结构为fork-branch: { config_folder: 组织名, # 仅 Windows%APPDATA% 下 config_subfolder: 子目录, # 或按平台区分的字典 }若该 Fork 支持便携模式还需在 library_widget.py 的make_portable_path()中补充逻辑。第 11 步从 Fork 源码中定位真实配置路径这一步是第 10 步的依据。打开 Fork 仓库的三份平台系统路径文件intern/ghost/intern/GHOST_SystemPathsUnix.ccLinuxintern/ghost/intern/GHOST_SystemPathsWin32.ccWindowsintern/ghost/intern/GHOST_SystemPathsCocoa.mmmacOS在每份文件中查找getUserDir()函数提取平台提取内容示例LinuxXDG_CONFIG_HOME回退路径中的目录名~/.config/upbge/0.40/Windows%APPDATA%下的组织名 应用子目录%APPDATA%\UPBGE\Blender\0.40\macOSGetApplicationSupportDir()中的目录名~/Library/Application Support/UPBGE/0.40/验收清单如何确认 Fork 支持完成✅ 设置窗口中可独立开关 Library / Downloads 可见性✅ Downloads 页能列出该 Fork 的构建Windows 下按架构正确过滤✅ 下载完成后自动解压到独立目录并出现在 Library✅ 双击可正常启动可执行文件名识别正确✅ 已安装构建的 .blend 文件版本匹配走正确配置版本✅ 更新按钮行为替换/并存按设置生效关键文件速查表组件文件路径爬虫source/threads/scraping/设置source/modules/settings.py更新管理source/modules/blender_update_manager.py构建信息与配置路径source/modules/build_info.py库扫描source/threads/library_drawer.py主窗口页面source/windows/main_window/设置 UIsource/windows/settings_window/blender_builds_tab.py仓库组控件source/widgets/repo_group.py下载/解压source/widgets/download_widget.py、source/threads/extractor.py更多 Fork 背景资料可参考 blender_forks.md 与开发手册 development.md。【免费下载链接】Blender-Launcher-V2Standalone client for managing official builds of Blender 3D and its popular forks项目地址: https://gitcode.com/gh_mirrors/bl/Blender-Launcher-V2创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

HpBandSter还能用吗?官方维护现状与SMAC3/DEHB替代方案选型指南

HpBandSter还能用吗?官方维护现状与SMAC3/DEHB替代方案选型指南

HpBandSter还能用吗?官方维护现状与SMAC3/DEHB替代方案选型指南 【免费下载链接】HpBandSter a distributed Hyperband implementation on Steroids 项目地址: https://gitcode.com/gh_mirrors/hp/HpBandSter HpBandSter(HyperBand on STERoids&a…

2026/8/29 0:11:44 阅读更多 →
Codex语音智能体免提操作指南:核心原理、部署实践与问题排查

Codex语音智能体免提操作指南:核心原理、部署实践与问题排查

OpenAI 在最近的直播里展示了一次开发工具交互方式上的变化:Codex 语音智能体的免提操作。什么意思?你可以直接对着电脑说“帮我在登录接口里加上限流”,Codex 会自己读取项目文件、定位登录模块、补上节流代码、运行测试,然后把改…

2026/8/28 20:34:36 阅读更多 →
ChineseSubtitleConversionTool普通转换详解:拖拽字幕文件完成繁简互转的完整操作指南

ChineseSubtitleConversionTool普通转换详解:拖拽字幕文件完成繁简互转的完整操作指南

ChineseSubtitleConversionTool普通转换详解:拖拽字幕文件完成繁简互转的完整操作指南 【免费下载链接】ChineseSubtitleConversionTool 繁体简体字幕转换工具 项目地址: https://gitcode.com/gh_mirrors/ch/ChineseSubtitleConversionTool ChineseSubtitleC…

2026/8/28 21:17:10 阅读更多 →

最新新闻

Python入门实战:从零构建猜数字游戏,掌握核心编程逻辑

Python入门实战:从零构建猜数字游戏,掌握核心编程逻辑

1. 项目概述:为什么从《猜数字》开始你的Python之旅?如果你刚接触Python,或者想找个有趣的项目练手,把“猜数字”这个小游戏作为起点,绝对是个聪明又高效的选择。这项目标题“Python小游戏《猜数字》”听起来简单&…

2026/8/29 20:43:04 阅读更多 →
432道MySQL面试题 161 - 180 题

432道MySQL面试题 161 - 180 题

为方便阅读,这里整理了整个系列的索引导航。本系列共 432 道 MySQL 面试题,按每 20 题为一篇进行连载,点击下方链接即可跳转到对应章节,方便你按需查阅、系统复习。 432道MySQL面试题 1 - 20 题 432道MySQL面试题 21 - 40 题 432道MySQL面试题 41 - 60 题 432道MySQL面试题…

2026/8/29 20:43:04 阅读更多 →
蓝桥杯递增序列问题解析:贪心算法与边界处理实战

蓝桥杯递增序列问题解析:贪心算法与边界处理实战

1. 从一个看似简单的题目说起最近在整理历年算法竞赛的真题时,我又翻到了第十届蓝桥杯国赛JAVA B组的“递增序列”这道题。说实话,第一次看到这个标题,很多人的第一反应可能和我当初一样:“递增序列?这还不简单&#x…

2026/8/29 20:43:04 阅读更多 →
PCF8591芯片原理与实战:从I2C驱动到ADC/DAC应用详解

PCF8591芯片原理与实战:从I2C驱动到ADC/DAC应用详解

1. 从“蓝桥杯”到“PCF8591”:为什么这个组合值得深挖如果你正在准备蓝桥杯单片机设计与开发竞赛,或者你是一个嵌入式初学者,想找一个既有理论深度又有实践价值的模块来练手,那么PCF8591这个芯片绝对是一个绕不开的“宝藏”。它不…

2026/8/29 20:43:04 阅读更多 →
Scratch图形编程核心:坐标、循环与变量实现彩色螺旋多边形

Scratch图形编程核心:坐标、循环与变量实现彩色螺旋多边形

1. 项目概述:从一道国赛真题看Scratch图形编程的核心能力 最近在整理历年蓝桥杯Scratch国赛的题目,发现“彩色螺旋多边形”这道题出现的频率不低,而且每次都能难住不少孩子。很多家长和老师拿到题目后,第一反应是“这得用复杂的数…

2026/8/29 20:43:04 阅读更多 →
[光学原理与应用-585]:从光子到电子,从电子到声子,从声子到温度,从温度升高到物质结构遭破坏,甚至燃烧 —— 加热是能量在微观自由度之间重新分配的过程。是能量逐步转换的过程

[光学原理与应用-585]:从光子到电子,从电子到声子,从声子到温度,从温度升高到物质结构遭破坏,甚至燃烧 —— 加热是能量在微观自由度之间重新分配的过程。是能量逐步转换的过程

能量转换链详解:从光子到燃烧的完整物理图景阶段转换时间尺度能量性质可逆性1光子→电子~1–10 fs电磁能→电子激发能部分可逆(受激辐射)2电子→声子~100 fs–10 ps电子有序能→晶格振动基本不可逆3声子→温度~10–100 ps非平衡振动→热平衡不…

2026/8/29 20:42:03 阅读更多 →

日新闻

etc目录下的profile.d文件目录设置环境变量和全局脚本shell

etc目录下的profile.d文件目录设置环境变量和全局脚本shell

一、设置环境变量etc目录下的profile.d文件目录 /etc/profile.d1、编写 vi test.sh文件内容# jdk变量 export ZHK_HOME/root export PATH$PATH:$ZHK_HOME/test # 可以取出来ZHK_HOME变量给ZZZ_HOME赋值 export ZZZ_HOME${ZHK_HOME}/test2、刷新 执行source /etc/profile 命令使…

2026/8/29 0:00:24 阅读更多 →
【JavaScript】内存管理-垃圾回收机制-内存泄露

【JavaScript】内存管理-垃圾回收机制-内存泄露

内存管理 C 语言这样的底层语言一般都有底层的内存管理接口,比如 malloc()和free()。 而 JavaScript 是在创建变量(对象,字符串等)时自动进行了分配内存,并且在不使用它们时“自动”释放。释放的过程称为垃圾回收。 整…

2026/8/29 0:00:24 阅读更多 →
Labgrid-MCP:为嵌入式硬件实验室接入AI Agent操控能力

Labgrid-MCP:为嵌入式硬件实验室接入AI Agent操控能力

Labgrid-MCP 的目标是把 MCP(Model Context Protocol)能力延伸到真实嵌入式硬件实验室:AI Agent 通过一个标准化的 MCP Server,就能查看目标板状态、控制上电断电、复位开发板、读取串口日志,甚至执行镜像刷写。对于经…

2026/8/29 0:00:24 阅读更多 →

周新闻

[光学原理与应用-521]:对光的错误理解与纠偏

[光学原理与应用-521]:对光的错误理解与纠偏

首先光是一种能量的载体和形态,宏观上观察到的光是由无数个微观的光量子组成的,每个光子在产生的瞬间,其在真空的空间中以确定不变的速度沿着一个初始的方向一直向前,在微观层面,每个光量子的运动轨迹是以波函数所展现…

2026/8/29 18:08:35 阅读更多 →
SIP通话转接原理与REFER方法实战解析

SIP通话转接原理与REFER方法实战解析

1. 通话转接不是“挂断再拨号”,而是SIP会话的动态重定向你有没有遇到过这样的场景:客服坐席A正在和客户通电话,突然需要把这通对话无缝转给专家坐席B,客户完全感知不到中间的断连——既没听到忙音,也没被要求重新拨号…

2026/8/28 23:05:07 阅读更多 →
Kolla-ansible单节点OpenStack部署实战:从环境准备到排坑指南

Kolla-ansible单节点OpenStack部署实战:从环境准备到排坑指南

1. 为什么选择Kolla-ansible来部署单节点OpenStack?如果你正在寻找一种能把OpenStack从“概念”快速变成“可用的实验环境”的方法,那么Kolla-ansible几乎是当前最主流、最省心的选择。我见过太多人卡在手动编译依赖、配置服务、处理版本冲突的泥潭里&am…

2026/8/28 19:47:53 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/29 4:34:53 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/28 17:43:04 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/29 2:05:18 阅读更多 →