Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
深入 的 高性能图形渲染 李宇骞 如何实现媲美原生性能的Flutter移动应用 Deep Dive into Flutter Graphics Performance
Slide 2
Slide 2 text
李宇骞 本故事绝非虚构,如有雷同并非偶然
Slide 3
Slide 3 text
破纪录地快速开发美观及高性能的移动应用 ● 跨平台 快速开发 ● 灵巧而包罗万象的图形界面 ● 媲美甚至超越原生应用的高性能(图形渲染) 什么是
Slide 4
Slide 4 text
框架 Skia (C/C++) 框架 Skia (C/C++) 原生 Image / Icon 其它跨平台框架 图形性能为何能够媲美原生应用 其它框架 如 框架
Slide 5
Slide 5 text
用于 我在 之 前的工作 提升 抗锯 齿质量与性能 16 3 开源图形引擎 Image Image 之前 之后
Slide 6
Slide 6 text
No content
Slide 7
Slide 7 text
我的 应用有绘图性能问题怎么办? 直接调用 拥有媲美原生的高性能 [UI/GPU frame time graph]
Slide 8
Slide 8 text
如果是 ● 分析 应用的 调用 ● 捕捉 分析每一条绘图指令 ● 常见的 函数调用性能瓶颈 我的 应用有绘图性能问题怎么办? [UI/GPU frame time graph]
Slide 9
Slide 9 text
分析 应用的 调用情况 现场演示
Slide 10
Slide 10 text
注意 请用实际设备调试性能 尤其不要用 模拟器调试图形性能 有两套很不同的后端, 在 模拟器中使用纯 后端,而实际 设备一般使用 硬件加速后端,所以性能特性很不一样。 ✓ X
Slide 11
Slide 11 text
捕捉 分析每一条绘图指令 将一帧录制成 送给 进行渲染。捕捉 ,并利用 我们可以单步分析每一 条绘图指令。 现场演示
Slide 12
Slide 12 text
请注意以下 函数调用 ● saveLayer ● clipPath 常见的性能瓶颈 例如在 样例 中,尽量减少上述两个函数调用将性能提升了 倍 现场演示
Slide 13
Slide 13 text
请注意以下 函数调用 ● saveLayer ● clipPath 常见的性能瓶颈 例如在 样例 中,尽量减少上述两个函数调用将性能提升了 倍 现场演示
Slide 14
Slide 14 text
几乎所有的 组件 ● 曾经,它们会默认出现在每一个这样的组件中 (默认 ● 现在,默认不出现在任何组件中 , 除了 ● 如果需要 ,请用 或 ● 极少数需要 的情况,请参见 和 都会在哪出现?
Slide 15
Slide 15 text
如何处理疑难杂症 以上各种办法都解决不了问题怎么办? 捕捉 捕捉 截取可重现问题的样例代码 问题的高速视频录像有时也很有用 发送问题至 我们非常乐意帮忙调试并解决问题。您的问题汇报还将帮助其它更多的 开发者,对此我们深表感激。
Slide 16
Slide 16 text
睡着了 刚刚说了啥? ● 直接调用 拥有媲美原生的高性能图形渲染 ● 分析 应用的 调用 不要用模拟器 ● 截取 可以单步检测每条绘图指令 ● 注意 有疑难性能问题请发送至 总结
Slide 17
Slide 17 text
谢谢!
[email protected]