【鸿蒙南向开发】OpenHarmony——Graphic子系统之开机动画

1 简介

标准系统提供了图形接口能力和窗口管理接口能力, 支持应用程序框架子系统和ACE等子系统使用。故可以根据不同硬件系统选择编译不同模块,选择适配轻量系统或者标准系统。图形子系统主要包括UI组件、布局、动画、字体、输入事件、窗口管理、渲染绘制等模块。

image.png

以下主要分析标准系统能力。代码版本是OpenHarmony3.1版本。

开机动画是鸿蒙系统启动后,运行的第一个和图形渲染相关的进程,相关依赖相对独立便于分析,是分析图形子系统比较好的切入点。图形子系统主要依赖窗口、surface、render service。

目录

./foundation/graphic
|-- standard
|   |-- figures
|   |-- frameworks						# 框架代码目录
|   |   |-- animation_server
|   |   |-- bootanimation				# 开机动画
|   |   |-- dumper
|   |   |-- fence
|   |   |-- surface						# 渲染表面
|   |   |-- vsync
|   |   |-- wm
|   |   |-- wmserver
|   |   |-- wmservice
|   |-- interfaces
|   |   |-- innerkits
|   |   `-- kits
|   |-- rosen
|   |   |-- build
|   |   |-- doc
|   |   |-- include
|   |   |-- lib
|   |   |-- modules
|   |   |   |-- 2d_graphics				# 2维图形
|   |   |   |-- animation				# 动画
|   |   |   |-- composer				# 渲染合成器
|   |   |   |-- effect
|   |   |   |-- render_service			# 渲染服务端
|   |   |   |-- render_service_base		# 渲染基础能力
|   |   |   |-- render_service_client	# 渲染客户端
|   |   |   `-- utils
|   |   `-- tools
|   `-- utils
|-- surface
|-- ui

Graphic子系统 提供了图形接口能力和窗口管理接口能力, 支持应用程序框架子系统和ACE等子系统使用。支持所有运行标准系统的设备使用。

其主要的结构如下图所示:

image.png

  • Surface

    图形缓冲区管理接口,负责管理图形缓冲区和高效便捷的轮转缓冲区。依赖Display driver开辟buffer及buffer管理。

  • Vsync Client

    垂直同步信号管理接口,负责管理所有垂直同步信号注册和响应。

  • WindowManager

    窗口管理器接口,负责创建和管理窗口。

  • IPC/RPC通信

    进程间通信协议,支持渲染客户端和服务端建立连接、申请buffer、刷新buffer等

  • Render Service ohos

    render service适配ohos的部分,属于render service的基础能力,其中适配了ohos的render service client及IPC代理能力

  • Compositor

    图像合成送显,依赖Display driver和Surface,管理buffer及送显。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值