Go to file
sqwlly 15f461e323 merge conflict fix Signed-off-by: s30029175 <shiqiwei4@huawei.com>
Signed-off-by: sqwlly <shiqiwei4@huawei.com>
Change-Id: Ida13bcc234dff2461470bca5dd100db2d13f16bf
2024-09-25 01:55:27 +00:00
.gitee 增加animation评审人 2024-09-11 14:52:16 +08:00
adapter Description:format gni file 2024-06-27 15:31:09 +08:00
etc 增加图形xml配置文件读取 2024-08-20 18:05:12 +08:00
figures delete module frame rectify 2024-08-22 20:11:11 +08:00
frameworks fence fix 2024-09-22 20:20:54 +08:00
graphic_test raphic Native C++ Test codes 2024-09-20 11:46:04 +08:00
interfaces 回退 'Pull Request !15327 : getSystemFontFullNamesByType and getFontDescriptorByFullName code' 2024-09-25 01:14:49 +00:00
rosen merge conflict fix Signed-off-by: s30029175 <shiqiwei4@huawei.com> 2024-09-25 01:55:27 +00:00
utils add TDD 2024-09-21 14:02:19 +08:00
.clang-format rename and refactor 2024-03-04 15:55:16 +08:00
.gitattributes update OpenHarmony 2.0 Canary 2021-06-02 02:21:18 +08:00
.gitignore Added android and ios adapters to gitignore 2024-05-31 13:24:10 +03:00
ace_platforms.gni Fixed arkui-x build due to missed adapters 2024-05-30 15:13:54 +03:00
BUILD.gn add render test 2024-09-22 16:10:14 +08:00
bundle.json !15073 增加部件功能配置保持与架构平台功能配置一致 2024-09-12 14:17:48 +00:00
CODEOWNERS 删除ipc_callbacks权限校验 2024-09-23 11:19:47 +08:00
default.scss add window type 2021-12-21 21:12:04 +08:00
flutter.gni Description:change dir graphic/graphic to graphic/graphic_2d 2022-05-19 14:59:57 +08:00
graphic_config.gni !14782 代码日落 2024-09-06 06:13:17 +00:00
graphic.cfg fix: hdr in aod 2024-09-19 17:00:26 +08:00
graphic.rc 回退 'Pull Request !3058 : del unused code' 2022-11-24 06:23:33 +00:00
hisysevent.yaml fix ddos 2024-09-05 15:51:18 +08:00
LICENSE update OpenHarmony 2.0 Canary 2021-06-02 02:21:18 +08:00
OAT.xml fix code warning 2024-06-06 10:14:15 +08:00
README_zh.md fix name 2023-07-11 21:55:33 +08:00
README.md quduoyu 2023-05-17 19:00:42 +08:00

graphic_graphic_2d

Introduction

Graphic subsystem provides graphical interface capabilities.

Its main structure is shown in the following figure:

Graphic subsystem architecture diagram

The layered description of the OpenHarmony graphics stack is as follows:

• Interface layer: Provides native API capabilities for graphics, including: WebGL, Native Drawing drawing capabilities, OpenGL instruction-level drawing capabilities support, etc.

• Framework layer: divided into five modules: Render Service, Drawing, Animation, Effect, Display and Memory Management.

Module Capability Description
Render Servicel Provides the rendering capabilities of the UI framework. Its core responsibility is to convert ArkUI's control description into drawing tree information, and perform optimal path rendering according to the corresponding rendering strategy. At the same time, it is responsible for the core underlying mechanism of UI sharing in multi-window smoothness and spatial state.
Drawing Provides a standardized interface within the graphics subsystem, and mainly completes basic functions such as 2D rendering, 3D rendering and rendering engine management.
Animation Provides related capabilities of the animation engine.
Effect Mainly completes the ability to process image effects, rendering effects and other effects, including: multi-effect series and parallel processing, adding rendering effects, control interaction effects and other related capabilities during layout.
Display and Memory Management This module is the main module for the decoupling of the graphics stack and hardware. It mainly defines the display and memory management capabilities of OpenHarmony. The defined southbound HDI interface requires different OEMs to complete the adaptation of the OpenHarmony graphics stack. match.

• Engine layer: includes two modules, 2D graphics library and 3D graphics engine. The 2D graphics library provides the underlying API for 2D graphics rendering, and supports the underlying capabilities of graphics rendering and text rendering. 3D graphics engine capabilities are still under construction.

content

foundataion/graphic/graphic_2d
├── figures                      # Markdown referenced image catalog
├── frameworks                   # framework code directory
│   ├── animation_server         # animationServer code
│   ├── bootanimation            # Boot animation directory
│   ├── fence                    # fence code
│   ├── vsync                    # Vsync code
├── rosen                        # framework code directory
│   ├── build                    # build instructions
│   ├── doc                      # doc
│   ├── include                  # external header file code
│   ├── lib                      # lib
│   ├── modules                  # graphic Each module code of the subsystem
│   ├── samples                  # sample code
│   ├── test                     # develop test code
│   ├── tools                    # tool code
├── interfaces                   # graphical interface storage directory
│   ├── innerkits                # internal native interface storage directory
│   └── kits                     # js/napi external interface storage directory
└── utils                        # widget storage directory

Repositories Involved