Pascal Editor
如何测量 Pascal:图形初始化、编辑延迟与场景存储
把 GPU 回退、几何更新、资源传输和保存重开分开测量,形成有依据的空间编辑器评估。
你将学会
- 记录真正完成初始化的后端
- 把帧处理、数据和网络开销分开
- 报告有用交互与持久化结果
开始前需要
- 基础场景图、JavaScript 和 HTTP 知识
- 尺寸与关系具有明确预期的自有小场景
解释实现边界,复现本章检查清单或窄范围图练习。
先看结论
- 记录图形后端和各初始化阶段。
- 图字节不同于资源大小和 GPU 内存。
- 比较合格编辑和重开,不只比较帧。
记录真正完成初始化的后端
能力辅助函数默认分别为 WebGPU 适配器与设备请求、WebGPU 渲染器初始化设置四秒超时。初始化失败后会清理渲染器、释放设备并尝试 WebGL。这是分别受限的步骤,不是整个应用四秒启动保证;该函数也没有用相同超时包裹 WebGL 初始化。
记录每次使用 WebGPU、WebGL 还是不支持结果,并附上浏览器、驱动和场景,不把回退运行混入一个没有解释的平均数。本次探针使用模拟设备和渲染器,确认了清理与回退流程,没有测量 GPU 速度、着色器编译或真实帧呈现。
把帧处理、数据和网络开销分开
场景变慢可能来自几何变化、复杂材质、大量可见对象或资源加载。NodeRenderer 缓存延迟组件身份,场景存储追踪脏节点,但这些机制不能直接证明某个帧率提升。应固定相机路径和编辑序列,先确认可见结果正确,再比较耗时。
SQLite 默认 10 MiB 上限针对序列化图 JSON 的 UTF-8 字节,不包含纹理、模型或 GPU 缓冲总量。很小的场景记录也可能引用巨大外部资源。图字节、传输资源、进程内存与渲染行为应分别统计,不能把数据库大小写成应用内存需求。
报告有用交互与持久化结果
实用试点应测量首次可用画面、编辑到可见更新的延迟、保存时间,以及几何和材质符合预期的重开结果。失败导入、不支持设备和版本冲突也要纳入,不作为“不好看”的样本丢弃。等价负载实际运行前,成本和分位数保持未知。
下面是没有填造数值的测量结构。一次只比较一个变化,例如关闭可选视觉效果或减少受控样例中的可见对象。更快却丢掉开口、材质或无法保存的结果,并没有完成同样的工作,不应在比较中获胜。
实施步骤
- 1
固定浏览器、设备、相机路径和场景。
- 2
记录选择后端与不支持结果。
- 3
带着正确性检查测量编辑、保存和重开。
- 4
只公布实际观察到的资源与延迟。
可复制示例
{"actualGpuRuns":0,"backend":null,"firstUsableViewMs":null,"editToVisibleP95Ms":null,"graphUtf8Bytes":null,"assetTransferBytes":null,"saveMs":null,"reopenAccepted":null}常见问题
四秒超时限制整个启动时间吗?
不是。它用于特定 WebGPU 操作,不包含所有应用加载和 WebGL 工作。
10 MiB 图上限能限制 GPU 内存吗?
不能。引用资源、渲染缓冲和进程内存都是另外的资源。
资料来源
- README.md来源核查 2026-09-08
- LICENSE来源核查 2026-09-08
- packages/cli/package.json来源核查 2026-09-08
- packages/core/package.json来源核查 2026-09-08
- packages/viewer/README.md来源核查 2026-09-08
- packages/cli/src/runtime.ts来源核查 2026-09-08
- packages/cli/src/editor-process.ts来源核查 2026-09-08
- packages/cli/src/mcp-connector.ts来源核查 2026-09-08
- packages/mcp/src/transports/http.ts来源核查 2026-09-08
- packages/mcp/src/storage/sqlite-scene-store.ts来源核查 2026-09-08
- packages/core/src/store/use-scene.ts来源核查 2026-09-08
- packages/viewer/src/components/renderers/node-renderer.tsx来源核查 2026-09-08
- packages/viewer/src/lib/renderer-capability.ts来源核查 2026-09-08
- packages/core/src/validation/validate-build-json.ts来源核查 2026-09-08
- packages/core/src/utils/heal-scene-graph.ts来源核查 2026-09-08
- packages/mcp/src/storage/slug.ts来源核查 2026-09-08