鸿蒙5.0&next开发【ArkGraphics 3D简介】图形

ArkGraphics 3D简介

ArkGraphics 3D (方舟3D图形)基于轻量级的3D引擎以及渲染管线为开发者提供基础3D场景绘制能力,供开发者便捷、高效地构建3D场景并完成渲染。

功能介绍

  • 提供加载并解析glTF模型的能力,支持开发者将glTF模型文件置于应用文件沙盒中,通过ArkGraphics 3D提供的异步接口完成模型的加载以及渲染,glTF相关介绍请参见glTF-Specification。
  • 提供自定义灯光(Light)、相机(Camera)节点以及通用节点(Node)的能力,可支撑开发者自定义场景灯光、渲染视角等信息,同时支撑用户动态地调整场景树结构以及节点属性进而调整3D场景。
  • 提供创建图片(Image)、材质(Material)、环境(Environment)以及自定义着色器(Shader)的能力,支撑开发者通过调用ArkGraphics 3D提供的能力来创建3D场景中使用的各种资源,支撑开发者自定义着色器,完成自定义3D材质渲染。
  • 提供控制3D场景动画状态的能力,支撑开发者控制动画的开始、暂停、结束、播放到指定位置等操作,同时提供动画开始、结束时的回调函数支持开发者进行逻辑控制。
  • 提供基础的3D渲染后处理能力,提供接口支撑开发者进行ToneMapping后处理相关控制。

综上,ArkGraphics 3D提供基础的3D场景渲染能力,支撑开发者完成3D场景渲染以及逻辑控制开发工作。

框架原理

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

如上图 ArkGraphics 3D接口能力由图形后端、引擎层以及接口层三个关键部分共同组成。

  • 图形后端:主要指GPU硬件提供的驱动接口类型,业界通用的主要包含OpenGL ES以及Vulkan两类。引擎层通过下发GPU指令调用这些接口,实现场景的渲染。
  • 引擎层:依托Ark Graphics Platform渲染引擎部件提供渲染能力,AGP引擎具有易用性、高画质、可扩展等特性。引擎使用先进的ECS(Entity-Component-System)架构设计,进行模块化封装(如材质定义、后处理特效等),为开发者提供了灵活易用的开发套件。
  • 接口层:基于引擎的ECS Framework,通过NAPI层对数据进行组织处理,向开发者暴露简单易用的3D渲染接口,支持开发者使用少量代码完成3D场景的开发。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值