Cave Engine 1.4.1 现已发布。此次更新聚焦于性能、工作流程改进和新 API,助您的开发更快、更具扩展性。如果您正在使用 Python 构建 3D 桌面游戏,本次发布将直接提升运行时效率、编辑器可用性和整体稳定性。如果您还不了解,Cave Engine 是一款高性能的3D游戏引擎,专为桌面开发打造,结合了 C++ 核心与 Python 脚本,实现快速迭代。它的目标用户是那些希望在渲染、系统和性能方面拥有完全控制权,同时不牺牲生产力的开发者。
随着用户量的快速增长,更新速度也在加快,1.4.1 版本正体现了这一势头。上一次发布距离现在不到两周。 :)
这是一次小版本更新,但在渲染、工具和 API 一致性方面带来了有意义的提升。它还直接反映了过去几周加入生态系统的数百位新用户的反馈。让我们直接看看本次更新了什么。

DDS 纹理支持
Cave 现在支持导入 .dds 纹理,包括大多数主流格式和压缩变体。这为您在使用已导出 DDS 格式的外部工具及优化纹理流水线时,提供了更多灵活性。
变换矩阵缓存
引擎中默认启用了变换矩阵缓存,包括 TransformComponent、TerrainComponent 和 Armature 骨骼。这提升了渲染与物理计算的效率。
内部压力测试中,使用 10,000+ 独立实体时,仅此项优化便带来了约 10 FPS 的平均提升。引擎现在能更精准地预测何时需要重新计算变换,减少每帧不必要的计算。
Python API 变更(需更新)
由于此优化,变换获取方法不再返回引用。
以下写法不再有效:
transf.getPosition() = cave.Vector3(1,0,0)
您现在必须显式设置值:
transf.setPosition(cave.Vector3(1,0,0))
getPositionCopy() 方法已移除,因为 getPosition() 已返回副本。
此权衡保证了缓存一致性并释放了性能提升。如果您正从旧版本 Cave 移植项目,可能需要按照上述建议修正代码。
新的 Profiler UI
Profiler 用户界面经过重新设计,提高了清晰度与可用性。您现在可以更快更准确地识别性能瓶颈。在右侧的 Profiler 标签中查看:

内部性能分析系统也得到改进,测量更精确,您可以更清晰地看到影响帧时间的因素。
更快的渲染图评估
渲染图评估通过额外的缓存和多线程改进进行了优化。之前大型场景的 CPU 占用过高,此更新显著提升了评估的速度和效率。该优化亦与变换缓存系统紧密相关。
关键分析数据收集
Cave 现收集基础使用分析数据,以提升稳定性并加快修复速度。
该决定经过社区讨论和投票,大多数用户(92.8% 赞成)同意此方案。收集的数据仅限技术范畴,不包含您的项目、资源、代码或任何个人内容。
收集的数据包括:
- 引擎使用模式(是否正常打开关闭,游戏是否顺利启动停止)
- 崩溃报告
- 导出状态
这有助于更好地了解真实问题,优先安排有效修复。主要目的是快速定位、解决并改进您使用 Cave 时遇到的任何问题。
编辑器右上角现设有 Send Feedback 按钮,您可以随时直接从引擎提交反馈。
新 Python API:cave.ui.textAsProp(...)
为编辑器内工具开发新增 API。
您现在可以将文本显示为属性字段,提升自定义工具的用户体验,并实现与编辑器界面的更一致整合。
改进的调试贝塞尔绘制
场景中的 addDebugBezier(...) 现可渲染视觉和性能均改进的贝塞尔曲线。
您将看到:
- 曲线上的方向箭头
- 更流畅的渲染
- 大量曲线时表现更佳
您现在可以在场景中使用数百条调试贝塞尔线而不影响性能。它们仍仅用于调试,不会出现在最终构建或游戏的播放模式中。
PathComponent – 新方法
PathComponent 新增多个 Python API 方法:
-
generateDerivativePath(self, outPath: PathComponent, width: float = 1) 生成新路径,通过偏移边缘至两侧,保持连通性。
-
balanceEdgeDirections(self) 重新分配边缘方向,减少节点连接的方向冲突。
-
mergeByDistance(self, distance: float = 0.001) 合并在指定距离内的点。
-
clear(self) 清除路径中的所有点和边。
这些新增功能扩展了程序生成和路径操作的工作流。
改进文档编辑
文档编辑变得更直接。在打开 Documentation 资源的“Edit”标签时,您可在内联全篇修改,无需弹出独立窗口,降低了操作障碍,提升编辑体验。
网格与图像纹理优化
核心系统性能提升:
- Mesh 的
mergeByDistance(...)复杂度从 O(n²) 优化为 O(n) ImageTexture加载更快
这些改动减少了大型场景和资源密集型项目的处理时间。
Bug 修复
- 修复了由 Dear ImGui 导致的偶发 GPU 崩溃
- 修复 OpenGL 崩溃问题
- 修复首次引导窗口完成后反复出现的问题
结语
Cave Engine 继续快速进化,基于真实使用和社区直接反馈。本次发布聚焦性能、稳定性及更优秀的工具支持,直接优化您的日常工作流程。
如果您已经在使用 Cave,建议立即升级,享受改进带来的好处。
如果您正在评估适合 Python 3D 桌面开发的游戏引擎,本次版本让 Cave 成为一个更加成熟、可用于生产的选项。如您感兴趣,可在此查看 Cave Engine 1.4.1 的定价与计划:
了解更多关于 Cave Engine
常见问题
Cave Engine 适合做 3D 桌面游戏吗?
适合。Cave 专为高性能 3D 桌面开发设计,结合了 C++ 核心和 Python 脚本。
变换缓存会破坏我的代码吗?
只有当您依赖引用返回时才会。现在必须使用 setPosition() 这类 setter 方法。
收集的分析数据安全吗?
安全。仅收集技术数据,不包含任何个人文件、资源或代码。
这次更新后 Cave Engine 变快了吗?
是的。变换缓存、渲染图优化和网格改进均提升了整体性能。
彩蛋
关于 Cave 1.6,这里有个小彩蛋:
