XComponent、openGL实现3D图形绘制
XComponent、openGL实现3D图形绘制
HarmonyOS
赞
1
收藏 1
回答 1
待解决
相关问题
XComponent、NativeDrawing实现2D图形绘制
1724浏览 • 1回复 待解决
HarmonyOS 3D卡片遮挡滑动实现方式
795浏览 • 1回复 待解决
deveco studio里面可以实现3D场景的效果吗?
4476浏览 • 1回复 待解决
有谁知道是否支持实现3D效果
2341浏览 • 1回复 待解决
HarmonyOS 能否支持3D模型导入?
952浏览 • 0回复 待解决
HarmonyOS 实现3D标签云效果。麻烦提供下思路
974浏览 • 1回复 待解决
在OpenHarmony中有什么方法实现3D显示,OpenHarmony当前支持的3D第三方组件?
1840浏览 • 1回复 待解决
使用Native、XComponent和EGL绘制图形
1530浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙实现3D旋转动画?
640浏览 • 1回复 待解决
HarmonyOS opengl es3.0绘制图形颜色有问题
646浏览 • 1回复 待解决
HarmonyOS Web组件加载webgl 3D工程存在不明边框
211浏览 • 1回复 待解决
使用Drawing实现图形绘制与显示
1473浏览 • 1回复 待解决
HarmonyOS web渲染3d canvas模糊不清并且伴有闪屏
303浏览 • 1回复 待解决
XComponent使用OpenGl ES
1919浏览 • 1回复 待解决
opengl渲染矩形,如何实现opengl渲染,并用Xcomponent显示出来
1578浏览 • 1回复 待解决
HarmonyOS XComponent绘制
432浏览 • 1回复 待解决
HarmonyOS OpenGL 绘制的相关资料
653浏览 • 1回复 待解决
HarmonyOS AuthTrustLevel中ATL4等级的人脸检测是3D人脸检测吗?
496浏览 • 1回复 待解决
Native XComponent、Drawing、手势实现上下滑动文本和图形拖移
1583浏览 • 1回复 待解决
HarmonyOS opengl怎么绘制中英文
216浏览 • 1回复 待解决
HarmonyOS OpenGL ES、相机流和XComponent之间的调用流程
629浏览 • 1回复 待解决
HarmonyOS 是否有类似xfermode相关的图形绘制api
409浏览 • 1回复 待解决
使用Drawing进行2d图像绘制
1512浏览 • 1回复 待解决
如果可以集成地图,能在地图上渲染3D影像文件吗?
4226浏览 • 1回复 待解决
HarmonyOS 关于使用OffscreenCanvasRenderingContext2D绘制问题
648浏览 • 1回复 待解决
XComponent控件常用于相机预览流的显示和游戏画面的绘制,在OpenHarmony上,可以配合Native Window创建OpenGL开发环境,并最终将OpenGL绘制的图形显示到XComponent控件。
开发流程:
通过在IDE中创建Native C++工程,在C++代码中定义接口为Init和Update用于3D图形绘制环境的初始化和图形渲染更新,并映射NAPI相关接口UpdateAngle。ArkTS侧主要利用XComponent控件实现Index.ets,C++侧主要采用OpenGL ES相关标准API实现三棱锥的绘制流程相关代码,并可与ArkTS进行交互。
应用启动时,NAPI模块也相应进行初始化,此时可通过C++侧的OH_NativeXComponent_GetXComponentId()接口,获取到当前XComponent控件的控件指针,并给到C++侧三棱锥绘制相关的Init和Update函数,实现3D图形显示。同时,为实现三棱锥的触摸屏滑动旋转效果,在C++代码中映射的NAPI接口UpdateAngle给到ArkTS侧调用。ArkTS侧需在导入NAPI模块"libtetrahedron_napi.so"正确的前提下,通过调用UpdateAngle接口更新三棱锥旋转角度
使用的核心API
Xcomponent
NativeWindow
核心代码解释
1.在界面中定义Xcomponent,
2.使用NAPI获取XComponent实例指针,注册XComponent回调函数
1、实例NativeWindow环境
2、绘制3d图形
4.exports上挂上native侧方法,当arkTs发生手势滑动调用c++侧updateAngle,实现更新三棱锥旋转角度
实现效果
注明适配的版本信息
DevEco Studio Version: 4.0.1.601
SDK:HarmoneyOS 4.0.10.11